★ APPLICATIONS ★ DIVERS ★ Ein Tool für alle Basic-Programmierer ★ |
RSX BZOOM (Schneider Magazin) | Applications Divers |
Es gibt inzwischen mehrere Zoom-Programme für unsere Computer, doch haben sie meist einen entscheidenden Nachteil: Man kann den zu vergrößernden Abschnitt zwar wählen und zoomen, doch wenn er falsch war, ist das Bild futsch. Man muß es dann neu laden und versuchen, passendere Koordinaten einzugeben. Auch bereitet die Berechnung, in welcher Größe und wo der gezoomte Ausschnitt auf dem Bildschirm erscheinen soll, oft Probleme. Das vorliegende Zoom-Programm wird Ihnen bei all dem eine große Hilfe sein. Am besten erklärt man es anhand seiner Befehle. |STORE, (adr) Dieser Befehl speichert das Bild auf dem Bildschirm an der Adresse adr ab. So kann man nach dem Zoomen das alte Bild wieder zurückholen. Dadurch ist es aber auch möglich, von der Vergrößerung überdeckte Bildteile zu zoomen, indem man beim ZOOM-Befehl die Adresse des gespeicherten Bildes angibt. Der dazu benötigte Platz beträgt &4000 Bytes. CPC-6128-Benutzer müssen hier aufpassen. Falls sie für die Adresse einen Wert zwischen 0 und 3 wählen, wird das Bild im zweiten RAM auf der angegebenen Bank abgelegt. So lassen sich bis zu fünf Bilder gleichzeitig im Speicher halten (eines im normalen RAM, vier im zweiten RAM) und abwechselnd zoomen. |RESTORE, (adr) Dieser Befehl bringt das Bild, das an der Adresse adr steht, wieder auf den Bildschirm (für die Werte 0 bis 3 s. |STORE). |WINDOW, (links 0-), (rechts -79), (oben 0-), (unten -24) Dieser Befehl legt die Grenzen fest, in die der vergrößerte Abschnitt kommt. Das hat den Vorteil, daß man vor dem Zoomen nicht überlegen muß, wie groß die Vergrößerung wird. Die Koordinaten entsprechen denen der Cursor-Positionen minus 1 im Mode 2. |ZOOM, xp, yp, verg., (adr) xp: Horizontale Position (0-638) der linken oberen Ecke des Teils, das vergrößert werden soll, yp: Vertikale Position (0—199) der linken oberen Ecke. Aus praktischen Gründen wurde hier 0 für die oberste, 199 für die unterste Bildschirmzeile gewählt, verg.: Hier wird die gewünschte Vergrößerung mitgeteilt. Es gibt ein-, zwei-, vier- und achtfache Vergrößerung, adr: Falls man &C000 angibt, wird direkt das Bild aus dem Bildschirmspeicher genommen und gezoomt. Wenn man aber auch Teile zoomen will, die durch das Window überdeckt werden, sollte man das Bild zuvor mit |STORE, (adr) speichern und diese Adresse nennen. |BZOOM, xp, yp, verg., (adr) Dies ist der eigentlich neue Befehl. Die Werte werden wie bei |ZOOM angegeben. Nach Eingabe dieses Befehls wird zunächst der gewählte Abschnitt im Window vergrößert dargestellt. Danach bleibt das Programm jedoch in der Maschinensprache, und mit den Cursor-Tasten kann man den Abschnitt, der gezoomt wird, hin und her bewegen. Zur Orientierung erscheint ein Rechteck, das den Abschnitt darstellt, der vergrößert wird. Durch Drücken der Taste Q läßt sich dieser Rahmen abschalten. Während des Zoomens ist es möglich, durch Betätigung der Tasten 1,2,4 oder 8 die jeweilige Vergrößerung zu ändern. Ein Druck auf die Taste Z veranlaßt die Rückkehr ins Basic. Das Bild bleibt erhalten und kann z.B. abgespeichert werden. Bei BZOOM wurde versucht, falsche Eingaben so weit wie möglich abzufangen. Bei einem Fehler erscheint eine deutsche Meldung, die ihn genauer beschreibt. |STORE wäre z.B. ein Parameterfehler, da die Adresse fehlt; bei |ZOOM, 2,5,7,0 wäre die Vergrößerung falsch. Wenn die Koordinaten nicht stimmen, werden sie so weit korrigiert, bis sie in den Bildschirmgrenzen liegen. Durch eine besondere Ablage der Maschinensprache in DATA-Zeilen ist das Programm frei verschiebbar. Falls mit dem zweiten Speicher gearbeitet wird, sollte man allerdings den Bereich zwischen &4000 und &8000 meiden. Nachdem das Programm einmal an die gewünschte Stelle gepoked wurde, läßt es sich selbstverständlich als Binärdatei abspeichern. Auf der Diskette sollten Sie das Programm als ”BZOOM.BAS” ablegen. Wenn Sie RUN ”BZOOM” eingeben, erwartet Sie zunächst noch ein kleines Demo, um die Befehle zu verdeutlichen. Gerd Kilian , Schneider Magazin
|