Ich werf' einfach mal eine kleine BASIC-Erweiterung in die Runde. Die ist hier m.E. noch nicht so diskutiert worden, darum:
MINIGRAFIK implementiert eine Bitmap mit 160x192 Pixeln auf einem VC-20 mit mindestens +8K RAM-Erweiterung. Das Tool ist inspiriert von einem gleichnamigen Programm aus der 64'er 5/85, mit dem ich damals™ schon eine Auflösung von 128x128 Punkten ausprobieren konnte - allerdings lief das dann nur mit einem nicht-erweiterten oder mit +3K erweiterten VC. Meine neue Version (o.k., 'neu' von 2008 ;)) ist komplett neuentwickelt, aber weitgehend abwärtskompatibel (nur die @()-Funktion verhält sich geringfügig anders). Nach dem Start mit RUN meldet sich der VC einfach mit etwas verringertem Speicher zurück, die Bitmap ist jetzt fest alloziert und die Erweiterung aktiv, mit folgenden Befehlen:
@ON - Grafik einschalten
@CLR - Bitmap löschen
@RETURN - zurück zum Textmodus (wird automatisch vor Ausgabe einer Fehlermeldung mit ausgeführt)
@<farbe>,<x>,<y> - Punkt setzen
@<farbe>,<x1>,<y1>TO<x2>,<y2> - Linie ziehen (war in der Original-Version von 1985 nicht enthalten)
@SAVE<dateiname>,<gerät> - Bild speichern (ist auch neu)
@LOAD<dateiname>,<gerät> - Bild laden (dto.)
und mit
@(<x>,<y>) als Funktion kriegt man die aktuelle Farbnummer am Ort geliefert.
Folgt so ein Befehl direkt nach einem THEN, so muß zwischen THEN und @ noch ein Doppelpunkt eingefügt werden, sonst kommt es zu einem ?SYNTAX ERROR.
Mit POKEs auf die Adressen 646, 36878 und 36879 kann man die logischen und physikalischen Farben ändern. Sowohl Hires- als auch Multicolour-Modus werden unterstützt (auch gemischt), und die Attribute im Farb-RAM werden durch die Zeichenbefehle entsprechend behandelt.
Nur 1K groß - und schon wird aus dem VC-20 eine ganz andere Maschine. Viel Spaß damit!
Michael