Magic Disk 64

home to index to text: MD9310-UTILITIES-WEIRD_COLOUR.txt
         2x2 Weird Color Editor         
 "Groß-Zeichen in phantastischen Farben"

Der "2 x2 Weird Color Editor"( im Folgenden " WCE"), ist ein spzieller 2 x2 Character- Colorfont-Editor, der es Ihnen ermöglicht, durch einen Rastertrick in jeder Bildschirmzeile drei neue Farben für die Font-Colorierung zu verwenden.
Dadurch ist die Farbvielfalt weniger eingeschränkt, so daß Sie verblüffend bunte Zeichensätze erstellen können.
1) GRUNDLAGEN Der WCE erstellt sogenannte " Big-Fonts", in denen ein Zeichen aus 2 x2, also 4 normalen Zeichen besteht. Ein solches Zeichen hat demnach eine Größe von 16 x16 Pixeln. Möchten Sie es auf den Bildschirm bringen, so müssen Sie die Bild- schirmcodes ( nicht etwa die ASCII-Codes! !), des gewünschten Zeichens in einer 2 x2- Matrix in den Bildschirmspeicher schreiben. Hierbei werden die Codes des Zeichens in Kleinschreibweise, in Großschreibweise, und beider Schreibweisen nochmals invertiert, verwendet. Diese Codes sind zunächst der Bildschirmcode des kleingeschriebenen Zeichens, und dann immer wieder dieser Wert plus 64 .
Um also beispielsweise ein " A" darzustellen, müssen Sie die Codes 1,65,129 und 193 im Bildschirmspeicher in quadratischer Anordnung ablegen. Zusätzlich müssen natürlich, mittels Rasterinterrupt, die Farben der Register $ D021,$ D022,$ D023 in jeder Rasterzeile des angezeigten Zeichens, wie im Editor gesetzt werden. Wem dies noch ein Rätsel sein sollte, der sollte gespannt sein auf den Raster-IRQ- Kurs, der ab der nächsten Magic-Disk monatlich auf die Programmierung solcher Probleme eingeht.
2) ZUM PROGRAMM Laden Sie den WCE zunächst mittels LOAD" WEIRD COLOR",8 und starten Sie ihn mit " RUN" . Nach kurzer Entpackzeit erscheint sogleich der Editorbildschirm, auf dem Sie links oben das zu editierende Zeichen sehen. Rechts daneben ist außer dem Programmtitel auch die Anzeige " Current Char" zu erkennen, die Ihnen die Zeichennummer ( in hex.) des momentan editierten Zeichens, sowie dessen ' normales' Aussehen anzeigt. Zwischen Editorfeld und Titeltext sehen Sie einen 3 x16 Zeichen breiten Farbbalken, in dem die Farben der VIC-Register $ D021,$ D022 und $ D023 für jede einzelne Zeile angezeigt werden. Desweiteren ist hier ein Farbanzeigecursor zu sehen, der die momentan benutzte Zeichenfarbe spezifiziert. Am unteren Bildschirmrand sind dann die einzelnen Zeichen dieses Zeichensatzes in der schon angesprochenen Rasterdarstellung zu sehen. Das umrahmte Zeichen in der Mitte stellt dabei das momentan editierte Zeichen dar.
Den blinkenden Grafikcursor im Editorfeld können Sie zunächst einmal mit Hilfe der Cursortasten bewegen. Gleiches ist aber auch mit einem Joystick in Port 2 möglich. Drücken Sie den Feuerknopf, so wird ein Pixel in der aktuell angewählten Farbe gesetzt. Ist an der aktuellen Cursorposition der Pixel schon gesetzt, so wird er gelöscht ( Hintergrundfarbe Schwarz erscheint) . Arbeiten Sie mit der Tastatur, so wird die ' SPA-CE'- Taste zum Setzen eines Pixels, die ' DEL'- Taste zum Löschen desselben verwandt. Desweiteren stehen Ihnen noch einige andere Tastenfunktionen zur Verfügung, die im Folgenden aufgelistet sind:
a)'+' UND '-' Mit diesen beiden Tasten bewegen Sie sich ein Zeichen vor oder zurück. Außer dem Editorfeld wird dabei auch die Zei- chensatzanzeige am unteren Bildschirmrand aktualisiert.
b)'1','2', UND '3' Hiermit wählen Sie die zu benutzende Zeichenfarbe aus. Drücken Sie eine dieser drei Tasten so bewegt sich der Farbanzeigecursor im Farbbalken rechts des Editorfensters auf die entsprechende Zeichenfarbe. Von nun an wird diese Farbe zum Zeichnen verwendet.
c)'<' UND '>' Diese beiden Tasten schieben das momentan bearbeitete Zeichen jeweils eine Spalte nach links oder rechts. Die jeweils überlaufende Spalte kommt an der anderen Seite wieder hereingerollt.
d)' CLR' Hiermit löschen Sie das Editorfeld und somit das momentan bearbeitete Zeichen.
e)' SHIFT-C' Hiermit wird, nach einer Sicherheitsabfrage, die Sie mit ' Y' beantworten müssen, der gesamte Zeichensatz gelöscht.
Geben Sie ' N' ein, so wird unverrichteter Dinge wieder zum Editor zurückgesprungen.
f)'{' UND '}' Diese beiden Tasten rollen die aktuelle Farbspalte, in der sich der Farbanzeigecursor befindet, nach oben oder unten.
Auf diese Weise kann man einfach die Farbgebung verändern.
g)' CTRL-F' Diese Tastenkombination füllt die aktuelle Farbspalte, in der sich der Farbanzeigecursor befindet, mit der Farbe, die in der ersten Zeile definiert ist.
Hiermit können Sie die Farbgebung löschen und so eine neue Farbpalette erstellen.
h)'$' Diese Tastenfunktion lädt das Inhaltsverzeichnis der eingelegten Diskette und zeigt es auf dem Bildschirm an. Mit ' SPACE' gelangen Sie zurück zum Editor.
i)' L' Mit dieser Taste laden Sie einen Zeichensatz inklusive Farbdaten von Diskette. Hinter dem Prompt " LOAD CHARSET:" geben Sie hierzu den Namen des zu ladenden Zeichensatzes an. Eingaben können ausschließlich mit der ' DEL'- Taste korrigiert und mit der ' RETURN'- Taste abgeschlossen werden. Geben Sie keinen Namen ein, so wird unverrichteter Dinge zum Editor zurückgekehrt.
j)' S' Diese Taste speichert den editierten Zeichensatz auf Diskette. Geben Sie hinter dem Prompt " SAVE CHARSET:" lediglich den Namen des zu speichernden Files an.
Ansonsten gelten hier die selben Bestim- mungen wie beim Laden.
k)' CTRL1-8' UND ' Commodore1-8' Mit diesen Tastenkombinationen ändern Sie die aktuelle Zeichenfarbe, auf der der Farbanzeigecursor steht, in eine andere um. Die hierbei verwandten Farbcodes entsprechen den üblichen Codes, mit denen man auch im normalen Betriebsmodus des C64 die Zeichenfarbe einstellt. Die Belegung können Sie Ihrem C64- Benutzerhandbuch entnehmen.
l)' B' Diese Taste kopiert das aktuelle Zeichen in einen internen Puffer.
m)' C' Hiermit kopieren Sie das zuvor mit ' B' gepufferte Zeichen wieder in das aktuelle Zeichen zurück. Dies stellt zum Einen eine normale Kopierfunktion dar. Zum Anderen können Sie hiermit auch eine UNDO-Funktion simulieren, indem Sie je- desmal, wenn Sie mit der Editierung eines neuen Zeichens beginnen, selbiges mit ' B' puffern und bei Bedarf mit ' C' wieder zurückholen.
3) HINWEISE FÖR PROGRAMMIERER Wie schon erwähnt, muß ein vom WCE erstellter Zeichensatz als Big-Font verwandt werden. Das heisst, daß Sie, nach Laden und Einschalten des neuen Zeichensatzes, ein Zeichen über die obig beschriebene Art und Weise auf den Bildschirm bringen müssen. Um es nun noch in der richtigen Farbdarstellung zu sehen muß ein Rasterinterrupt programmiert werden, der in jeder Rasterzeile, in der etwas von einem der Weird-Color- Zeichen zu sehen ist, die Zeichenfarbe entsprechend setzt. Wer sich damit noch nicht so richtig auskennt, sei auf den schon angesprochenen Raster-IRQ- Kurs verwiesen. Normale 4- Farb-Big- Fonts können natürlich auch erstellt werden, indem Sie in allen drei Farbspalten in jeder Zeile die gleiche Farbe verwenden (' CTRL-F'- Funktion) und sich so den Raster- IRQ sparen ( die Farben müssen später dann nur einmal in den VIC-Registern $ D021,$ D022,$ D023 richtig gesetzt werden.
Um einen mit dem WCE erstellten Zeichensatz in eigene Programme übernehmen zu können, sollten Sie auch das Datenformat der gespeicherten Zeichensätze kennen:
Zunächst einmal wird ein, mit dem WCE gespeicherter, Zeichensatz beim absoluten Laden (",8,1") an Adresse $2000( dez.8192) untergebracht. Ab hier liegen nun die Zeichen im üblichen Format vor, so wie auch im ROM-Zeichensatz.
Zusätzlich sind in den lezten 48 Bytes des Files auch noch die zu verwendenden Farben für die einzelnen Rasterzeilen abzulesen. Bei einem an Adresse $2000 geladenen Zeichensatz finden Sie diese Farbcodes in den folgenden Bytes:

$2800-$280F: Codes für Register $D021   
$2810-$281F: Codes für Register $D022   
$2820-$282F: Codes für Register $D023   

Hierbei sind Codes jeweils spaltenweise abgelegt ( von Zeile 1 bis 16) .

                                    (ub)

Valid HTML 4.0 Transitional Valid CSS!