Nächste Überarbeitung | Vorhergehende Überarbeitung |
lc80:kcemu [2010/07/11 14:35] – Page moved and renamed from intern:converted:lc80_kcemu.htm to lc80:kcemu volkerp | lc80:kcemu [2022/10/28 12:53] (aktuell) – [KCEMU] volkerp |
---|
====== lc80_kcemu.htm ====== | ====== JKCEMU ====== |
| |
==== Der KC-Emulator von Torsten Paul ==== | der JKCEMU [[http://www.jens-mueller.org/jkcemu/]] von Jens Müller emuliert den LC 80 in verschiedenen Versionen inkl. Audio-/Tape-Schnittstelle u.a.m. |
| |
Der Emulator [[http://kcemu.sourceforge.net/|KCemu]] von Torsten Paul emuliert viele DDR-Heimcomputer und ist für Linux und Windows verfügbar. Er ist Freeware und Open Source!\\ Hier möchte ich einige Tipps zu diesem Emulator (Verson 0.38) geben. | ====== KCEMU ====== |
| |
=== Hilfe === | <WRAP center round info 60%> |
| Hinweis: Der folgende Text ist nur aus historischen Gründen noch vorhanden. Der KCEMU wurd nicht mehr weiterentwickelt. Mit dem JKCEMU steht ein leistungsfähiger moderner Emulator bereit! |
| </WRAP> |
| |
| 2002: **Der KC-Emulator von Torsten Paul** |
| |
| Der Emulator KCEMU von **Torsten Paul** [[http://kcemu.sourceforge.net/]] emuliert viele DDR-Heimcomputer und ist für Linux und Windows verfügbar. Er ist Freeware und Open Source! |
| |
| Hier möchte ich einige Tipps zu diesem Emulator (Version 0.38) und konkret zur Emulation des LC 80 geben. |
| |
| ==== Hilfe ==== |
| |
Unter Windows funktioniert die Kommandozeilenhilfe nicht richtig. kcemu -? liefert keine Ausgabe, eine Umleitung in eine Datei schafft hier Abhilfe: | Unter Windows funktioniert die Kommandozeilenhilfe nicht richtig. kcemu -? liefert keine Ausgabe, eine Umleitung in eine Datei schafft hier Abhilfe: |
| |
> kcemu -? > hilfe.txt | kcemu -? > hilfe.txt |
kcemu -v >> hilfe.txt | kcemu -v >> hilfe.txt |
kcemu -V >> hilfe.txt | kcemu -V >> hilfe.txt |
| |
erzeugt eine komplette Hilfedatei aller Kommandozeilenoptionen des Emulators. | erzeugt eine komplette Hilfedatei aller Kommandozeilenoptionen des Emulators. |
| |
=== Konfiguration sichern === | ===== Konfiguration sichern ===== |
| |
Der Emulator erlaubt es, neben der Kurzform mit -1 .. -9 auch Konfigurationsdateien mit KC-Typ, geladenen Modulen, Sound, Grafikoptionen etc. zu nutzen. Dazu ist die Datei kcemurc (c:\Programme\KCemu\share\KCemu\doc\kcemurc.sample) zu modifizieren und unter eigenem Dateinamen speichern. Es gibt leider noch keine Möglichkeit, eine Konfiguration vom Emulator aus zu speichern. | Der Emulator erlaubt es, neben der Kurzform mit -1 .. -9 auch Konfigurationsdateien mit KC-Typ, geladenen Modulen, Sound, Grafikoptionen etc. zu nutzen. Dazu ist die Datei kcemurc (c:\Programme\KCemu\share\KCemu\doc\kcemurc.sample) zu modifizieren und unter eigenem Dateinamen speichern. Es gibt leider noch keine Möglichkeit, eine Konfiguration vom Emulator aus zu speichern. |
| |
Der Aufruf einer solchen Konfiguration erfolgt mit | Der Aufruf einer solchen Konfiguration erfolgt mit |
| |
> **kcemu -c kcemurc** | kcemu -c kcemurc |
| |
==== ==== | ===== LC 80-Emulation ===== |
| |
==== LC 80-Emulation ==== | {{kcemu-lc80.jpg}} |
| |
{{kcemu-lc80.jpg?235x88}} | In KCEMU ist die LC 80-Emulation mit ''kcemu -8'' erreichbar. Die LC 80-Emulation unterstützt Tonausgabe (Version 3.8 nicht unter Windows) und erweiterten Speicherausbau (Module RAM2400, RAM2800, RAM3000, RAM4000, RAM8000). Emuliert wird die 2x1K-Version. |
| |
Im Emulator [[http://kcemu.sourceforge.net/|KCemu]] ist die LC 80-Emulation mit **kcemu -8** erreichbar. Die LC 80-Emulation unterstützt Tonausgabe (momentan (v3.8) nicht unter Windows) und erweiterten Speicherausbau (Module RAM2400, RAM2800, RAM3000, RAM4000, RAM8000). Emuliert wird die 2x1K-Version. | ==== Konfigurationsdatei ==== |
| |
=== Beispiel einer [[intern:converted:kcemu.zip|Konfigurationsdatei]] === | Ein Beispiel einer Konfigurationsdatei für eine LC 80 mit 4K RAM ist im Paket {{kcemu.zip}} enthalten: |
| |
> #LC 80 | <file - kcemurc.lc80> |
| #LC 80 |
Tape File: lc80.kct | Tape File: lc80.kct |
Default KC Model: lc80 | Default KC Model: lc80 |
Module_00000000: RAM2400 | Module_00000000: RAM2400 |
Module_00000001: RAM2800 | Module_00000001: RAM2800 |
| </file> |
| |
=== Tasten === | ==== Tasten ==== |
| |
^ PC-Taste ^ LC 80-Ãquivalent ^ | ^ PC-Taste ^ LC 80-Äquivalent ^ |
| ESC | Reset | | | ESC | Reset | |
| 0-9, A-F(a-f), +, - | 0-9, A-F, +, - | | | 0-9, A-F(a-f), +, - | 0-9, A-F, +, - | |
| F4 | ST | | | F4 | ST | |
| |
die NMI-Taste (interner Code 0x127) ist wohl nur über die Tastaturansicht erreichbar. | die NMI-Taste (interner Code 0x127) ist wohl nur über die Tastaturansicht erreichbar. |
| |
=== Implementierte Programme === | ==== Implementierte Programme ==== |
| |
Der Emulator enthält eine versteckte Funktion: die ersten drei Beispiele der LC 80-Anleitung sind direkt im Emulator implementiert. | Der Emulator enthält eine versteckte Funktion: die ersten drei Beispiele der LC 80-Anleitung sind direkt im Emulator implementiert. |
| |
^ Eingaben ^ Beispiel ^ Beschreibung ^ | ^ Eingaben ^ Beispiel ^ Beschreibung ^ |
| "LD", "0000", F10 | Beispiel 1\\ HELPUS | Anzeige 'HELPUS': Unter Verwendung des Unterprogrammes DAK1 ist der Text 'HELPUS' anzuzeigen, solange nicht die Taste "+" gedrückt wird. In diesem Fall soll der Rechner in den HALT-Zustand gehen. | | | "LD", "0000", F10 | Beispiel 1\\ HELPUS | Anzeige 'HELPUS': Unter Verwendung des Unterprogrammes DAK1 ist der Text 'HELPUS' anzuzeigen, solange nicht die Taste "+" gedrückt wird. In diesem Fall soll der Rechner in den HALT-Zustand gehen. | |
| "LD", "0001", F11 | Beispiel 2\\ HELPUS | Blinkende Anzeige 'HELPUS': Das Programm DAK2 steuert die Anzeige für die Dauer von rund 10 ms an. Der Text 'HELPUS' soll alle 0,5 Sekunden für 0,5 Sekunden aufleuchten. | | | "LD", "0001", F11 | Beispiel 2\\ HELPUS | Blinkende Anzeige 'HELPUS': Das Programm DAK2 steuert die Anzeige für die Dauer von rund 10 ms an. Der Text 'HELPUS' soll alle 0,5 Sekunden für 0,5 Sekunden aufleuchten. | |
| "LD", "0002", F12 | Beispiel 3\\ Blinklicht | Blinklicht-Steuerung: Das OUT-LED soll durch HIGH- bzw. LOW-Signale angesteuert werden, so dass diese LED blinkt. | | | "LD", "0002", F12 | Beispiel 3\\ Blinklicht | Blinklicht-Steuerung: Das OUT-LED soll durch HIGH- bzw. LOW-Signale angesteuert werden, so dass diese LED blinkt. | |
| |
=== Emulation des Kassetteninterfaces === | ==== Emulation des Kassetteninterfaces ==== |
| |
Leider bietet der Emulator momentan noch keine Möglichkeit, Programme zu speichern. Geladen werden können Programme aber als Binärdateien: wenn diese prog_0x2000.bin heiÃt, läÃt sie sich über "Emulator->Load" einzeln an die Adresse 0x2000 laden. Per "Emulator->Run" geht auch Autostart, wenn die Datei prog_0x2000_0x2000.bin heiÃt. (prog steht für einen beliebigen Programmnamen). Diese Binärdateien können auch in ein "Tape" eingeladen werden. Mit Doppelklick auf den entsprechenden Eintrag im Tape (über "Emulator>Kassette" erreichbar) wird das Programm in den Speicher des LC 80 geladen und kann gestartet werden: RES,ADR,EX bzw. im Emulator: ESC,F1,ENTER. | Leider bietet der Emulator momentan noch keine Möglichkeit, Programme zu speichern. Geladen werden können Programme aber als Binärdateien: wenn diese prog_0x2000.bin heißt, läßt sie sich über "Emulator->Load" einzeln an die Adresse 0x2000 laden. Per "Emulator->Run" geht auch Autostart, wenn die Datei prog_0x2000_0x2000.bin heißt. (prog steht für einen beliebigen Programmnamen). Diese Binärdateien können auch in ein "Tape" eingeladen werden. Mit Doppelklick auf den entsprechenden Eintrag im Tape (über "Emulator>Kassette" erreichbar) wird das Programm in den Speicher des LC 80 geladen und kann gestartet werden: RES,ADR,EX bzw. im Emulator: ESC,F1,ENTER. |
| |
Im [[intern:converted:kcemu.zip|Beispieltape]] stehen die [[intern:converted:lc80_doku.htm#Software|Spielprogramme]] zum Ausprobieren bereit! | Im Beispieltape {{kcemu.zip}} stehen die [[software|Spielprogramme ]] zum Ausprobieren bereit! |
| |
=== Für Code-Erforscher === | ===== Für Code-Erforscher ===== |
| |
die LC 80-betreffenden Dateien des Emulators haben die Endung 8. In pio8.cc stehen die 3 integrierten Programmbeispiele; die Tastaturfunktionen sind in keyb8k.h und keyb8.cc (Codes vgl. keys.h) kodiert. mod_list.cc definiert die Module, beim LC 80 sind das RAM-Erweiterungen. | die LC 80-betreffenden Dateien des Emulators haben die Endung 8. In pio8.cc stehen die 3 integrierten Programmbeispiele; die Tastaturfunktionen sind in keyb8k.h und keyb8.cc (Codes vgl. keys.h) kodiert. mod_list.cc definiert die Module, beim LC 80 sind das RAM-Erweiterungen. |
| |