FADER-COLLECTION 2 - Tausend-und-Ein Grafikeinblendungen - ----------------------------------------
In einer früheren Ausgabe der Magic Disk konnten wir Ihnen schon einmal ein Pro- gramm zum Ein- und Ausblenden von Grafi- ke vorstellen: die "Fader Collection". Dies war eine kleine, aber feine, Basic- Erweiterung, die es den Basic- Programmierern recht einfach machte, Diashows zusammenzustellen. Der Nachfol- ger, "Fader Collection 2", kann nun noch viel mehr. Er wurde komplett neu ge- schrieben und bietet außer den 27 kom- plett neuen Ein- und Ausblendeffekten auch noch eine automatische Sound- Untermalung eines jeden Effekts, sowie eine Laderoutine, die den innerhalb von Basic-Pogrammen recht umständlich hand- habbaren LOAD-Befehl ersetzt!
1) BENUTZUNGSHINWEISE
Da die Fader-Collection kein Programm im eigentlichen Sinne, sondern vielmehr eine Basic-Erweiterung darstellt, müssen Sie sie zur Benutzung zunächst einmal mittels LOAD"FADER COLLECT. 2",8,1 in den Speicher des C64 laden. Hinzu kommt, daß das Programm, sowie die einzublen- dende Bitmap einen Großteil des verfüg- baren Speichers für BASIC-Programme be- legen, wodurch dieser eingeschränkt wird. Damit Sie nun mit einem eingegebe- nen Basic-Programm nicht die Fader- Collection überschreiben, müssen Sie zunächst einmal das Ende des Basic- Speichers für das Betriebssystem herun- tersetzen. Da die Fader-Collection, in- clusive einzublendende Grafik den Be- reich von $4000 (dez. 16384) bis $9FFF (dez. 40959) belegen, muß das neue Ba- sic-Ende bei $4000 liegen. Dadurch darf Ihr Programm dann auhc nicht länger als 53 Blocks sein, damit es noch in diesen Bereich passt. Mit den folgenden Befeh- len schützen Sie nun den angegebenen Speicherbereich vor Basic-Zugriffen:
POKE55,0: POKE56,64: CLR
Durch die beiden POKEs setzen wir die Endadresse des Basic-Speichers auf $4000 herunter. Der CLR-Befehl ist nötig, um den Zeiger für Stringvariablen (der auch vom Basic-Ende anhängig ist) neu zu ini- tialisieren. Beachten Sie dabei auch, daß dadurch alle z.Zt. vorhandenen Va- riablen gelöscht werden! Bauen Sie nun beide Vorbereitungen in ein eigenes Basic-Programm ein, so müs- sen Sie zusätzlich noch beachten, daß ein LOAD-Befehl innerhalb eines Pro- gramms immer den Neustart desselben be- wirkt. Der LOAD-Befehl sollte deshalb also ganz am Anfang des Programms ste- hen, und direkt von den Befehlen zum Heruntersetzen des Basic-Endes gefolgt sein. Benutzen Sie also für ein eigenes Programm, das die Fader Collection an- wenden soll, immer sie folgenden beiden Zeilen ganz am Anfang des Programms:
10 IF A=0 THEN A=1: LOAD"FADER COLLECT. 2",8,1 20 POKE55,0: POKE56,64: CLR 30 ... Ihr Programm
Das Heruntersetzen des Basic-Speichers darf also erst dann geschehen, wenn Sie den LOAD-Befehl schon durchgeführt ha- ben, da durch das "CLR" ja auch die Kon- trollvariable "A" gelöscht wird! 2) PROGRAMMBEDIENUNG Befindet sich die Fader-Collection nun sicher im Speicher und ist das Basic- Ende heruntergesetzt, so steht einer Benutzung von einem Basic-Programm nichts mehr im Wege. Um eine Grafik ein- zublenden müssen Sie diese erst einmal in den Speicher des C64 laden. Hierzu könnten Sie natürlich den normalen LOAD-Befehl heranziehen, womit wir aber wieder mit dem, eingangs schon erwähn- ten, Problem des automatischen Neustarts des Programms konfontiert wären. Die Fader-Collection vereinfacht Ihnen diese Aufgabe. Sie stellt einen SYS-Befehl zur Verfügung, mit dem Sie eine Grafik im Koala-Painter-Format nachladen können. Da dies das weitverbreiteste Grafikfor- mat auf dem C64 ist, und auch in der MD schon eine Menge Konvertierungsprogramme zu diesem Format erschienen sind, sollte das eigentlich kein Problem sein. Mit dem folgenden Befehl wird nun also eine Koala-Grafik nachgeladen:
SYS34583,"FILENAME"
Die Startadresse der Grafik ist dabei irrelevant, da die Laderoutine der Fa- der-Collection die Bitmap- und Farbdaten automatisch an die richtige Adresse la- den. Zu beachten ist nur noch, daß Koa- la-Bilder, sofern Sie direkt vom Koala- Painter gespeichert wurden, ein inverses Pik-Zeichen und den String "PIC " als Präfix im Filenamen aufweisen. Um ein solches Bild zu laden sollten Sie also den Präfix "?PIC " im Filenamen verwen- den. Das "?" ersetzt dabei das inverse PIK-Zeichen. Möchten Sie die so geladene Grafik nun einblenden, so legen Sie mit Hilfe von 5 POKE-Befehlen die Ein- und Ausblend- Parameter für die Fader-Collection fest. Hier eine Tabelle aller Parameter:
POKE 2,Einblendeffekt POKE 3,Ausblendeffekt POKE 4,Geschwindigkeit POKE 5,Blendfarbe POKE 6,Soundeffekt an/aus
Als Poke-Werte für den zu benutzenden Ein-, bzw. Ausblendeffekt können Sie Werte von 0-26 verwenden. Hierbei dürfen Ein- und Ausblendeffekt beliebig variie- ren und müssen nicht identisch sein. Für die Geschwindigkeit können Sie Werte von 0 (sehr schnell) bis 15 (sehr langsam) eintragen, womit Sie bestimmen, wie lan- ge es dauert, bis eine Grafik komplett auf dem Bildschirm zu sehen ist. Die Blendfarbe gibt an, von, oder zu welcher Farbe ein- bzw. ausgeblendet werden soll. Dies muß nicht unbedingt, wie in der Fader-Collection-1, die im Koala- File definierte Hintergrundfarbe sein. Dadurch, daß das Programm einen Sprite- Multiplexer mit 70 Sprites benutzt, kann sie beliebig gesetzt werden. Schreiben Sie hierzu einfach einen Farbwert von 0-15 in Speicherzelle 5 um die gewünsch- te Farbe zu definieren. Ein Wert größer als 15 teilt dem Programm mit, daß es die im Koala-File definierte Hinter- grundfarbe verwenden soll. In Speicher- zelle 6 können Sie nun noch bestimmen, ob während des Ein-, bzw. Ausblendens ein Soundeffekt abgespielt werden soll. Schreiben Sie hier eine 0 hinein, so ist der Sound aus. Eine 1 schaltet ihn an. Die Sound-Effekte sind übrigens von Ein- blendeffekt zu Einblendeffekt verschie- den. Alle Parameter müssen unbedingt VOR dem EINBLENDEN gesetzt werden, und kön- nen zum Ausblenden nicht wieder verän- dert werden. Nachdem nun die Grafik geladen und die Parameter gesetzt sind, können wir end- lich zum Einblenden schreiten. Dies ge- schieht durch den Befehl "SYS34580" (in Assembler "JSR $8714"). Hiernach wird bei eingeschalteter Grafik zu Ihrem Pro- gramm zurückgekehrt. Um die Grafik nun auszublenden, benutzen Sie denselben Befehl einfach nocheinmal. Um die Fähigkeiten des Programms aus- führlich zu betrachten, sollten Sie ein- mal das Demoprogramm "FC2/BASICDEMO" auf dieser MD laden und mittels "RUN" star- ten. Es handelt sich dabei um ein Ba- sic-Programm, das Ihnen alle 26 Effekte, in mehreren Variationen, anhand einer Demografik vorführt. Es erläutert zusätzlich noch die Bedienung der Fa- der-Collection, und kann natürlich auch mit Hilfe des LIST-Befehls angeschaut werden, um die richtige Bedienung des Programms besser kennenzulernen.
(ub)