VCS 80

Ein erster Vertreter von Einplatinenrechnern ist der VCS 80 von Dipl.-Math. Eckhard Schiller.

Der VCS 80 im KCEMU

Merkmal Beschreibung
CPU U880
ROM 0,5K 0000-01FF (2x U552)
RAM 1K 0400-07FF (8x U202)
Takt 2,5 MHz
Anzeige 8stellige 7-Segment-Anzeige
Tastatur 24+1 Tasten (0..F, 7 Funktionstasten, 1 ungenutzt, Reset)
Peripherie 1 PIO U855 f. Tastatur + Anzeige
  1. Dipl-Math. Eckhard Schiller: U-880-System mit minimalem Aufwand. rfe 3/1983, S. 154-156
  2. Dipl-Math. Eckhard Schiller: Monitorprogramm für VCS 80. rfe 6/1983, S. 340-341
  3. Dipl-Math. Eckhard Schiller: Korrektur. rfe 11/1983, S. 686
  4. Dipl-Math. Eckhard Schiller: Realisierung von Bildschirmspielen. rfe 2/1984, S. 84-86

Das Monitorprogramm besitzt folgende Funktionen:

  • Eingabe einer Speicheradresse
  • Anzeige von Speicherzellen
  • Eingabe in Speicherzellen
  • Vorwärts- und Rückwärtszählen der Speicheradresse
  • Registeranzeige
  • Start des Anwenderprogrammes
  • Unterbrechung des Anwenderprogrammes an einer einzugebenden Adresse
  • Einzelschrittbetrieb.

Eine weitere Taste ist für die Eingabe über Lochband oder Kassettengerät vorgesehen.

Das Programm arbeitet mit Hexadezimalzahlen. Damit können acht Bits als zwei Ziffern und 16 Bits als vier Ziffern dargestellt werden. Die acht Ziffern der Siebensegmentanzeige sind in zwei Gruppen von je vier geteilt. Die linke Hälfte dient zur Anzeige der Funktion oder der Speicheradresse. In der rechten Hälfte werden die Eingaben von der Tastatur oder der Speicherinhalt angezeigt. Die Tastatur teilt sich in die 16 Hexadezimalzahlen (s. Tafel) und die acht Funktionstasten A+, A-, MA, RE, GO, TR, ST und PE.

Das Monitorprogramm benutzt die Register AF', BC', DE' und HL'. Beim Ansprung des Anwenderprogramms wird vorher ein Registerwechsel ausgeführt. Der Keller wird von 07E0H abwärts geführt.

Start des Monitors

Nach RESET erscheint die Anzeige Mo. Jetzt kann über die HT eine vierstellige Adresse eingegeben werden. Durch die Taste MA wird sie in die linke Hälfte der Anzeige übernommen, und das Programm befindet sich im Hauptzyklus, zu dem alle anderen Funktionstasten (außer GO) zurückkehren. In der rechten Hälfte zeigen die siebente und achte Ziffer den Inhalt der angezeigten Adresse n an. Die fünfte und sechste Ziffer zeigen den Inhalt der Adressen an. Jetzt kann die Hexadezimaltastatur betätigt werden. Wenn die Toste A+ gedrückt wird, wird der Inhalt der siebenten und achten Anzeigestelle in den Speicher übernommen und die Speicheradresse um 1 erhöht. Auf diese Weise kann man den Speicher beschreiben. Der Inhalt der alten Adresse steht nun an der fünften und sechsten Stelle. Durch Drücken der Taste A wird die Speicheradresse um Eins vermindert. Ein Beschreiben des Speichers erfolgt dabei nicht.

Registeranzeige

Nach Betätigen der Toste RE erscheint die Anzeige AF, und der Inhalt des AF-Doppelregisters wird angezeigt. Durch Drücken von A+, A-, MA, RE und GO werden das BC-, DE-, HL-, IX- und IY-Register angezeigt. Bei ST, TR und PE kehrt das Programm in den Hauptzyklus zurück.

Programmstart

Wenn die Toste GO betätigt wird, kann anschließend die Startadresse eingegeben werden. Beim Drücken einer weiteren Funktionstaste wird die Adresse, die rechts angezeigt wird, angesprungen.

Einzelschrittbetrieb

Bei der Taste ST wird der Befehl, der auf der angezeigten Speicheradresse steht, ausgeführt. Danach werden der neue Befehlszähler und der zugehörige Speicherinhalt angezeigt. Das geschieht in folgender Weise: In die Speicherzelle vor dem auszuführenden Befehl wird ein EI-Befehl geschrieben. Dann wird ein DI ausgeführt, der Interrupt über B7 erlaubt, und die Register gewechselt. Danach erfolgt ein Sprung zu dem eingefügten EI. EI wird ausgeführt. Da B7 inzwischen Interrupt angemeldet hat, wird das Programm nach dem nächsten Befehl unterbrochen (dos war der Befehl, der abgearbeitet werden sollte) und kehrt in das Monitorprogramm zurück. Die Register werden zurückgewechselt, der alte Inhalt der Zelle mit dem EI wird wieder hergestellt, der Interrupt über B7 wird verboten, und der Anzeigeinterrupt wird wieder erlaubt. Bei dieser Art Einzelschnitt muß folgendes beachtet werden:

  • Die Befehle müssen im RAM stehen.
  • Die Befehle EI, DI, IM 0, IM 1, LD I, A und HLT dürfen nicht ausgeführt werden.

Unterbrechungspunkt

Nach Drücken der Taste TR kann eine Adresse angegeben werden, bei der das Programm unterbrochen werden soll. Beim Betätigen einer Funktionstaste wird diese Zelle durch ein RST30H ersetzt, und der Monitor kehrt in den Hauptzyklus zurück. Wenn das Anwenderprogramm nach Start mit GO diese Zelle erreicht, wird der alte Inhalt wieder hergestellt und die Adresse angezeigt. Es erfolgt ein Rücksprung in den Hauptzyklus.

Periphere Eingabe

Diese Taste wurde nicht belegt.