[ Zu JKCEMU ]


JKCEMU als LC-80-Emulator

Der LC-80, auch LC 80 oder LC80 geschrieben, ist ein als Lerncomputer konzipierter Einplatinenrechner mit hexadezimaler Tastatur und 7-Segment-Anzeige. Produziert wurde er ab 1984 im VEB Mikroelektronik Erfurt.

Ein geplanter Exportauftrag führte später zur Entwicklung des LC80e, einer erweiterten Version mit doppelter Taktfrequenz, mehr Speicher und ein im ROM enthaltenes Schachprogramm. Da der Exportauftrag nicht zustande kam, gab es vom LC-80e nur Entwicklungsmuster.

Des Weiteren gab es mit dem LC-80.2 auch eine private Weiterentwicklung von Eckart Buschendorf. Alle diese Varianten werden von JKCEMU emuliert.


Bildschirmfoto der LC-80-Emulation

1. Emulierte Hardware


Der emulierte Speicher unterscheidet sich je nach Einstellung:
Bei allen LC-80-Versionen außer dem LC-80e ist aufgrund der unvollständigen Adressdekodierung der Adressbereich 0000-3FFF auch unter 4000-7FFF, 8000-BFFF und unter C000-FFFF sichtbar.

Achtung! Beim LC-80 mit U505-Bestückung befindet sich ein Teil des Monitorprogramms und damit auch der Systemfunktionen auf anderen Adressen. Programme, die diese Systemfunktionen benutzen, laufen deshalb entweder nicht oder nur auf dieser LC-80-Version.

1.1. Tastatur

Die Tabelle zeigt, wie die LC-80-Tasten auf der Tastatur des Emulatorrechners abgebildet werden:
LC-80-TasteTaste im JKCEMUBedeutung
RES Escape Zurücksetzen (RESET)
ADR F1 Adresseingabe einleiten
DAT F2 Dateneingabe einleiten
LD F3 oder L Datei von Kassette laden
ST F4 oder S Datei auf Kassette speichern
EX Enter oder X Programm/Aktion ausführen
NMI N Nicht maskierbaren Interrupt auslösen
+ + Nächste Adresse / nächster Arbeitsschritt
- - Vorherige Adresse / vorheriger Arbeitsschritt
0...9 0...9 Adress-/Dateneingabe
A...F A...F Adress-/Dateneingabe

Achtung! Die Tasten Escape und N lösen der Einfachheit halber RESET bzw. NMI ohne Sicherheitsabfrage aus, auch wenn in den Einstellungen dafür die Sicherheitsabfrage aktiviert ist.
  LC-80-Tastatur


2. Im ROM enthaltene Software

Die originalen Monitorprogramme der einzelnen LC-80-Versionen sind funktional gleich, unterscheiden sich aber in ihrem binären Abbild, vorallem beim LC-80e.

2.1. Hinweise zur Bedienung des originalen Monitorprogramm

Nach dem Einschalten spielt der LC-80 eine Melodie ab. Damit Sie diese auch im Emulator hören können, müssen Sie entweder die Audiofunktion Töne ausgeben oder Daten am Audioausgang ausgeben aktivieren und anschließend den Menüpunkt Einschalten (Power On) im Menü Extra aufrufen.

2.1.1. Anzeige

Bei Adressein- und -ausgaben ist die Anzeige üblicherweise zweigeteilt: Die ersten vier Stellen zeigen die Adresse und die letzten beiden Stellen das Datenbyte an, welches von dieser Adresse gelesen wurde.

Links von der Anzeige werden die beiden LEDs emuliert:
Grüne LED:Ausgabe
Rote LED:HALT-Zustand


2.1.2. Programm von Kassette laden

RES (Escape)LD (L)<Dateiname>EX (Enter)

Der Dateiname ist eine vierstellige hexadezimale Zahl.

Wenn Sie den Dateinamen nicht kennen, dann geben Sie irgendeinen ein. In dem Fall, d.h. wenn der Dateiname falsch ist, wird die Datei zwar nicht geladen, aber der LC-80 zeigt den auf Kassette gespeicherten Dateinamen kurz an, sobald die entsprechende Bandstelle gelesen wird.

Nach dem Einlesen sehen Sie im Display die Endadresse + 1 oder im Fehlerfall die Ausschrift Error.

Achtung! Im JKCEMU müssen Sie auch die eingangsseitige Emulation des Kassettenrecorderanschlusses aktivieren, entweder mit der Audiofunktion Daten vom Audioeingang lesen oder mit der Funktion Sound-Datei lesen.

2.1.3. Programm auf Kassette speichern

RES (Escape)ST (S)<Dateiname>+<Anfangsadresse>+<Endadresse + 1>EX (Enter)

Dateiname und Adressangaben sind jeweils eine vierstellige hexadezimale Zahl.

Achtung! Im JKCEMU müssen Sie auch die ausgangsseitige Emulation des Kassettenrecorderanschlusses aktivieren, entweder mit der Audiofunktion Daten am Audioausgang ausgeben oder mit der Funktion Sound-Datei speichern.

2.1.4. Programm starten

RES (Escape)ADR (F1)<Anfangsadresse>EX (Enter)

Die Adresse ist eine vierstellige hexadezimale Zahl.

Die meisten Spiel- und Anwendungsprogramme werden auf Adresse 2000 (RAM-Anfang) gestartet.

2.2. Schachprogramm SC-80

Das Schachprogramm SC-80 ist nur im LC-80e enthalten und wird auf Adresse C800 gestartet. Geben Sie dazu ein:

RES (Escape) → ADR (F1) → C → 8 → 0 → 0 → EX (Enter)

Wenn die Ausschrift SC-80 erscheint, wurde das Schachprogramm gestartet.

Das Schachprogramm verwendet den nichtmaskierbaren Interrupt zum Neustart, d.h., durch Drücken der Taste N wird das Schachprogramm neu gestartet, aber erst, nachdem das Schachprogramm erstmalig auf dem o.a. Weg gestartet wurde.

2.2.1. Tastatur

Die Tasten haben im Schachprogramm eine andere Bedeutung bzw. Belegung als im normalen LC-80-Modus. Beim Original gab es eine Schablone, die über die Tastatur gelegt wurde und die die geänderte Beschriftung der Tasten für das Schachprogramm enthält. Die Zifferntasten sind im LC-80- und im SC-80-Modus gleich. Die Buchstaben- und Sondertasten unterscheiden sich jedoch. Damit man im Emulator beide Modi bequem bedienen kann, erkennt JKCEMU selbstständig, ob man sich im Schachprogramm befindet und schaltet das Tasten-Mapping entsprechend automatisch zwischen LC-80- und SC-80-Mode um. Haben Sie das Fenster mit der Tastaturansicht des LC-80 geöffnet, dann ändern sich darin auch die Beschriftungen der Tasten, d.h., JKCEMU legt von sich aus die SC-80-Schablone auf.

Die automatische Schachmodeerkennung funktioniert nach folgendem Prinzip: Wenn die Programmausführung an die Adresse C800 gelangt (Startadresse des Schachprogramms), wird das Tasten-Mapping auf den SC-80-Mode umgestellt. Nun geht JKCEMU davon aus, dass ein Rücksprung in das Monitorprogramm nur über RESET möglich ist, d.h., bei Erreichen der Adresse 0000 wird wieder in den LC-80-Mode zurückgeschaltet.

Die Tabelle zeigt das Tastenmapping im SC-80-Mode:
SC-80-TasteTaste im JKCEMUBedeutung
RES Escape Zurücksetzen (RESET),
Sie befinden sich nun wieder im LC-80-Monitorprogramm. Mit NMI können Sie das Schachprogramm direkt neu starten.
NEW GAME
LEV
F1 Nach dem Start des Schachprogramms muss diese Taste gedrückt werden, um ein Spiel zu beginnen. Nochmaliges Drücken führt zur Eingabe der Spielstärke.
SELF PLAY
SW
F2 Wird nach dem Start des Schachprogramms NEW GAME (F1) und anschließend SELF PLAY (F2) gedrückt, spielt der Computer gegen sich selbst. Des Weiteren dient die Taste auch zur Figurenwahl.
BOARD O oder + Schachbrettbelegung
COLOR W oder - Figurenwahl einleiten
NMI N Schachprogramm neu starten,
Diese Taste ist auf der originalen SC-80-Schablone nicht beschriftet.
Bauer U Bauer
Springer S Springer
Läuf. L Läufer
Turm T Turm
Dame M Dame
König K König
Contr. F4
RAN R oder F3 Zufallsgenerator beeinflussen
SP
0
0 Zifferneingabe
A 1 A oder 1 Spalten-/Zeilen- oder Zifferneingabe
B 2 B oder 2 Spalten-/Zeilen- oder Zifferneingabe
C 3 C oder 3 Spalten-/Zeilen- oder Zifferneingabe
D 4 D oder 4 Spalten-/Zeilen- oder Zifferneingabe
E 5 E oder 5 Spalten-/Zeilen- oder Zifferneingabe
F 6 F oder 6 Spalten-/Zeilen- oder Zifferneingabe
G 7 G oder 7 Spalten-/Zeilen- oder Zifferneingabe
H 8 H oder 8 Spalten-/Zeilen- oder Zifferneingabe
9 9 Zifferneingabe
EX Enter oder X Aktion ausführen
    SC-80-Tastatur


2.2.2. Gegen den Computer spielen

Drücken Sie nach dem Start des Schachprogramms NEW GAME / LEV (F1), um in den Spielmodus zu gelangen. Durch nochmaliges Drücken dieser Taste und anschließender Eingabe einer Zahl von 0 bis 6 können Sie die Spielstärke wählen. Standardmäßig ist die Spielstärke 1 eingestellt. Die Spielstärke können Sie auch später während des Spiels ändern, wenn Sie gerade am Zug sind.

Möchten Sie mit Weiß spielen, dann geben Sie nun Ihren ersten Zug ein, z.B. E2E4, und bestätigen mit EX (Enter). Der Computer überlegt nun und zeigt seinen Zug an. Jetzt sind Sie wieder an der Reihe und so weiter.

Achtung! Wenn der Computer seinen Zug anzeigt, müssen Sie etwa 15 Sekunden warten, bis Sie selbst wieder einen Zug eingeben können. Im Schachbrettfenster wird der Zug auch erst nach dieser Wartezeit angezeigt.

Soll der Computer mit Weiß spielen, dann drücken Sie nach der Taste NEW GAME / LEV (F1) oder nach der Wahl der Spielstärke die Taste COLOR (W). In der Anzeige erscheint WHITE. Drücken Sie nun die Taste SELF PLAY / SW (F2). Der Computer zeigt daraufhin seinen ersten Zug an. Jetzt sind Sie an der Reihe.

2.2.3. Korrekturen

Haben Sie sich bei der Eingabe eines Zuges vertippt und noch nicht mit EX (Enter) quittiert, dann tippen Sie einfach weitere Zeichen ein, bis die Ausschrift SC-80 erscheint. Nun geben Sie den richtigen Zug ein und quittieren.

Ist Ihre Eingabe ungültig, dann erscheint die Ausschrift Error. Geben Sie nun einfach einen gültigen Zug ein und quittieren.

Ihr Zug wird auch dann nicht angenommen, wenn er zwar gültig ist, aber Ihr König damit im Schach stehen würde.

2.2.4. Zufallsgenerator

Das Schachprogramm enthält auch einen Zufallsgenerator, um nicht immer die gleichen Züge zu spielen. Diesen Zufallsgenerator können Sie durch Drücken der Taste RANDOM (R) und anschließendem Betätigen einer Ziffer von 0 bis 9 beeinflussen.

2.2.5. Signalisierung von Spielsituationen

Bietet Ihnen der Computer Schach, dann steht in der ersten Stelle der Anzeige ein S. Bei Matt sehen Sie ein M.

2.2.6. Computer gegen sich selbst spielen lassen

Sie können den Computer auch gegen sich selbst spielen lassen, indem Sie nach dem Start des Schachprogramms folgendes eingeben:

© 2009-2016 Jens Müller