Der VC 1526/MPS 802 als Grafikdrucker
Aufgabe des Programms ist es, die Punkte aus dem Bildspeicher (nachfolgend als HRBM — Hires-Bit-Map — bezeichnet) zu lesen und dem Drucker in geeigneter Form zu übergeben. Die gestellte Aufgabe läßt sich in die folgenden Abschnitte unterteilen: Initialisierung; Lesen des HRBM; Umformen der gelesenen Daten; Übergabe der Daten an den Drucker; Ende.
Betrachten wir das Ganze aus der Bit-Sicht. Das HRBM besteht aus 8 000 Bytes. Diese lassen sich als 8 x 8 Bit-Zeichen zusammenfassen. Man erhält dann also 25 Zeilen zu je 40 Spalten aus 8 x 8 Bit-Zeichen = 1000 solche Zeichen. Das Programm liest also ein solches Zeichen aus der HRBM und definiert nach diesem Muster einen neuen Character für den 1526. Im HRBM sind aber die Bytes horizontal orientiert, während sie der Drucker vertikal orientiert erwartet (siehe Skizze 1). Das Umformungsprogramm hat deshalb die Aufgabe, die Bits um die Diagonale zu spiegeln. Damit wären alle Teilprobleme gelöst.
Das Assemblerprogramm bietet noch folgende Vorzüge:
- Befehlssyntax: SYS 6 * 4096, T, P
T = Tabulator (0 <= T <= 40)
P*4096 = Anfangsadresse des HRBM (0 <= P <= 15) - das HR-Bild kann auf dem Drucker in der Horizontalen verschoben werden (Tab)
- durch einen speziellen Parameter wird das HRBM gewählt (auch das »versteckte« RAM unter dem Interpreter und dem Betriebssystem)
- durch RUN/STOP unterbrechbar (Files werden korrekt geschlossen)
- kein Zeilenvorschub, das heißt zwei nacheinander ausgedruckte Bilder fügen sich nahtlos aneinander
- das Programm liegt von $6000 bis $613b in einem günstigen Bereich und kann somit mit vorhandenen Basic-Erweiterungen verwendet werden
- hohe Geschwindigkeit durch reine Maschinensprache.
Wenn Sie das Hardcopy-Programm in Verbindung mit einer Basic-Erweiterung verwenden, beachten Sie bitte folgende Reihenfolge:
- Basic-Erweiterung laden und starten.
- Basic-Lader des Hardcopy-Programms laden und starten.
Das Maschinenprogramm schützt sich selbst vor dem Überschreiben.
Es kann sein, daß Sie vor dem Starten des Programms den Zeilenvorschub des VC 1526/MPS 802 verkleinern müssen:
OPEN 4,4: OPEN 6, 4, 6: PRINT#6, CHR$(18): PRINT#4: CLOSE 4: CLOSE 6
Simons Basic | P = 14 |
Screen-Graphics 64 | P = 10 |
Ultra-Basic 64 | P = 10 |
Supergrafik 64 | P = 10 & P = 14 |
Hi-Res Grafik Aid (64 intern) | P = 2 |