home *** CD-ROM | disk | FTP | other *** search
/ Computer Club Elmshorn Atari PD / CCE_PD.iso / pc / 0600 / CCE_0651.ZIP / CCE_0651.PD / MNDL_INT.226 / MNDL_INT.TXT < prev    next >
Text File  |  1993-11-12  |  44KB  |  738 lines

  1. [   Foreign users: you can rename MNDL_ENG.RSC to MNDL_INT.RSC to get an english 
  2.     resource file for the program. A translation of this text will be made 
  3.     available if there is sufficient demand. Please drop me a note, e.g. on 
  4.     Atari Benelux BBS (Holland ..-31-3473-77584), or on the address below. ]
  5.  
  6.  
  7.                 MANDELBROT/JULIA-FRACTAL PLOTTER  R 2.26.
  8.                 ======================================== 
  9.  
  10.     Het programma MNDL_INT.PRG tekent Mandelbrot- en Julia-fractals (wiskundig  
  11. berekende plaatjes, waarop 'eindeloos' kan worden ingezoomd) op het scherm. Het 
  12. programma is tamelijk uitgebreid met een menubalk, save- en laadfunkties, uit-
  13. wisselbaarheid tussen schermresoluties, muisbesturing en een Undo-funktie. De 
  14. plaatjes worden in een steeds fijner wordend raster opgebouwd zodat al snel een 
  15. indruk van het geheel wordt verkregen. Met het bekende Alt-Help kunnen de 
  16. plaatjes op een printer worden afgedrukt.
  17.  
  18.  
  19. Beginnen.
  20. -------- 
  21.  
  22.     Nadat het programma is gestart begint het na een melding direkt te tekenen. 
  23. Als het tekenen klaar is verschijnt een formulier met gegevens over het plaatje; 
  24. nadat dit is verwijderd blijft het plaatje gewoon in beeld. Om ergens op in te 
  25. zoomen kan (ook als het plaatje nog niet klaar is) door eenmaal de muisknop te 
  26. bedienen de muispijl terug worden geroepen, waarna een kader om het gewenste 
  27. gedeelte kan worden getrokken.
  28.     Met de spatiebalk kan het menu van het programma worden opgeroepen. Bij het 
  29. programma worden een paar demonstratiefiles (met extensie .MBP) geleverd, die 
  30. een indruk geven van de plaatjes die kunnen worden gemaakt. Deze kunnen met de 
  31. optie Laad file... op de gebruikelijke worden ingelezen, waarna het gewenste 
  32. plaatje wordt getekend.
  33.     Een kort overzicht van de beschikbare commando's krijgt U als U de Help-
  34. toets indrukt (deden meer programma's dat maar...). Verder kunt U de mogelijk-
  35. heden uit de menubalk aflezen, die U met de spatiebalk kunt oproepen en 
  36. verwijderen.
  37.  
  38.  
  39. Overzicht van het programma.
  40. --------------------------- 
  41.  
  42.     Het programma MNDL_INT (d.w.z. Mandelbrot met integer berekeningen) is 
  43. geschikt voor elke Atari-resolutie; de lage kleuren-resolutie en de hoge 
  44. monochrome geven op de ST de beste resultaten. Ook de schermresoluties en -
  45. kleuren van de STE en de TT worden ondersteund. Het programma vraagt niet meer 
  46. dan 80 K geheugen plus ruimte voor een extra scherm en moet dus op elke Atari 
  47. (Mega) ST/STE/TT/Falcon kunnen werken.
  48.     Er is veel moeite gedaan om de snelheid van het programma zo hoog mogelijk 
  49. te krijgen; waarschijnlijk is dit programma nu een van de snelsten op de Atari 
  50. computers. Door de benodigde berekeningen zijn tekentijden van 1 tot 60 minuten 
  51. per plaatje op een ST echter geen uitzondering. Door gebruik te maken van 
  52. geheel-tallige berekeningen in zowel 16- als 32-bits nauwkeurigheid zijn de 
  53. rekentijden bij niet te hoge vergroting zeer beperkt; het programma kiest 
  54. automatisch de snelste rekenroutine die geschikt is. Vooral floating point 
  55. coprocessors, maar ook snellere processors kunnen deze rekentijd beperken; een 
  56. 68881-uitbreiding van de ST wordt automatisch gebruikt, en de 68882 van de TT 
  57. kan met de speciale coprocessorversie van het programma worden benut. Er is een 
  58. speciale geoptimaliseerde 32-bits rekenroutine voor de 68020 en hoger opgenomen 
  59. waarop automatisch wordt overgeschakeld. Op de Falcon wordt zo mogelijk gebruik 
  60. gemaakt van de DSP waardoor bij 24- en 48-bits berekening een zeer hoge snelheid 
  61. mogelijk is.
  62.  
  63.     Het plaatje dat getekend wordt is een weergave van een tweedimensionale 
  64. funktie, die dus aan elk punt van het vlak een waarde toevoegt. Deze waarde 
  65. wordt weergegeven als een kleur of een grijstint. Om de funktiewaarde te krijgen 
  66. moet een berekening met de koordinaten van een punt worden herhaald tot de 
  67. uitkomst van deze berekening een bepaalde grens overschrijdt; het aantal 
  68. herhalingen is dan de funktiewaarde van dat punt. Omdat bij heel wat punten van 
  69. het vlak die grenswaarde nooit wordt bereikt moet er na een bepaald aantal 
  70. herhalingen altijd worden afgebroken om niet eindeloos te blijven rekenen; dit 
  71. aantal is in het programma instelbaar. Het aardige van dit soort plaatjes 
  72. (fractals) is dat er eindeloos op ingezoomd kan worden waarbij vaak een bepaald 
  73. patroon steeds weer terugkomt. Wiskundig is heel interessant dat de 'zwarte' 
  74. gebieden allemaal met elkaar verbonden zijn; de omtrek van dit totale gebied 
  75. wordt steeds groter naarmate verder wordt ingezoomd. Daarom wordt deze omtrek 
  76. beschouwd als iets wat tussen een lijn (één dimensie) en een vlak (twee 
  77. dimensies) inligt, en dus een gebroken dimensie ('fractal dimension') heeft. 
  78. Voor meer informatie zie het "wiskundig aanhangsel" en de uitgebreide literatuur 
  79. op het gebied van fractals.
  80.  
  81.     Als een plaatje helemaal klaar is verschijnt een formulier met een melding 
  82. van het type fractal, de tekentijd, zoomfactor, de gebruikte berekeningsmethode 
  83. en de begrenzingen van het getekende gedeelte van de fractal. Na het verwijderen 
  84. van dit formulier kan het plaatje rustig worden bekeken. De grenzen van het in 
  85. eerste instantie getekende gedeelte (het 'domein' van de funktie) zijn zo 
  86. gekozen dat alle interessante informatie in beeld verschijnt (buiten de getoonde 
  87. cirkel is verder alles 'wit').
  88.     Om in te zoomen kan de muispijl worden teruggehaald met een druk op de 
  89. linker muisknop, of de toets Escape. Door bij het inzoomen het kader leeg te 
  90. laten of achteraf de Undo-toets te gebruiken kan de oude situatie worden 
  91. hersteld (Let wel: Undo kan maar één stap teruggaan!). Om uit te zoomen kan Undo 
  92. worden gebruikt (naar de vorige situatie), Ctrl-N (naar de startsituatie), of 
  93. kan het gewenste domein in het formulier invullen. In het laatste geval worden 
  94. de X- en Y-waarden eventueel bijgesteld om de verhouding kloppend te houden; U 
  95. hoort dan een 'ping' en ziet het formulier nogmaals, maar met de gewijzigde 
  96. waarden.
  97.     Het parameter-formulier kan tijdens het tekenen met Ctrl-I worden opgeroe-
  98. pen. In dit formulier kan ook het afbreekpunt voor de berekening worden 
  99. gewijzigd (hoe lager hoe sneller en hoe minder details). Een redelijke waarde 
  100. hiervoor is ergens tussen 50 en 200; het programma kan zonodig veel verder gaan, 
  101. maar de tekentijd wordt dan soms wel wat groot.
  102.     Er kan worden omgeschakeld tussen de Mandelbrot-fractal en de verwante 
  103. Julia-fractal-'familie' met de Tab-toets (de naam van deze fractals verwijst 
  104. niet naar een intelligente dame, maar naar de franse wiskundige Gaston Julia). 
  105. Het verband tussen beide fractals is daarbij dat het midden van het getoonde 
  106. scherm van de Mandelbrot-fractal de parameter is van de Julia fractal. Ook op 
  107. deze Julia-fractal kan weer worden ingezoomd. Het info-formulier geeft bij een 
  108. Julia-fractal ook de Julia-parameter aan, die natuurlijk ook kan worden 
  109. gewijzigd. De Julia-parameter kan ook met de muis worden aangegeven in de 
  110. Mandelbrot-figuur. Daarvoor moet de optie 'Kies Julia-waarde' worden gekozen (of 
  111. Control-J). Ook kan op het volle scherm de muiskursor met shift-klik worden 
  112. opgeroepen. Er verschijnt dan in elk geval een kruisje in plaats van de 
  113. muispijl. Met de volgende klik wordt dan de Julia-parameter gekozen en wordt 
  114. naar de Julia-fractal omgeschakeld.
  115.     Er moet rekening mee worden gehouden dat het programma om sneller te werken 
  116. pas aan het einde van een getekende regel toetsen verwerkt; tegen het einde van 
  117. het tekenen van een plaatje is dit duidelijk merkbaar.
  118.  
  119.  
  120. Kleuren.
  121. ------- 
  122.  
  123.     Bij gebruik van een kleurenmonitor kunnen de kleuren voor de plaatjes met 
  124. het standaard Atari Control Panel (CONTROL.ACC) worden ingesteld. Een regen-
  125. boogverloop of overvloeiende kleuren geven vaak hele mooie resultaten. Bij het 
  126. instellen van kleuren moet erop worden gelet dat de eerste kleur (kleur 0, 
  127. normaal wit) wordt gebruikt voor de achtergrond van de dialoogboxen, en de 
  128. tweede kleur (kleur 1, normaal zwart) voor de tekst van de dialoogboxen. Kleur 0 
  129. wordt gebruikt voor het buitenste gebied en voor de schermrand. Kleur 1 wordt 
  130. gebruikt voor die gebieden waarin de berekening is afgebroken en wordt normaal 
  131. verder overgeslagen (als de kleuren op zijn wordt weer van voren af aan 
  132. begonnen). Het aangemaakte palet wordt met het plaatje opgeslagen, maar kan ook 
  133. apart worden bewaard met Alt-S (met extensie '.CLR'). De zo aangemaakte paletten 
  134. kunnen met Alt-L weer worden ingeladen. U bent daarbij niet beperkt tot 
  135. hetzelfde aantal kleuren, maar kunt ook grotere paletten inladen voor het 
  136. paletroteren (zie verderop).     Helaas kunnen ingeladen paletten niet met het 
  137. Control Panel worden gewijzigd, omdat het Control Panel bij zijn oproep alles 
  138. terugzet op de oorspronkelijke desktopkleuren; dit werkt wel goed met het nieuwe 
  139. Extensible Control Panel (XCONTROL.ACC) van Tos 2.xx / 3.xx. De ingestelde 
  140. paletten worden tijdelijk weer weggehaald wanneer op een andere applikatie wordt 
  141. overgestapt (een accessoire, of een programma onder Multitos); dit kan worden 
  142. uitgezet bij de kleuren-opties. Om de kleuren via het control panel te kunnen 
  143. wijzigen moet dit dus worden uitgezet!
  144.  
  145.     Bij gebruik van een monochrome monitor worden verschillende vulpatronen 
  146. gebruikt om grijstinten te verkrijgen; de elementen van het beeld zijn dan 2 * 2 
  147. pixels groot. Wanneer de gebieden met gelijke waarden slechts klein zijn valt 
  148. het onderscheid tussen de verschillende grijstinten weg, maar is het resultaat 
  149. wel aangenaam om te zien. Ditzelfde effekt kan ook op kleurenmonitoren worden 
  150. verkregen, maar kan dan bovendien in twee verschillende kleuren worden gemaakt 
  151. ('duochroom').
  152.  
  153.     Op kleurenmonitoren kan het palet doorlopend worden verschoven, waardoor een 
  154. aardig 'vloeistofdia'-effekt ontstaat (hey man, helemaal te waaaauw ...). Dit 
  155. wordt gestart met de '+' of '-' toets. Tijdens het schuiven kan een extra hulp-
  156. formulier worden opgeroepen met de Help-toets. De rotatietijd kan worden 
  157. veranderd met de pijltjestoetsen omhoog en omlaag. Bij het stoppen kan het 
  158. verschoven palet worden overgenomen (Return) of kan het oorspronkelijke palet 
  159. worden hersteld (Esc). In True Color is palet roteren niet mogelijk omdat 
  160. daarvoor in plaats van het palet het hele scherm zou moeten worden bijgewerkt. 
  161. Het paletroteren werkt op het ingeladen palet, dat ook groter mag zijn dan het 
  162. aantal schermkleuren. Dan wordt steeds een deel van dit palet zichtbaar, wat een 
  163. mooi effekt geeft.
  164.  
  165.     Bij het starten van het programma kan automatisch een kleurpalet worden 
  166. geladen. Dit palet moet de naam 'DEFxxxxx.CLR' hebben, waarbij xxxxx het aantal 
  167. kleuren is waarvoor het palet is bedoeld. Het palet moet in dezelfde folder 
  168. staan als het programma.
  169.  
  170.  
  171. Opslaan en inladen van plaatjes.
  172. ------------------------------- 
  173.  
  174.     De getekende plaatjes kunnen op schijf worden bewaard om ze later nog eens 
  175. te kunnen bekijken of ze in andere programma's te gebruiken. Daarbij wordt ook 
  176. een file met de bijbehorende parameters aangemaakt (met extensie '.MBP'). Dit 
  177. geldt ook voor niet-voltooide plaatjes; deze worden na inladen verder getekend. 
  178. Het programma kan alleen plaatjes inladen die met dezelfde resolutie zijn 
  179. opgeslagen, anders wordt het plaatje vanuit de parameterfile opnieuw opgebouwd 
  180. (op deze manier kan een bepaald gebied gemakkelijk in een andere resolutie 
  181. worden teruggehaald). Het is handig om aparte folders of diskettes te gebruiken 
  182. voor de verschillende resoluties; de plaatjes kunnen dan verder met dezelfde 
  183. naam worden opgeslagen.
  184.     Normaal gebruikt het programma het GEM X-Image (.IMG) formaat, omdat dit 
  185. voor alle beeldschermformaten geschikt is. Verder kan het formaat van het 
  186. bekende tekenprogramma Degas worden gekozen voor ST- en TT-resoluties, zowel 
  187. normaal als gecomprimeerd (.PIx en .PCx). Dit gebeurt in het 'Algemene opties' 
  188. formulier. De meeste andere programma's kunnen de plaatjes zo direkt inlezen, en 
  189. anders kan met een van de vele plaatjes-konverteringsprogramma's het formaat 
  190. worden omgezet. In First Word Plus kunnen ST monochrome .IMG plaatjes in elk 
  191. geval gebruikt worden (ze moeten daarvoor in dezelfde folder als de First Word 
  192. Plus file staan). Het desktop publishing programma Calamus accepteert ook de 
  193. kleuren .IMG plaatjes, wanneer voor 'XIMG kleuren in tos-volgorde' is gekozen. 
  194. Voor GEMView moet de parameter voor de XIMG kleurvolgorde in beide programma's 
  195. op dezelfde volgorde zijn ingesteld. Het PD programma Deskpic, dat een plaatje 
  196. als achtergrond op de desktop kan leggen, kan ook de IMG files lezen. De 
  197. duochroom plaatjes met de gewone desktopkleuren zijn hiervoor heel bruikbaar om 
  198. een niet al te afleidende achtergrond te krijgen. De True Color .IMG plaatjes 
  199. zijn niet standaard en worden waarschijnlijk niet door andere programma's 
  200. geaccepteerd.
  201.  
  202.  
  203. Afdrukken.
  204. --------- 
  205.  
  206.     Het programma beschikt over een speciale printerroutine voor Epson-
  207. compatible printers, die een betere (maar monochrome) afdruk geeft dan de 
  208. screendump van Alt-Help. De routine drukt het scherm namelijk bijna 1:1 af, 
  209. zodat elk pixel even groot wordt afgedrukt (bijna alle Epson-compatible printers 
  210. kunnen dit aan). Alleen pixels met kleur 1 (normaal zwart) worden afgedrukt, dit 
  211. geldt ook in kleur! Voor de normale kleur-afdrukken kan alsnog Alt-Help worden 
  212. gebruikt; het printertype moet daarvoor via het Control Panel worden ingesteld. 
  213. Met de Control Panel optie 'draft'/'final' kan de afdrukkwaliteit worden 
  214. gekozen, terwijl met 'single' of 'feed' kan worden ingesteld op resp. A4 vellen 
  215. en 12" kettingpapier; ook de poortinstelling wordt gevolgd (serieel of paral-
  216. lel). De printerroutine is vooral goed te gebruiken voor de zwart/wit plaatjes 
  217. met rasters, die ook op kleurenschermen kunnen worden gemaakt (zie kleur-
  218. opties). Ook is het aardig om in de plaatjes kleur 1 wèl te gebruiken (ook weer 
  219. in kleur-opties), waardoor her en der pixels op het papier verschijnen.
  220.  
  221.  
  222. De animatie mogelijkheid.
  223. ------------------------ 
  224.  
  225.     Het programma is in staat reeksen plaatjes te maken die achter elkaar op het 
  226. scherm getoond een soort film kunnen vormen. Het programma kan dit vertonen 
  227. echter niet zelf, hiervoor is een apart programma nodig. In het public domain 
  228. zijn heel wat van dergelijke programma's beschikbaar (onder de naam 'picture 
  229. viewer' of 'slide show') en een variant voor de TT-resoluties van dit programma 
  230. is in voorbereiding. Voor het aanmaken van zo'n reeks kan het beste als volgt te 
  231. werk worden gegaan:
  232. 1.  Sla een plaatje op dat als begin van de reeks kan dienen. Bedenk hierbij dat 
  233.     de laatste 3 karakters van de filenaam (voor de punt) als teller worden 
  234.     gebruikt voor de reeks, dus bijv. FNAAM000.IMG, FNAAM001.IMG etc. Tijdens 
  235.     het maken van de animatie worden alle benodigde files zonder navraag 
  236.     aangemaakt en worden bestaande zonodig overschreven!
  237. 2.  Zoom (een aantal keren) in tot een plaatje dat als einde van de reeks kan 
  238.     dienen. Het is handig (maar niet noodzakelijk) om dit plaatje ook te 
  239.     bewaren.
  240. 3.  Laad het in 1. opgeslagen plaatje weer in als U meerdere keren hebt 
  241.     ingezoomd. In elk geval moet na 3. met Undo geschakeld kunnen worden tussen 
  242.     het eerste en het laatste plaatje van de reeks.
  243. 4.  Kies in de menubalk of met de toetsen de optie 'animatie'. Er verschijnt een 
  244.     dialoogbox waarin U het totale aantal plaatjes kunt invullen. Na OK wordt 
  245.     het aanmaken gestart, met Cancel kunt U zich nog bedenken.
  246. 5.  Als het laatste plaatje is getekend en opgeslagen wordt dit gemeld. Als de 
  247.     disk vol is wordt dit uiteraard ook gemeld; de animatie moet dan nog 
  248.     handmatig worden afgebroken.
  249.     Tijdens het maken van een animatie zijn alle funkties beschikbaar; bij elke 
  250. toetsindruk wordt eerst het nummer van het plaatje en het totale aantal gemeld. 
  251. Er moet wel op worden gelet dat zodra een plaatje klaar is dit zonder meer wordt 
  252. opgeslagen; bij twijfel dus liever de zaak met rust laten. Eventueel kan met wat 
  253. handigheid een afgebroken animatie worden voortgezet met het laatste en het 
  254. laatst getekende plaatje door het gewenste aantal te verlagen.
  255.     Er moet rekening mee worden gehouden dat afrondingsfouten (voornamelijk bij 
  256. de 16-, 24- en 32-bits berekeningen) ook tussen de plaatjes bestaan en soms bij 
  257. de animatie hinderlijk zichtbaar worden; zonodig kan een nauwkeuriger rekenme-
  258. thode worden gekozen. Een interessant effekt geeft het wanneer dezelfde uitsnede 
  259. met verschillende rekendiepte achter elkaar worden getoond; het plaatje 'groeit' 
  260. dan als het ware op het scherm.
  261.  
  262.  
  263. Technische informatie.
  264. --------------------- 
  265.  
  266.     MNDL_INT is in de programmeertaal C geschreven, met assembler subroutines 
  267. voor de berekeningen. Het programma is resolutie-onafhankelijk en moet dus op 
  268. elke ST-compatible computer kunnen worden gebruikt. Normaliter gebruikt het 
  269. programma Line-A routines voor het tekenen, omdat deze een stuk sneller zijn dan 
  270. de VDI-routines; er wordt nooit direkt in het beeldschermgeheugen geschreven. 
  271. Bij gebruik van exotische schermresoluties wordt teruggeschakeld naar alleen 
  272. VDI-routines. De routine voor duochroom tekenen is erg traag; dit ligt aan de 
  273. truken die nodig zijn om dit in VDI voor elkaar te krijgen (line-A is
  274. hiervoor niet altijd geschikt). Het gebruik van een beeldversneller kan de 
  275. tekentijd vaak nog behoorlijk bekorten; het programma werkt in elk geval samen 
  276. met Turbo-ST of NVDI 2.01. De pure tekentijd is bij ingewikkelder plaatjes 
  277. echter onbelangrijk ten opzichte van de rekentijd (behalve bij de DSP!). Ook zou 
  278. het programma op een TT in het snellere TT-RAM geladen moeten kunnen worden; dit 
  279. is echter nog niet getest. Het werkt in ieder geval wel met de nieuwe 
  280. multitasking versie van The Operating System, MultiTos.
  281.     Het nut van de integer-berekeningen kan worden geïllustreerd met de volgende 
  282. cijfers voor een redelijk ingewikkeld plaatje op de TT:
  283.     16-bit berekening:     38.06 s      100 %
  284.     32-bit berekening:     57.93 s      152 %
  285.     floating point:     41:14.83 s     6502 % 
  286.     coprocessor 68882:   1:54.08 s      300 %.
  287. Het is dus duidelijk dat er heel veel tijd wordt gewonnen door de integer-
  288. berekening (hier 65 keer zo snel), en dat ook een floating point coprocessor het 
  289. hiertegen moet afleggen (in dit geval 3 keer trager). De afwijkingen die bij de 
  290. integer-berekeningen optreden zijn meestal heel beperkt: vaak zijn de geleverde 
  291. beelden volkomen identiek, soms wijken ze door aanpassing van de schaal en door 
  292. afrondingsfouten wat meer af.
  293.     Voor elke iteratie zijn 3 vermenigvuldigingen en 5 optellingen nodig. 
  294. Bijvoorbeeld: bij een helemaal 'zwart' plaatje, 150 iteraties en 320 x 200 
  295. beeldpunten (ST low of ST high) komt dit dus neer op 28.800.000 vermenigvuldi-
  296. gingen en 48.000.000 optellingen... Zelfs bij ruim 100.000 vermenigvuldigingen 
  297. per sekonde (16-bits berekeningen op een Atari ST) kost dit dus behoorlijk wat 
  298. tijd. Uiteraard wordt het worteltrekken uit de formule (zie wiskundig aanhang-
  299. sel) achterwege gelaten, in plaats daarvan wordt met het kwadraat van de limiet 
  300. vergeleken. De DSP berekening op de Falcon haalt met 8 instrukties/9 cycli per 
  301. iteratie zo'n 1.8 miljoen iteraties per sekonde, waarmee het bovenstaande 
  302. plaatje dus in maximaal 6 sekonden wordt berekend. In werkelijkheid is dit 
  303. sneller omdat er gebruik wordt gemaakt van periodeherkenning. Hierbij wordt een 
  304. eventuele herhaling van de waarden in een reeks herkend, waardoor zodra zich dat 
  305. voordoet kan worden vastgesteld dat de reeks konvergeert.
  306.     Het programma is (in ST resoluties) ook te gebruiken met het (shareware) 
  307. programma BIGSCREEN; hiermee kunnen de plaatjes veel groter worden getekend en 
  308. bovendien ook op dat formaat afgedrukt worden. Bigscreen laat op normale 
  309. schermgrootte een uitsnede van het ingestelde grote scherm zien, waarover met de 
  310. muis kan worden gescrolld. Het werken ermee vergt wel wat handigheid, omdat 
  311. bijvoorbeeld invulformulieren niet altijd in de aktuele uitsnede zichtbaar zijn. 
  312. De afdrukroutine is momenteel nog beperkt tot 640 pixels breedte, maar de hoogte 
  313. kan voor 12" papier tot zo'n 800 pixels worden opgevoerd. Een beperking van 
  314. First Word Plus (2.02): dit programma accepteert plaatjes hooguit tot 500 pixels 
  315. vertikaal.
  316.     Bij schermresoluties die niet door Degas worden gebruikt (bijv. TT 
  317. resoluties) wordt in .PIx- of .PCx-mode een Degas-achtig opslagformaat gebruikt 
  318. (resolutie-code, kleurentabel van minstens 16 posities gevolgd door de beeld-
  319. schermgegevens); deze plaatjes kunnen dus niet in Degas worden ingeladen! Dit 
  320. geldt ook voor afwijkende resoluties zoals die met Bigscreen of Overscan worden 
  321. gekregen. Bij niet-ST resoluties is in het gecomprimeerde Degasformaat afgezien 
  322. van de 40-byte compressielimiet die Degas hanteert, om een betere compressie te 
  323. krijgen. Overigens zijn de gecomprimeerde plaatjes vaak slechter te comprimeren 
  324. met de gebruikelijke datacompressieprogramma's dan niet-gecomprimeerde (bijv. 
  325. LHarc op NAAM.PCx losgelaten geeft een +/- 10% groter resultaat dan op NAAM.PIx, 
  326. hetzelfde geldt voor .IMG files). Als de kleurenvolgorde niet goed is ingesteld 
  327. (tos-volgorde of vdi-volgorde) zullen sommige programma's de plaatjes in valse 
  328. kleuren weergeven.
  329.     De parameterfiles bevatten alle gegevens die het plaatje beschrijven en de 
  330. gegevens waarmee het tekenen kan worden voortgezet. De parameterfiles kunnen ook 
  331. afzonderlijk in het programma worden geladen, waarbij het tekenen dan zonodig 
  332. van voren af aan begint. Deze files vormen (samen met het palet) zodoende de 
  333. hoogste compressie die voor de plaatjes mogelijk is, en ze zijn bovendien 
  334. resolutie-onafhankelijk. De decompressie kost alleen wat tijd ...
  335.     De paletfiles worden in het volgende formaat opgeslagen:
  336. 1 long  magic word 'VDIP' (VDI palet)
  337. n long  gecomprimeerde VDI-paletentry, in Pure C opgebouwd als bitveld:
  338.         typedef struct
  339.         {       red : 10;       /* 0 .. 1000 */
  340.                 gr_h: 5;        
  341.                 gr_l: 5;        /* hier begint het lo-word */
  342.                 blue: 10;
  343.         } PALETTE_ENTRY;
  344. Het aantal entries is afhankelijk van het aantal VDI-kleuren bij de gekozen 
  345. resolutie. Het programma leest zoveel entries als het kan gebruiken, en klaagt 
  346. niet als er te veel in de file staan. In True Color mode worden altijd alle 
  347. kleuren van het palet ingelezen, dus er kunnen daarmee maximaal 32500 kleuren 
  348. tegelijk worden getoond. Plaatje waarin duidelijk meer dan 256 kleuren te zien 
  349. zijn zijn echter zeldzaam.
  350.     De resourcefile bevat alle tekst uit het programma waardoor het relatief 
  351. eenvoudig is om het programma te vertalen. Wel moet de structuur van de resource 
  352. intakt blijven en moet erop worden gelet dat de C-conversiespecifikaties (%s, 
  353. %3d etc.) aanwezig blijven en evenveel ruimte in de strings houden. De default 
  354. extensies van de parameterfiles en de paletfiles zijn hier ook in opgenomen 
  355. zodat die desgewenst gewijzigd kunnen worden.
  356.     Het programma kan worden geïnstalleerd als applikatie voor .MBP files, zodat 
  357. een plaatje direkt kan worden ingeladen en evt. verder getekend. Om het 
  358. standaard palet te kunnen vinden moeten daarbij de instellingen 'Default dir: 
  359. application' en 'Parameter: Full path' worden gemaakt. Commandline opties kunnen 
  360. hier ook worden ingevoerd; ze moeten wel gevolgd worden door een spatie. Er zijn 
  361. de volgende commandline opties beschikbaar:
  362. -v: alleen VDI routines gebruiken, voor het geval een VDI-driver geen
  363.     afwijkende waarden van beeldgrootte of resolutiecode levert;
  364. -d: DSP niet gebruiken (als die er wel is);
  365. -b: geen bel-geluid bij voltooien plaatje;
  366. -f: geen formulier   "      "        "   ;
  367. -p: paletten niet automatisch omschakelen;
  368. -s: extra beveiligingen uit;
  369. -t: XIMG tos-volgorde uit;
  370. -c: commandline (batch)mode: ingeladen plaatje uitwerken en direkt terugkeren.
  371.  
  372.  
  373. Tenslotte.
  374. --------- 
  375.  
  376.     Dit programma is voor iedere geïnteresseerde geschreven en mag alleen gratis 
  377. of tegen materiaalkosten, kompleet en onveranderd, worden verspreid. Het is 
  378. enerzijds een poging om een 'net' resolutie-onafhankelijk GEM-programma te 
  379. schrijven voor de Mandelbrot- en Julia-fractals, en anderzijds bedoeld om de 
  380. snelheid van de Atari computers te demonstreren, met name in vergelijking met 
  381. Fractint op de PC (die het met glans doorstaat!). Het totale pakket omvat:
  382.  
  383.      MNDL_INT.PRG      (of MNDL_FPU.PRG)     het programma
  384.      MNDL_INT.RSC                            de resource file
  385.      MNDL_ENG.RSC                            engelstalige resource file
  386.      MNDL_56K.LOD                            DSP-routine (voor de Falcon)
  387.      MNDL_INT.TXT                            deze tekstfile
  388.      MNDL_ICN.RSC                            kleur icoon voor Falcon
  389.      DEF4.CLR                                standaard kleurpalet   4 kleuren
  390.      DEF16.CLR                               standaard kleurpalet  16 kleuren
  391.      BLUES16.CLR                             kleurpalet  16 kleuren
  392.      RAINBOW.CLR                                "       "     "
  393.      PINK.CLR                                   "       "     "
  394.      DEF256.CLR                              standaard kleurpalet 256 kleuren
  395.      FIRESTRM.CLR                            kleurpalet 256 kleuren
  396.      VOLCANO.CLR                                "        "     "
  397.      CHROMA.CLR                                 "        "     "
  398.      NEON.CLR                                   "        "     "
  399.      BLUES.CLR                                  "        "     "
  400.      FULL3BIT.CLR                            chromatisch palet voor ST
  401.      FULL4BIT.CLR                            chromatisch palet voor STE/TT
  402.      FULL6BIT.CLR                            chromatisch palet voor Falcon
  403.      SPIDER.MBP                              demofile (alleen parameters)
  404.      SPIRAL.MBP                                 "
  405.      SPHERES.MBP                                "
  406.      PEACOCK.MBP                                "
  407.      NEED_FPU.MBP                               "     ')
  408.      DEADFROG.MBP                               "
  409.      CURVES.MBP                                 "
  410.      MULTCOLR.MBP                               "
  411.      OCTOPUS.MBP                                "     ')
  412.      OWL.MBP                                    "
  413.      GARLAND.MBP                                "     ')
  414.      VORTEX.MBP                                 "
  415.      SPLASH.MBP                                 "
  416.  
  417.        en bij MNDL_FPU.PRG ook:
  418.        V1CONVRT.TTP                            konversieprogramma voor 
  419.                                                  V 1.xx parameterfiles.
  420.  
  421. ')  Geduld is een schone zaak ....
  422.  
  423.     De 256-kleuren paletten zijn gekonverteerd uit het MS-DOS public domain 
  424. programma Fractint. Met dank aan Henk de Leeuw voor een aantal interessante 
  425. plaatjes en suggesties.
  426.     Mocht het programma onverhoopt niet zoals beschreven werken dan kunt U 
  427. daarover naar onderstaand adres schrijven. Een gedeeltelijke source van dit 
  428. programma (geschreven in Pure C en Pure Assembler van Application Systems 
  429. Heidelberg, de opvolger van Turbo C) is samen met de laatste versie ervan bij de 
  430. auteur verkrijgbaar tegen een vergoeding van f 25.-- (incl. diskette en 
  431. verzendkosten) op giro 4443524 t.n.v.:
  432.  
  433.     R.J. Ridder, Mercuriusstraat 51, 7521 WR Enschede    Holland.
  434.  
  435.  
  436.                               ---===<<<>>>===---
  437.  
  438.  
  439. "WISKUNDIG AANHANGSEL".
  440. ======================
  441.  
  442.     De Mandelbrot-verzameling kan het gemakkelijkst worden omschreven door 
  443. gebruik te maken van complexe getallen. Complexe getallen vormen een uitbreiding 
  444. van de reële getallen; daarvoor is een nieuw getal i gedefinieerd dat gelijk is 
  445. aan de wortel uit -1 (bij reële getallen zijn wortels uit negatieve getallen een 
  446. vergissing!). Elk complex getal bestaat uit een reëel deel en een imaginair deel 
  447. en kan worden geschreven als x + y * i. Wanneer y = 0 is het getal dus reëel, 
  448. zodat de verzameling reële getallen een deelverzameling van de verzameling 
  449. complexe getallen is. Voor de complexe getallen zijn de rekenkundige bewerkingen 
  450. gedefinieerd, waarbij natuurlijk elke i-kwadraat direkt door -1 wordt vervangen 
  451. en dus een minteken oplevert. Voor de mandelbrot-verzameling hebben we nodig:
  452.  
  453.              c1 * c2 = (x1 + y1*i) * (x2 + y2*i) =
  454.                         x1*x2 + (x1*y2 + x2*y1)*i - y1*y2 =
  455.                        (x1*x2 - y1*y2) + (x1*y2 + x2*y1)*i
  456.  
  457.  en          c1 + c2 = (x1 + y1*i) + (x2 + y2*i) =
  458.                        (x1 + x2) + (y1 + y2)*i;
  459.  
  460. voor reële getallen levert dit weer de gebruikelijke reële resultaten op. De 
  461. absolute waarde van een complex getal is gedefinieerd als de (reële!) wortel uit 
  462. de som van de kwadraten van het reële en het imaginaire deel, dus
  463.  
  464.              |c| = |(x + yi)| = sqrt( x * x + y * y ).
  465.  
  466. De complexe getallen kunnen eenvoudig grafisch worden weergegeven als een punt 
  467. in een vlak, wat de gebruikte letters x en y hier al suggereren. De absolute 
  468. waarde van een complex getal kan dan worden gezien als de afstand tot de 
  469. oorsprong. De funktiereeks die voor de Mandelbrotfiguur wordt uitgerekend voegt 
  470. aan elk punt c van het vlak een reeks getallen toe volgens:
  471.  
  472.                          2
  473.              f(c) = f(c)   + c, met f(c) = 0,
  474.                  n      n-1             0
  475.  
  476.                        2        2     2
  477.     dus         0, c, c  + c, (c  + c)  + c, ...
  478.  
  479.           [ n:  0  1     2          3        ... ],
  480.  
  481. waarbij natuurlijk de bovengenoemde formules moeten worden gebruikt voor het 
  482. optellen en vermenigvuldigen (of kwadrateren) van complexe getallen. Voor het 
  483. tekenen van de Mandelbrot-figuur wordt nu voor elk punt het aantal iteraties (de 
  484. n uit bovenstaande formule) berekend dat nodig is voordat de nieuwste waarde van 
  485. de reeks een absolute waarde heeft die groter is dan 2. Deze waarde wordt dan 
  486. grafisch weergegeven als een kleur of grijstint. De getoonde waarde is dus de 
  487. kleinste n waarvoor geldt: |c| > 2. Het is nu eenvoudig te zien dat buiten de 
  488. cirkel met straal 2 om de oorsprong er geen verschillen meer zijn te verwachten: 
  489. daar is het aantal iteraties altijd 1, omdat het uitgangspunt c al een absolute 
  490. waarde groter dan 2 heeft.
  491.  
  492. Iets dergelijks geldt voor de Julia-fractals, deze worden berekend met:
  493.  
  494.                          2
  495.              f(c) = f(c)   + j, met f(c) = c,
  496.                  n      n-1             0
  497.  
  498.                     2        2     2         2     2     2
  499.     dus         c, c  + j, (c  + j)  + j, ((c  + j)  + j)  + j, ...
  500.  
  501.           [ n:  0     1          2               3              ... ],
  502.  
  503.  
  504. waarbij j de Julia-parameter is en c weer het punt in het beeldvlak. Voor elke j 
  505. is er dus een andere fractal. De Mandelbrot-fractal kan worden opgevat als een 
  506. soort overzicht (landkaart) van alle Julia-fractals: als j = c, is de Julia-
  507. reeks hetzelfde als die van Mandelbrot, maar één plaats opgeschoven. De 
  508. Mandelbrot-fractal geeft dus per punt aan wat de Julia-fractal van dat punt en 
  509. toegepast op dat punt doet (ja, zijn we er nog ??!).
  510.  
  511. Het komt bij hoge iteratiewaarden vaak voor dat de reeks periodiek is, dus dat 
  512. f(c) = f(c)    voor n > n   , waarbij p de periode is. In dat geval is de reeks 
  513.     n      n-p           min
  514. konvergent, omdat de berekening zich dan steeds herhaalt en de limiet nooit 
  515. overschreden wordt. Wanneer dit waarschijnlijk is (dus bij hoge iteratiewaarden) 
  516. herkent het programma dit om de berekening dan af te breken en dus sneller te 
  517. kunnen werken.
  518.  
  519.  
  520. WAT MINDER FORMEEL:
  521.  
  522. als we een punt uit het vlak prikken en volgens de formules de reekswaarden 
  523. berekenen zien we die reekswaarden als het ware in het vlak rondspringen; 
  524. wanneer één van die reekswaarden ook maar buiten de cirkel met een straal van 2 
  525. om de oorsprong valt zeggen we dat de reeks onbegrensd is en stoppen we met 
  526. rekenen; het aantal reekswaarden dat we daarvoor hebben moeten uitrekenen geven 
  527. we dan met een kleurtje aan op het uitgangspunt. Als we moe zijn van het 
  528. berekenen van waarden zeggen we dat de reeks begrensd blijft en maken we het 
  529. uitgangspunt zwart. Zo werken we alle punten van het vlak af, en het resultaat 
  530. is de Mandelbrot-figuur.
  531.  
  532.                               ---===<<<>>>===--- 
  533.  
  534. SNELHEIDSVERGELIJKING.
  535.  
  536. De volgende tijden zijn bepaald met MNDL_INT 2.21 op de Atari computers en 
  537. Fractint 17.2 op de PC's (met 'normale' (Super-)VGA-kaarten):
  538.  
  539. Computer:               Proc.:  Clock:  Test 1  Test 1A Test 2  Test 3
  540.                                 [MHz]    [s]     [s]     [s]     [s]
  541. Atari ST(E), Mega ST    68000     8     ³)      ³)      ²)      ³)           
  542. Atari Mega STE          68000    16     ³)      ³)      ²)      ³)      
  543. Atari TT (ST-Ram)       68030    32     15.84   15.84    4.18   10.03   
  544. Atari Falcon (CPU)      68030    16     29.46   29.46    6.34   15.84      
  545. Atari Falcon (DSP)      68030    16      7.99    7.99    1.97    5.19   
  546. PC 286/16               80286    16     57.23   19.83   11.54   26.69   
  547. PC 386/33  64k cache    80386    33     20.39    8.90    4.18    8.57   
  548. PC 486/33 256k cache    80486    33     14.67    7.25    2.97    5.43   
  549. PC 486/66 256k MCA      80486    66      7.52    3.68    1.48    2.85
  550.  
  551. Computer:               Test 4  Test 4A Test 5  Test 6  Test 7  Test 8
  552.                          [s]     [s]     [s]     [s]     [s]     [s]
  553. Atari ST(E), Mega ST    ³)      ³)      ²)      ²)      ²)      ³)      
  554. Atari Mega STE          ³)      ³)      ²)      ²)      ²)      ³)
  555. Atari TT (ST-Ram)        85.66   85.66   90.90  ²)      ²)         618
  556. Atari Falcon (CPU)      171.18  171.18  179.78  ²)      ')      300000
  557. Atari Falcon (DSP)       24.80   24.80   11.93  ²)      ²)         120
  558. PC 286/16               303.24   47.68  365.04  ²)      ²)      ')
  559. PC 386/33  64k cache    ²)      ²)      ²)      ²)      ²)      ')
  560. PC 486/33 256k cache     57.29   14.50   58.22  ²)      ²)         181
  561. PC 486/66 256k MCA       30.86    7.47   25.11  ²)      ²)          91
  562.  
  563.  
  564. ')  Wordt ter oefening aan de lezer overgelaten :-) ...
  565. ²)  Nog niet bekend.
  566. ³)  Resolutie niet beschikbaar.
  567.  
  568. Test 1: Resolutie 640 * 480 * 16 (TT medium).
  569.         Domein X: -2.50 .. 1.50, Y: -1.50 .. 1.50 (standaard Fractint).
  570.         150 iteraties.
  571.         Fractint in 2 pass mode. 16/24-bits berekening.
  572.  
  573. Test 1A:Als test 1, maar Fractint in 'solid guessing' mode.
  574.  
  575. Test 2: Resolutie 320 * 200 * 16 (ST low).
  576.         Domein X: -2.50 .. 1.50, Y: -1.50 .. 1.50 (standaard Fractint).
  577.         150 iteraties.
  578.         Fractint in 2 pass mode. 16/24-bits berekening.
  579.  
  580. Test 3: Resolutie 320 * 480 * 256 (TT low).
  581.         Domein X: -2.50 .. 1.50, Y: -1.50 .. 1.50 (standaard Fractint).
  582.         150 iteraties.
  583.         16/24-bits berekening. Fractint in 2 pass mode.
  584.  
  585. Test 4: Resolutie 640 * 480 * 16 (TT medium).
  586.         Domein X: -1 .. 0, Y: 0 .. 0.75, 150 iteraties (veel 'zwart').
  587.         16/24-bits berekening. Fractint in 2 pass mode.
  588.  
  589. Test 4A:Als test 4, maar Fractint in 'solid guessing' mode.
  590.  
  591. Test 5: Resolutie 320 * 200 * 16 (ST low).
  592.         Domein X:  0.2961038110 ..  0.2963082100
  593.                Y: -0.0171484500 .. -0.0169953648, 150 iteraties.
  594.         24/32-bits berekening.
  595.         Ingewikkeld plaatje met veel 'ruis'.
  596.         Fractint in 2 pass mode.'Solid guessing' heeft hier nauwelijks effekt.
  597.  
  598. Test 6: Resolutie 320 * 200 * 16 (ST low).
  599.         32/48-bits berekening.
  600.  
  601. Test 7: Resolutie 320 * 200 * 16 (ST low).
  602.         48-bits/floating point berekening.
  603.  
  604. Test 8: Resolutie 640 * 480 * 256 (Falcon; TT in TT medium, 16 kleuren).
  605.         Domein X: -0.1011980760 .. -0.1011978170
  606.                Y: -0.9563462273 .. -0.9563464215, 500 iteraties.
  607.         48-bits/floating point berekening.
  608.         Het plaatje bij NEED_FPU.MBP.
  609.  
  610. Opmerkingen:
  611. 1)  De tekenmethode van het Atari programma is het beste te vergelijken met de 
  612.     2-pass methode van Fractint: het is een multipass methode waarin alle punten 
  613.     worden berekend. Fractint's 'solid guessing' is een stuk sneller (zie test 
  614.     1A en 4A), maar berekent niet alle punten en gaat daarmee wel eens de mist 
  615.     in. Erg 'solid' is die 'guessing' dus niet, bedoeld wordt: 'raden' naar 
  616.     'vaste' vlakken in de tekening. (N.B.: de auteur weigert uit principe deze 
  617.     vieze truc in te bouwen, al is het op zich best te doen). Fractints 1-pass 
  618.     methode wint alleen een klein beetje tijd door het tekenwerk te beperken.
  619. 2)  Het Atari programma gebruikt system calls voor de schermuitvoer, Fractint 
  620.     gebruikt zijn eigen schermroutines. Het laatste is wat sneller, maar voor 
  621.     elke nieuwe videokaart moet een nieuwe driver worden geschreven.
  622. 3)  Bij de TT-testen is steeds de beeldschermversneller NVDI 2.01 gebruikt. Voor 
  623.     de Falcon testen is NVDI 2.5 gebruikt. Line-A is bij de Atari testen steeds 
  624.     ingeschakeld.
  625. 4)  Het Atari programma werkt onder GEM, Fractint onder DOS. Fractint for 
  626.     Windows is zeker niet sneller en mist een aantal interessante opties (o.a. 
  627.     paletroteren).
  628. 5)  De waarden voor de ST en Mega STE worden binnenkort bepaald. Gegevens over 
  629.     486's op hogere kloksnelheden (50 of 66 MHz) zijn zeer welkom. Pentium 
  630.     bezitters meldt u!
  631.  
  632.  
  633. Konklusie van de auteur:
  634. Hoewel elk systeem en elke processor natuurlijk voor- en nadelen heeft kunnen 
  635. beide programma's qua aanpak met elkaar vergeleken worden. De gemeten tijden 
  636. vallen bij dezelfde resolutie uiteen in de tijdsduur voor het tekenen (min of 
  637. meer vast) en voor het berekenen (afhankelijk van het domein). Het standaard 
  638. plaatje is daarbij geen goede maat omdat daar relatief weinig bij gerekend hoeft 
  639. te worden. Daarbij blijkt dat de snelheid van de gewone ST vergelijkbaar is met 
  640. die van een 286, terwijl de TT ongeveer even snel is als een 386/33. Wanneer de 
  641. DSP kan worden gebruikt (meestal) gaat het met de Falcon het snelst, sneller dan 
  642. een zware 486, zeker als er stevig gerekend moet worden. Het Atari programma 
  643. spendeert meer tijd aan het tekenwerk, maar dat maakt bij ingewikkelde plaatjes 
  644. natuurlijk bijna niets meer uit.
  645.  
  646. Konklusie voor de Atari-gebruiker:
  647. Als je afziet van het valsspelen met 'solid guessing' is een Atari ST al 
  648. behoorlijk snel, en is de Falcon de snelste van het stel. Het is te zien dat de 
  649. DSP berekening meer dan twee maal sneller is dan een 486/33, dus ook Fractint op 
  650. een 486/66 partij moet kunnen geven. Het Atari programma is ook veel overzichte-
  651. lijker.
  652.  
  653. Konklusie voor de PC-gebruiker:
  654. 'Solid guessing' werkt meestal heel behoorlijk, en daarmee blijkt maar weer dat 
  655. er voor PC's altijd betere software beschikbaar is. Een DSP gebruiken, dat is 
  656. pas valsspelen. Fractint is ook veel uitgebreider.
  657.  
  658.  
  659.                               ---===<<<>>>===--- 
  660.  
  661.  
  662. Historie:
  663.  
  664. 23/12/91:      R 1.00.
  665.  5/ 4/92:      R 1.10: -Rotatiesnelheid instelbaar;
  666.                        -32-bits berekening afdwingbaar;
  667.                        -Zwart/wit afdwingbaar (voor afdrukken plaatjes);
  668.                        -Vertaalbaar, alle tekst in de resource;
  669.                        -Programmafout (bij inzoomen soms geen beeld meer)
  670.                         verwijderd.
  671.  3/ 5/92:      R 1.20: -Menubalk toegevoegd;
  672.                        -Animatie aanmaken toegevoegd;
  673.                        -Gecomprimeerd Degasformaat toegevoegd;
  674.                        -Maximale iteratiediepte vergroot;
  675.                        -Kleurbehandeling gewijzigd (geen invers meer);
  676. 14/ 5/92:      R 1.21: -Verbeterde afdrukroutine;
  677. 30/ 5/92:      R 1.30: -Verbeterde tekenroutine (+/- 2,5 keer zo snel!);
  678.                        -Versnelling bij herkenning konvergentie door
  679.                         periodiciteitstest;
  680.                        -Hoge resolutie afdrukroutine.
  681. 23/ 6/92:      R 1.40: -Verder versnelde VDI/line-A tekenroutine;
  682.                        -Installatie als applikatie voor .MBP files mogelijk;
  683.                        -Precisie van integer-routines verhoogd;
  684.                        -Wisselen van schermen via VDI-routines uitgevoerd;
  685.                        -(X)IMG beeldformaat toegevoegd.
  686. 19/ 9/92:      R 1.41: -Foutherstelling: folders met een punt in de naam
  687.                         kunnen nu ook worden gebruikt.
  688. 25/ 9/92:      R 1.50: -Window voorzien van verplaatsbalk en schuifbalken;
  689.                        -Fout bij wisselen van filenamen hersteld;
  690.                        -Kompaktere (X)IMG files.
  691.  5/10/92:      R 1.51: -Fout in herkenning spiegelbeelddeel hersteld;
  692.                        -Window behandeling verbeterd.
  693. 11/10/92:      R 2.00: -Julia fractals toegevoegd;
  694.                        -Automatisch inladen van een standaard palet;
  695.                        -FPU parameterfiles nu echt compatible met emulatie;
  696.                        -Diverse verbeteringen.
  697. 25/10/92:      R 2.01: -Multitos compatibiliteit door toetsenbordroutines
  698.                         via AES;
  699.                        -Verbeterde muisafhandeling.
  700. 14/11/92:      R 2.02: -Animatie met variërende Julia-parameters mogelijk;
  701.                        -Centrering van plaatje bij integer berekeningen.
  702. 30/ 3/93:      R 2.10: -DSP routine voor Falcon;
  703.                        -True Color ondersteuning;
  704.                        -Engelse resourcefile;
  705.                        -Verbeterde paletten;
  706.                        -Verbetering van opslagformaat voor XIMG paletten;
  707.                        -Diverse kleine verbeteringen.
  708.                R 2.11: -Kleine verbeteringen.
  709. 30/ 6/93:      R 2.20: -48-bits DSP berekening toegevoegd, 5 maal sneller dan 
  710.                         32-bits berekening en 250 maal sneller dan floating 
  711.                         point emulatie;
  712.                        -24-bits DSP routine 15% sneller (alleen merkbaar bij 
  713.                         zware berekening);
  714.                        -Floating point emulatie routine 5% sneller;
  715.                        -Julia parameter muis-selektie toegevoegd;
  716.                        -Iteraties tot 65500 i.p.v. 32500 mogelijk;
  717.                        -Fout in windowbehandeling verwijderd;
  718.                        -Verspringen bij inzoomen én overgang naar hogere
  719.                         berekeningsmethode verholpen;
  720.                        -Automatisch herstellen van het palet bij omschakelen 
  721.                         naar een andere applikatie mogelijk;
  722.                        -Gebruiken van grotere paletten dan het aantal zichtbare 
  723.                         kleuren mogelijk (voor paletroteren).
  724. 26/ 7/1993:    R 2.21: -Fout uit palet TRUECOLR.CLR verwijderd;
  725.                        -Kleine aanpassingen aan NVDI 2.5, met name in True 
  726.                         Color: 'True color' (geen hardware paletregisters) wordt 
  727.                         nu aangenomen vanaf 32K kleuren;
  728.                        -Diverse kleine verbeteringen.
  729.  1/11/1993:    R 2.25: -keuze XIMG kleuren in tos- of vdi-volgorde toegevoegd;
  730.                        -duochroom tekenmogelijkheid toegevoegd;
  731.                        -animatie-programma toegevoegd.
  732.                R 2.26: -Foutje in R. 2.25 bij paletroteren met meer dan 16 
  733. 11/11/1993:             kleuren verbeterd.
  734.  
  735.  
  736.                                                        Enschede, 26- 7-1993.
  737.  
  738.