Char-Scanner
In dieser Ausgabe widmen wir uns voll und ganz den
vielfältigen Möglichkeiten, die uns der Zeichensatz
bietet. Der Char-Scanner ist ein besonders nützliches
Utensil, mit dem Sie professionelle Zeichensätze aus
noch professionelleren Programmen, Spielen . . . übernehmen ( man könnte auch " klauen" sagen) können.
Um diese " Entführung" auszuführen, gilt es, das Programm unter einem falschen Vorwand in den Computer
zu laden, und sobald der Zeichensatz " an' s Licht
kommt", brutal auf RESET zu drücken. Daraufhin ist
der " Vollstrecker", Mr. Char-Scanner, in den Rechner
zu befördern und mit SYS 4096( wichtig!) in Aktion
treten zu lassen. Mit dem Zielsucher durchforstet
der User ( das sind Sie!) nun den gesamten Speicher
des C64, und zwar von $0000-$ FFFF. Dies geschieht
durch Druck auf F1(= vorwärts) bzw. F3(= rückwärts) .
Ist der gesuchte Zeichensatz in seinem Versteck ausfindig gemacht, so entreißt Mr. Char-Scanner dem Programm den Zeichensatz ( geschieht durch Druck auf F7) und entführt ihn auf eine " unbekannte" Diskette ( geben Sie einen Filenamen und legen Sie die gewünschte
Diskette in Ihr Laufwerk ein) . Nach dem Speichervorgang versetzt das Programm Ihren C 64 in den Einschaltzustand zurück.
Die abgelegten Zeichensätze liegen von $3000-$3800 im
Speicher und können daher mit den meisten Zeichensatz
-
editoren weiterverarbeitet werden ( natürlich befinde
tsich auf dieser Diskette ein solcher!) .
Dieses Programm ist absichtlich möglichst kurz gehal
- ten worden, da sonst bereits ein Zeichensatz hätt
ezerstört werden können. Auch der Programmstart de
sChar-Scanners wurde extra nach $1000 verlegt, da sic
hdort durch die Zeichensatzspiegelungen des VIC-Chi
pkeine Zeichensätze befinden können.
Pegasus Zeicheneditor V1.6
" Zeichensatz; Klappe, die Zweite . . . !" . Nachdem Sie
mit dem " Char-Scanner" einen Zeichensatz " gekidnappt" haben, bietet sich Ihnen mit dem " Pegasus Zeicheneditor V1 .6" die Möglichkeit, diesen noch individuell zu
verändern. Natürlich können Sie auch Ihren ganz persönlichen Zeichensatz erstellen, ohne " auf die schiefe Bahn" zu geraten . . .
Der Pegasus Zeicheneditor V1 .6( langweilt auf die
Dauer, nicht? Wir verwenden der Einfachheit halber in
Zukunft die professionelle Abkürzung " PVC" . . .) besteht aus vier Teilprogrammen, die durch Druck auf
> F1<,> F3<,> F5< und > F7< erreicht werden können.
Diese Teilprogramme tragen entsprechend ihrer Funktion die Namen > Zeicheneditor<,> Buffereditor<,> Satzeditor< und einfach > DOS< . Bis auf das Teilprogramm > DOS<, das einen eigenen Bildschirmaufbau
besitzt, sind alle Teile auf einer Bildschirmseite
zu finden. Ein aktivierter Teil wird durch die Hellgraufärbung des Rahmens in dessen Bereich markiert.
a) DER ZEICHENSATZEDITOR
Der Zeicheneditor ermöglicht es, ein einzelnes Zeichen zu verändern. Hier erfolgt auch die Festlegung des Zeichenmodus ( Normaloder Multicolorzeichen) und der Farben:
<CRSR-Tasten> Bewegen des Cursors im Editorfeld. <HOME> Setzen des Cursors auf die "HOME"-Position. (oben links!) <CLR> Löschen des Editorfeldes. <1>, <2>, <3> u. <H> Festlegen der Farbe (1-3) bzw. der Hintergrundfarbe (>H<) als Punktfarbe. Die angewählte Farbe wird nun durch einen blinkenden Rah- men markiert. <X>, <Y> Spiegeln des laufenden Zei- chens an der X- bzw. der Y-Achse. <D>, <SHIFT D> Drehen des laufenden Zei- chens in mathematisch po- sitiver bzw. mathematisch negativer Richtung. Ist der Multi-Color-Modus akti- viert, so ist dieser Befehl unwirksam. <I> Invertieren des laufenden Zeichens. <ü>, <:>, <;> u. </> Diese Tastenbelegung dient zum Anwählen eines Zeichens und bewegt den Satzcursor in die entsprechende Rich- tung. <M> Umschalten zwischen Normal- und Multi-Color-Modus. <,>, <.> Erniedrigen bzw. Erhöhen der laufenden Farbe um eine Stelle. Im Multi-Color- - Modus sind für Farbe 1 nur Werte von 0 bis 7 möglich. <SPACE> Setzen eines Punktes in der laufenden Farbe. <SHIFT/SPACE> Löschen eines Punktes, indem der Punkt die Farbe des Hintergrundes annimmt. <RETURN> Invertieren eines Punktes; ein gesetzter Punkt wird gelöscht und umgekehrt. <CTRL A> (De-)Aktivieren des Auto- Modus (AF); ist dieser an- geschaltet, so bewegt sich der Cursor, nachdem ein Punkt gesetzt, gelöscht od. invertiert wurde, in die Richtung, in die der Cursor zuletzt bewegt wurde. <=> Kopieren eines Zeichens an die laufende Zeichenposi- tion; das zu kopierende Zeichen läßt sich mit den Cursortasten und HOME an- wählen, RETURN kopiert das Zeichen und RUN/STOP bricht diese Funktion ab. <U> Verknüpfen des aktuellen Zeichens mit einem anderen durch Bitweises AND; das Anwählen erfolgt wie bei <=>. Ein gesetzter Punkt bleibt in dem laufenden Zeichen nur dann gesetzt, wenn er auch in dem zweiten Zeichen gesetzt ist. Im Multi-Colour-Modus führt diese Funktion zu Farbver- fälschungen und sollte des- halb nicht (!) benutzt wer- den. <O> "ODERt" das aktuelle Zei- chen mit einem anderen. Ein Punkt wird gesetzt, wenn er in einem der beiden Zeichen gesetzt ist; ansonsten gilt das für <U> gesagte ... <E> Verknüpfen mittels EXKLU- SIV-ODER. Ein Punkt wird gesetzt, wenn er entweder in dem ersten oder in dem zweiten Zeichen gesetzt ist; ansonsten wird dieser gelöscht. Auch hier erfolgt die Steuerung wie bei <=>. <↑>, <SHIFT ↑> Rotieren des laufenden Zei- chens um eine Zeile nach oben bzw. nach unten. << >, <SHIFT < > Rotieren des laufenden Zei- chens um eine Spalte nach links bzw. rechts. <CTRL +/-> Rotieren der laufenden Zei- le im Zeichen nach links bzw. nach rechts. <+/-> Erhöhen bzw. Erniedrigen der Startadresse für das Speichern des Zeichensatzes um $0800.
b) DER BUFFEREDITOR
Der Buffereditor dient vor allem dazu, den neuen Zeichensatz zu testen. Er ist auch eine wertvolle Hilfe
bei Zeichensätzen, die sich aus mehreren Zeichen zusammensetzen. Im Grunde kann man ihn als einen Mini-Bildschirm- Editor bezeichnen. Alle eingegebenen Zeichen werden im Buffereditorbereich ausgegeben.
Sonderfunktionen haben folgende Tasten:
<CRSR> Bewegen des Cursors. <RETURN> Setzen des Cursors in die nächste Zeile. <HOME> Setzen des Buffercursors in die Homeposition (immer noch links-oben!) <CLR> Löschen des Buffers mit einem frei wählbaren Zei- chen; dieses Zeichen läßt sich mit den Cursortasten auswählen. STOP bricht die- se Funktion ab, RETURN be- endet die Eingabe. <INST> Einfügen eines Leerzeichens an der laufenden Position. <DEL> Löschen des unter-dem-Cur- sor-befindlichen Zeichens.
< RVS ON/ OFF> Entspricht dem Basic-Editor
<CTRL +> Erniedrigen des Bildschirm- codes (BSC) des Zeichens unter dem Cursor um eins. <CTRL -> Erhöhen des BSC des laufen- den Zeichens um eins.
c) DER SATZEDITOR
Der Satzeditor ermöglicht es, mehrere Zeichen zu kopieren, gegeneinander auszutauschen oder zu löschen.
<CRSR> Bewegen des Satzcursors. <INST/DEL> Einfügen eines Leerzeichens bzw. Löschen des Zeichens unter dem Cursor. <HOME> Setzen des Satzcursors auf Zeichen #0. <CLR> Löschen des Zeichensatzes nach einer Sicherheitsab- frage. <SHIFT 1> Kopieren des Orginalzei- chensatzes Groß/Graphik in den Editor; ein bereits er- stellter Zeichensatz geht verloren. <SHIFT 2> Kopieren des Klein/Groß- Zeichensatzes in den Editor <I> Kopieren der Zeichen 0 bis 127 nach 128 bis 255; die Zeichen werden außerdem gleich invertiert. <K> Kopieren von Zeichen; die Auswahl erfolgt wie bei CRL im Buffereditor. <V> Vertauschen von Zeichen; Steuerung wie bei <K>. <L> Löschen eines Zeichens. <SHIFT/SPACE> An- bzw. Ausschalten des Kopierflag (KF); ist KF an- geschaltet, so wird beim Bewegen des Cursors im Satzeditor das aktuelle Zeichen an die Position des Buffercursors kopiert. <ü>, <:>, <;> u. </> Bewegen des Buffercursors i n die entsprechende Richtung .
d) Das DOS-Menü
Im Grunde genommen ist dieser Programmteil selbsterklärend, denn es wird auf dem Bildschirm ein übersichtliches Menü dargestellt. Wie üblich erreicht man
die anderen Teilprogramme durch Druck auf die Funktionstasten. Hinzu kommt allerdings die Taste < F8>, durch die man den Zeichensatzeditor verlassen kann.
<L> Laden eines Zeichensatzes von Diskette. Die Filenameneingabe kann durch RUN/STOP oder Leerein- gabe (einfach RETURN) abgebrochen werden. <S> Speichern des aktuellen Zeichen- satzes. Die Eingabe des Namens er- folgt wie bei <L>. Der Zeichensatz wird als PRG-File mit der Start- adresse abgespeichert, die im Zei- cheneditor unter "START" steht.
< P> Speichern eines Zeichensatzprogrammes ( siehe Erläuterungen) .
<D> Ausgeben der Directory; die Aus- gabe läßt sich mit <SPACE> unter- und mit <RUN/STOP> abbrechen. <B> Senden von DOS-Befehlen an das ak- tuelle Laufwerk; wird bei der Ein- gabe nur <RETURN> gedrückt, so er- folgt die Ausgabe der Fehlerkanal- meldung. << > Diese Taste dient dazu, zwischen eventuell vorhandenen Laufwerken umzuschalten. Dieser Programmteil erkennt selbstständig, ob und unter welcher Gerätenummer ein Diskettenlaufwerk ansprechbar ist. <F8> Beenden des Zeichensatzeditors => Es erfolgt ein Rücksprung in den Basiceditor, aber der Zeichensatz- editor kann durch Eingabe von "RUN" wieder gestartet werden (der bereits erstellte Zeichensatz geht dabei nicht verloren!).
e) Ergänzende Erläuterungen
Das Speichern eines Zeichensatzprogramms ( Punkt < P> im DOS-Menü) ist speziell für den " reinen" Anwender
sehr nützlich, der einen Zeichensatz unter Basic benutzen möchte. Das erzeugte File wird dazu absolut
geladen ( LOAD " NAME",8,1) und mit " SYS 49152" gestartet. Sie haben jetzt aber trotzdem noch die Möglichkeit, durch Druck auf < COMMODORE/ SHIFT> zwischen
dem Neuen und dem Original-Zeichensatz hinund herzuschalten. Die Installation des neuen Zeichensatzes
hat jedoch zur Folge, daß der Bildschirm in einen an- deren Speicherbereich verschoben wird. Er beginnt nun
an der Adresse $ CC00(=52224) . Die Zeiger der Sprites
liegen bei 53240 bis 53247 . Für Sprites uneingeschränkt benutzbar ist der Speicherbereich von $ C900 bis $ CBFF (51456-52223) ; dies sind die Blöcke 36-47 .
Das Zeichensatzprogramm besitzt außerdem Routinen, die dafür sorgen, daß ein Zeichensatz nach einem NMI
( Non Maskable Interupt, durch RUN/ STOP + RESTORE) und einem BREAK ( durch " POKE 2,0 : SYS 2) trotzdem aktiviert bleibt. In diesen Routinen werden auch die
Bildschirmfarben neu definiert. Falls Ihnen diese
nicht gefallen, so ist es keine Schwierigkeit, sie
zu ändern:
a) Im Zeichensatzeditor: POKE 11329, Schriftfarbe POKE 11365, Rahmenfarbe POKE 11366, Hintergrundfarbe b) Im Zeichensatzprg. : POKE 49370, Schriftfarbe POKE 49406, Rahmenfarbe POKE 49407, Hintergrundfarbe
Wie Sie oben schon erfahren haben, ist das Benutzen
eines Zeichensatzes unter BASIC eine recht einfache
Angelegenheit, sofern der Zeichensatz im Normalmodus
erstellt wurde. Die ganze Sache sieht allerdings ein
wenig anders aus, wenn Sie einen Multicolorzeichensatz verwenden möchten. Gehen Sie also in diesem Fall
folgendermaßen vor:
Nachdem Sie den MC-Zeichensatz geladen und mit " SYS
49152" aktiviert haben, wird dem VIC mitgeteilt, daß
er die Zeichen im MC-Modus darstellen soll. Dies geschieht durch die Befehlsfolge:
" POKE 53248+22, PEEK(53248+22) OR 2↑4" . Alle Punkte, die in einem MC-Zeichen mit Farbe eins festgelgt
wurden, nehmen demnach die aktuelle Schriftfarbe an.
Die Farben zwei und drei ( für die alle 16 Farben
zur Verfügung stehen!), werden über die Register 34 und 35 des VIC kontrolliert. So verändert man z. B.
die Farbe zwei durch " POKE 53248+34,14" zu Hellblau.