KC compact

Der KC compact ist der letzte in der DDR hergestellte Heimcomputer. Er wurde mit dem Ziel entwickelt, eine weitgehende Kompatibilität mit den CPC-Computern von Amstrad zu erreichen. Da der KC compact ohne die ULA (einem kundenspezifischen Schaltkreis von Amstrad) auskommen muss, sind einige zentrale Dinge hardwaremäßig anders gelöst als im CPC. Trotzdem ist die Kompatibilität sehr hoch, zumindest, wenn man auf den undokumentierten Grafikmodus 3 verzichtet.

Der KC compact entspricht von der Soft- und Hardware-Ausstattung am ehesten einem CPC664 (64 KByte RAM, Locomotive Basic 1.1), allerdings ohne einem eingebauten Diskettenlaufwerk. Die Floppy-Disk-Erweiterung ist beim KC compact als abgesetztes Gerät ausgelegt und musste auch separat erworben werden. Außerdem wurden statt der CPC-spezifischen 3''-Disketten mit 40 Spuren die in der DDR üblichen 5,25''-Disketten mit 80 Spuren verwendet.

Hinweise zur Emulation


1. Emulierte Hardware

Emuliert werden:

1.1. Tastatur

Für einige Tasten auf der KC-compact-Tastatur gibt es üblicherweise keine direkten gleichnamigen Tasten auf der Tastatur des Emulatorrechners. Diese Tasten werden trotzdem emuliert. Die Tabelle zeigt das Tastenmapping für einige ausgewählte Tasten:

KC-compact-TasteEmuliert mittels
RETURNENTER/RETURN
DELBACKSPACE
CLREntf
F0F5
F1F1
F2F2
F3F3
F4F4
ENTERF6
PunktF7
COPYF8

Wird eine Funktions- oder Steuerungstasten zusammen mit der Control- (Strg-) oder Shift-Taste betätigt, dann wird diese Tastenkombination auch direkt auf der emulierten KC-compact-Tastatur nachgebildet. Bei allen anderen Tasten (Buchstaben, Ziffern, Sonderzeichen) wird das Drücken der Control- und Shift-Tasten so nachgebildet, dass im emulierten KC compact das gleiche Zeichen erscheint wie auf der Emulatortastatur. Das ist deshalb notwendig, da die Zeichen auf der emulierten KC-compact-Tastatur in einer anderen Shift-Ebene liegen können als auf der Tastatur des Emulatorrechners.

1.2. Sound-Generator

Zum Hören der vom Sound-Generator ausgegebenen Töne müssen Sie im Fenster Audio/Kassette im Reiter Sound-Generator die Tonausgabe aktivieren.

Hinweis: Der Sound-Generator wird immer mit der originalen Taktfrequenz emuliert, d.h., wenn Sie in den Einstellungen eine andere Taktfrequenz angeben, wirkt sich das nur auf die Emulation des Mikroprozessors aus.

1.3. Floppy-Disk-Station

Die optional als Beistellgerät zum KC compact erhätlich gewesene Floppy-Disk-Station wird emuliert, wenn Sie das in den Einstellungen so angeben. Mit der Floppy-Disk-Station stehen zwei Diskettenlaufwerke und zusätzlich 64 KByte RAM sowie 16 KByte ROM (davon aber nur 8 KByte belegt) zur Verfügung.

Da mit dem KC compact eine weitgehende Kompatibilität zu den CPC-Computern von Amstrad angestrebt wurde, sind auch beim Floppy-Disk-System einige Eigenheiten dieser Computer übernommen worden:

1.3.1 ROM in der Floppy-Disk-Station

In der Floppy-Disk-Station gibt es einen ROM, der das BASDOS (ein um ein zusätzliches Diskettenformat erweitertes AMSDOS der CPC-Computer) enthält. Dieser ROM wird als ROM-Erweiterung mit der ROM-Nummer 7 in das System eingebunden, ohne das dies in den KC-compact-Einstellungen im Unterfenster ROM-Erweiterungen erscheint. Möchten Sie diesen ROM-Inhalt durch einen anderen ersetzen, dann fügen Sie in den Einstellungen eine ROM-Erweiterung mit der Nummer 7 hinzu (siehe ROM-Erweiterungen). Diese Erweiterung ersetzt dann den ROM in der Floppy-Disk-Station.

1.3.2 Diskettenformate

Beim KC compact gibt es in Bezug auf die Diskettennutzung zwei Betriebsarten mit unterschiedlichen Diskettenformaten. Die erste Betriebsart nennt sich BASDOS. Dabei handelt es sich um die Diskettenunterstützung für das im KC compact enthaltene BASIC, d.h., damit lassen sich z.B. BASIC-Programme auf Diskette speichern und von dort wieder laden. In dieser Betriebsart werden folgende Diskettenformate unterstützt:

Die Betriebsart BASDOS wird automatisch eingenommen, wenn der KC compact mit angeschlossener Diskettenstation eingeschaltet oder zurückgesetzt wird (RESET).

Die zweite Betriebsart ist das CP/M-kompatible MicroDOS. In diese Betriebsart gelangt man mit dem Kommando |cpm. Dazu muss vorher die MicroDOS-Systemdiskette im ersten Diskettenlaufwerk eingelegt worden sein.

MicroDOS unterstützt zwei Diskettenformate:

Die im JKCEMU enthaltene MicroDOS-Systemdiskette ist so konfiguriert, dass das erste Diskettenlaufwerk sowohl als Laufwerk B: als auch als Laufwerk C: angesprochen werden kann, je nachdem, welches Format die eingelegte Diskette hat. Laufwerk B: ist für das MicroDOS-Standardformat konfiguriert und Laufwerk C: für das BASDOS-Standardformat.

Mit dem auf der MicroDOS-Systemdiskette enthaltenden Programm FORMATCC.COM lassen sich Disketten für MicroDOS und BASDOS formatieren. Möchte man im Emulator eine Diskettenabbilddatei für BASDOS erstellen, um z.B. darin KC compact BASIC-Programme speichern zu können, geht man folgendermaßen vor:
  1. Emulation des KC compact mit Floppy-Disk-Station einstellen
  2. Fenster Diskettenstation öffnen
  3. darin die KC compact MicroDOS Systemdiskette einlegen
  4. mit |cpm MicroDOS starten
  5. formatcc starten
  6. im Fenster Diskettenstation eine neue Diskettenabbilddatei anlegen (z.B. Menüpunkt Neue CPC-Disk-Datei anlegen...)
  7. im Emulatorfenster im Formatierungsprogramm Laufwerk B und Format Nummer 2 (9*512*80*2) auswählen und das Formatieren starten
  8. nach dem das Formatieren fertig ist, im Emulator RESET auslösen

1.4. ROM-Erweiterungen

Das Betriebssystem des KC compact kann 15 jeweils 16 KByte große ROM-Erweiterungsmodule verwalten. Dazu wird jedem ROM-Modul eine Nummer von 1 bis 15 vergeben.

Beim Booten führt das Betriebssystem einen sogenannter ROM Walk durch. Es blendet beginnend mit der Nummer 15 der Reihe nach die ROM-Module in den Arbeitsspeicher ein und testet, ob dort Betriebssystemerweiterungen enthalten sind. Wenn ja, werden die gefundenen Erweiterungen in das Betriebssystem eingebunden.

Hardwaremäßig kann der KC compact sogar 255 ROM-Erweiterungsmodule unterscheiden, das Betriebssystem verwaltet jedoch nur 15. Aus diesem Grund werden in JKCEMU auch nur max. 15 Module emuliert. Zum Hinzufügen einer ROM-Erweiterung klicken Sie in den KC-compact-Einstellungen im Unterfenster ROM-Erweiterungen auf die Schaltfläche Hinzufügen. Es öffnet sich ein Dialog, in dem Sie die ROM-Nummer und die Datei mit dem ROM-Inhalt angeben. Das Hinzufügen ist auch möglich, indem Sie eine ROM-Datei per Drag&Drop in das Unterfenster ROM-Erweiterungen ziehen und über der ROM-Liste loslassen.

1.5. RAM-Erweiterung 512K

Die optional emulierte RAM-Erweiterung entspricht funktional zwei 256K RAM-Erweiterungsmodulen von DK'tronics. Damit sind alle 8 Bänke im Bankswitschregister 7F XX CX mit RAM belegt.

Achtung! Bei gleichzeitiger Emulation der Floppy-Disk-Station und der 512K RAM-Erweiterung überdeckt die RAM-Erweiterung den RAM in der Floppy-Disk-Station, d.h., es stehen insgesamt 576 KByte RAM zur Verfügung (64 KByte im Grundgerät und 512 KByte in der RAM-Erweiterung).

2. Enthaltene Diskettenabbilder

JKCEMU enthält für die KC-compact-Emulation folgendes Diskettenabbild: Sie starten MicroDOS durch Eingabe des Befehls: |cpm
Dazu muss die Emulation der Floppy-Disk-Station aktiviert und die MicroDOS-Systemdiskette in das erste emulierte Diskettenlaufwerk eingelegt sein.

Das MicroDOS auf der Systemdiskette ist mit drei Laufwerken konfiguriert:
Die Anzeige des Verzeichnisses erfolgt in MicroDOS mit dem Kommando D, und nicht wie bei CP/M-kompatiblen Betriebssystemen sonst üblich mit DIR.

Achtung! Auf der Diskette sind auch die leeren Dateien G.COM und GO.COM enthalten. Diese dienen zum Starten eines im Arbeitsspeicher befindlichen CP/M-kompatiblen Programms. Wird G bzw. GO aufgerufen, ohne dass ein Programm im Arbeitsspeicher vorhanden ist, führt das zu einem Absturz.

3. Sonstiges

3.1. Programme laden

3.1.1. KC-compact- und CPC-Programme laden

JKCEMU bietet zwar die Möglichkeit, Dateien direkt in den Arbeitsspeicher des Emulators zu laden, jedoch erkennt das Betriebssystem des KC compact die so geladenen Programme nicht. Aus diesem Grund müssen Programme immer mit Hilfe des KC-compact-Betriebssystems geladen werden, entweder über die emulierte Kassettenschnittstelle oder von einer emulierten Diskette.

3.1.2. CP/M-Programme laden

Bei CP/M-kompatiblen Betriebssystemen werden Programme von einer Diskette geladen, in einem Emulator somit von einer emulierten Diskette. JKCEMU bietet aber zusätzlich die Möglichkeit, CP/M-Programmdateien (*.com) mit Hilfe der Emulatorfunktionen direkt in den Arbeitsspeicher zu laden und mit Hilfe der leeren Datei GO.COM zu starten, ohne dass die betreffende CP/M-Programmdatei auf der emulierten Diskette vorhanden sein muss. Voraussetzung ist, dass in der KC-compact-Emulation ein CP/M-kompatibles Betriebssystem (z.B. MicroDOS) gestartet wurde.

Achtung! Bei MicroDOS wird der in der Floppy-Disk-Station enthaltene RAM als Arbeitsspeicher verwendet. Aus diesem Grund lädt JKCEMU COM-Dateien in diesen RAM. Alle anderen Dateitypen (und falls die Diskettenemulation deaktiviert ist, auch COM-Dateien) werden in den RAM des Grundgeräts geladen.

3.2. Bildschirmausgabe

Die Aktualisierung der Bildschirmausgabe erfolgt immer synchron zur Emulation der Bildschirmsteuerung. Dies ist für die korrekte Darstellungn von schnellen Bewegungsabläufen (z.B. bei Spielprogrammen) notwendig. Der in den Einstellungen festgelegte Aktualisierungszyklus findet somit keine Anwendung.

3.2.1. Größe und Seitenverhältnis

Der KC compact bietet drei Bildschirmauflösungen. Wenn zwischen diesen umgeschaltet wird (z.B. mit dem BASIC-Befehl mode 2 in den 80-Zeichenmodus), ändern sich auch die Größe des Emulatorfensters sowie das Seitenverhältnis. Beim Original bleibt dagegen die Größe des Bildschirmausgabebereichs immer gleich. Mit der Option Gleiche Fenstergröße in allen Bildschirmmodi können Sie das Verhalten an das des Originals anpassen. Allerdings ist dann auch das Emulatorfenster immer so groß, dass die höchste Bildschirmauflösung dargestellt werden kann.