Inhaltsverzeichnis

Nativer Zugriff auf CP/M-Disketten unter Windows XP

Auch unter Windows XP ist es möglich, nicht nur mit Disketten-Images zu arbeiten, sondern auch direkt CP/M-Disketten zu lesen und zu beschreiben!

Natürlich ist das nicht auf meinem Mist gewachsen. Es gibt 3 Quellen für die hier aufgeführten Tools:

Meine Aufgabe war „nur“, dies alles unter Windows XP mittels MINGW/MSYS zu kompilieren und zum Laufen zu bringen.

:!: Das ganze gibt es auch mit grafischer Oberfäche via Total Commander: CP/M und TotalCommander.

Download

Alles Benötigte liegt im Download-Paket cpmtools-xp.zip bereit!

Vorraussetzung

Es muss ein spezieller Treiber installiert werden, die die direkte Programmierung des Floppycontrollers (das ist ein 765er Nachfolger) unter Windows XP (und NT, 2000, 2003, …) ermöglicht.

Den Treiber gibt es bei http://simonowen.com/fdrawcmd. Es ist die Datei FdInstall.exe zu starten. Nach Ende der Installation muss der Rechner einmal neu gestartet werden, dann steht der erweiterte Treiber für Disketten zur Verfügung.

Im Gegensatz zu anderen Lösungen wie OmniFlop wird der Windows-eigene Floppytreiber nicht ersetzt, sondern es wird ein sogenannter „lower class filter“ installiert. Damit laufen alle Programme, die die Floppy nutzen, weiterhin wie gewohnt, nur der Zugriff mit den u.a. Tools erfolgt über diesen Filter.

cpm_di1.jpg cpm_di2.jpg

Nun müssen nur noch Konfigurationsdateien verschoben werden:

Das war es schon! Jetzt können die libdsk- und cpmtools genutzt werden!

Schnellanleitung

Hinweis: Die Beispiel-Konfigurationsdateien sind primär für 800K-CP/A-Disketten ausgelegt, wie sie am Z9001 verwendet werden. Dieses Format ist auch als Standard hinterlegt. Damit muss man bei den Programmen nicht immer das Format mit angeben, sondern kann bei 800K-Disketten die Kurzform verwenden. Die Programme sind Kommandozeilenprogramme.

> dsktrans.exe -format z9001 -itype tele -otype raw k87cpmok.td0 k87cpmok.dmp
> dsktrans.exe -format z9001 -otype raw a: k87cpmok.dmp
> dsktrans.exe -format z9001 -itype tele -otype ntwdm k87cpmok.td0 a: 
> dskform -format z9001 -type raw test.dmp
> dskform -format z9001 -type ntwdm a:
> cpmls -f z9001 -T tele k87cpmok.td0\\
Kurzform: cpmls k87cpmok.td0
> cpmcp -f z9001 -T tele k87cpmok.td0 0:*.* windir\\
Kurzform: cpmcp k87cpmok.td0 0:*.* windir
> cpmls -f z9001 a:\\
Kurzform: cpmls a:
> cpmcp a: 0:*.txt subdir
> cpmcp a: beispiel.txt 0:
> cpmrm a: 0:beispiel.txt

Ausführliche Beschreibung

im Download-Paket liegen die Dokumentationen aller Tools als HTML-Dateien bei. Außerdem gibt es ein Textdokument programme.txt, in dem alle Tools kommentiert sind.

Hinweis: Bei Teledisk-Images unterstützt libdsk derzeit nur das einfache Format. Teledisk-Images mit „advanced compression“ können aber mit TDCONV ins einfache Format konvertiert werden (http://www.fpns.net/willy/wteledsk.htm)

todo: Hinweise für Selbstkompilierer

Historie

24.02.10: CPMTools erneuert: Basis ist jetzt Version 2.12. Ein Fehler in meiner modifizierten libdsk-Anbindung, der dazu führte, dass einseitige Disketten falsch gelesen wurden, ist behoben.