Beiträge von Wiesel im Thema „40/80-Zeichenerweiterung für VC20“

    Wäre dann Blockgröße - Leerzeichen - Dateiname - Leerzeichen - Dateityp: 3 + 1 + 16 + 1 + 1 = 22. Punktlandung.


    Gegenvorschlag:
    Blockgröße - Anführungszeichen - Dateiname - Anführungszeichen - Dateityp: 3 + 1 + 16 + 1 + 1 = 22

    Und den Patch dafür würde ich auch nicht im VC20, sondern in der Floppy verorten - dort wird der String für den Dateityp erzeugt und müsste nicht geparst werden. Leerzeichen können dort auch geschluckt werden. Ich glaube aber, dass das LIST-Kommando automatisch ein Leerzeichen nach der Zeilennummer ausgibt - hier müsste man also darauf spekulieren, dass die allerwenigsten VC20-Programme mehr als 24,5KByte haben (ähemm... geht das überhaupt? Sind 99 Blocks).

    Jens

    Es hat 80-Zeichen Erweiterungen gegeben (oft basierend auf dem Motorola 6845 Display-Chip), aber die waren nie im laufenden Betrieb umschaltbar. Prinzipiell wurde der halbe Computer ersetzt. Die Darstellung war ähnlich dem 80-Zeichen Modus des C128.

    Die Leerzeichen zu ersetzen wäre schon ehr ein Ansatz, aber Du musst bedenken, dass man bei 22 Zeichen pro Zeile kaum Spielraum hat: Ein Dateiname ist bis zu 16 Zeichen lang, die Größe in Blocks wird zwar nur selten dreistellig, aber sie wird's. Der Dateityp hinten dran sind nochmal drei Zeichen und schon sind Deine 22 Zeichen voll; für die Anführungszeichen ist schon kein Platz mehr. Um Größe, Dateiname und Dateityp optisch voneinander zu trennen müsstest Du mit Farben arbeiten - wirklich kontrastreiche, lesbare Kombinationen gibt es auf dem VC20 aber kaum.

    Übrigens wird das Verzeichnis vom LIST-Kommando des Basic-Interpreters angezeigt. Ich halte es für nahezu gefahrlos, das Basic-Rom zu patchen. Die meiste Software wird Kernal-Routinen anspringen, oder direkt in Basic geschrieben sein. Dabei würde ich aber erwarten, dass das LIST-Kommando nicht vorkommt.

    Die Aufgabe würde also lauten: LIST-Kommando patchen. Es müsste nur ein Parser eingeführt werden, der nach Anführungszeichen sucht und in Abhängigkeit davon zwei Dinge umschaltet:

    - Farbe: Außerhalb des Strings Farbe A, innerhalb des Strings Farbe B
    - Spaces unterbinden: Außerhalb des Strings werden Spaces unterbunden, innerhalb des Strings werden Spaces dargestellt
    - die Anführungszeichen werden nicht dargestellt

    Damit hast Du ein hübsches, einzeiliges Display, verlierst aber die Möglichkeit, mit dem Cursor nach oben zu gehen und einfach "LOAD" in die Zeile zu schreiben. Einen Tod musst Du sterben :smile:

    Jens