KCemu 0.5.2 (c) 1997-2010 Torsten Paul <Torsten.Paul@gmx.de>

Inhaltsverzeichnis

1. Allgemeines zum Emulator 1.1. Über KCemu 1.2. Lizenz 1.3. Kommandozeilenparameter 1.4. Tastenbedienung

2. Emulierte Systeme 2.1. KC85/1, KC87 2.2. KC85/2-4 2.3. KC85/5 2.4. Z1013 2.5. LC 80 2.6. Polycomputer 880 2.7. BIC / A5105 2.8. Kramer-Microcomputer 2.9. PC/M / Mugler-PC 2.10. VCS 80 2.11. C-80

3. Funktionen 3.1. Profile 3.2. Kassettenverwaltung 3.3. Diskettenverwaltung 3.4. Modulverwaltung 3.5. Abspielen von Sound-Dateien 3.6. Speichern von Memory-Bereichen 3.7. Vinculum USB 3.8. Plotter 3.9. Screenshot 3.10. Video 3.11. Farbeinstellung 3.12. Tastatur

1.1. Über KCemu

KCemu begann als Emulator für die KC85 Heimcomputer Serie des VEB Mikroelektronik Mühlhausen. Inzwischen ist eine ganze Reihe weiterer Systeme hinzugekommen.

Zur Zeit können die folgenden System emuliert werden:

- KC85/1, KC87 - KC85/2-4 - KC85/5 - Z1013 - LC 80 - Polycomputer 880 - BIC / A5105 - Kramer-Micro-Computer - PC/M / Mugler-PC - VCS 80 - C-80

1.2. Lizenz

KCemu 0.5.2, Copyright (c) 1997-2010 Torsten Paul.

Dieses Programm ist freie Software. Sie können es unter den Bedingungen der GNU General Public License, wie von der Free Software Foundation herausgegeben, weitergeben und/oder modifizieren, entweder unter Version 2 der Lizenz oder (wenn Sie es wünschen) jeder späteren Version.

Die Veröffentlichung dieses Programms erfolgt in der Hoffnung, daß es Ihnen von Nutzen sein wird, aber OHNE JEDE GEWÄHRLEISTUNG - sogar ohne die implizite Gewährleistung der MARKTREIFE oder der EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Details finden Sie in der GNU General Public License.

Sie sollten eine Kopie der GNU General Public License zusammen mit diesem Programm erhalten haben. Falls nicht, schreiben Sie an die Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

1.3. Kommandozeilenparameter

Es stehen die folgenden Kommandozeilenparameter zur Verfügung:

-0 Starten mit Z1013 Profil -1 Starten mit Z9001 / KC 85/1 Profil -2 Starten mit KC 85/2 Profil -3 Starten mit KC 85/3 Profil -4 Starten mit KC 85/4 Profil -5 Starten mit KC 85/5 Profil -6 Starten mit Poly-880 Profil -7 Starten mit KC 87 Profil -8 Starten mit LC 80 Profil -9 Starten mit BIC/A5105 Profil -a --autostart Automatischer Start des angegebenen Programms (KC 85/3 - /5) -A --address Startadresse für das automatisch zu startende Programm -d --datadir: Setzen des Daten-Verzeichnisses (für ROM-Images) -E --effects Anzeige mit Screen-Effekten bei vergrößerter Darstellung -f --floppy Aktivieren eines Disketten-Images beim Start -F --fullscreen Start im Vollbild-Modus (wenn durch GUI unterstützt) -h --help diese Hilfe anzeigen -H --home Überschreiben der Einstellung für das Homeverzeichnis -l --localedir Setzen des Locale-Verzeichnisses für die Sprachanpassung -L --license Anzeige der Lizenz -M --modules Modul(e) für die ersten Steckplätze definieren -MM022,M011,.. Einstellungen der Konfigurationsdatei werden überschrieben -M+M022,M011,.. zusätzliche Module zu denen aus der Konfigurationsdatei -o --debug-output: Debug-Ausgabe in Datei umleiten -p --profile: Start mit dem angegebenen Profil -P --select-profile: Start mit Fenster zur Profil-Auswahl -s --scale Vergrößerung der Anzeige (erlaubt sind die Werte 1, 2 und 3) -t --tape Aktivieren eines Tape-Archives beim Start -v --version Anzeige der KCemu Version und Konfiguration -V --viewlist Ausführliche Liste der emulierten Typen -W --warranty Anzeige des Haftungsausschlusses

1.4. Tastenbedienung

Der Emulator kann über die folgenden Tastenkombinationen gesteuert werden: ALT + 1 Zoom x 1 ALT + 2 Zoom x 2 ALT + 3 Zoom x 3 ALT + A Menü "Ansicht" (nur deutsche Version) ALT + C Konfiguration der Farbeinstellung ALT + D Diskette... ALT + E Menü "Emulator" ALT + G Maximale Geschwindigkeit ein/aus ALT + H Menü "Hilfe" ALT + I Information über CPU / PIO / CTC ALT + K Tastatur ALT + L Laden... ALT + M Module... ALT + O Menü "Optionen" ALT + P Einschalten (Power On) ALT + Q (ALT-F4) Emulator beenden ALT + R Reset ALT + T Kassette (Tape) ALT + U Audio... ALT + V Menü "View" (nur englische Version)

2. Emulierte Systeme

Im Folgenden werden die emulierbaren Systeme vorgestellt. Dabei gibt es bei einigen Systemen verschiedene Varianten die sich z.B. durch Speicherausbau oder Systemprogramme unterscheiden.

Die fett dargestellten Namen können als Parameter für den Kommandozeilenschalter -e benutzt werden, um die Emulation der aufgelisteten System-Variante zu starten. Alternativ kann dieser Name in der Konfigurationsdatei für die Eigenschaft "Default KC Model" eingetragen werden.

Wird keine oder eine ungültige Angabe gemacht, wird ein KC85/4 emuliert.

2.1. KC85/1, KC87

Die Heimcomputer KC85/1 (früherer Name Z9001) und KC87 wurden vom VEB Robotron-Meßelektronik "Otto Schön" Dresden hergestellt.

Foto: KC87

Die folgenden Varianten können emuliert werden:

* kc85/1 (z9001, z9001.10) Z9001 mit Schwarz/Weiß Anzeige und 16k RAM, ohne internes BASIC.

* z9001.11 Wie Z9001.10 aber mit Farberweiterung.

* kc87.10 Wie KC87.11 aber ohne Farberweiterung.

* kc87.11 (kc87) Nachfolger des Z9001 mit eingebautem 10k BASIC ROM und standardmäßig eingebauter Farberweiterung.

* kc87.20 Wie KC87.20, aber ohne Farberweiterung.

* kc87.21 Neue Serie des KC87, das BASIC wurde um einige Befehle z.B. zur Ansteuerung von Plottern erweitert.

2.2. KC85/2-4

Die Heimcomputer KC85/2 (früherer Name HC-900), KC85/3 und KC85/4 wurden vom VEB Mikroelektronik Mühlhausen hergestellt.

Foto: KC85/4

Parameter für die Emulation:

* kc85/2 (hc900, hc-900) KC85/2 mit 16k RAM und 8k System ROM mit HC-CAOS 2.2. BASIC muß als zusätzlicher Modul gesteckt werden.

* kc85/3 KC85/3 mit 16k RAM, 8k System ROM mit HC-CAOS 3.1 und bereits eingebautem 8k BASIC ROM.

* kc85/4 KC85/4 mit 64k RAM, auf 64k erweitertem Bildschirmspeicher, 12k System ROM mit HC-CAOS 4.2 und 8k BASIC ROM.

Zusätzlich zum Grundgerät werden einige Erweiterungen unterstützt. So wird das Floppy-System (D004) emuliert, wodurch es unter anderem möglich ist, verschiedene für den KC85/4 verfügbare CP/M Systeme zu nutzen. Darunter sowohl das dem D004 beiliegende, speziell für den KC85 angepaßte MicroDOS als auch das auf dem weit verbreiteten ZDDOS/ZSDOS basierende ML-DOS.

Die GIDE Schnittstelle zum Anschluß einer IDE-Festplatte oder CF-Karte wird soweit emuliert, daß der Zugriff mit ML-DOS möglich ist. Aktiviert werden kann die GIDE Schnittstelle zur Zeit nur in der Konfigurationsdatei (per Parameter Hard Disk 0 für die erste Festplatte im Format einer Seagate ST-157A mit 42MB, C/H/S = 560/6/26 und Parameter Hard Disk 1 für eine zweite Festplatte im Dateiformat des MyZ80 CP/M-Emulators mit 8MB, C/H/S = 128/1/32).

2.3. KC85/5

Den KC85/5 hat es offiziell nie gegeben. Dies ist ein umgebauter KC85/4 bei dem sowohl der RAM auf 256k als auch der ROM auf 48k (16k System ROM, 8k BASIC ROM and 24k User ROM) erweitert wurde. Zusätzlich kommt ein verbessertes System-Programm zum Einsatz (HC-CAOS 4.4) welches den nun verfügbaren Speicher verwalten kann und auch sonst einige nützliche Dinge mitbringt.

Typischerweise kommt ein derartig aufgerüstetes Basis-System nicht allein zum Einsatz sondern in Verbindung mit einem Floppy-System in dem sogar in einigen Fällen eine Schnittstelle für IDE-Festplatten eingebaut wurde.

Foto: KC85/5 mit Bustreiber (D002) und Floppy-System (D004)

Parameter für die Emulation:

* kc85/5 KC85/5 mit 256k RAM, 16k System ROM mit HC-CAOS 4.4, 8k BASIC ROM und 24k User-ROM. Der User-ROM enthält die Programmpakete KC-Debugger (Testmonitor und Reassembler), EDAS 1.6 und KC-Forth. Für den KC85/5 wird auch die Emulation des Floppy-Systems (D004) verändert indem als System-ROM der Floppy die Version 3.1 zum Einsatz kommt (im Gegensatz zur Originalen Version die die Nummer 2.0 trägt). In dieser Kombination (HC-CAOS 4.4 und D004 3.1) ist es möglich das System direkt von Diskette oder Festplatte zu starten.

2.4. Z1013

Der Z1013 ist ein Bausatz der vom VEB Robotron Riesa produziert wurde. Geliefert wurde eine bestückte Grundplatine und eine Folienflachtastatur die selbst angelötet werden mußte. Ein Trafo für Spannungsversorgung mußte auch erst beschafft werden bevor es losgehen konnte.

Foto: Z1013 ohne die berüchtigte Folienflachtastatur

Vom Z1013 gab es bereits ab Werk eine ganze Reihe von Versionen mit unterschiedlichen Systemparametern. Durch die Bastelfreude der Besitzer sind dazu noch viele Erweiterungen und System-Programme dazugekommen.

Parameter für die Emulation (die MHz Angaben entsprechen denen der realen Systeme, die Emulation beachtet diese noch nicht korrekt):

* z1013.01 Z1013 mit 16k RAM und 2k ROM mit System 2.02. Die CPU läuft mit 1MHz.

* z1013.12 Z1013 mit 1k sRAM und 2k ROM mit System 2.02. Die CPU läuft mit 2MHz. (Diese Version war wohl als Steuermodul für die Industrie gedacht.)

* z1013.16 Z1013 mit 16k RAM und 2k ROM mit System 2.02. Die CPU läuft mit 2MHz.

* z1013.64 (z1013) Z1013 mit 64k RAM und 2x2k ROM. Die CPU läuft mit 2MHz. Der System ROM enthält sowohl das System 2.02 als auch Version A.2. Genutzt wird System 2.02.

* z1013.a2 Identisch mit dem z1013.64, es wird jedoch das System A.2 geladen die eine erweiterte Tastatur mit 8x8 Matrix unterstützt.

* z1013.rb Z1013 mit 64k RAM und 4k ROM. Das System ist erweitert und nennt sich 2.028 RB. Unterstützt wird eine angeschlossene K7659 Tastatur.

* z1013.surl Z1013 mit 64k RAM und 4k ROM. Der ROM enthält den "Super Ur-Lader 5.0" der beliebige Dateien von Kassette als System-Monitor laden kann. Es wird eine Hardware-Modifikation (Port 04h) unterstützt die es dem Urlader erlaubt den System-ROM komplett abzuschalten, so daß der komplette Adressraum aus RAM besteht.

* z1013.bl4 Z1013 mit 64k RAM und 4k ROM. Der ROM enthält den Bootlader BL4 der System-Monitore von Diskette laden oder ein an den Z1013 angepaßtes CP/M System starten kann.

2.5. LC80

VEB Mikroelektronik Erfurt

Foto: Ein betriebsbereiter LC80

Vom LC80 existieren 2 Varianten mit unterschiedlicher ROM-Bestückung. Die Eine besitzt 2 1k-ROMs (U505) an den Adressen 0000h und 0800h. Die Andere ist mit einem 2k-EPROM (U2716) bestückt, wodurch der Monitor in einem zusammenhängenden Speicherbereich von 0000h - 07ffh liegt.

Das Monitorprogramm unterscheidet sich dabei lediglich um einige an die unterschiedlichen Adressbereiche angepasste Sprungbefehle. Ein funktionaler Unterschied besteht nicht.

Parameter für die Emulation:

* lc80, lc80.1k LC80 mit 1k RAM und 2 x 1k ROM (0000h-03ffh, 0800h-0bffh).

* lc80.2k LC80 mit 1k RAM und 1 x 2k ROM (0000h-07ffh).

2.6. Polycomputer 880

VEB Polytechnik Karl-Marx-Stadt

Foto: Ein Poly880 in seinem Koffer

Parameter für die Emulation:

* poly880 Poly 880 mit 2 x 1k ROM (0000h-03ffh, 1000h-13ffh), optional können zusätzliche ROM-Dateien an die 2 freien ROM-Plätze geladen werden (poly880c.rom: 2000h-23ffh, poly880d.rom: 3000h-33ffh).

* poly880.sc1 Poly 880 mit modifiziertem SC1-ROM. Im Adressbereich 0000h-0fffh befindet sich ein 4k großer, an die Hardware des Poly 880 angepasster ROM des Schachcomputers SC1.

2.7. BIC / A5105

VEB Robotron-Meßelektronik "Otto Schön" Dresden

Foto: A5105 Komplettsystem

2.8. Kramer-Microcomputer

Dieser Computer wurde im Buch "Praktische Microcomputertechnik" von M. Kramer vorgestellt und war als erweiterbares System konzipiert.

2.9. PC/M / Mugler-PC

Der PC/M wurde als CP/M-fähiger Selbstbaucomputer in einer Artikelreihe der Zeitschrift "Funkamateur" von A. Mugler und H. Mathes vorgestellt.

2.10. VCS 80

Für Lern- und Testzwecke entwickeltes minimales Mikrorechnersystem. Industielle Vorbilder sind der LC80 und der Polycomputer 880. Ziel waren vor allem minimale Bauelementekosten um den Nachbau für den Amateur zu ermöglichen. Vorgestellt wurde der VCS80 von Eckhard Schiller in der Zeitschrift "radio fernsehen elektronik" (rfe) Ausgabe 3/1983.

2.11. C-80

Von Dipl.-Ing. Joachim Czepa entwickelter Einplatinencomputer mit 8-stelliger 7-Segmentanzeige und Schnittstelle für Kassettenrecorder. Vorgestellt wurde das System in der "Schaltungssammlung für den Amateur, 4. Lieferung 1986", Blatt 6-13 bis 6-18.

3.1. Profile

System

Im "System"-Tab wird angegeben wie das Profil heißt und welches System emuliert werden soll. Zusätzlich kann ein Kommentar eingegeben werden, der das System kurz beschreibt. Dieser Kommentar wird auch angezeigt, wenn der Emulator mit dem Profilauswahl-Fenster gestartet wird.

Anzeige

Der Tab mit den Eigenschaften für die Bildschirmdarstellung erlaubt es die folgenden Einstellungen vorzunehmen:

Skalierung Anzeigeskalierung des Hauptfensters. Bei einem Wert von 1 entspricht ein Pixel auf dem Bildschirm des emulierten Systems auch genau einem Pixel im emulierten System. Es ist möglich die Darstellung auf das doppelte oder das dreifache zu vergrößern.

Effekte Das Einschalten der Effekte hat nur bei einer Einstellung der Skalierung von >1 Auswirkungen. Bei der Skalierung auf doppelte Größe wird dann ein sogenannter Scanline-Effekt erzeugt, bei dem jede 2. Bildschirmzeile etwas abgedunkelt wird. Wird die Skalierung auf dreifache Größe eingestellt, erfolgt eine Filterung des Bildes die eine etwas unscharfe Darstellung zur Folge hat.

IRM Zugriff Wird diese Option eingeschaltet, werden bei der Emulation eines KC 85/2 bzw. KC 85/3 die Darstellungsfehler durch den Zugriff auf den Bildwiederholspeicher (IRM) simuliert.

Debug Diese Option dient lediglich der Fehlersuche und hat bei einer Skalierungseinstellung von 1 zur Folge, dass der für die Anzeige benutzte Caching-Algorithmus sichtbar gemacht wird. Das erfolgt dadurch, dass veränderte Bildschirmbereiche für kurze Zeit heller dargestellt werden als normal. Diese Option sollte deshalb im Normalfall ausgeschaltet bleiben.

Module

Im Tab "Module" können die Module angegeben werden, die beim Start des Emulators mit dem jeweiligen Profil automatisch geladen werden sollen.

Medien

KC85

Dieser Tab enthält spezielle Einstellungen für die Emulation der KC85 Serie aus Mühlhausen (KC85/2-5).

D004 Einschalten dieser Option aktiviert die Emulation des D004 Floppy Basis Devices. Dieses ist notwendig für die Nutzung von Disketten oder Festplatten (über GIDE) am KC85. Außerdem enthält das D004 die Hardware um CP/M Systeme auf dem KC laufen lassen zu können.

F8 ROM Der im D004 eingebaute System-ROM liegt normalerweise im Modul-Schacht FC. Eine kleine Modifikation der D004 Hauptplatine ermöglicht den Einsatz eines erweiterten ROMs. Dadurch können 2 unterschiedliche Versionen der D004 Software genutzt werden. Wird diese Option eingeschaltet, wird der Zugriff auf den zweiten System-ROM freigeschaltet.

Bustreiber Diese Option gibt an, wie viele D002 Bustreiber emuliert werden sollen. Maximalwert für den Emulator sind 4 Geräte.

3.2. Kassettenverwaltung

Zur Nachbildung eines Kassettenlaufwerkes werden spezielle Archiv-Dateien benutzt. Diese können ein oder mehrere Programme enthalten. Angezeigt werden der Name im Archiv (der nicht mit dem Dateinamen übereinstimmen muß den der KC verwendet) sowie einige Eigenschaften der Dateien:

Das Öffnen und Schließen von Archivdateien erfolgt mit den beiten Knöpfen rechts oben. Ist keine Datei geöffnet, sind alle Knöpfe außer dem Öffnen-Knopf inaktiv.

Das Anlegen von neuen, leeren Archivdateien geschieht auch über den Öffnen-Knopf und der Angabe einer Datei, die noch nicht existiert. Wird die Nachfrage ob die nicht existierende Datei angelegt werden soll mit Ja beantwortet, wird ein neues leeres Archiv angelegt.

Um dem Archiv neue Dateien hinzuzufügen, muß der Menüpunkt Datei Hinzufügen im Kontextmenü gewählt werden.

Das Laden von Dateien kann auf 2 Arten erfolgen:

1.) Mit Doppelclick auf die Datei oder über die Menüpunkte Datei Ausführen bzw. Datei Laden wobei ein Doppelclick dem Menüpunkt Datei Ausführen entspricht.

Bei Datei Laden wird der Inhalt der Datei einfach in den Speicher des Systems kopiert. Da dies sozusagen ohne Wissen des emulierten Systems geschieht, funktioniert diese Vorgehensweise nicht in allen Fällen ohne Probleme. Bei Dateien vom Typ COM, also direkt ausführbaren Programmen treten normalerweise keine Probleme auf. Bei BASIC Dateien funktioniert das leider nicht so ohne weiteres. Man kann sich behelfen, indem man den BASIC-Interpreter mit BYE verläßt, die Datei in den Speicher lädt und danach mit REBASIC (oder auch WBASIC, je nach System) zum BASIC zurückkehrt.

Bei Datei Ausführen wird wie der Name schon andeutet versucht die Datei nicht nur in den Speicher zu laden sondern auch gleich zu Starten. Das funktioniert nur für Dateien vom Typ COM.

2.) Laden per Kassetten-Emulation. Dazu muß wie beim realen KC vorgegangen werden:

- Datei im Kassetten-Fenster selektieren - Im emulierten System LOAD (oder CLOAD o.ä.) eingeben - Mit Play das Abspielen der Datei starten - Im emulierten System evtl. mit ENTER bestätigen - Warten - Bei größeren Programmen noch länger Warten - Evtl. Programm starten (z.B. per RUN bei BASIC Programmen)

Das Laden dauert im Normalfall genau so lange wie das Laden von Kassette beim echten System. Es ist jedoch möglich dies etwas zu beschleunigen. Dazu kann im Menü Konfiguration der Punkt Maximale Geschwindigkeit ausgewählt werden. Dann wird die Emulation nicht mehr auf die Geschwindigkeit des Original-Systems gebremst und läuft je nach PC auf dem der Emulator läuft um ein vielfaches schneller als das Original.

Achtung: Nicht vergessen die Geschwindigkeits-Bremse wieder einzuschalten, sonst sind die Monster in einigen Spielen ziemlich schnell ;-).

3.3. Diskettenverwaltung

Die Diskettenverwaltung bietet die Möglichkeit bis zu 4 Diskettenlaufwerke mit virtuellen Disketten zu bestücken.

Die Daten können dabei in unterschiedlicher Form vorliegen:

1. Disketten-Dump

Dieses Format stammt vom Programm Anadisk der Firma Sydex. Die Datei enhält einfach 1:1 die Daten der Diskette mit ein paar Zusatzinformationen zu Sektor-Nummern und Blockgrößen. Da die Daten unkomprimiert vorliegen sind die Dateien (bei gleicher Formattierung der Original-Diskette) immer gleich groß. Für eine 2-seitige KC-Diskette mit 80 Spuren mit je 5 Sektoren zu 1024 Byte ist die Dump-Datei genau 825600 Bytes groß.

Werden Disketten auf Basis einer solchen Datei emuliert, sind diese im Emulator auch schreibbar.

2. Teledisk-Image

Das Teledisk Format stammt vom gleichnamigen Programm welches auch von der Firma Sydex stammt. Es ist zur Archivierung von Disketten gedacht und unterstützt 2 Komprimierungsverfahren. Es sollte möglich sein alle mit Teledisk erzeugten Images im Emulator zu nutzen, aufgrund des nicht offen gelegten Formates kann es jedoch bei einigen Dateien zu Problemen kommen.

Das Schreiben auf Disketten die auf einem Teledisk-Image basieren ist derzeit nicht möglich.

3. Dateien in einem Verzeichnis

Es ist möglich eine Auswahl an Dateien in ein Verzeichnis zu kopieren und dieses dann dem Emulator als Diskette zu übergeben. Dazu muß im Öffnen-Dialog in das entsprechende Verzeichnis gewechselt werden und es darf kein Dateiname im Öffnen-Dialog angegeben sein.

Nach der Auswahl des Verzeichnisses wird eine virtuelle Diskette mit den vorhandenen Dateien erstellt. Liegen in diesem Verzeichnis mehr Dateien als auf die Diskette passen, werden einige Dateien ignoriert.

Das Format der virtuellen Diskette entspricht dem KC-Format mit 2 Seiten, 80 Spuren mit 5 Sektoren zu 1024 Byte. Das Inhaltsverzeichnis wird so angelegt, daß 2 Spuren als Systemspuren zu reservieren sind.

Wird im Verzeichnis eine spezielle Datei mit dem Namen @boot.sys gefunden, wird der Inhalt der Datei in die Systemspuren übernommen. Diese Datei ist im Normalfall 20480 Byte groß.

Beschreiben einer solchen virtuellen Diskette ist nur eingeschränkt möglich. Es werden lediglich Schreibzugriffe auf die Systemspur in die Datei @boot.sys umgelenkt soweit diese vorhanden ist.

3.4. Modulverwaltung

Je nach emuliertem System steht eine Auswahl an Modulen bereit die das System um die verschiedensten Funktionen erweitern.

- Module für den KC85/1, KC87 - Module für den KC85/2 - KC85/5 - Module für den Z1013

Module für den KC85/1, KC87

RAM-Module

- 16k RAM (ab Adresse 4000h) - 16k RAM (ab Adresse 8000h)

Software-Module

- ZM30 - EDAS - IDAS / ZM - BITEX

sonstige Module

- 192k RAM/EPROM Modul

Ein von Lutz Elßner entwickelter und im "Funkamateur" vorgestellter Modul mit 32k RAM und 160k ROM.

- KC-Pascal Modul

Der Pascal Modul ist im Gegensatz zu den "normalen" ROM-Modulen nicht 10k sondern 32k groß und belegt den Adressraum zwischen 4000h und bfffh. Dadurch kann er nicht zusammen mit zusätzlichen RAM-Modulen betrieben werden.

- Mega-ROM Modul

Entworfen von Alexander Schön besitzt der Modul 2,5MB ROM und enthält durch die in der Modul-Verwaltungssoftware eingebaute Komprimierungsfunktion in der vorliegenden Version 3.5MB an Daten in 311 Dateien!

Mit dabei u.a. auch ein an den Modul angepaßtes Mini-CP/M welches auf 2 im ROM befindliche ROM-Floppies zugreifen kann.

- 128k ROM Bank

Dieser Modul von Ulrich Zander enthält eine Auswahl an nützlichen Programmen, erfordert aber ein leicht verändertes System-ROM und ist zur Zeit nicht ohne weiteres im Emulator nutzbar.

- Plotter XY4131

Nur unter Linux verfügbar ist dieser Modul der keinem realen Modul entspricht sondern einen am I/O Port des KC87 angeschlossenen Kleinplotter XY4131 nachbildet. Alle an den Plotter übertragenen Befehle werden umgewandelt und in eine PostScript Datei geschrieben.

- CPM-Z9 BOOT, CPM-Z9 64k RAM und CPM-Z9 Floppy

Diese 3 Module sind nur sinnvoll in der Kombination aller drei Module nutzbar und stellen eine CP/M-fähige Erweiterung des KC87 dar die durch das "Zentralinstitut für Kernforschung" in Rossendorf etwickelt wurde.

Nach Auswahl aller drei Module wird nach einem Reset des KC87 nicht mehr der übliche Prompt angezeigt. Jetzt meldet sich der KC87 mit CP/M-System. Nach dem Einlegen der CPM-Z9 System-Diskette kann durch Eingabe von BOOT und betätigen mit der ENTER-Taste das CP/M System von Diskette geladen und gestartet.

Über die Auswahlbox "IRM Color Expansion" kann eingestellt werden, ob das emulierte System über die im Gerät eingebaute Farberweiterung verfügen soll oder nicht.

Module für den KC85/2 - KC85/5

RAM-Module

- M022: Expander RAM (16k) - M011: 64k RAM - M036: 128k Segmented RAM - M032: 256k Segmented RAM - M034: 512k Segmented RAM - M035: 1M Segmented RAM

Software-Module

- M012: Texor - M026: Forth - M027: Development - M900: WordPro '86 (KC85/3) - M901: WordPro '86 (KC85/4)

sonstige Module

- M001: Digital In/Out

Die eigentliche Funktion des Moduls als Ein-/Ausgabe Schnittstelle ist zwar nicht nutzbar, es werden aber die im Modul enthaltenen Schnittstellenschaltkreise PIO (U855D) und CTC (U857D) emuliert. So kann z.B. der CTC als Zähler genutzt werden.

- M006: BASIC

Dieser Modul steht nur im KC85/2 und KC85/3 Modus zur Verfügung, da er nur für diese Systeme einsetzbar ist. Sinnvoll ist er eigentlich nur für den KC85/2, da dieser kein eingebautes BASIC besitzt. Eine Besonderheit dieses Modules ist, daß er nicht nur das BASIC selbst enthält, sondern auch ein komplettes System (HC9001-CAOS, es gibt auch Module die sich mit HC-CAOS 2.2 melden). Deshalb kann der Modul nicht einfach per SWITCH eingeschaltet werden, sondern muß mit JUMP initialisiert werden (z.B. JUMP 8, wenn er im Schacht 8 steckt.

- M008: Joystick

Der Joystick-Modul enthält keine Modulsteuerung und ist daher auch ohne SWITCH Anweisung immer aktiv.

In der Windows-Version des Emulators ist dieser Modul nicht nutzbar.

- M035x4: 4MB RAM

Dieser RAM-Module besteht logisch aus 4 x M035 Modulen, die alle 4 Moduladressen eines Modulschachtes belegen. Normalerweise wird nur jede 4. Moduladresse genutzt (8, C, 10, 14, 18, ...), steckt dieser Modul z.B. in Schacht 8, existieren auf den Moduladressen 8, 9, A und B jeweils ein M035 Modul mit 1MB.

Achtung: Bei Verwendung des originalen Floppy-Systems mit D004 ROM Version 2.0 (läßt sich im MENU per "J FC FF" anzeigen) tritt bei Nutzung des 4MB-Modules in Verbindung mit MicroDOS ein Überlauf bei der Berechnung des verfügbaren Speichers auf. Dadurch ist für MicroDOS trotz des des 4MB Moduls kein zusätzlicher Speicher sichtbar. Dies kann durch Verwendung von 3 einzelnen 1MB Modulen (M035) umgangen werden. Oder es wird die neue D004-ROM-Version der KC85/5 Emulation genutzt (Version 3.1) bei der dieser Fehler beseitigt wurde.

Zusätzlich ist es möglich in der Konfigurationsdatei eigene ROM-Module zu definieren.

Module für den Z1013

sonstige Module

- 256k RAM-Floppy

Es können maximal 2 RAM-Floppy Module genutzt werden. Intern wird der erste an Port 98h und der zweite an port 58h verwaltet.

- FDC (Schneider)

Floppy-Erweiterung (vom Computer Club Jena?)

- GDC 82720

Erweiterte Bildschirmdarstellung mit 80-Zeichen pro Zeile

- RTC (Port 20h-2fh), RTC (Port 70h-7fh)

Echtzeituhr, es werden Datum und Uhrzeit des Systems übernommen auf dem der Emulator läuft. Die beiden Module unterscheiden sich nur durch die Portadresse unter der sie im Z1013 System angesprochen werden.

Um das CP/M von der Diskette "z1013gdc.dump" zu starten, muß die Z1013 Variante mit den Bootlader BL4 gestartet werden. Dann sollten folgende Module ausgewählt sein: GDC 82720, FDC (Schneider), RTC (port 70h-7fh) und 2 mal 256k RAM-Floppy.

Nach einem Reset muß sich der Bootlader mit der Auswahl

Z1013: Z CP/M: C

melden. Nach drücken der C Taste wird das CP/M von Diskette gestartet.

3.5. Abspielen von Sound-Dateien

Diese Funktion ermöglicht es vorhandene Sound-Dateien abzuspielen die z.B. von Kassette aufgenommen wurden und nun im WAV (oder einem anderen unterstützten) Format vorliegen.

Die Anzahl der unterstützten Formate hängt von den bei der Übersetzung des Emulators aktivierten Audio-Module ab. Beim Öffnen einer Datei wird von allen Modulen in einer vorgegebenen Reihenfolge versucht die Datei zu öffen. Ist das erfolgreich, dann wird der entsprechende Modul zum Lesen und Abspielen der Datei genutzt.

Liste aller möglichen Module in der Reihenfolge in der sie beim Öffnen einer Datei aufgerufen werden:

OSS - Lädt keine Datei sondern direkt von der Soundkarte. Dieser Modul ist nur unter Linux verfügbar und wird aktiviert indem im Dialog zum Öffnen der Datei die spezielle Gerätedatei "/dev/dsp" ausgewählt wird.

ALSA - Analog zu OSS, es wird jedoch ein anderer Sound-Treiber benutzt. Als Dateiname muß "/dev/snd" angegeben werden.

FLAC - Modul zum Lesen von verlustfrei komprimierten Sound-Dateien im FLAC-Format.

SNDFILE - Dieser Modul nutzt die Bibliothek libsndfile (http://www.mega-nerd.com/libsndfile/) und kennt alle Formate die von dieser Bibliothek unterstützt werden.

AUDIOFILE - Dieser Modul basiert auf der Bibliothek libaudiofile (http://www.68k.org/~michael/audiofile/) und unterstützt daher alle Formate dieser Bibliothek.

WAV - Ein unabhängig von externen Bibliotheken und daher immer im Emulator verfügbarer Modul zum Lesen von WAV Dateien. Dieser Modul ist sehr einfach gehalten und kann nur eine begrenzte Anzahl von WAV-Dateien mindestens aber Mono-Dateien mit 8 oder 16 Bit Samples und beliebiger Sample-Frequenz.

OggVorbis - Modul zum Lesen von komprimierten OGG Dateien. Da die Komprimierung Verlustbehaftet ist, kann es bei sehr stark Komprimierten Dateien zu Lesefehlern kommen, da nicht mehr das beim Aufnehmen vorhanden Signal generiert werden kann.

MP3 - Modul zum Lesen von komprimierten MP3 Dateien mit der Bibliothek libmp3lame. Dieses Format komprimiert wie das OGG-Format verlustbehaftet, daher gelten die gleichen Einschränkungen bei starker Komprimierung.

RAW - Dieser Modul behandelt alle übergebenen Dateien als wären sie unkomprimierte Sound-Dateien mit dem Format 44100kHz, 8bit, Mono.

3.6. Speichern von Memory-Bereichen

Zusammenhängende Bereiche des Hauptspeichers können auf einfache Art und Weise als Datei gespeichert werden. Dabei ist zu beachten, dass immer der aktuell von der CPU sichtbare Speicher angezeigt bzw. in die Datei geschrieben wird.

Der im Fenster angezeigte Speicherinhalt ist statisch auch wenn die Emulation weiterläuft. Über den Button "Aktualisieren" kann aber erneut der aktuelle Speicherinhalt geladen werden, ohne das Fenster zu verlassen.

Die beiden Toggle-Buttons hinter den Adressangaben schalten das automatische Scrolling der Speicheranzeige zu den jeweils angegebenen Adressen ein bzw. aus.

3.7. Vinculum USB

Emuliert wird die Schnittstelle zum VDIP1 Modul der Firma FTDI. Dieser bietet die Möglichkeit auf einfache Art und Weise USB Massenspeicher-Geräte (vorrangig USB-Sticks) am KC anzuschließen.

Die auf dem Modul enthaltene Firmware übernimmt dabei die komplette Verwaltung des angeschlossenen USB-Sticks und bietet dem KC den Zugriff auf die gespeicherten Dateien bzw. erlaubt es Dateien auf dem USB-Stick abzulegen.

Notwendig für die Nutzung der emulierten USB-Schnittstelle ist das aktivieren des "Vinculum USB" Moduls, der eine spezielle Form des Digital-I/O Moduls M001 nachbildet, basierend auf der Schaltung, die Mario Leubner auf den Web-Seiten des "KC85 Labors" vorgestellt hat. Dort finden sich auch weitere Hinweise und Programme für die Nutzung des Moduls (http://www.kc85.susowa.homeftp.net/).

Der zusätzlich vorhandene ROM-Modul mit der CAOS Terminal-Software erlaubt einen einfachen Zugriff auf die Funktionen des Moduls. Verfügbar sind 3 Versionen der Terminal-Software:

- Version 1.2 - Version 2.0 für CAOS 4.2 - Version 2.0 für CAOS 4.4

Version 1.2 unterstützt noch nicht die Funktionen zur Nutzung der Zeitstempel für Dateien. Version 2.0 existiert in 2 Varianten. Die speziell für CAOS 4.4 erweiterte Variante, erlaubt es bei einigen Kommandos den Dateinamen direkt anzugeben (also z.B. DIR B*.*, statt DIR <ENTER> mit nachfolgender Abfrage der Maske).

Welche Dateien sichtbar sein sollen, kann über den Menüpunkt "Emulator / Vinculum USB" festgelegt werden. Die Auswahl eines Verzeichnisses wirkt wie das Stecken eines USB-Sticks mit den Daten unterhalb dieses Verzeichnisses.

3.8. Plotter

Das Plotter-Fenster zeigt die Ausgabe eines emulierten Klein-Plotters XY4131. Dazu muss in der KC85/1 bzw. KC87 Emulation der Plotter-Modul ausgewählt und die entsprechende Treiber-Software (Plotter-BASIC und GRPLOT.COM) geladen sein. GRPLOT.COM befindet sich auf der zum Plotter mitgelieferten Programmkassette R0114. Außerdem werden 2 RAM-Module benötigt, da der Treiber GRPLOT.COM im Speicherbereich des 2. RAM-Modules (8000h-BFFFh) läuft.

Das Plotter-Fenster mit den Ausgaben...

...dieses kleinen BASIC Programmes

Über die Einstellungen auf der rechten Seite des Fensters können die Eigenschaften beim Plotten eingestellt werden.

Stiftfarbe Bestimmt die Farbe mit der gezeichnet wird. Änderungen an dieser Einstellung wirken sich sofort aus.

Papierfarbe Bestimmt die Hintergrundfarbe, also sozusagen die Farbe des Papiers auf dem gezeichnet. Diese Einstellung wird nur beim Löschen des Zeichenbereiches übernommen.

Nullpunkt X und Nullpunkt Y Bestimmen die Position der Koordinate 0,0 des Zeichenbereiches in Bezug auf die obere linke Ecke des Papiers (in Millimeter). Damit kann der Zeichenbereich verschoben werden. Auch diese Einstellung wird erst beim Löschen des Zeichenbereiches übernommen.

Linienbreite Dicke des Stiftes (in Millimeter) mit dem gezeichnet wird. Änderungen an dieser Einstellung wirken sich sofort aus.

Zeichenbereich Anzeige des Zeichenbereiches. Es wird ein dünner grüner Rahmen um den möglichen Zeichenbereich (180 x 255 Millimeter) des Plotters angezeigt. (Achtung: Das Einschalten dieser Option verlangsamt die Bilddarstellung erheblich!)

Stift anzeigen Anzeige der Stiftposition mit einem kleinen Fadenkreuz. (Achtung: Das Einschalten dieser Option verlangsamt die Bilddarstellung erheblich!)

Refresh Definiert alle wieviel Millisekunden die Darstellung des Zeichenbereiches erfolgen soll. Umso höher dieser Wert, desto seltener wird der Zeichenbereich angezeigt was aber die benötigte Rechenleistung verringert.

In PDF-Datei plotten Hier kann eine Datei angelegt werden, in die die folgenden Ausgaben auf dem Plotter geschrieben werden. Für die Ausgabe in eine PDF-Datei hat die Funktion "Zeichenbereich" löschen den zusätzlichen Effekt, dass eine neue Seite erzeugt wird. Dadurch können mehrere Zeichungen in eine PDF-Datei ausgegeben werden.

Speichern Über den Button "Speichern" kann die aktuell angezeigte Zeichnung als PNG Datei gespeichert werden. Die PNG Datei hat dabei eine Auflösung von 2100 x 2970 Bildpunkten, was einer A4-Seite mit 10 Pixeln pro Millimeter entspricht.

Der Kleinplotter XY 4131

Einige technische Daten des Plotters:

Papierformat A4 Effektive Zeichenfläche 255mm x 180mm Raster 2550 x 1800 Schritte Minimale Schrittweite 0,1 mm Zeichengeschwindigkeit 100 mm/s Abmessungen 396 mm x 177 mm x 82 mm Masse 3 kg

3.9. Screenshot

Screenshots der Bildschirmausgabe des emulierten Systems können in verschiedenen Formaten gespeichert werden. Die zur Verfügung stehenden Formate sind abhängig vom (Host-) System auf dem der Emulator läuft, aber normalerweise stehen die folgenden Formate zur Verfügung.

- PNG - JPEG - TIFF - BMP

Das Screenshot-Fenster

Der aktuelle Bildschirminhalt wird beim Öffnen des Screenshot-Fensters und beim Drücken des Buttons "Screenshot" übernommen und angezeigt. Soll nur ein Ausschnitt des Bildschirminhaltes gespeichert werden, kann mit Hilfe der Eingabefelder "Links"/"Rechts"/"Oben"/"Unten" jeweils eine bestimmte Anzahl an Pixelzeilen abgeschnitten werden. Der ausgewählte Bereich wird dabei durch eine schwarz/weiß gestrichelte Linie dargestellt.

Zum Speichern muss dann das gewünschte Format und der Dateiname ausgewählt werden. Durch Drücken des Buttons "Speichern" wird der angezeigte Bildschirminhalt bzw. -ausschnitt in der Datei abgespeichert.

3.10. Video

Zusätzlich zur Ausgabe im Emulator-Fenster kann der Bildschirminhalt des emulierten Systems auch in eine Video-Datei geschrieben werden.

Das Video-Fenster

Möglich sind dabei die folgenden Video-Formate

- Theora/Ogg Ein lizenzfreies Video-Format der Xiph.org Foundation. Dieses Format können aktuelle Versionen des Firefox Internet Browsers (ab Version 3.5) ohne zusätzliche Software abspielen.

- AVI Das "Audio Video Interleave" Format ist ein weit verbreitetes, von Microsoft definiertes Container Format welches verschiedene Typen von Ton- und Video-Spuren erlaubt. KCemu nutzt als Videoformat "DivX MPEG-4 Version 5".

- MPEG 4 Video-Format nach MPEG-Standard.

- Dirac Lizenzfreies Video-Format entwickelt von der BBC Research Abteilung der BBC (British Broadcasting Corporation). Dirac ist die Referenz- Implementierung des Video-Formates.

- Schroedinger Optimierte aber zum Teil noch experimentelle Implementierung des von der BBC entwickelten Dirac Video-Formates.

- GIF (animiert) Das Grafikformat GIF erlaubt nicht nur die Speicherung von einem einzelnen Bild, sondern von mehreren Bildern in einer Datei. Durch eine Erweiterung, die ursprünglich von Web-Browsern eingeführt wurde, ist es möglich kleinere Videos im GIF Format zu speichern.

Bei Einstellung von 50 Bildern pro Sekunde wird die erzeugte GIF Datei optimiert, indem doppelte Bilder nicht gespeichert werden. Bei Einstellung von weniger als 50 Bildern pro Sekunde ist diese Optimierung derzeit nicht möglich.

- VNC Hier erfolgt die Ausgabe des Videos nicht in eine Datei, sondern der Emulator kann so die Rolle eines VNC Servers übernehmen. Das bedeutet, das die Bildschirmausgabe des emulierten Systems von einem anderen Rechner per VNC-Client angezeigt werden kann (Vergleichbar mit Remote-Desktop für Windows).

Welche dieser Formate verfügbar sind, hängt von der Installation ab, normalerweise sollte mindestens "Theora/Ogg" verfügbar sein.

3.11. Farbeinstellung

Zur Farbeinstellung können die Werte Helligkeit und Kontrast verändert werden. Bei einigen Systemen wie KC85/2 bis KC85/5 und BIC / A5105 können dabei Vordergrund und Hintergrundfarbe getrennt eingestellt werden. Bei allen anderen Systemen wirkt sich nur die Einstellung der Fordergrund- Farbe aus.

Die Farbeinstellung

3.12. Tastatur

Für einige der Systeme kann die Tastatureingabe zusätzlich über ein spezielles Fenster erfolgen. Im Fenster wird ein Abbild der zum System gehörenden Tastatur angezeigt. Durch Anklicken der gewünschten Taste mit der Maus wird das entsprechende Zeichen an das emulierte System übergeben.

Dabei lassen sich auch Shift + Taste und CTRL + Taste eingeben, indem das Anklicken der Taste mit der rechten bzw. mittleren Maustaste erfolgt.

Wird ein KC85/4 emuliert, ergibt sich folgendes Beispiel:

Linke Maustaste + [M] : M Rechte Maustaste + [M] : m Mittlere Maustaste + [M] : CTRL+M (entspricht Enter Taste)

Tastatur KC85/4

Der Screenshot der LC 80 Tastatur zeigt auch die für einige Tasten verfügbaren Kürzel auf der PC-Tastatur. Im Beispiel befindet sich der Mauszeiger des PCs gerade über der ADR Taste. In der Fusszeile des Fensters wird nun angezeigt, dass die Eingabe der ADR Taste auch über die F1 Taste der PC-Tastatur erreichen lässt.

Tastatur LC 80

Tastatur Z9001, KC87

Tastatur Polycomputer 880