APPLICATIONSDIVERS ★ MAGIC SCROLL|CPC MAGAZIN) ★

Magie in alle RichtungenUpdate zu Magic Scroll (Computer Partner)
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

Mit "Magie Scroll” können Sie in alle Richtungen scrollen.

Zwar liegen schon viele Scroll-Programme vor, aber "Magic Scroll” ist keines der üblichen, sondern kann mehr. So ist z.B. ein Verschieben in alle vier Richtungen in einem beliebigen Bildschirmausschnitt möglich; wahlweise lassen sich gleichzeitig vorher im RAM abgelegte Bilder einfü-gen. Das vertikale Scrolling (hoch/runter) erfolgt pixelweise, das horizontale (rechts/links) byteweise.

Die RSX-Erweiterung stellt sieben neue Befehle zur Verfügung, die mit CALL &A000 initialisiert werden. Es handelt sich um folgende:

|VSCROLL,Flag,links.rechts.oben.unten Links und rechts geben den linken und rechten Rand des zu scrollenden Bildschirmausschnitts in Bytes (= Spalten in MODE 2) an. Das Window muß mindestens zwei Bytes breit sein. Oben und unten stehen für die Ober- und Untergrenze des Fensters, gemessen in normalen Bildschirmzeilen. Flag legt die Scroll-Richtung fest. Ist Flag = 0, wird nach unten, bei Flag > 0 nach oben verschoben. |HSCROLL.FIaq.links.rechts.oben.unten Die Window-Grenzen werden wie bei |VSCROLLfestgelegt. Bei Flag = 0 erfolgt eine Verschiebung nach links, bei Flag >0 nach rechts. |MEMORY,adr, Breite, Höhe Dieser Befehl dient zur Bestimmung eines Speicherbereichs ab Adresse adr, in welchem ein Bildschirmausschnitt mit |STORE abgelegt wird. Dessen Breite und Höhe (Breite in Bytes) sind für die spätere Ausgabe des Bildes nötig. Selbstverständlich können mehrere Windows ins RAM kommen, sofern der Speicher ausreicht.

|STORE,links,rechts,oben,unten

Mit dieser Anweisung wird ein Bildschirmausschnitt (Window-Grenzen wie bei den Scroll-Befehlen) in dem mit |MEMORY festgesetzten Bereich abgelegt.

|VCALL,Flaq,links,rechts,oben,unten

Mit diesem Kommando wird jeweils eine Pixel-Zeile eines gespeicherten Fensters wieder auf den Bildschirm geholt, was natürlich nur in Verbindung mit Scrolling sinnvoll ist. Bei .jedem Aufruf erfolgt die Ausgabe der jeweils nächsten Pixel-Zeile. Die Window-Grenzen müssen natürlich mit denen des Scroll-Befehls übereinstimmen. Das Flag hat hier eine besondere Bedeutung. Bei Flag = 0 (Scrolling nach unten) wird mit der Bildunterkante, bei Flag >0 (Scrolling nach oben) mit der Bildoberkante begonnen.

Das jetzige Ausgabefenster muß zwar die gleiche Breite wie das ursprünglich gespeicherte haben, die Höhe kann jedoch variiert werden, wodurch sich interessante Effekte erzielen lassen. Falls man mit |MEMORY und |STORE mehrere Windows hintereinander abgelegt hat oder nach einer Ausgabe wieder von vorne beginnen will, muß man den gewünschten Speicherbereich und die ursprünglicher Maße des gespeicherten Fensters mit |MEMORY neu mit-teilen.

|HCALL,flag,links,rechts,oben,unten

Dies ist die analoge Anweisung zu |VCALL für horizontales Scrolling. Das meiste, was für |CALL gilt, läßt sich auch hier anwenden. Die Ausnahmen sind folgende: Bei Flag = 0 (Scrolling nach links) wird mit der linken, bei Flag >0 (Scrolling nach rechts) mit der rechten Bildkante begonnen. Das jetzige Ausgabe-Window muß die gleiche Höhe wie das ursprüngliche aufweisen, die Breite läßt sich variieren. Ausgegeben wird jeweils ein Abschnitt mit einer Breite von 1 Byte.

|CALL,links,rechts,oben,unten

Dies ist das Gegenteil zum Befehl |STORE. Ein mit |MEMORY charakterisierter Speicherbereich wird innerhalb der angegebenen Window-Grenzen auf den Bildschirm geholt, wobei Ursprungs- und Ausgabefenster wieder die gleichen Maße haben müssen.

Für Maschinenprogrammierer seien nachfolgend noch die Einsprungadressen genannt:

Start : &A000
Länge : &3D3
|VSCROLL : &A048
|HSCROLL : &A0C5
|STORE : &A172
|VCALL : &A1A7
|HCALL : &A1EE
|MEMORY : &A265
|CALL : &A2A3

Die Variablen stehen ab &A3B2 im Speicher.

Hartmut Grawe , CPC Magazin

★ PUBLISHER: CPC Magazin
★ YEAR: 1987
★ CONFIG: 64K + AMSDOS
★ LANGUAGE:
★ TAG: /RSX/
★ LICENCE: LISTING
★ AUTHOR: Hartmut Grawe
 

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» Magic  Scroll    (CPC  Magazin)    LISTING    GERMANDATE: 2020-06-06
DL: 4 fois
TYPE: PDF
SIZE: 529Ko
NOTE: 4 pages/PDFlib v1.6

Je participe au site:
» Newfile(s) upload/Envoye de fichier(s)
★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Alpha Scroll (Amstrad Computer User)
» Applications » Scrolling (Amstrad Magazine)
» Applications » Editeur de Scrolling
» Applications » ScreenScroll (CPC Amstrad International)
» Applications » Magic Vertical Scroll (CPC Magazin)

QUE DIT LA LOI FRANÇAISE:

L'alinéa 8 de l'article L122-5 du Code de la propriété intellectuelle explique que « Lorsque l'œuvre a été divulguée, l'auteur ne peut interdire la reproduction d'une œuvre et sa représentation effectuées à des fins de conservation ou destinées à préserver les conditions de sa consultation à des fins de recherche ou détudes privées par des particuliers, dans les locaux de l'établissement et sur des terminaux dédiés par des bibliothèques accessibles au public, par des musées ou par des services d'archives, sous réserve que ceux-ci ne recherchent aucun avantage économique ou commercial ». Pas de problème donc pour nous!

CPCrulez[Content Management System] v8.7-desktop
Page créée en 468 millisecondes et consultée 54 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.