home *** CD-ROM | disk | FTP | other *** search
/ ftp.xmission.com / 2014.06.ftp.xmission.com.tar / ftp.xmission.com / pub / lists / fractint / archive / v01.n004 < prev    next >
Internet Message Format  |  1997-08-14  |  64KB

  1. From: fractint-owner@xmission.com (fractint Digest)
  2. To: fractint-digest@xmission.com
  3. Subject: fractint Digest V1 #4
  4. Reply-To: fractint@xmission.com
  5. Sender: fractint-owner@xmission.com
  6. Errors-To: fractint-owner@xmission.com
  7. Precedence: 
  8.  
  9.  
  10. fractint Digest        Friday, August 15 1997        Volume 01 : Number 004
  11.  
  12.  
  13.  
  14. In this issue:
  15.  
  16.     Re: (fractint) Deleting and Renaming
  17.     Re: (fractint) Re: deep zooms
  18.     Re: (fractint) Deleting and Renaming
  19.     (fractint) Speed testing
  20.     Re: (fractint) Re: deep zooms
  21.     Re: (fractint) Speed testing
  22.     Re: (fractint) Deleting and Renaming
  23.     Re: (fractint) Just a few to warm up with
  24.     (fractint) Re: Making my
  25.     (fractint) Info request: error message
  26.     Re: (fractint) Just a few to warm up with - me again!
  27.     (fractint) Alternative fractal software for fractal newbies :)
  28.     (fractint) Truecolor question
  29.     Re: (fractint) Re: deep zooms 
  30.     (fractint) flarium update
  31.     (fractint) Re: Making myself known
  32.     [none]
  33.     (fractint) question for developers
  34.     (fractint) Re: good general book on fractals
  35.     Re: (fractint) Re: Making my
  36.     Re: (fractint) question for developers 
  37.     Re: (fractint) question for developers
  38.     (fractint) Re: 
  39.     Re: (fractint) Truecolor question
  40.  
  41. See the end of the digest for information on subscribing to the fractint
  42. or fractint-digest mailing lists and on how to retrieve back issues.
  43.  
  44. ----------------------------------------------------------------------
  45.  
  46. Date: Thu, 14 Aug 1997 22:06:08 -0600
  47. From: "Tim Wegner" <twegner@phoenix.net>
  48. Subject: Re: (fractint) Deleting and Renaming
  49.  
  50. Janet sighed:
  51.  
  52. > Oh well <sigh> it didn't hurt to ask. :)
  53.  
  54. Yes, by all means, it always pays to ask. We developers definitely 
  55. respond to interested users :-) Just keep in mind we have so many 
  56. ideas from ourselves and others, that we have to have priorities to 
  57. stay sane ...  well, at least maintain the present level of sanity 
  58. :-)
  59.  
  60. Tim
  61.  
  62.  
  63. - ------------------------------------------------------------
  64. Thanks for using Fractint, The Fractals and Fractint Discussion List
  65. Post Message:   fractint@xmission.com
  66. Get Commands:   majordomo@xmission.com "help"
  67. Administrator:  twegner@phoenix.net
  68. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  69.  
  70. ------------------------------
  71.  
  72. Date: Thu, 14 Aug 1997 22:31:28 -0600
  73. From: "Tim Wegner" <twegner@phoenix.net>
  74. Subject: Re: (fractint) Re: deep zooms
  75.  
  76. Brock wrote:
  77.  
  78. > Attached to this letter is a .PAR file with a few of the par's that you kind
  79. > people have posted... It seems that the ones with "Sylvie Gallet" in them do
  80. > not work for me. I must be missing something-- any help would be good.
  81.  
  82. You are missing the "frm:" in front of two formulae. After fixing 
  83. that, all the images work for me. The ones to fix are Gallet-9-02 and 
  84. acc_man_mod; changes these formula names to frm:Gallet-9-02 
  85. and frm:acc_man_mod.
  86.  
  87. Incidently, I do not recommend permanently storing formulas inside 
  88. PAR files. This feature is just for convenience, to faciltate a quick 
  89. look when you download. After you've had a look, it is best to 
  90. separate the formulas and put them in their own file with the .frm 
  91. extension, and remove the "frm:" from the formula names.
  92.  
  93. Every fractint formula lover should get George Martin's orgfrm 
  94. program and collection of formulas. It's on spanky.triumf.ca 
  95. someplace, maybe someone could tell us exactly where. Fractint tries 
  96. hard to find a formula, and will search all the formula files it can 
  97. find. George's program will look through all your formulas and locate 
  98. duplicates, and organize them.
  99.  
  100. Tim
  101.  
  102.  
  103.  
  104. - ------------------------------------------------------------
  105. Thanks for using Fractint, The Fractals and Fractint Discussion List
  106. Post Message:   fractint@xmission.com
  107. Get Commands:   majordomo@xmission.com "help"
  108. Administrator:  twegner@phoenix.net
  109. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  110.  
  111. ------------------------------
  112.  
  113. Date: Thu, 14 Aug 1997 23:50:07 -0400
  114. From: Les St Clair <Les_StClair@compuserve.com>
  115. Subject: Re: (fractint) Deleting and Renaming
  116.  
  117. Hi Janet,
  118.  
  119. >If there's not an easier way to delete and rename files<
  120.  
  121. It's not the answer you were looking for, but here's one possible solutio=
  122. n:
  123.  
  124. If you're using windows..
  125. 1. Get hold of Graphics Workshop for Windows (shareware, for free
  126. evaluation)
  127. 2. Fire up the program and disable "thumbnail view"
  128. 3. Navigate to your chosen directory.
  129. 4. Now you have a screen with all of the image file names in nice columns=
  130. ,
  131. sorted alphabetically
  132. 5. There's two handy icons on the toolbar -
  133. 5.1 Delete (icon is a paper shredder!)
  134. 5.2 Rename - just hit this button and type the new name, don't even need =
  135. to
  136. type the extension. Very quick.
  137. 6. Use <alt><tab> to switch between Fractint and GWS. (to avoid possibly
  138. scrambling the image between switches, <tab> to the info screen before
  139. switching from Fractint to GWS.)
  140.  
  141. just a thought, Les
  142.  
  143.  
  144.  
  145.  
  146. - ------------------------------------------------------------
  147. Thanks for using Fractint, The Fractals and Fractint Discussion List
  148. Post Message:   fractint@xmission.com
  149. Get Commands:   majordomo@xmission.com "help"
  150. Administrator:  twegner@phoenix.net
  151. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  152.  
  153. ------------------------------
  154.  
  155. Date: Thu, 14 Aug 1997 23:50:12 -0400
  156. From: Les St Clair <Les_StClair@compuserve.com>
  157. Subject: (fractint) Speed testing
  158.  
  159. Charles Crocker wrote:
  160.  
  161. >>What I want to propose is a test that will tie a fractal speed rating t=
  162. o
  163. a
  164. computer. I have juggled the numbers in this parameter file to run in
  165. exactly 100 seconds on my Quantex Pentium 90.<<
  166.  
  167. >>test               { ; P90 1024X768 time  0:01:40.02
  168.  
  169. >> On an AMD DX4-120 it took 2:15.23. The Pentiums are obviously
  170. appreciably more efficient. The question is what about the newer Pentiums=
  171.  
  172. and other variations.<<
  173.  
  174. Here's a comparison using a Dell PII-266:
  175.  
  176. test_PIIa          { ; PII-266 @ 1024x768 time =3D 0:00:48.34
  177.                      ; Running under Windows 95
  178. (106% faster)
  179.  
  180. test_PIIb          { ; PII-266 @ 1024x768 time =3D  0:00:47.24
  181.                      ; Win 95/ "showdot" turned off
  182. (112% faster, switching showdot off speeds it up!)
  183.  =
  184.  
  185. test_PIIc          { ; PII-266 @ 1024x768 under DOS        t=3D  0:00:43.=
  186. 77
  187.                      ; Running under DOS
  188. (128% faster)
  189.  
  190. On other tests (under Win 95) I found the Pentium II to be approx 30%
  191. faster than a P166.
  192. (obviously PII technology wasn't designed with Fractint in mind<g>)
  193.  
  194. - - Les
  195.  
  196. - ------------------------------------------------------------
  197. Thanks for using Fractint, The Fractals and Fractint Discussion List
  198. Post Message:   fractint@xmission.com
  199. Get Commands:   majordomo@xmission.com "help"
  200. Administrator:  twegner@phoenix.net
  201. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  202.  
  203. ------------------------------
  204.  
  205. Date: Thu, 14 Aug 1997 22:08:43 -0600
  206. From: Kevin Smith <kevster@compusmart.ab.ca>
  207. Subject: Re: (fractint) Re: deep zooms
  208.  
  209. Tim Wegner wrote:
  210.  
  211. > Every fractint formula lover should get George Martin's orgfrm
  212. > program and collection of formulas. It's on spanky.triumf.ca
  213. > someplace, maybe someone could tell us exactly where. Fractint tries
  214. > hard to find a formula, and will search all the formula files it can
  215. > find. George's program will look through all your formulas and locate
  216. > duplicates, and organize them.
  217.  
  218. The url is: http://spanky.triumf.ca/www/fractint/fractint.html
  219.  
  220. Regards
  221.  
  222. Kevin P. Smith
  223. kevster@compusmart.ab.ca
  224.  
  225. - ------------------------------------------------------------
  226. Thanks for using Fractint, The Fractals and Fractint Discussion List
  227. Post Message:   fractint@xmission.com
  228. Get Commands:   majordomo@xmission.com "help"
  229. Administrator:  twegner@phoenix.net
  230. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  231.  
  232. ------------------------------
  233.  
  234. Date: Thu, 14 Aug 1997 23:15:51 -0500
  235. From: "Paul N. Lee" <Paul.N.Lee@Worldnet.att.net>
  236. Subject: Re: (fractint) Speed testing
  237.  
  238. Les St Clair wrote:
  239. >
  240. > Charles Crocker wrote:
  241. > >
  242. > > > What I want to propose is a test that will tie a fractal speed
  243. > > > rating to a computer.  I have juggled the numbers in this
  244. > > > parameter file to run in exactly 100 seconds on my Quantex
  245. > > > Pentium 90.
  246. > > >
  247. > > > test               { ; P90 1024X768 time  0:01:40.02
  248. > >
  249. > > > On an AMD DX4-120 it took 2:15.23.  The Pentiums are obviously
  250. > > > appreciably more efficient.  The question is what about the
  251. > > > newer Pentiums and other variations.
  252. > Here's a comparison using a Dell PII-266:
  253. > test_PIIa          { ; PII-266 @ 1024x768 time = 0:00:48.34
  254. >                      ; Running under Windows 95
  255. > (106% faster)
  256. > test_PIIb          { ; PII-266 @ 1024x768 time =  0:00:47.24
  257. >                      ; Win 95/ "showdot" turned off
  258. > (112% faster, switching showdot off speeds it up!)
  259. > test_PIIc          { ; PII-266 @ 1024x768 under DOS        t=  0:00:43.77
  260. >                      ; Running under DOS
  261. > (128% faster)
  262. > On other tests (under Win 95) I found the Pentium II to be
  263. > approx 30% faster than a P166.
  264. > (obviously PII technology wasn't designed with Fractint in mind<g>)
  265. >
  266.  
  267. I am curious as to the amount of RAM, the size of the Virtual Memory,
  268. and the type of hard-drive (EIDE or SCSI) and the drives access times on
  269. these machines.
  270.  
  271. I have been gathering my own stats for a few weeks now in various areas
  272. of performance, and am always interested in the full details for my
  273. studies.
  274.  
  275. P.N.L.
  276.  
  277. - ------------------------------------------------------------
  278. Thanks for using Fractint, The Fractals and Fractint Discussion List
  279. Post Message:   fractint@xmission.com
  280. Get Commands:   majordomo@xmission.com "help"
  281. Administrator:  twegner@phoenix.net
  282. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  283.  
  284. ------------------------------
  285.  
  286. Date: Thu, 14 Aug 1997 23:39:46 -0700
  287. From: jpreslar@memphisonline.com
  288. Subject: Re: (fractint) Deleting and Renaming
  289.  
  290. Les St Clair wrote:
  291. > Hi Janet,
  292. > >If there's not an easier way to delete and rename files<
  293. > It's not the answer you were looking for, but here's one possible solution:
  294. > If you're using windows..
  295. > 1. Get hold of Graphics Workshop for Windows (shareware, for free
  296. > evaluation)
  297. > 2. Fire up the program and disable "thumbnail view"
  298. > 3. Navigate to your chosen directory.
  299. > 4. Now you have a screen with all of the image file names in nice columns,
  300. > sorted alphabetically
  301. > 5. There's two handy icons on the toolbar -
  302. > 5.1 Delete (icon is a paper shredder!)
  303. > 5.2 Rename - just hit this button and type the new name, don't even need to
  304. > type the extension. Very quick.
  305. > 6. Use <alt><tab> to switch between Fractint and GWS. (to avoid possibly
  306. > scrambling the image between switches, <tab> to the info screen before
  307. > switching from Fractint to GWS.)
  308. > just a thought, Les
  309.  
  310. Thanks, Les, for the recommendation and handy instructions!
  311.  
  312. Janet
  313.  
  314. - ------------------------------------------------------------
  315. Thanks for using Fractint, The Fractals and Fractint Discussion List
  316. Post Message:   fractint@xmission.com
  317. Get Commands:   majordomo@xmission.com "help"
  318. Administrator:  twegner@phoenix.net
  319. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  320.  
  321. ------------------------------
  322.  
  323. Date: Thu, 14 Aug 1997 14:05:47 -0700
  324. From: "Jay Hill"<jrhill@NOTESGW.NOSC.MIL>
  325. Subject: Re: (fractint) Just a few to warm up with
  326.  
  327. Linda,
  328.  
  329. Now 4sg0001g  was interesting, and as usual I zoomed out to look around.
  330. Nearby I found this.  I'll put it on my web page in a day or so.
  331. http://www.geocities.com/CapeCanaveral/Lab/3825
  332.  
  333. Jay
  334.  
  335.  
  336. frm:040797-001 { ; by Linda Allison
  337.   ; gumbycat@ix.netcom.com
  338. z = c = pixel:
  339. z2 = (1/z ^^ p1)
  340. z = fn1(c * (1 - z2 ^^ z2)/(1 + z2 ^^ z2))
  341. |z| <= p2
  342. }
  343.  
  344. DomeCity           { ; Dome City by Jay Hill
  345.   ; Jay.R.Hill@cpmx.saic.com
  346.   reset=1920 type=formula formulafile=allison.par
  347.   formulaname=040797-001 function=log
  348.   center-mag=-0.40122352673824270/-0.05838366175140746/110./1.0/159
  349.   params=0.555/0/9/-9 float=y maxiter=500 inside=bof60 invert=-1/0/0
  350.   decomp=256
  351.   colors=xn_RXu<2>SZvT_wSZv<24>FKjEJiDIhCHgBGf<4>7C`6B_6AY59W<4>35N25M24K2\
  352.   3J12H01F<8>019018017016016015014003001001<13>los<13>SNCQL9QL9QL8QK7<24>t\
  353.   jWukXvlYxn_xn_wmZwmZ<28>RL7QK6QK7QL9<2>UQHVSKXUO<9>los<9>788<3>222000001\
  354.   <10>21D22E22F23G23I<7>37R37S48U58W<4>7Cd8De8De<24>QWt
  355.   }
  356.  
  357.  
  358.  
  359.  
  360. - ------------------------------------------------------------
  361. Thanks for using Fractint, The Fractals and Fractint Discussion List
  362. Post Message:   fractint@xmission.com
  363. Get Commands:   majordomo@xmission.com "help"
  364. Administrator:  twegner@phoenix.net
  365. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  366.  
  367. ------------------------------
  368.  
  369. Date: Fri, 15 Aug 1997 10:00:09 -0400
  370. From: Lee Skinner <LeeHSkinner@compuserve.com>
  371. Subject: (fractint) Re: Making my
  372.  
  373. Hi Les,
  374.  
  375. >>Of course, the best thing about zooming out is finding interesting new
  376. areas to zoom back into<g><<
  377.  
  378. Yes, indeed!!
  379.  
  380. >>am_mod11           { ; "Prairie Sunset"                     t=3D =
  381.  
  382. 0:33:36.86
  383.  
  384. Absolutely stunning!  I also liked your stormclouds image.
  385.  
  386. >>...sorry it's another s-l-o-w one.
  387.  
  388. Faster computers are coming - but this will only challenge us more - ther=
  389. e
  390. may always be slow ones!
  391.  
  392. Lee
  393.  
  394. - ------------------------------------------------------------
  395. Thanks for using Fractint, The Fractals and Fractint Discussion List
  396. Post Message:   fractint@xmission.com
  397. Get Commands:   majordomo@xmission.com "help"
  398. Administrator:  twegner@phoenix.net
  399. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  400.  
  401. ------------------------------
  402.  
  403. Date: Fri, 15 Aug 1997 08:14:25 -0600
  404. From: Kevin Smith <kevster@compusmart.ab.ca>
  405. Subject: (fractint) Info request: error message
  406.  
  407. Hi everyone
  408.  
  409. I'm attempting to save a formula file and parameter file as separate
  410. files in my fractint directory as test01.frm and test01.par
  411. respectively. I also edit the formula names in the files to reflect the
  412. required files. When I attempt to generate the images, an error message
  413. occurs that it can't find the file and it is unable to open the file in
  414. the required directory. What am I doing wrong?
  415.  
  416.  
  417. - -- 
  418. Regards
  419.  
  420. Kevin P. Smith
  421. kevster@compusmart.ab.ca
  422.  
  423. - ------------------------------------------------------------
  424. Thanks for using Fractint, The Fractals and Fractint Discussion List
  425. Post Message:   fractint@xmission.com
  426. Get Commands:   majordomo@xmission.com "help"
  427. Administrator:  twegner@phoenix.net
  428. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  429.  
  430. ------------------------------
  431.  
  432. Date: Fri, 15 Aug 1997 07:39:47 -0700
  433. From: "Mike or Linda Allison" <gumbycat@ix.netcom.com>
  434. Subject: Re: (fractint) Just a few to warm up with - me again!
  435.  
  436. Great Jay!  Did you zoom back into it again?  I did!  Here's what I got
  437. (new colormap, too).
  438.  
  439. DomeCity-zoom      { ; Zoom into Jay Hill's Domecity, which is zoom into 
  440.                      ; fractal by LAllison
  441.                      ; changed colormap, too
  442.                      ; Linda Allison gumbycat@ix.netcom.com
  443.   reset=1920 type=formula formulafile=all-frms.frm
  444.   formulaname=040797-001 function=log
  445.   center-mag=-0.40147432236812600/-0.05044919062026389/2200/1/159
  446.   params=0.555/0/9/-9 float=y maxiter=500 inside=bof60 invert=-1/0/0
  447.   decomp=256
  448.   colors=0D0<7>020000000001<14>8Ru9Ty9Sx<25>12L00J00I<16>000300600800<2>I1\
  449.   0L10O20R30<2>Z50a60c70e80<2>lC0nD0oE0qF0<3>wM0xN0xO0yQ0<2>zV0zW0yT0<2>sJ\
  450.   0qF0nE0mE0<6>T50Q30O30<4>C00<11>100000100200<5>B0BD0DE0G<20>k0x<8>K0N<18\
  451.   >402000<2>010020040<26>0d00f00e0<21>0D0
  452.   }
  453.  
  454. I'm really leaving now.  Mike is threatening to leave without me if I don't
  455. go offline and get in the car!!  
  456.  
  457. Boeff says "woof!"
  458. Linda
  459. http://www.geocities.com/~gumbycat
  460. (last partial update 8/15/97)
  461. http://www.fortunecity.com//tattooine/stephenson/5/abpf.html
  462. (the last 16 fractals uploaded to alt.binaries.pictures.fractals,
  463. last updated 8/13/97)
  464.  
  465.  
  466. - ----------
  467. > From: Jay Hill <jrhill@NOTESGW.NOSC.MIL>
  468. > To: fractint@mail.xmission.com
  469. > Subject: Re: (fractint) Just a few to warm up with
  470. > Date: Thursday, August 14, 1997 2:05 PM
  471. > Now 4sg0001g  was interesting, and as usual I zoomed out to look around.
  472. > Nearby I found this.  I'll put it on my web page in a day or so.
  473. > http://www.geocities.com/CapeCanaveral/Lab/3825
  474.  
  475.  
  476. - ------------------------------------------------------------
  477. Thanks for using Fractint, The Fractals and Fractint Discussion List
  478. Post Message:   fractint@xmission.com
  479. Get Commands:   majordomo@xmission.com "help"
  480. Administrator:  twegner@phoenix.net
  481. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  482.  
  483. ------------------------------
  484.  
  485. Date: Fri, 15 Aug 1997 11:04:05 -0600
  486. From: hluna@interware.com.mx (Horacio Luna)
  487. Subject: (fractint) Alternative fractal software for fractal newbies :)
  488.  
  489.     Hi, I just want to recommend a program that I found when I was
  490. fooling around, its name is Flarium, it is so easy to handle, that
  491. people who finds fractint a little dificult to begin, would be able to
  492. acomplish amazing things. Of course, as it is not as complex as
  493. fractint, someone who knows what to do with fractint, will find flarium
  494. very limited. If you are interested or just courious, give it a try, I
  495. found it in www.download.com, just write fractals in the search text
  496. field.
  497.  
  498. Best regards
  499.  
  500. Horacio
  501.  
  502.  
  503. - ------------------------------------------------------------
  504. Thanks for using Fractint, The Fractals and Fractint Discussion List
  505. Post Message:   fractint@xmission.com
  506. Get Commands:   majordomo@xmission.com "help"
  507. Administrator:  twegner@phoenix.net
  508. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  509.  
  510. ------------------------------
  511.  
  512. Date: Fri, 15 Aug 1997 11:17:39 -0600 (MDT)
  513. From: Jason Hine <jason@CNR.ColoState.EDU>
  514. Subject: (fractint) Truecolor question
  515.  
  516. Howdy folks...
  517.  
  518.     I'm trying to decipher just what's going on in that little bonus program 
  519. called TRU.C which comes with Fractint.  I'm able to compile it, and run it on a 
  520. .TGA image created with the truecolor=yes command, but I'm not sure I understand 
  521. the output.  Specifically, is the iteration number for each pixel a direct 
  522. interpretation of the actual number of iterations calculated for each pixel?  If 
  523. so, then:
  524.     a) What is the iteration number for a section of the lake?
  525.     b) Why are values larger than my max iter setting in Basic Options
  526.        ('x') being listed when I run TRU?
  527.        
  528.     Also, if anyone has any suggestions for info on the binary structure of 
  529. GIF files, I'd be interested in hearing from you.  Thanks for your input, and 
  530. the rest of the interesting posts!  I'm so psyched for this mailing list...
  531.     
  532.     Jason "Whee!" Hine
  533.  
  534. - ------------------------------------------------------------
  535. Thanks for using Fractint, The Fractals and Fractint Discussion List
  536. Post Message:   fractint@xmission.com
  537. Get Commands:   majordomo@xmission.com "help"
  538. Administrator:  twegner@phoenix.net
  539. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  540.  
  541. ------------------------------
  542.  
  543. Date: Fri, 15 Aug 1997 11:38:03 -0600
  544. From: Rich Thomson <rthomson@ptc.com>
  545. Subject: Re: (fractint) Re: deep zooms 
  546.  
  547. In article <199708150343.WAA23092@raid2.fddi.phoenix.net> ,
  548.     "Tim Wegner" <twegner@phoenix.net>  writes:
  549. > Incidently, I do not recommend permanently storing formulas inside 
  550. > PAR files. This feature is just for convenience, to faciltate a quick 
  551. > look when you download. After you've had a look, it is best to 
  552. > separate the formulas and put them in their own file with the .frm 
  553. > extension, and remove the "frm:" from the formula names.
  554.  
  555. I'm curious why fractint doesn't just unify all the different
  556. "parameter files" into a single file.  IFS, L-System, formula files
  557. and PAR files could all be unified into a single text file.  Is there
  558. a reason for the split?
  559. - --
  560.   ``Between stimulus and response is the will to choose.''  -- Steven Covey
  561.  =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  562.      3D Paint: The Power to Create in 3D;        Rich Thomson
  563.      email me for more info                rthomson@ptc.com
  564.  
  565. - ------------------------------------------------------------
  566. Thanks for using Fractint, The Fractals and Fractint Discussion List
  567. Post Message:   fractint@xmission.com
  568. Get Commands:   majordomo@xmission.com "help"
  569. Administrator:  twegner@phoenix.net
  570. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  571.  
  572. ------------------------------
  573.  
  574. Date: Fri, 15 Aug 1997 13:09:46 -0600
  575. From: hluna@interware.com.mx (Horacio Luna)
  576. Subject: (fractint) flarium update
  577.  
  578.     I was browsing the net looking for some amazing fractals, then I
  579. found a very interesting place:
  580.  
  581.     http://home1.gte.net/itriazon/Sharon.htm
  582.  
  583.     It worts the time.
  584.  
  585.     By the way, in the same place I found a link for flarium's home
  586. page, but if you want to download the program without visiting Sharons's
  587. (what a shame), here is the address:
  588.  
  589.     http://home1.gte.net/itriazon/itriazon.htm
  590.  
  591.     Regards
  592.  
  593.     Horacio
  594.  
  595.  
  596. - ------------------------------------------------------------
  597. Thanks for using Fractint, The Fractals and Fractint Discussion List
  598. Post Message:   fractint@xmission.com
  599. Get Commands:   majordomo@xmission.com "help"
  600. Administrator:  twegner@phoenix.net
  601. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  602.  
  603. ------------------------------
  604.  
  605. Date: Fri, 15 Aug 1997 17:01:46 -0400
  606. From: Sylvie Gallet <Sylvie_Gallet@compuserve.com>
  607. Subject: (fractint) Re: Making myself known
  608.  
  609. >> Of course, the best thing about zooming out is finding interesting new=
  610.  
  611. >> areas to zoom back into<g>
  612.  
  613. >> am_mod11         { ; "Prairie Sunset"                     t=3D  0:33:3=
  614. 6.86
  615.  
  616.   Great image, Les!
  617.  
  618.   Cheers,
  619.  
  620.  
  621. - ------------------------------------------------------------
  622. Thanks for using Fractint, The Fractals and Fractint Discussion List
  623. Post Message:   fractint@xmission.com
  624. Get Commands:   majordomo@xmission.com "help"
  625. Administrator:  twegner@phoenix.net
  626. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  627.  
  628. ------------------------------
  629.  
  630. Date: Fri, 15 Aug 1997 17:38:05 -0700
  631. From: "Peter Jakubowicz" <pfj@brigadoon.com>
  632. Subject: [none]
  633.  
  634. Hi. I've been playing with Fractint for a while now, having a lot of fun
  635. with it, but I feel as if I don't understand what I'm doing very deeply. I
  636. know the book that originally was written to accompany the program is long
  637. gone out of print because I've been searching for it. Is there a good
  638. general tutorial on the program out there? And what is a good general book
  639. on fractals, something somehere between pop science and a rigorous
  640. mathematical treatment? 
  641.  
  642.  
  643. - ------------------------------------------------------------
  644. Thanks for using Fractint, The Fractals and Fractint Discussion List
  645. Post Message:   fractint@xmission.com
  646. Get Commands:   majordomo@xmission.com "help"
  647. Administrator:  twegner@phoenix.net
  648. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  649.  
  650. ------------------------------
  651.  
  652. Date: Fri, 15 Aug 1997 15:11:41 PST
  653. From: NOEL_GIFFIN <noel@triumf.ca>
  654. Subject: (fractint) question for developers
  655.  
  656.     I understand that there has been a lot of pressure on the
  657. Fractint developers to add true-colour support, and I understand
  658. that there is also an effort being made to make fractint a 32 bit
  659. program, to use a flat memory model and to make the code more portable.
  660.  
  661.     I have some concern for existing features like colour cycling
  662. and palette editing, if true-colour displays are adopted. Won't Fractint
  663. have to switch graphics modes to utilize both truecolour and palette
  664. editing? Isn't this rather a problem in the windows 3.1 and win95
  665. environment. I'm not sure about win95 but I know that windows must be
  666. restarted after switching video modes. This makes this type of dual
  667. support next to impossible to implement in a program. What is the
  668. current line of thinking on this? Does this mean that Fractint will
  669. primarily remain a dos program or at least non-windows?
  670.  
  671.     Cheers,
  672.     Noel
  673.  
  674. - ------------------------------------------------------------
  675. Thanks for using Fractint, The Fractals and Fractint Discussion List
  676. Post Message:   fractint@xmission.com
  677. Get Commands:   majordomo@xmission.com "help"
  678. Administrator:  twegner@phoenix.net
  679. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  680.  
  681. ------------------------------
  682.  
  683. Date: Fri, 15 Aug 1997 15:42:23 -0600
  684. From: Rich Thomson <rthomson@ptc.com>
  685. Subject: (fractint) Re: good general book on fractals
  686.  
  687. In article <199708152131.OAA18423@siskiyou.brigadoon.com> ,
  688.     "Peter Jakubowicz" <pfj@brigadoon.com>  writes:
  689. > [...] And what is a good general book
  690. > on fractals, something somehere between pop science and a rigorous
  691. > mathematical treatment? 
  692.  
  693. I recommend Heinz-Otto Peitgen's "Chaos and Fractals".  It covers
  694. everything: M-set, dynamical systems, bifurcation diagrams, L-systems,
  695. etc.
  696. - --
  697.   ``Between stimulus and response is the will to choose.''  -- Steven Covey
  698.  =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  699.      3D Paint: The Power to Create in 3D;        Rich Thomson
  700.      email me for more info                rthomson@ptc.com
  701.  
  702. - ------------------------------------------------------------
  703. Thanks for using Fractint, The Fractals and Fractint Discussion List
  704. Post Message:   fractint@xmission.com
  705. Get Commands:   majordomo@xmission.com "help"
  706. Administrator:  twegner@phoenix.net
  707. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  708.  
  709. ------------------------------
  710.  
  711. Date: Fri, 15 Aug 1997 18:44:52 -0400 (EDT)
  712. From: aq936@freenet.carleton.ca (Michael Traynor)
  713. Subject: Re: (fractint) Re: Making my
  714.  
  715. Lee Skinner writes:
  716. >
  717. >Faster computers are coming - but this will only challenge us more - there
  718. >may always be slow ones!
  719.  
  720. May?
  721.  
  722. Computers only handle what is currently possible with the software because
  723. we keep the requirements down to what they can handle.  With fractint's
  724. current zoom capacity of 10^1600, it is already beyond the capacity of
  725. computers to produce the entire standard mandelbrot image at 10^1600, in
  726. 1024x768 chunks.
  727.  
  728. Math is bigger than physics and everything that inhabits its realm.
  729.  
  730. Now, finding images worth doing, slow or fast, is another thing entirely, and
  731. one that Lee Skinner (among many others) does much better than I.
  732.  
  733. - --
  734. Mike Traynor
  735.  
  736. People who like this sort of thing will find this the sort of thing they like.
  737.     Abraham Lincoln
  738.  
  739. - ------------------------------------------------------------
  740. Thanks for using Fractint, The Fractals and Fractint Discussion List
  741. Post Message:   fractint@xmission.com
  742. Get Commands:   majordomo@xmission.com "help"
  743. Administrator:  twegner@phoenix.net
  744. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  745.  
  746. ------------------------------
  747.  
  748. Date: Fri, 15 Aug 1997 17:42:34 -0600
  749. From: Rich Thomson <rthomson@ptc.com>
  750. Subject: Re: (fractint) question for developers 
  751.  
  752. In article <009B8D15.FFC3BFC0.17@triumf.ca> ,
  753.     NOEL_GIFFIN <noel@triumf.ca>  writes:
  754. >     I have some concern for existing features like colour cycling
  755. > and palette editing, if true-colour displays are adopted. Won't Fractint
  756. > have to switch graphics modes to utilize both truecolour and palette
  757. > editing? Isn't this rather a problem in the windows 3.1 and win95
  758. > environment. I'm not sure about win95 but I know that windows must be
  759. > restarted after switching video modes. This makes this type of dual
  760. > support next to impossible to implement in a program. What is the
  761. > current line of thinking on this? Does this mean that Fractint will
  762. > primarily remain a dos program or at least non-windows?
  763.  
  764. For a windows/win95 environment, there are two approaches:
  765.  
  766. 1. require the user to set their video mode to what the program wants.
  767. 2. require the program to conform to the video mode the user has set.
  768.  
  769. I personally am annoyed by programs of the #1 flavor.  For fractint to
  770. be a #2 flavor, this means that:
  771.  
  772.     a) "truecolor" renderings would have to be dithered to the current
  773.     color palette on a screen that isn't in truecolor mode.
  774.  
  775.     b) color cycling would either be emulated or disabled when you
  776.     aren't using a palette mapped display.
  777.  
  778.     Note that palette editing can still be done and applying a colormap
  779.     to an image can still be done, but the operation is more complex
  780.     than simply modifying the CLUT on the video card.
  781.  
  782. These are just the facts of life under Windows.
  783.  
  784. For DOS, its conceivable you could switch to the truecolor video mode;
  785. but again, you wouldn't have color cycling via the hardware in 24-bit
  786. mode.  It can be emulated, but the emulation is so slow at that point
  787. I don't think it will make people happy.  PC busses are just too slow
  788. for 24-bit color cycling emulation.
  789.  
  790. Think of fractint like this:
  791.  
  792.  
  793.           color palette -+
  794.                  |
  795.                  V
  796.     parameters -> "fractal"   -------> frame buffer ----> image
  797.            (iteration
  798.             count)
  799.  
  800. fractint uses the video hardware to handle the last stage of that
  801. pipeline -- mapping iteration counts to colors.  When in 24-bit mode,
  802. the palette editor and so on can still be used, but in that case fractint
  803. itself must take the iteration count and pump it through the palette
  804. table to get the 24-bit pixel that is stored in the frame buffer.
  805.  
  806. Similarly, when viewing 24-bit images under a limited color palette,
  807. fractint could do the obvious thing of picking a video hardware
  808. palette that selects the "best" 256 colors to represent the 24-bit
  809. image in a dithered fashion.  Even here "palette editing" is useful,
  810. because the palette defines the transformation of an iteration count
  811. into a pixel.  Furthermore, this view of a palette leads to palette
  812. depths limited only by the memory on your machine.  The fact that
  813. palettes are 256 entries deep is an artifact of fractint's assumption
  814. that a palette used to map iteration counts to (R,G,B) values is
  815. identical to the palette used by the video hardware on a PC.  This is
  816. a reasonable assumption for most programs.
  817.  
  818. Once you divorce this notion out of your code, you can have code that
  819. uses the hardware when possible, but isn't simply SOL when the
  820. hardware doesn't fit your model exactly.  I think the biggest thing
  821. limiting the future of the DOS fractint is its memory consumption and
  822. not its use of truecolor vs. 8bit.  At least that's how I understand
  823. it from recent comments from Tim :).  I am a newbie in the fractint
  824. developer community.
  825. - --
  826.   ``Between stimulus and response is the will to choose.''  -- Steven Covey
  827.  =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  828.      3D Paint: The Power to Create in 3D;        Rich Thomson
  829.      email me for more info                rthomson@ptc.com
  830.  
  831. - ------------------------------------------------------------
  832. Thanks for using Fractint, The Fractals and Fractint Discussion List
  833. Post Message:   fractint@xmission.com
  834. Get Commands:   majordomo@xmission.com "help"
  835. Administrator:  twegner@phoenix.net
  836. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  837.  
  838. ------------------------------
  839.  
  840. Date: Fri, 15 Aug 1997 18:45:59 -0500
  841. From: "Paul N. Lee" <Paul.N.Lee@Worldnet.att.net>
  842. Subject: Re: (fractint) question for developers
  843.  
  844. NOEL_GIFFIN wrote:
  845. > I understand that there has been a lot of pressure on the
  846. > Fractint developers to add true-colour support, and I understand
  847. > that there is also an effort being made to make fractint a 32 bit
  848. > program, to use a flat memory model and to make the code more
  849. > portable.
  850. > I have some concern for existing features like colour cycling
  851. > and palette editing, if true-colour displays are adopted.
  852. > Won't Fractint have to switch graphics modes to utilize both
  853. > truecolour and palette editing?  Isn't this rather a problem
  854. > in the windows 3.1 and win95 environment.  I'm not sure about
  855. > win95 but I know that windows must be restarted after switching
  856. > video modes.
  857. >
  858.  
  859. You don't have to reboot Win-95 to change the video mode to another
  860. resolution, there are various utilities that make this easier, like
  861. Microsoft's QuickRes.  But why would the display mode have to change
  862. when creating an image in either format?  You may not be able to view it
  863. correctly if your display is under one other than what was being
  864. generated, but it wouldn't stop the program from doing both.
  865.  
  866. >
  867. > This makes this type of dual support next to impossible to
  868. > implement in a program.  What is the current line
  869. > of thinking on this?  Does this mean that Fractint will
  870. > primarily remain a dos program or at least non-windows?
  871. >
  872.  
  873. - ------------------------------------------------------------
  874. Thanks for using Fractint, The Fractals and Fractint Discussion List
  875. Post Message:   fractint@xmission.com
  876. Get Commands:   majordomo@xmission.com "help"
  877. Administrator:  twegner@phoenix.net
  878. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  879.  
  880. ------------------------------
  881.  
  882. Date: Fri, 15 Aug 1997 18:35:03 -0700
  883. From: jpreslar@memphisonline.com
  884. Subject: (fractint) Re: 
  885.  
  886. Peter Jakubowicz wrote:
  887. > Hi. I've been playing with Fractint for a while now, having a lot of fun
  888. > with it, but I feel as if I don't understand what I'm doing very deeply.  Is there a good general tutorial on the program out there? 
  889.  
  890. Try Linda Allison's site at:
  891. http://www.geocities.com/Paris/5519/
  892.  
  893. She has written some really good tutorials on using Fractint which were
  894. of great help to me when I first started (Well, ok, they still are!) Her
  895. fractals are beautiful, too.
  896.  
  897. Janet
  898.  
  899. - ------------------------------------------------------------
  900. Thanks for using Fractint, The Fractals and Fractint Discussion List
  901. Post Message:   fractint@xmission.com
  902. Get Commands:   majordomo@xmission.com "help"
  903. Administrator:  twegner@phoenix.net
  904. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  905.  
  906. ------------------------------
  907.  
  908. Date: Fri, 15 Aug 1997 18:48:19 -0500
  909. From: "Paul N. Lee" <Paul.N.Lee@Worldnet.att.net>
  910. Subject: Re: (fractint) Truecolor question
  911.  
  912. Jason Hine wrote:
  913. >
  914. > Also, if anyone has any suggestions for info on the binary
  915. > structure of GIF files, I'd be interested in hearing from you.
  916. >
  917.  
  918.  
  919.      Encyclopedia of Graphics File Formats, 2nd Edition
  920.          written by James D. Murray and William vanRyper
  921.          published by O'Reilly & Associates, Inc.
  922.          http://www.ora.com/
  923.  
  924.  
  925.  
  926. ====== GIF ======
  927. Also Known As: Graphics Interchange Format
  928. - --------------------------------------------------------------------
  929.  Type                      Bitmap
  930.  Colors                    1 to 8 bit
  931.  Compression               LZW
  932.  Maximum Image             Size64Kx64K pixels
  933.  Multiple Images Per File  Yes
  934.  Numerical Format          Little-endian
  935.  Originator                CompuServe, Inc.
  936.  Platform                  MS-DOS, Macintosh, UNIX, Amiga, others
  937.  Supporting Applications   Too numerous to list
  938.  See Also                  Chapter 9, Data Compression 
  939.  
  940. Usage
  941. Originally designed to facilitate image transfer and online storage for
  942. use by CompuServe and its customers, GIF is primarily an exchange and
  943. storage format, although it is based on, and is supported by, many
  944. applications. 
  945.  
  946. Comments
  947. A well-defined, well-documented format in wide use, which is quick, easy
  948. to read, and reasonably easy to uncompress. It lacks, however, support
  949. for the storage of deep-pixel images. 
  950.  
  951. Vendor specifications are available for this format. 
  952.  
  953. Code fragments are available for this format. 
  954.  
  955. Sample images are available for this format. 
  956.  
  957. The following software packages can process this format: 
  958.  
  959. Microsoft Windows Software: 
  960. ò       CompuPic 
  961. ò       Graphics Viewer 
  962. ò       GraphX Viewer 
  963. ò       Graphic Workshop for Windows 
  964. ò       LView Pro 
  965. ò       Paint Shop Pro 
  966. ò       PhotoLab 
  967. ò       Picture Man 
  968. ò       Ulead Viewer 
  969. ò       VuePrint 
  970. ò       WinJPEG 
  971.  
  972. MS-DOS Software: 
  973. ò       Graphics Display System (GDS) 
  974. ò       gif2dxf 
  975. ò       Graphic Workshop 
  976. ò       IMDISP 
  977. ò       PICLAB 
  978. ò       QPV 
  979. ò       VPIC 
  980.  
  981. OS/2 Software: 
  982. ò       GBM (Generalized Bitmap Module) 
  983. ò       PMJPEG (Presentation Manager JPEG) 
  984.  
  985. UNIX Software: 
  986. ò       xli 
  987. ò       xv (X Viewer) 
  988.  
  989. Source Code: 
  990. ò       FBM (Fuzzy Pixmap Manipulation) 
  991. ò       GBM (Generalized Bitmap Module) 
  992. ò       giftrans 
  993. ò       Extended Portable Bitmap Toolkit (pbmlus) 
  994. ò       Piclab Source 
  995. - --------------------------------------------------------------------
  996.  
  997. GIF (Graphics Interchange Format) is a creation of CompuServe and is
  998. used to store multiple bitmap images in a single file for exchange
  999. between platforms and systems. In terms of number of files in existence,
  1000. GIF is perhaps the most widely used format for storing multibit graphics
  1001. and image data. Even a quick peek into the graphics file section of most
  1002. BBSs and file archives seems to prove this true. Many of these are
  1003. high-quality images of people, landscapes, cars, astrophotographs, and
  1004. anthropometric gynoidal data (you guess what that is). Shareware
  1005. libraries and BBSs are filled with megabytes of GIF images. 
  1006.  
  1007. The vast majority of GIF files contain 16-color or 256-color
  1008. near-photographic quality images. Gray-scale images, such as those
  1009. produced by scanners, are also commonly stored using GIF, although
  1010. monochrome graphics, such as clip art and document images, rarely are. 
  1011.  
  1012. Although the bulk of GIF files are found in the Intel-based MS-DOS
  1013. environment, GIF is not associated with any particular software
  1014. application. GIF also was not created for any particular software
  1015. application need, although most software applications that read and
  1016. write graphical image data, such as paint programs, scanner and video
  1017. software, and most image file display and conversion programs, usually
  1018. support GIF. GIF was instead intended to allow the easy interchange and
  1019. viewing of image data stored on local or remote computer systems. 
  1020.  
  1021.   File Organization
  1022. - ---------------------
  1023. GIF is different from many other common bitmap formats in the sense that
  1024. it is stream-based. It consists of a series of data packets, called
  1025. blocks, along with additional protocol information. Because of this
  1026. arrangement, GIF files must be read as if they are a continuous stream
  1027. of data. The various blocks and sub-blocks of data defined by GIF may be
  1028. found almost anywhere within the file. This uncertainty makes it
  1029. difficult to encapsulate every possible arrangement of GIF data in the
  1030. form of C structures. 
  1031.  
  1032. There are a number of different data block categories, and each of the
  1033. various defined blocks falls into one of these categories. In GIF
  1034. terminology, a Graphics Control Extension block is a type of Graphics
  1035. Control block, for instance. In like manner, Plain Text Extension blocks
  1036. and the Local Image Descriptor are types of Graphic Rendering blocks.
  1037. The bitmap data is an Image Data block. Comment Extension and
  1038. Application Extension blocks are types of Special Purpose blocks. 
  1039.  
  1040. Blocks, in addition to storing fields of information, can also contain
  1041. sub-blocks. Each data sub-block begins with a single count byte, which
  1042. can be in the range of 1 to 255 and indicates the number of data bytes
  1043. that follow the count byte. Multiple sub-blocks may occur in a
  1044. contiguous grouping (count byte, data bytes, count byte, data bytes, and
  1045. so on). A sequence of one or more data sub-blocks is terminated by a
  1046. count byte with a value of zero. 
  1047.  
  1048. The GIF format is capable of storing bitmap data with pixel depths of 1
  1049. to 8 bits. Images are always stored using the RGB color model and
  1050. palette data. GIF is also capable of storing multiple images per file,
  1051. but this capability is rarely utilized, and the vast majority of GIF
  1052. files contain only a single image. Most GIF file viewers do not, in
  1053. fact, support the display of multiple image GIF files or may display
  1054. only the first image stored in the file. For these reasons, we recommend
  1055. not creating applications that rely on multiple images per file, even
  1056. though the specification allows this. 
  1057.  
  1058. The image data stored in a GIF file is always LZW compressed. See
  1059. Chapter 9 for a discussion of LZW and other compression methods (and
  1060. also see the sidebar below). This algorithm reduces strings of identical
  1061. byte values into a single code word and is capable of reducing the size
  1062. of typical 8-bit pixel data by 40 percent or more. The ability to store
  1063. uncompressed data, or data encoded using a different compression
  1064. algorithm, is not supported in the current version of the GIF format. 
  1065.  
  1066.   LZW Is Not Free 
  1067. - -------------------
  1068. If you are creating or modifying software that implements the LZW
  1069. algorithm, be aware that under certain circumstances, you will need to
  1070. pay a licensing fee for the use of LZW. 
  1071.  
  1072. Unisys Corporation owns the patent for the LZW codec (encoding/decoding
  1073. algorithm) and requires that a licensing fee be paid for each software
  1074. program that implements the LZW algorithm. 
  1075.  
  1076. Many people have concluded that the Unisys licensing claim applies only
  1077. to LZW encoders (software that creates LZW data) and not to LZW decoders
  1078. (software that only reads LZW data). However, Unisys believes that its
  1079. patent covers the full LZW codec and requires a licensing fee even for
  1080. software that reads, but does not write, LZW data. 
  1081.  
  1082. For more information about the entire issue of LZW licensing, refer to
  1083. the section called "LZW Legal Issues" in Chapter 9. For a popular
  1084. alternative to graphics file formats that use LZW, consider using the
  1085. Portable Network Graphics (PNG) file format. 
  1086.  
  1087. There are two revisions of the GIF specification, both of which have
  1088. been widely distributed. The original revision was GIF87a, and many
  1089. images were created in this format. The current revision, GIF89a, adds
  1090. several capabilities, including the ability to store text and graphics
  1091. data in the same file. If you are supporting GIF, you should include
  1092. support for both the 87a and 89a revisions. It is a mistake to support
  1093. only the 89a version, because many applications continue to produce only
  1094. 87a version files for backward compatibility. 
  1095.  
  1096.   File Details
  1097. - ----------------
  1098. The "GIF87a" section here discusses features common to both versions;
  1099. the "GIF89a" section describes only the features added in GIF89a. 
  1100.  
  1101.   GIF87a
  1102. - ----------
  1103. Version 87a is the original GIF format introduced in May 1987 and is
  1104. read by all major software applications supporting the GIF format. 
  1105.  
  1106. Figure GIF-1 illustrates the basic layout of a GIF87a file. Each file
  1107. always begins with a Header and a Logical Screen Descriptor. A Global
  1108. Color Table may optionally appear after the Logical Screen Descriptor.
  1109. Each of these three sections is always found at the same offset from the
  1110. start of the file. Each image stored in the file contains a Local Image
  1111. Descriptor, an optional Local Color Table, and a block of image data.
  1112. The last field in every GIF file is a Terminator character, which
  1113. indicates the end of the GIF data stream. 
  1114.  
  1115. Figure GIF-1: GIF87a file layout
  1116.  ______________________________
  1117. |          missing             |
  1118. |______________________________|
  1119.  
  1120.   Header
  1121. - ----------
  1122. The Header is six bytes in size and is used only to identify the file as
  1123. type GIF. The Logical Screen Descriptor, which may be separate from the
  1124. actual file header, may be thought of as a second header. We may
  1125. therefore store the Logical Screen Descriptor information in the same
  1126. structure as the Header: 
  1127.  
  1128. typedef struct _GifHeader
  1129. {
  1130.   // Header
  1131.   BYTE Signature[3];     /* Header Signature (always "GIF") */
  1132.   BYTE Version[3];       /* GIF format version("87a" or "89a") */
  1133.   // Logical Screen Descriptor
  1134.   WORD ScreenWidth;      /* Width of Display Screen in Pixels */
  1135.   WORD ScreenHeight;     /* Height of Display Screen in Pixels */
  1136.   BYTE Packed;           /* Screen and Color Map Information */
  1137.   BYTE BackgroundColor;  /* Background Color Index */
  1138.   BYTE AspectRatio;      /* Pixel Aspect Ratio */
  1139. } GIFHEAD;
  1140.  
  1141.  
  1142. Signature is three bytes in length and contains the characters GIF as an
  1143. identifier. All GIF files start with these three bytes, and any file
  1144. that does not should not be read by an application as a GIF image file. 
  1145.  
  1146. Version is also three bytes in length and contains the version of the
  1147. GIF file. There are currently only two versions of GIF: 87a (the
  1148. original GIF format) and 89a (the new GIF format). Some GIF87a file
  1149. viewers may be able to read GIF89a files, although the stored image data
  1150. may not display correctly. 
  1151.  
  1152.   Logical Screen Descriptor
  1153. - -----------------------------
  1154. The Logical Screen Descriptor contains information describing the screen
  1155. and color information used to create and display the GIF file image. 
  1156.  
  1157. The ScreenHeight and ScreenWidth fields contain the minimum screen
  1158. resolution required to display the image data. If the display device is
  1159. not capable of supporting the specified resolution, some sort of scaling
  1160. will be necessary to properly display the image. 
  1161.  
  1162. Packed contains the following four subfields of data (bit 0 is the least
  1163. significant bit, or LSB): 
  1164.  
  1165.  Bits 0-2 Size of the Global Color Table
  1166.   Bit 3   Color Table Sort Flag
  1167.  Bits 4-6 Color Resolution
  1168.   Bit 7   Global Color Table Flag  
  1169.  
  1170. The Size of the Global Color Table subfield contains the number of bits
  1171. in each Global Color Table entry minus one. For example, if an image
  1172. contains 8 bits per pixel, the value of this field is 7. The total
  1173. number of elements in the Global Color Table is calculated by shifting
  1174. the value one to the left by the value in this field: 
  1175.  
  1176. NumberOfGlobalColorTableEntries = 
  1177.      (1L << (SizeOfTheGlobalColorTable + 1));
  1178.  
  1179. The Size of the Global Color Table subfield is always set to the proper
  1180. size even if there is no Global Color Table (i.e., the Global Color
  1181. Table Flag subfield is set to 0). If the Color Table Sort Flag subfield
  1182. is 1, then the Global Color Table entries are sorted from the most
  1183. important (most frequently occurring color in the image) to the least
  1184. important. Sorting the colors in the color table aids an application in
  1185. choosing the colors to use with display hardware that has fewer
  1186. available colors than the image data. The Sort flag is only valid under
  1187. version 89a of GIF. Under version 87a, this field is reserved and is
  1188. always set to 0. 
  1189.  
  1190. The Color Resolution subfield is set to the number of bits in an entry
  1191. of the original color palette minus one. This value equates to the
  1192. maximum size of the original color palette. For example, if an image
  1193. originally contained eight bits per primary color, the value of this
  1194. field would be 7. The Global Color Table Flag subfield is set to 1 if a
  1195. Global Color Table is present in the GIF file, and 0 if one is not.
  1196. Global Color Table data, if present, always follows the Logical Screen
  1197. Descriptor header in the GIF file. 
  1198.  
  1199. BackgroundColor in the Logical Screen Descriptor contains an index value
  1200. into the Global Color Table of the color to use for the border and
  1201. background of the image. The background is considered to be the area of
  1202. the screen not covered by the GIF image. If there is no Global Color
  1203. Table (i.e., the Global Color Table Flag subfield is set to 0), this
  1204. field is unused and should be ignored. 
  1205.  
  1206. AspectRatio contains the aspect ratio value of the pixels in the image.
  1207. The aspect ratio is the width of the pixel divided by the height of the
  1208. pixel. This value is in the range of 1 to 255 and is used in the
  1209. following calculation: 
  1210.  
  1211.         PixelAspectRatio = (AspectRatio + 15) / 64;
  1212.  
  1213. If this field is 0, then no aspect ratio is specified. 
  1214.  
  1215.   Global Color Table
  1216. - ----------------------
  1217. The Logical Screen Descriptor may be followed by an optional Global
  1218. Color Table. This color table, if present, is the color map used to
  1219. index the pixel color data contained within the image data. If a Global
  1220. Color Table is not present, each image stored in the GIF file contains a
  1221. Local Color Table that it uses in place of a Global Color Table. If
  1222. every image in the GIF file uses its own Local Color Table, then a
  1223. Global Color Table may not be present in the GIF file. If neither a
  1224. Global nor a Local Color Table is present, make sure your application
  1225. supplies a default color table to use. It is suggested that the first 
  1226. entry of a default color table be the color black and the second entry
  1227. be the color white. 
  1228.  
  1229. Global Color Table data always follows the Logical Screen Descriptor
  1230. information and varies in size depending upon the number of entries in
  1231. the table. The Global Color Table is a series of three-byte triples
  1232. making up the elements of the color table. Each triple contains the red,
  1233. green, and blue primary color values of each color table element: 
  1234.  
  1235. typedef struct _GifColorTable
  1236. {
  1237.   BYTE Red;          /* Red Color Element       */
  1238.   BYTE Green;        /* Green Color Element     */
  1239.   BYTE Blue;         /* Blue Color Element      */
  1240. } GIFCOLORTABLE;
  1241.  
  1242. The number of entries in the Global Color Table is always a power of two
  1243. (2, 4, 8, 16, and so on), up to a maximum of 256 entries. The size of
  1244. the Global Color Table in bytes is calculated by using bits 0, 1, and 2
  1245. in the Packed field of the Logical Image Descriptor in the following
  1246. way: 
  1247.  
  1248. ColorTableSize = 3L * (1L << (SizeOfGlobalColorTable + 1));
  1249.  
  1250. The Header, Logical Screen Descriptor, and Global Color Map data are
  1251. followed by one or more sections of image data. Each image in a GIF file
  1252. is stored separately, with an Image Descriptor and possibly a Local
  1253. Color Table. The Image Descriptor is similar to a header and contains
  1254. information only about the image data that immediately follows it. The
  1255. Local Color Table contains color information specific only to that image
  1256. data and may or may not be present. 
  1257.  
  1258.   Local Image Descriptor
  1259. - --------------------------
  1260. The Local Image Descriptor appears before each section of image data and
  1261. has the following structure: 
  1262.  
  1263. typedef struct _GifImageDescriptor
  1264. {
  1265.   BYTE Separator;    /* Image Descriptor identifier */
  1266.   WORD Left;         /* X position of image on the display */
  1267.   WORD Top;          /* Y position of image on the display */
  1268.   WORD Width;        /* Width of the image in pixels */
  1269.   WORD Height;       /* Height of the image in pixels */
  1270.   BYTE Packed;       /* Image and Color Table Data Information */
  1271. } GIFIMGDESC;
  1272.  
  1273. Separator contains the value 2Ch and denotes the beginning of the Image
  1274. Descriptor data block. 
  1275.  
  1276. Left and Top are the coordinates in pixels of the upper-left corner of
  1277. the image on the logical screen. The upper-left corner of the screen is
  1278. considered to be coordinates 0,0. 
  1279.  
  1280. Width and Height are the size of the image in pixels. 
  1281.  
  1282. Packed contains the following five subfields of data (bit 0 is the LSB): 
  1283.   Bit 0 Local Color Table Flag
  1284.   Bit 1 Interlace Flag
  1285.   Bit 2 Sort Flag
  1286.  Bits 3-4 Reserved
  1287.  Bits 5-7 Size of Local Color Table Entry  
  1288.  
  1289. The Local Color Table Flag subfield is 1 if a Local Color Table is
  1290. associated with this image. If the value of this subfield is 0, then
  1291. there is no Local Color Table present, and the Global Color Table data
  1292. should be used instead. 
  1293.  
  1294. The Interlace Flag subfield is 1 if the image is interlaced and 0 if it
  1295. is non-interlaced. (See the description of Image Data for an explanation
  1296. of interlaced image data.) 
  1297.  
  1298. The Sort Flag subfield indicates whether the entries in the color table
  1299. have been sorted by their order of importance. Importance is usually
  1300. decided by the frequency of occurrence of the color in the image data. A
  1301. value of 1 indicates a sorted color table, while a value of 0 indicates
  1302. a table with unsorted color values. The Sort Flag subfield value is
  1303. valid only under version 89a of GIF. Under version 87a, this field is
  1304. reserved and is always set to 0. 
  1305.  
  1306. The Size of Local Color Table Entry subfield is the number of bits per
  1307. entry in the Local Color Table. If the Local Color Table Flag subfield
  1308. is set to 0, then this subfield is also set to 0. 
  1309.  
  1310.   Local Color Table
  1311. - ---------------------
  1312. If a Local Color Table is present, it immediately follows the Local
  1313. Image Descriptor and precedes the image data with which it is
  1314. associated. The format of all Local Color Tables is identical to that of
  1315. the Global Color Table. Each element is a series of 3-byte triples
  1316. containing the red, green, and blue primary color values of each element
  1317. in the Local Color Table: 
  1318.  
  1319. typedef struct _GifColorTable
  1320. {
  1321.   BYTE Red;            /* Red Color Element */
  1322.   BYTE Green;          /* Green Color Element */
  1323.   BYTE Blue;           /* Blue Color Element */
  1324. } GIFCOLORTABLE;
  1325.  
  1326. The number of entries and the size in bytes of the Local Color Table is
  1327. calculated in the same way as the Global Color Table: 
  1328.  
  1329. ColorTableSize = 3L * (1L << (SizeOfLocalColorTable + 1));
  1330. ColorTableNumberOfEntries = 1L << (SizeOfLocalColorTable
  1331.      + 1);
  1332.  
  1333. A Local Color Table only affects the image it is associated with and, if
  1334. it is present, its data supersedes that of the Global Color Table. Each
  1335. image may have no more than one Local Color Table. 
  1336.  
  1337.   Image data
  1338. - --------------
  1339. GIF files do not compress well when stored using file archivers such as
  1340. pkzip and zoo. This is because the image data found in every GIF file is
  1341. always compressed using the LZW (Lempel-Ziv-Welch) encoding scheme, the
  1342. same compression algorithm used by most file archivers. (See the sidebar
  1343. about LZW at the beginning of this article.) Compressing a GIF file is
  1344. therefore a redundant operation, which rarely results in smaller files
  1345. and is usually not worth the time and effort involved in the attempt. 
  1346.  
  1347. Normally when LZW-encoded image data is stored in a graphics file
  1348. format, it is arranged as a continuous stream of data that is read from
  1349. beginning to end. The GIF format, however, stores encoded image data as
  1350. a series of data sub-blocks. 
  1351.  
  1352. Each data sub-block begins with a count byte. The value of the count
  1353. byte may range from 1 to 255 and indicates the number of data bytes in
  1354. the sub-block. The data blocks immediately follow the count byte. A
  1355. contiguous group of data blocks is terminated by a byte with a zero
  1356. value. This may be viewed as either a terminator value or as a sub-block
  1357. with a count byte value of zero; in either case, it indicates that no
  1358. data bytes follow. 
  1359.  
  1360. Because GIF files do not contain a contiguous stream of LZW-encoded
  1361. data, each sub-block must be read and the data sent to an LZW decoder.
  1362. Most sub-blocks storing image data will be 255 bytes in length, so this
  1363. is an excellent maximum size to use for the buffer that will hold the
  1364. encoded image data. Also, the LZW encoding process does not keep track
  1365. of where each scan line begins and ends. It is therefore likely that one
  1366. scan line will end and another begin in the middle of a sub-block of
  1367. image data. 
  1368.  
  1369. The format of the decoded GIF image data is fairly straightforward. Each
  1370. pixel in a decoded scan line is always one byte in size and contains an
  1371. index value into either a Global or Local Color Table. Although the
  1372. structure of the GIF format is quite capable of storing color
  1373. information directly in the image data (thus bypassing the need for a
  1374. color table), the GIF specification does not specify this as a possible
  1375. option. Therefore, even 1-bit image data must use 8-bit index values and
  1376. a 2-entry color table. 
  1377.  
  1378. GIF image data is always stored by scan line and by pixel. GIF does not
  1379. have the capability to store image data as planes, so when GIF files are
  1380. displayed using plane-oriented display adapters, quite a bit of
  1381. buffering, shifting, and masking of image data must first occur before
  1382. the GIF image can be displayed. 
  1383.  
  1384. The scan lines making up the GIF bitmap image data are normally stored
  1385. in consecutive order, starting with the first row and ending with the
  1386. last. The GIF format also supports an alternate way to store rows of
  1387. bitmap data in an interlaced order. Interlaced images are stored as
  1388. alternating rows of bitmap data. If you have ever viewed a GIF file that
  1389. appeared on the screen as a series of four "wipes" that jumped across
  1390. the screen as the image was displayed, you were viewing an interlaced
  1391. GIF file. 
  1392.  
  1393. Figure GIF-2 compares the order of rows stored in an interlaced and
  1394. non-interlaced format. In the non-interlaced format, the rows of bitmap
  1395. data are stored starting with the first row and continuing sequentially
  1396. to the last row. This is the typical storage format for most bitmap file
  1397. formats. The interlaced format, however, stores the rows out of the
  1398. normal sequence. All the even rows are stored first and all the odd rows
  1399. are stored last. We can also see that each successive pass usually
  1400. encodes more rows than the previous pass. 
  1401.  
  1402. GIF uses a four-pass interlacing scheme. The first pass starts on row 0
  1403. and reads every eighth row of bitmap data. The second pass starts on the
  1404. fourth row and reads every eighth row of data. The third pass starts on
  1405. the second row and reads every fourth row. The final pass begins on the
  1406. first row and reads every second row. Using this scheme, all of the rows
  1407. of bitmap data are read and stored. 
  1408.  
  1409. Figure GIF-2: Arrangement of interlaced and non-interlaced scan lines
  1410.  _________________________
  1411. |       missing           |
  1412. |_________________________|
  1413.  
  1414. Why interlace a GIF image? Interlacing might seem to make the reading,
  1415. writing, and displaying of the image data more difficult, and of course
  1416. it does. Does this arrangement somehow make the image easier to display
  1417. on interlaced monitors? The answer lies in one of the original purposes
  1418. of GIF. 
  1419.  
  1420. GIF was designed as an image communications protocol used for the
  1421. interactive viewing of online images. A user connected to an information
  1422. service via a modem could not only download a GIF image, but could also
  1423. see it appear on his or her display screen as it was being downloaded.
  1424. If a GIF image were stored in a non-interlaced format, the GIF image
  1425. would display in a progressive fashion starting at the top of the screen
  1426. and ending at the bottom. After 50 percent of the download was
  1427. completed, only the top half of the GIF image would be visible. An
  1428. interlaced image, however, would display starting with every eighth row,
  1429. then every fourth row, then every second row, and so on. When the
  1430. download of an interlaced GIF image was only 50 percent complete, the
  1431. entire contents of the image could be discerned even though only half
  1432. the image had been displayed. The viewer's eye and brain would simply
  1433. fill in the missing half. 
  1434.  
  1435. Interlacing presents a problem when converting a GIF image from one
  1436. format to another. A scan-line table must be created to write out the
  1437. scan lines in their proper, non-interlaced order. The following sample
  1438. code is used to produce a scan-line table of an interlaced image: 
  1439.  
  1440. WORD i, j;
  1441. WORD RowTable1[16];
  1442. WORD RowTable2[16];
  1443. WORD ImageHeight = 16;            /* 16 lines in the GIF image */
  1444. for (i = 0; i < ImageHeight; i++)    /* Initialize source array*/
  1445.      RowTable1[i] = i;
  1446. j = 0;
  1447. for (i = 0; i < ImageHeight; i += 8, j++)  /* Interlace Pass 1 */
  1448.      RowTable2[i] = RowTable1[j];
  1449. for (i = 4; i < ImageHeight; i += 8, j++)  /* Interlace Pass 2 */
  1450.      RowTable2[i] = RowTable1[j];
  1451. for (i = 2; i < ImageHeight; i += 4, j++)  /* Interlace Pass 3 */
  1452.      RowTable2[i] = RowTable1[j];
  1453. for (i = 1; i < ImageHeight; i += 2, j++)  /* Interlace Pass 4 */
  1454.      RowTable2[i] = RowTable1[j];
  1455.  
  1456. The array RowTable1[] contains the mapping of the scan lines in a
  1457. non-interlaced image, which in this example are the values 0 to 15 in
  1458. consecutive order. The array RowTable2[] is then initialized by the
  1459. interlacing code to contain the mapping of the scan lines of the
  1460. interlaced image: 
  1461.  
  1462. RowTable1[]  RowTable2[]
  1463. 0            0
  1464. 1            8
  1465. 2            4
  1466. 3            9
  1467. 4            2
  1468. 5            10
  1469. 6            5
  1470. 7            11
  1471. 8            1
  1472. 9            12
  1473. 10           6
  1474. 11           13
  1475. 12           3
  1476. 13           14
  1477. 14           7
  1478. 15           15
  1479.  
  1480. We can restore the non-interlaced image by stepping through the values
  1481. stored in RowTable2[]. The 0th row of the non-interlaced image is the
  1482. 0th row of the interlaced image. The first row of the non-interlaced
  1483. image is the eighth row of the interlaced image. The second row of the
  1484. non-interlaced image is the fourth row of the interlaced image, and so
  1485. on. 
  1486.  
  1487.   Trailer
  1488. - -----------
  1489. The Trailer is a single byte of data that occurs as the last character
  1490. in the file. This byte value is always 3Bh and indicates the end of the
  1491. GIF data stream. A trailer must appear in every GIF file. 
  1492.  
  1493.   GIF89a
  1494. - ----------
  1495. Version 89a is the most recent revision of the GIF image file format and
  1496. was introduced in July of 1989. Although the GIF89a format is very
  1497. similar to GIF 87a, it contains several additional blocks of information
  1498. not defined in the 87a specification. For this reason GIF89a image files
  1499. may not be read and displayed properly by applications that read only 
  1500. GIF87a image files. Many of these programs do not not attempt to display
  1501. an 89a image file, because the version number "89a" will not be
  1502. recognized. Although changing the version number from "89a" to "87a"
  1503. will solve this problem, the GIF image data may still not display
  1504. properly, for reasons we shall soon see. 
  1505.  
  1506. Figure GIF-3 illustrates the basic layout of a GIF89a image file. Just
  1507. as with version 87a, the 89a version also begins with a Header, a
  1508. Logical Screen Descriptor, and an optional Global Color Table. Each
  1509. image also contains a Local Image Descriptor, an optional Local Color
  1510. Table, and a block of image data. The trailer in every GIF89a file
  1511. contains the same values found in 87a files. 
  1512.  
  1513. Version 89a added a new feature to the GIF format called Control
  1514. Extensions. These extensions to the GIF87a format are specialized blocks
  1515. of information used to control the rendering of the graphical data
  1516. stored within a GIF image file. The design of GIF87a only allowed the
  1517. display of images one at a time in a "slide show" fashion. Through the
  1518. interpretation and use of Control Extension data, GIF89a allows both
  1519. textual and bitmap-based graphical data to be displayed, overlaid, and
  1520. deleted as in an animated multimedia presentation. 
  1521.  
  1522. The four Control Extensions introduced by GIF89a are the Graphics
  1523. Control Extension, the Plain Text Extension, the Comment Extension, and
  1524. the Application Extension, summarized here and described in greater
  1525. detail in the sections below. 
  1526.  
  1527. Graphics Control Extension blocks control how the bitmap or plain-text
  1528. data found in a Graphics Rendering block is displayed. Such control
  1529. information includes whether the graphic is to be overlaid in a
  1530. transparent or opaque fashion over another graphic, whether the graphic
  1531. is to be restored or deleted, and whether user input is expected before
  1532. continuing with the display of the GIF file data. 
  1533.  
  1534. Plain Text Extension blocks allow the mixing of plain-text ASCII
  1535. graphics with bitmapped image data. Many GIF images contain
  1536. human-readable text that is actually part of the bitmap data itself.
  1537. Using the Plain Text Extension, captions that are not actually part of
  1538. the bitmapped image may be overlaid onto the image. This can be
  1539. invaluable when it is necessary to display textual data over an image,
  1540. but it is inconvenient to alter the bitmap to include this information.
  1541. It is even possible to construct an 89a file that contains only
  1542. plain-text data and no bitmap image data at all. 
  1543.  
  1544.          (lot's more available)
  1545.  
  1546. - ------------------------------------------------------------
  1547. Thanks for using Fractint, The Fractals and Fractint Discussion List
  1548. Post Message:   fractint@xmission.com
  1549. Get Commands:   majordomo@xmission.com "help"
  1550. Administrator:  twegner@phoenix.net
  1551. Unsubscribe:    majordomo@xmission.com "unsubscribe fractint"
  1552.  
  1553. ------------------------------
  1554.  
  1555. End of fractint Digest V1 #4
  1556. ****************************
  1557.  
  1558. To subscribe to fractint Digest, send the command:
  1559.  
  1560.     subscribe fractint-digest
  1561.  
  1562. in the body of a message to "majordomo@xmission.com".  If you want to
  1563. subscribe something other than the account the mail is coming from, such
  1564. as a local redistribution list, then append that address to the
  1565. "subscribe" command; for example, to subscribe "local-fractint":
  1566.  
  1567.     subscribe fractint-digest local-fractint@your.domain.net
  1568.  
  1569. A non-digest (direct mail) version of this list is also available; to
  1570. subscribe to that instead, replace all instances of "fractint-digest"
  1571. in the commands above with "fractint".
  1572.  
  1573. Back issues are available for anonymous FTP from ftp.xmission.com, in
  1574. pub/lists/fractint/archive.  These are organized by date.
  1575.  
  1576.