Dies ist eine alte Version des Dokuments!
Kombi-Modul
Das Kombi-Modul ist eine Entwicklung von U. Zander (http://www.sax.de/~zander/z9001/module/kombi.html). Es umfasst 4 einzelne Komponenten auf einer 95 mm x 170 mm großen Leiterplatte (Modul-Format wie Programmier-Modul):
- 512K-RAM kompatibel zu Robotron-64K-RAM-Modul, mit den UZ-Modifikationen wie beim 64K-RAM-Nachbau 1)
- Floppy-Ansteuerung kompatibel zu Robotron-Floppy-Modul
- ROM-Bank analog TU-ROM-Bank und 64K-SRAM-Modul
- RTC Echtzeituhr nach O. Matthäi, leider nicht kompatibel zur GIDE-RTC.
Damit sind alle Komponenten auf einem Modul, um mit diesem CP/M am Z9001 nutzen zu können!
Der 128K oder 512K große RAM kann bankweise im Bereich 4000…BFFF bzw. 4000..E7FF eingeblendet werden. Es gibt 2 oder 8 Bänke.
Der 128K bis 1MB große ROM ist in 16..128 Bänke aufgeteilt, die abwechselnd 10K bzw. 6K groß sind.
DIP-Schalter:
v.l.n.r. 1 - ON MODOFF schaltet die ROM-Bank des Moduls aus (z.B. bei Verwendung des MEGA-Moduls) 2 - ON KC87 schaltet /ROMDI aktiv für den Betrieb am KC87 3 - ON 48K schaltet den RAM ein 4 - ON RTCOFF schaltet die CMOS-Uhr aus
Anzeige:
gelbe LED Shadow-RAM 4000-7FFF aktiv grüne LED RAM 8000-BFFF aktiv rote LED Hi-RAM C000-E7FF aktiv 7-Segment-Anzeige aktive ROM-Bank-Nummer Dezimalpunkt der Zehnerstelle ROM-Bank ist aktiv Dezimalpunkt der Einerstelle 2. RAM-Bereich ist aktiv
I/O-Adresse | Bedeutung |
---|---|
04H | Setzen RAM-Bank 0 (Vordergrund-RAM), Adressbereich 4000H bis 7FFFH |
05H | Setzen RAM-Bank 1 (Hintergrund-RAM), Adressbereich 4000H bis 7FFFH |
06H | RAM ist W/O, Adressbereich C000H bis E7FFH |
07H | RAM ist R/W, Adressbereich C000H bis E7FFH |
60H-6FH | RTC (CMOS-Uhr) |
74H | Modul-Disable, arbeitet wie ein Flipflop |
75H | Setzen der ROM-Bank, 0 bis max. 7FH (128 Bänke) |
76H | Setzen der RAM-Bank, 0..1 bzw. 0..7 (max. 8 Bänke) |
77H | Modul-Disable/Enable |
78H | Weiterschalten der ROM-Bank beim Suchen, 0 bis max. 7FH (128 Bänke) |
98h | FDC Datenregister |
99h | FDC Steueregister |
0A0h | FDC (Motor Laufwerk 0 ein/aus, Motor Laufwerk 1 ein/aus, Terminal Count aktivieren/deakt., FDC Reset) |
<ditaa noedgesep>
E800 +---------+ +---------+ +---------+ | Hi-RAM | | Hi-RAM | | Hi-RAM | | 10K | | 10K | | 10K | C000 +---------+ +---------+ +---------+ | | | | | | | 16K | | 16K | ... | 16K | 8000 +---------+---------+ +---------+---------+ +---------+---------+ | Bank 0 | Bank 1 | | Bank 0 | Bank 1 | | Bank 0 | Bank 1 | | 16K | 16K | | 16K | 16K | | 16K | 16K | 4000 +---------+---------+ +---------+---------+ +---------+---------+ 1. 64K-RAM 2. 64K-RAM 8. 64K-RAM
</ditaa>
Beim Steuern der Zustände mit OUT-Befehlen werden bis auf OUT 75H und OUT 76H keine Werte übergeben. OUT 75H wird zur Steuerung der ROM-Bänke benutzt, OUT 76H zur Steuerung der RAM-Bänke.
RAM-Bereich 4000H bis BFFFH (32K):
Der Bereich 4000H bis 7FFFH ist (je RAM-Bank) doppelt belegt und steht z.B. als Vordergrund-RAM und als Hintergrund-RAM unter dem Rossendorfer CP/M zur Verfügung. OUT 4 schaltet den Vordergrund-RAM ein, das ist auch der Grundzustand nach RESET. OUT 5 schaltet den Hintergrund-RAM sichtbar.
RAM/ROM-Bereich C000H bis E7FFH (10K):
Ist mit OUT 7 Hi-RAM aktiviert, ist der Bereich C000H bis E7FFH als RAM verfügbar (je RAM-Bank). Ist der obere RAM nicht aktiviert, ist in diesem Bereich die ROM-Bank. Die ROM-Bank benutzt 10K und 6K große Bänke. Ist die ROM-Bank nur 6K groß, sind die verbleibenden 4K als RAM sichtbar.