Das Mega-Modul ist ein ROM-Modul. Es wurde ursprünglich von A. Schön für den Z9001 entwickelt → Megamodul. Dieses Modul kann auch am Z1013 genutzt werden, s.u. Hardware. Ebenso ist das das Nachfolge-Modul Mega-Flash-Modul von Bübchen nutzbar.
Speicherbereich: | C000h-E7FFh |
---|---|
Ports: | 0FFh (out Banknr.) |
Speicher: | 256 x 10K = 2,5 MByte |
Ds Modul besteht aus 256 Speicherbänken von je 10K. Immer eine Speicherbank liegt aktiv im Speicherbereich des Prozessors von C000h-E7FFh. Die jeweils aktive Bank wird durch Ausgabe der Banknummer auf Port FFh eingestellt (nur schreibender Zugriff).
Nach Reset ist Bank 00h aktiv. In dieser Bank liegt das Hauptprogramm des Moduls.
Für erste Tests habe ich eine Headerdisk/Headersave-kompatible Software geschrieben. Im ROM liegen die Programme einfach als Z80-Files direkt hintereinander.
Start:
# J C000
Das kopiert die Headerdisk-Software nach BC00h-BFFFh und installiert die Befehle für den Zusatzmonitor. Folgene Zusatzkommandos stehen dann zur Verfügung:
@F (FILES) - Anzeige der Files auf dem aktuellen Disk
Mit STOP wird die Anzeige unterbrochen, jede andere Taste blättert weiter
@R (READ) - File entsprechend abgefragter Filenummer laden. Mit Autostart bei Typ=C
@RRR - wie @R, aber Autostartverbot
@RN - wie @R, aber Abfrage nach Name+Typ
@RNN - wie @RN, aber Autostartverbot
@R aadr - Laden; nach Adresse aadr
14.09.2011: erste Alpha-Version, Filenummerneingabe nur < 256 möglich, da intern 8 Bit
06.02.2013: hd_mega3.asm mit erweitertem Filenummernbereich < 999, außerdem mit Mini-Sprungverteiler auf BFFF abwärts
17.02.2017: kleine Korrektur zum erweiterten Filenummernbereich, USB-Software, DOC-Ordner mit Programmbeschreibungen
Im JKCEMU 0.9 wird das Megamodul unterstützt. Im Emulator wird die Datei megarom.bin eingebunden.
Wenn der Inhalt des Moduls individuell angepasst werden soll:
Benötigt wird der Arnold-Assembler (und ggf. Perl).
Im makefile müssen die Pfade zu AS und P2BIN eingetragen werden. In z80files.inc stehen die Files, die in den ROM sollen (nur der Pfad ist wichtig, die restl. Parameter werden noch nicht gebraucht). Dann einfach
make roms
auf der Kommandozeile tippen.
Die Quellcodedatei für die Alpha-Header-Software ist system\hd_mega.asm.
Das Mega-Flash-Modul von W.Harwardt ist ohne Umbau direkt am Z1013.xx nutzbar.
Das Mega-Modul in der Version von Honi funktioniert direkt an einem Z1013.16 und stellt gleichzeitig 32K RAM zur Verfügung, so dass Programme im Bereich 100h-BFFFh genutzt werden können!
Für den Z1013.64 mit 64K RAM muss dieses Modul umgebaut werden: Der RAM des Honi-Moduls wird nicht benötigt und muss deaktiviert werden. Beim Z1013.64 mit 64K RAM muss beim Zugriff auf den ROM-Bereich C000h-E7FFh ein MEMDI-Signal erzeugt werden. Das Mega-Modul in der Version von Honi für den Z9001 erzeugt leider kein geeignetes MEMDI-Signal. Dieses kann durch OR-Verknüpfung der /CS-Signale der drei ROMs erfolgen (z.B. 3 Dioden BAT42 + Widerstand gegen +5V, Anschluss an X1:MEMDI). Ein Umprogrammieren des GAL hilft hier leider nicht, da kein ungenutzer Ausgang am GAL verfügbar ist.