Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » Emulator und Debugger für K1520 und P8000 » Themenansicht

Autor Thread - Seiten: -1-
000
15.10.2026, 17:01 Uhr
olliy



Ich habe in den letzten Wochen und Monaten an einem Emulator für Bürocomputer gearbeitet. Dank etwas KI Unterstützung ist das Projekt mitlerweile auf einem Stand, das man damit ganz gut rumspielen kann und sehen kann, wo die Reise hingehen soll. Das Projekt liegt als Open Source (MIT Lizenz) unter https://github.com/olliy78/k1520emu. Es sind fertige Installer für Windows und Linux vorhanden. Es sollte sich auch auf einem Mac bauen lassen, konte ich mangels Hardware aber nicht überprüfen. Implementiert ist das ganze in C++ und Python.



Aktuell lassen sich folgende Maschienen Emulieren:
A5120, A5120.16, K8915 (v2 und v3), PRG710, PRG710-1, PC1715, PC1715W, P8000, P8000-Terminal
Das sind im Grunde die Maschienen, die ich bei mir rumstehen habe, daher war ein Reverseengeneering bis hier hin möglich.

Das mit der P8000 ist übrigens ganz witzig. Da ich nicht so regelmäßig hir im Forum eingelogt bin, habe ich garnicht gesehen, das Olli ebenfalls eine einer MAME basierten Emulation der P8000 arbeitet. Hätte ich vielleicht schon mal früher schreiben können. Naja, gibts jetzt halt zwei.
Aber der weiter unten beschriebene Debugger für den z8000 und die MMUs ist bestimmt auch für das MAME Projekt interessant.

Der Emulator ist als modularer Hardwareemulator aufgebaut. Er emuliert auf unterster Ebene ICs (U880, U855, U856, U857, U858, U8272, U8001, U8010, DRAM, SRAM, EPROM, ...) daraus werden dann mit etwas Zusatzlogik Karten gebaut (K2526, K5122, K3526, K7024, K8025, ... ) Dann gibt es ein konfigurierbares Bussystem K1520 (bei der P800 gibt es das nicht) worüber Buszugriffe, Interupts, ... geregelt werden. Dann gibt es moch emulierte Diskettenlaufwerke (K5601, K5600.10, K5600.20, MF3200 und MF6400) mit emuliertn Shugart-Bus. Es gibt verschiedene Tastaturen-Emulationen mit serieller und paraleler Schnittstelle (K7609, K7637, K7672, K7673, K7658), einen grünen Bildschirm, sowie rudimentäre Nachbildungen eines Eprommers und Lochstreifengeräten.
Daraus lassen sich aktuell die oben genannten Maschienen zusammensetzen. Durch hinzufügen weiterer Karten, anderer Eproms und anderer Perepherie lassen sich damit auch andere Computer emulieren. Die emulierten Rechner lassen sich mit einer graphischen Oberfläche oder in der Komandozeile bedienen (siehe Bild). Handbuch

Das Programmpaket enthällt zusätzlich noch einen Debugger und ein DiskTool.
Der Debugger war Vorraussetzung um den Emulator überhaupt bauen zu können, da sich leider nicht alles aus den Schaltplänen und Handbüchern ableiten lässt. Mit dem Debugger kann man vorhandene Software z.B. Boot-Roms, Betriebssystem und Anwendungsprogramme wärend der Ausführung untersuchen und kann Hardwarezugriffe genau beobachten. Man kann die Maschiene über Brakepints jederzeit anhalten und schrittweise Fortsetzen und kann neben der CPU auch in die meisten höher integrierten ICs reinschauen (interne Zustände von: PIO, SIO, CTC, DMA, MMU) und man sieht die Signale auf dem K1520 Bus. Der Debugger ist ein Komandozeilenwerkzeug ähnlich gdb.



Das Disktool ermöglicht das lesen und schreiben von Disketten mit verschiedenen Formaten von SCP, CP/A, UDOS und teilweise Wega. über eine grafische Oberfläche oder über die Komandozeile. Darüber hinaus können einzelne Sektoren bearbeitet/gelöscht oder neu angelegt werden. Es gibt Funktionen zum reparieren korupter Dateisysteme (UDOS und CP/M) und zum wiederherstellen gelöschter Dateien. Es können .hfe und .dmk Images sowie echte Disketten in Verbindung mit einem Greaseweazle gelesen und geschrieben werden. Das Tool kann auch mit den UDOS typischen Pointer-Anhängen nach der CRC umgehen die es bei einigen Versionen gibt und die lassen sich auch korigieren, wenn das Dateisystem korrupt ist. Handbuch



Es würde mich freuen, wenn ihr lust daran finden würdet das Projekt mal zu testen und mir Rückmeldung zu geben. Wenn ihr Bugs findet oder Verbesserungsvorschläge habt, könnt ihr dafür bei github ein Ticket aufmachen. Ich sehe mir das dann bei Gelegenheit an. Oder ihr schreibt mir hier im Forum.

Ich Konnte die Maschienen nur mit der Software testen, die ich auch bei mir gefunden habe. Das ist auch eine Frage hier in die Runde. Ich suche weitere Software und Systeme zum Testen.
Für den A5120 suche ich: MUTOS8000 (UDOS Bootdiskette mit UNIX Kernel), SIOS1526, CP/M, CP/KSOB, CP/Z, DAC, Microdos 1526
Für den PC1715 (W) suche ich: CP/M, CP/KSOB, CP/Z, DAC, Microdos, BROS1715, JAMB, TOS/M
Für dei PRGs suche ich BS600 (ROM und Diskettenversion)
für den K8915 suche ich: CP/Z, KOBRA (Kasetten System)
Generell sind Programme interessant, die direkte Hardwarezugriffe machen. Hardy (A5120) funktioniert z.B. bereits.
Hat jemand irgendwas davon?

Die Maschinen A5120 und K8915 gibt es ja auch in einer Kasetten-Version. Das würde ich mir gern als nächstes vornehmen. Die Hardwarebeschreibung habe ich dazu schon gefunden. Das ist im Grunde nicht so kompliziert nachzubauen. Der A5120 hat scheinbar auch eine Routine im Rom um von einer Kasette zu booten. Bei den modernenren K8915 v2 und v3 sowie haben das nicht.
Daher suche ich für diese Erweiterung ein K8915 v1 (Parallee Tastatur) Boot-ROM und Kasetten Abbilder als Binär-Abzug oder als .wav um den Kasettenemulator möglichst Realitätsnah umsetzen zu können.
Hat jemand sowas?

Dann würde ich mir gern die MC80 Familie vornehmen. Das ist ja auch ein Typischer K1520 Vertreter. Dazu habe ich im Netz auch schon Unterlagen und EPROMs gefunden. Allerdings keine Kasetten Abbilder.
Kann mir da jemand was zur Verfügung stellen? Ich weiß, das es einige MC80 Anwender in diesem Forum gibt.

Die P8000 Compact als Variante der P8000 ist wahrscheinlich kein großer Aufwand. Über die A7100 und A7150 habe ich auch schon mal nachgedacht, aber das wäre einziemlich großes Projekt.

Welche weiteren Rechner oder Zusatzkarten wären eurer Meinung nach gut, wenn man sie emulieren könnte?

Viele Grüße
Olaf

Dieser Beitrag wurde am 15.10.2026 um 17:31 Uhr von olliy editiert.
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
15.10.2026, 18:30 Uhr
DL
Default Group and Edit
Avatar von DL

Respekt!!
Hab mal kurz den PC1715- und A5120-Emulator durchprobiert.
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
15.10.2026, 22:01 Uhr
Olli

Avatar von Olli

Ich werde auf jeden Fall die KI bitten deine P8000 Emulation mit "meiner" in MAME abzugleichen - die sollte inzw. vollständig korrekt sein mit meinen Änderungen.....Unterschiede werde ich dann berichten. Ich denke, in den nächsten Tagen gibt es dann Feedback von mir
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
15.10.2026, 22:04 Uhr
Burkhard



Sehr beeindruckend!

Grüße Burkhard
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
15.10.2026, 22:39 Uhr
olliy




Zitat:
Olli schrieb
Ich werde auf jeden Fall die KI bitten deine P8000 Emulation mit "meiner" in MAME abzugleichen - die sollte inzw. vollständig korrekt sein mit meinen Änderungen.....Unterschiede werde ich dann berichten. Ich denke, in den nächsten Tagen gibt es dann Feedback von mir



Das ist eine gute Idee! Tatsächlich ist die P8000 die am wenigsten getestete und jüngste Maschine in meinem Emulator. Sie bootet halt und man kann in der Unix Console rum navigieren und sie läuft zumindest bei mir bisher stabil. Für die K1520 Maschinen, habe ich hingegen recht umfangreiche automatische Systemtests aufgesetzt um die verschiedenen Kombinationen aus Betriebssystemen und Hardware v.A. Laufwerks-Bestückungen zu testen. Da hatte es am Anfang ein paar üble Effekte vor allem bei der K2526 mit den zwei U880 gegeben, die sich bei Diskettenzugriffen (pseudo DMA) auf dem Bus verhaken können. Das passiert jetzt nicht mehr.
Auf der P8000 gibt es bestimmt auch noch Bugs.
Du kannst mir einfach auf github Tickets einstellen, wenn du nicht das Forum fluten willst.

Vielen Dank Schon mal
Viele Grüße
Oalf
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
16.10.2026, 19:04 Uhr
Olli

Avatar von Olli

Einen bug habe ich dir aufgemacht olly - es ist mehr eine Bestätigung einer Frage die noch in deinem Code übrig ist.

https://github.com/olliy78/k1520emu/issues/1

Den DAB Bug den du bei dir auch gemerkt hast habe ich auch schon gefunden und der wird in mame auch gefixt mit meinem PR. Ansonsten werden wir nach meinem PR denke ich funktionsseitig die gleiche Emulation der einzelnen Bausteine haben. Du hast einige Bugs bei dir gefixt die in mame vorliegen, die ich aber auch entsprechend als fix vorbereitet habe. Auch jeweils mit entsprechenden Referenzen auf die Spezifikationen.... mehr im anderen thread sobald meine PRs auf sind
--
P8000 adventures: http://pofo.de/blog/?/categories/1-P8000

Dieser Beitrag wurde am 16.10.2026 um 19:04 Uhr von Olli editiert.
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
16.10.2026, 23:09 Uhr
devnull




Zitat:
olliy schrieb
Ich habe in den letzten Wochen und Monaten an einem Emulator für Bürocomputer gearbeitet. Dank etwas KI Unterstützung ist das Projekt mitlerweile auf einem Stand, das man damit ganz gut rumspielen kann und sehen kann, wo die Reise hingehen soll. Das Projekt liegt als Open Source (MIT Lizenz) unter https://github.com/olliy78/k1520emu. Es sind fertige Installer für Windows und Linux vorhanden. Es sollte sich auch auf einem Mac bauen lassen, konte ich mangels Hardware aber nicht überprüfen. Implementiert ist das ganze in C++ und Python....

.....



Wow das klingt sehr cool das schaue ich mir an !!

Grüße devnull

Dieser Beitrag wurde am 16.10.2026 um 23:09 Uhr von devnull editiert.
 
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek