Flames for falcon 030 by Martin Steen
**************************************************************************
F L A M E S F O R F A L C O N 0 3 0
Version 1.1
***************************************************************************
I. FLAMES - der Kamin im Computer 16.10.94
Feuer auf dem Bildschirm - wie funktioniert das?
FLAMES ist eigentlich kein Demoprogramm, sondern eher eine Simulation,
die dem bekannten "Life"-Spiel sehr ähnlich ist.
Der zugrundeliegende Algorithmus sieht kurz gefasst so aus:
x0 bis X4 bezeichnen vier benachbarte Pixel des Urspungsbildes, y0 bis y4
sind Pixel des zu berechnenden Bildes.
Ursprungsbild folgendes Bild
x0 y0
x1 x2 x3 ---> y1 y2 y3 wobei y0 = (x0+x1+x3+x4)/4
x4 y4
Der obere Pixel (y0) ergibt sich also aus der Summe der Umgebung des mit-
tleren Pixels geteilt durch vier. Daraus erklärt sich auch, warum das
Feuer sich nach oben ausbreitet. Jeder Pixel kann einen Wert von 0 bis
255 annehmen. Je grösser der Wert eines Pixels, desto heller erscheint er.
Am Anfang ist das ganze Bild gelöscht; wie aber fängt jetzt das Feuer
überhaupt an zu brennen? Hier kommt der Zufallsgenerator ins Spiel, der
das Feuer auch in Gang hält. Dafür werden in den unteren drei Zeilen des
Feldes überall zufällig "Zünder" plaziert, wobei ein "Zünder" eine Gruppe
aus sehr hellen Pixeln (Wert 255) ist. Dabei bestimmt der Zufallsgenerator
nicht nur die horizontale Position der Zünder, sondern auch die Anzahl.
II. Technische Information
FLAMES 030 ist die 68030-Version eines Assembler-Programms für den 80386.
Diese Version läuft nur auf dem Falcon, da es den HiColor-Modus nutzt.
Ich habe auch eine Version für den 256-Farben-Modus geschrieben, diese
ist jedoch deutlich langsamer. Am schnellsten ist FLAMES allerdings auf
einem DOS-Rechner, hier beträgt die Geschwindigkeit auf einem 486DX/2-66
mindestens 30 Bilder/sec. - dies liegt allerdings nicht nur am schnelleren
Prozessor, sondern an der für dieses Programm sehr vorteilhaften
Byte-To-Pixel-Organisation der VGA-Karte.
Auf meinem 32MHz-Falcon beträgt die Geschwindigkeit ca. 9 Bilder/sec.,
während die Schrift angezeigt wird läuft das Programm noch etwas lang-
samer. Eine normale 16MHz-Maschine schafft etwa 7 Bilder/sec.
Die 256-Farben Version kommt auf ca. 4,6 Bilder/sec., dafür läuft sie
wahrscheinlich auch auf einem Atari TT (leider habe ich keinen TT um das
auszuprobieren). Eine Version, die die Bitplanes mit DSP-Unterstützung
umrechnet habe ich auch noch, leider ist diese noch langsamer (wegen der
langsamen Datenübertragung von und zum DSP).
Um das Programm zu starten, mu₧ der Screenblaster deaktiviert werden, da
die Auflösung automatisch umgeschaltet wird (320 x 200, 65536 Farben).
Viel Spass, Martin
--------------------------------------------------------------------------
Credits: 80386 Version coded by Bernhard Schmitz
Inspired by FIRE coded by Jare of VageliSTeam
--------------------------------------------------------------------------
Contact: martin_steen @ wob.maus.de
--------------------------------------------------------------------------[ back to the prod ]
