Magic Disk 64

home to index to text: MD9209-UTILITIES-ANIM._SINUS_MOV..txt
----------------------------------------
         ANIMATED SINUS MOVEMENT        

- Das geordnete Chaos -

----------------------------------------

Aus Demos schon vielen bekannt, für Rechenfaule und Nicht-Mathematiker ein Rätsel: die Sinus-Bewegungen von Sprites, die scheinbar wahllos, aber dennoch in einer gewissen Ordung auf dem Bildschirm herumhüpfen und Saltos schlagen.
Mit dem ' Animated Sinus Movement'( ASM) sind diese schwierigen und aufwendigen Koordinatenberechnungen für den Laien nun kein Problem mehr. Sie probieren die einzelnen Parameter einfach am Bildschirm aus und speichern die beste Bewegungssequenz nur noch ab. Hiernach kann Sie bequem in jedes Programm übernommen werden, wobei eine Abspielroutine gleich mit eingebaut ist. Ein einfacher SYS-Aufruf genügt, um die Sinus-Sprites in Ihr Programm ( auch BASIC) einzubinden.
Da die Animations-Routine im IRQ arbeitet bleibt der Rechner entlastet, so daß Sie das eigene Programm parallel zum Sinus laufen lassen können.
DAS HAUPTMENU Im Hauptmenu sehen Sie in der Mitte des Bildschirms fünf Menupunkte, durch die ein blinkender Menubalken, mit Hilfe der Cursortasten, gesteuert wird. Mit ' RE-TURN' wählen Sie den gewünschten Menupunkt an.

1) DER SINUS-EDITOR                     

Hier können Sie die Parameter der Sinus- funktion verändern. In der Mitte des Bildschirms sehen Sie nun acht Spritebälle, die auf dem Bildschirm herumfliegen und dabei gleichzeitig größer und kleiner werden. Am linken Rand des Bildschirms sehen Sie die Liste der veränderbaren Sinus-Parameter. Der blinkende Wert kann jeweils editiert werden.
Benutzen Sie die Tasten ' CRSR UP' und ' CRSR DOWN' um durch die Parameterliste zu gehen und ' CRSR LEFT' und ' CRSR RIGHT' um einen Wert zu verringern, bzw.
zu erhöhen. Mit der Taste ' I' werden alle Werte auf 0 zurückgesetzt ( außer Xund Y-Add) . Mit ' RETURN' gelangen Sie wieder zurück ins Hauptmenu.
Die einzelnen Werte haben nun folgende Bedeutungen: Die Xund Y-Distance 1 gibt den Abstand innerhalb der Sprites an. Das jeweils nächste Sprite ist um die hier angegebenen Werte vom jeweils letzten entfernt. Xund Y-Distance 2 gibt die Gesamtverschiebung der Sprites von der Grundposition ( Xund Y-Add) an.
Sie ist ebenfalls variabel, so daß die komplette Animation sinusförmig hinund her-, bzw. hochund runter schwingt.
Mit den Speed-Werten, ändern Sie die Geschwindigkeit, mit der der jeweils nächste Wert gesetzt wird. Xund Y-Add sind die Grundverschiebungswerte von der Ausgangsposition der Sprites aus. Um die genaue Bedeutung der einzelnen Parameter zu verstehen, empfehle ich Ihnen, die Sinuswerte zunächst einmal mit ' I' zurückzusetzen und anschließend einen einzelnen Wert zu verändern. Sie können dann sehr schön mitansehen, welche Wirkung dies auf die Sprites hat.

2) DER SPRITE-ANIMATOR                  

Mit dem Sprite-Animator können Sie die Bild-Animationssequenz für die Sprites festlegen. Sie können maximal 16 verschiedene Spriteblöcke definieren, die zyklisch für ein Sprite durchgeschaltet werden können. In der Mitte des Bildschirms sehen Sie hier ein Fenster, in dem in hexadezimaler Schreibweise die Folge der Spriteblocknummern angegeben ist. Die Reihenfolge geht zeilenweise von links nach rechts. Möchten Sie eigene Sprites verwenden, so müssen Sie diese vorher aus dem Disk-Menu heraus geladen haben. Bei der Angabe der Spriteblocknummern ist zu beachten, daß Sie die Adresse Ihrer Sprites kennen müssen.
Haben Sie z. B. ein Sprite an Speicherstelle $2000( dez.8192) stehen, so müssen Sie wiefolgt den Spriteblock berechnen:

$2000 = dez. 8192                       
8192 / 64 = 128                         
dez. 128 = $80                          

Um die Animationsfolge zu editieren können Sie den Blinkcursor ( Wert blinkt) mit Hilfe der Cursortasten durch das Fenster bewegen und mit den Tasten '0' bis '9', sowie ' A' bis ' F' einen hexadezimalen Wert eintragen. Mit den Tasten '+' und '-' können Sie die Spritenummer des aktuellen Sprites erhöhen, bzw. erniedrigen. Mit ' F1' und ' F3' kann die Verzögerung bis zum Einschalten des nächsten Spriteblocks verlangsamt, bzw.
beschleunigt werden. Sie können die Animation für jedes der acht Sprites einzeln festlegen. Es wird demnach auch immer nur das Sprite auf dem Bildschirm dargestellt, das gerade editiert wird.

3) SPRITE-POINTER                       

Hier können Sie die Register des VIC verändern, um die Grundeinstellungen der Sprites zu manipulieren. Die hier eingestellten Werte werden später dann, beim Starten der Animationsroutine, automatisch initialisiert. In der Mitte des Bildschirms befinden sich die Sprites, die sich nach dem eingestellten Sinus bewegen. An ihnen erkennen Sie die Änderungen der VIC-Register direkt. Um die Werte gezielt verändern zu können sollten Sie sich mit der Programmierung des VIC ein wenig auskennen ( ich verweise da auf einen Grafik-Kurs, den wir vor einiger Zeit in der MD veröffentlichten) .
Hier nun eine Liste der veränderbaren Werte und deren VIC-Registeradressen ( wenn Sie sich mit dem VIC auskennen, dann können Sie sich so direkt auf die Register beziehen) :

Beschreibung                VIC-Register
Sprite an/aus                         21
Y-Vergrößerung an/aus                 23
Sprite/Hintergrund-Priorität          27
Muticolor an/aus                      28
Y-Vergrößerung an/aus                 29
Sprite Mulicolor-Farbe 1              37
Sprite Mulicolor-Farbe 2              38
Farbe von Sprite 0                    39
Farbe von Sprite 1                    40
Farbe von Sprite 2                    41
Farbe von Sprite 3                    42
Farbe von Sprite 4                    43
Farbe von Sprite 5                    44
Farbe von Sprite 6                    45
Farbe von Sprite 7                    46

Durch die Werte bewegen Sie sich mittels ' CRSR UP' und ' CRSR DOWN' . Mit ' CRSR LEFT' und ' CRSR RIGHT' können Sie den Cursor innerhalb eines Wertes hinund herbewegen. Zugelassene Eingabetasten sind '0' bis '9', sowie ' A' bis ' F' . Mit ' RETURN' kehren Sie ins Hauptmenu zurück.
ACHTUNG: Der Wert, der die Sprites einund ausschaltet ( Reg.21) wird während des Editierens noch nicht direkt übernommen. Wenn Sie die Änderung initialisieren wollen, so müssen Sie mit ' RE-TURN' ins Hauptmenu zurückkehren und anschließend den Menupunkt " Sprite- Pointer" nochmals aufrufen!
4) DISK MENU Hier können Sie wie im Hauptmenu einen von fünf Menupunkten aufrufen:
PROGRAMM LADEN Möchten Sie eigene Sprites zum editieren verwenden, so müssen Sie diese in den ASM nachladen. Geben Sie hierzu unter diesem Menupunkt den Filenamen Ihrer Sprite-Datei an, und bestätigen Sie mit ' RETURN' . Wird das File auf der eingelegten Diskette gefunden, so erscheint neben dem Filenamen die Startadresse des Files in hexadezimaler Schreibweise. Sie können diese Adresse mit ' RETURN' bestätigen, oder aber Ihren Wünschen entsprechend ändern. Beachten Sie bitte, daß der ASM mit dem ersten 16 KB-Block des VIC arbeitet, so daß nur Adressen von$0000 bis $4000( dez.0 bis 16384) sinnvoll sind. Sprites an höheren Adessen können mit dem Spritepointer nicht mehr adressiert werden.
Während das angegebene File geladen wird, wird die Ladeadresse hinter der Startadresse angezeigt.
SINUS SAVE Hiermit speichern Sie die momentanen Sinus-, Animaitionsund VIC-Einstellungen inklusive der IRQ-Animationsroutine ab. Geben Sie hierzu den Filenamen an und drücken Sie ' RE-TURN' . Nun können Sie das High-Byte der Startadresse editieren. ASM gibt hier den Wert $ C0( für $ C000= dez.49152) vor. In der Regel sollte diese Startadresse in Ordnung sein. Ist der gewünschte Wert eingegeben, so drücken Sie abermals ' RETURN' . Es wird nun der Sinusplayer ab der angegebenen Adresse gespeichert. Mit einem SYS-Aufruf an diese Adresse können Sie das Playerpro- gramm starten. Wenn Sie Adresse $ C000 als Startadresse gewählt haben, geschieht dies mit " SYS 49152" . Sie sollten anschließend Ihre Sprites auf dem Bildschirm herumhüpfen sehen.
Achten Sie bitte darauf, daß die eigentlichen Spritedaten NICHT mitgespeichert werden. Sie müssen die Sprites von Ihrem eigenen Programm an die richtige Adresse laden.
DIRECTORY Zeigt das Inhaltsverzeichnis der eingelegten Diskette an. Mit ' SPACE' wird die Ausgabe angehalten, bzw. fortgesetzt.
Mit ' RUN/ STOP' wird abgebrochen.
ZURÖCK ZUM HAUPTMENU Es wird zum Hauptmenu zurückgekehrt ( wer hätte das gedacht) .

EXIT                                    
Wählen  Sie  diesen Punkt, so wird Ihnen
noch  eine  letzte  Chance  gegeben  ins

Hauptmenu zurückzukehren. Andernfalls wird ein RESET durchgeführt und somit das Programm beendet.

                                    (ub)

Valid HTML 4.0 Transitional Valid CSS!