CP/A Z1013

Für den neuen Z1013-128 bestand der Wunsch, eine vorhandenes Z9001-Floppy-Modul zu nutzen, um CP/M mit Diskette betreiben zu können. Aufbauend auf dem CP/A-48K vom Z9001 und dem BIOS von Heikos BWS hat Tino Ziemke daraus ein erstes CP/A für den Z1013 gebastelt. Auch der Boot-Loader wurde angepasst.

Ich habe auf Wunsch von Lötspitze das CP/A angepasst. Basierend darauf ist nach kompletter Überarbeitung das folgende CP/A entstanden. Ein weiterer Vorteil des CP/A ist gegenüber dem SCP, dass verschiedene Diskettenformate automatisch erkannt werden.

(Bem: Das CPA läuft nicht im normalen JKCEMU, da dieser keine robotron-Floppy am Z1013 unterstützt. Ich hatte mir für Tests den JKCEMU modifiziert)

2024: Erweiterungen: BWS-Karte nach H.Poppe im Modus 80×24, Kramer-Floppy, …


Das ist die BWS-Karte nach H.Poppe im Modus 64×32, im JKCEMU 0.9.8.4 als zweite Anzeigeeinheit verfügbar

  • z1013_cpa.zip alle Dateien + Bootdisk + Quellen etc., 12.09.2024

benötigte Hardware

  • Robotron-Floppy-Modul vom Z9001 (Adr. 98h,99h,A0h) bzw. der BIC/Z9001-Nachbau von U.Zander
  • oder Floppy nach Kramer
  • Peters-Platine 64×16 oder K1520-BWS von H.Poppe
  • 64K RAM
  • 4 MHz (mind. 2.5 MHz, wg. Floppy), umschaltbar via Port 4
  • V24-Modul von Riesa f. Anschluss eines Druckers (Seriell 9600 Baud 8N1)
  • optional: 1 RAF 256K präcitronic auf Adr. 58h

:!: Eine RAF256 auf der originalen ersten Adresse 98h kollidiert mit dem Robotron-Floppy-Modul!

Speicher

BOOT-Loader 0100-05FFh
@z1013.com  0100-2FFFh, verschiebt sich im RAM:

Initialisierung COLD: 62D0h-6FFFh

CCP+BDOS: C300-D8FFh
BIOS:     D900-E5FFh

Starten

Variante A: mit boot1013.z80

Programm laden (Adr. 100h)
Starten mit J 100

Es wird der erste gefundene Dateiname angezeigt. Das sollte normalerweise @Z1013 sein. Dann wird diese Datei geladen und gestartet. Gibt es Fehler, dann wird „Boot-Error: “ gefolgt von einem Fehlercode ausgegeben:

N: falsches System (Name stimmt nicht)
L: falsche Länge des Systems
?: kein CCP am Systemanfang (richtiger Name, aber kein gültiges CP/A)
R: Gerät nicht bereit, aber existent
W: Diskette schreibgeschützt
S: Sektor nicht gefunden
T: Spurnummer zu groß oder nicht zu finden
C: CRC-Fehler
D: Laufwerk nicht existent
U: keine Marke gefunden
B: fehlerhafte Befehlsausgabe (interner Fehler)
F: Fehler bei Ausführung des Seek-Kommandos

Variante B: mit cpa_Z1013.z80

Programm laden (Adr. 100h)
Starten mit J 100

Das CP/A wird direkt gestartet. Es muss eine (beliebige) Diskette im Laufwerk A: stecken.

Beim Start wird das Kommando

SUBMIT AUTOEXEC.SUB

ausgeführt. In einer (selbst anzulegenden) Batch-Datei AUTOEXEC.SUB können weitere Initialisierungen starten.

Auf der Diskette befindet sich das Programm INFO.COM. Damit wird die aktuelle Konfiguration des CP/A angezeigt.

Im Order src gibt die Batchdatei make.bat. Damit wird ein neues System erzeugt (BOOT.COM, @Z1013.COM, Diskettenabbild)

In Tinos Originalquellen wird noch eine CTC für eine Uhr und eine Statuszeile am unteren Bildschirmrand genutzt. Das habe ich (noch) nicht übernommen.

Im Downloadpaket sind Quellen des CPA-CCP und BDOS enthalten. Das CP/A kann auf beliebige Adressen gelinkt werden.

  • 2017: erste Version
  • 14.8.2024: Erweiterungen: BWS-Karte nach H.Poppe im Modus 80×24, Kramer-Floppy, …
  • 12.9.2024: Patch f. A2-Monitor

V. Pohlers, 2017

  • z1013/cpm/cpa_z1013.txt
  • Zuletzt geändert: 2024/09/13 06:55
  • von volkerp