Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
z9001:software:mega [2019/03/01 16:52] – [Dateiarbeit] volkerpz9001:software:mega [2022/01/27 07:38] (aktuell) volkerp
Zeile 9: Zeile 9:
 Das Softwarepaket umfasst alle enthaltenen Programme (meist im TAP-Format), die Quelltexte der Modulsoftware, Makefiles und einige Hilfsprogramme. die Software ist universell für alle Megamodul-Varianten kompilierbar. Bitte die LIESMICH-Datei beachten! Das Softwarepaket umfasst alle enthaltenen Programme (meist im TAP-Format), die Quelltexte der Modulsoftware, Makefiles und einige Hilfsprogramme. die Software ist universell für alle Megamodul-Varianten kompilierbar. Bitte die LIESMICH-Datei beachten!
  
-  * {{:z9001:module:mega_flash.zip|}} Softwarepaket incl. aller Quellen (Stand 1.8.2017)+  * {{:z9001:software:mega_flash_roms.zip|}} Softwarepaket (Stand 5.10.2021) 
 +  * {{:z9001:software:mega_flash.zip|}} Softwarepaketincl. aller Quellen (Stand 5.10.2021) 
 +  * {{ :z9001:software:megamodul.pdf |}} Handbuch/Systembeschreibung
  
 Im Paket sind enthalten:  Im Paket sind enthalten: 
Zeile 37: Zeile 39:
  
 Programme werden einfach durch Eingabe des Programmnamens am OS-Prompt gestartet. Das gilt für alle Programmarten. Bei BASIC-Programmen erfolgt automatisch ein spezielles Laden des BASICs mit anschließendem Autostart des BASIC-Programms. Programme werden einfach durch Eingabe des Programmnamens am OS-Prompt gestartet. Das gilt für alle Programmarten. Bei BASIC-Programmen erfolgt automatisch ein spezielles Laden des BASICs mit anschließendem Autostart des BASIC-Programms.
 +
 +**Eine Anleitung für alle Programme des Moduls gibt es nicht. Viele Programme sind in den Dokumentationen von Robotron beschrieben. 
 +Im Download-Paket ist eine Übersicht packeroms.bin_mega.txt enthalten, die in etwa DIR L entspricht.**
  
 ===== Kommandos ===== ===== Kommandos =====
Zeile 178: Zeile 183:
 Nach Betätigung der Enter-Taste wird die aktuelle Adresse erhöht und auf der  Nach Betätigung der Enter-Taste wird die aktuelle Adresse erhöht und auf der 
 nächsten Zeile fortgesetzt. Wird versucht, einen nicht vorhandenen  nächsten Zeile fortgesetzt. Wird versucht, einen nicht vorhandenen 
-Speicherbereich oder einen ROM zu beschreiben, erfolgt eine Fehleraussohrift: ER +Speicherbereich oder einen ROM zu beschreiben, erfolgt eine Fehlerausschrift: ER 
 aerr bb, wobei aerr die Adresse und bb den fehlerhaften Inhalt darstellen.  aerr bb, wobei aerr die Adresse und bb den fehlerhaften Inhalt darstellen. 
-Anschliessend wird eine erneute Eingabe erwartet. Diese Fehlerausschrift wird +Anschließend wird eine erneute Eingabe erwartet. Diese Fehlerausschrift wird 
 vor allem dann auftreten, wenn versucht wird, nicht vorhandene Speicher oder  vor allem dann auftreten, wenn versucht wird, nicht vorhandene Speicher oder 
 Festwertspeicher zu beschreiben. Mit Eingabe des Zeichens "R" kann die aktuelle  Festwertspeicher zu beschreiben. Mit Eingabe des Zeichens "R" kann die aktuelle 
 Adresse bei Bedarf zurückgestellt werden.  Adresse bei Bedarf zurückgestellt werden. 
  
-Die Komandoausführung wird beendet durch Eingabe eines Semikolon ";". Die +Die Kommandoausführung wird beendet durch Eingabe eines Semikolon ";". Die 
 aktuelle Adresse wird als Endadresse übernommen. Mit dem Kommando 'DUMP' kann  aktuelle Adresse wird als Endadresse übernommen. Mit dem Kommando 'DUMP' kann 
 der aktualisierte Speicherbereich nochmals auf dem Bildschirm angezeigt werden.  der aktualisierte Speicherbereich nochmals auf dem Bildschirm angezeigt werden. 
Zeile 234: Zeile 239:
 Mit **RUN F000 bank** wird das Megamodul hart auf eine andere Bank als die Systembank umgeschaltet. Das Megamodul verhält sich dann wie ein normales 10K-ROM-Modul; das OS-Verhalten bzgl. Programmsuche und -start ist unverändert original Z9001. Erst nach einem Hardware-Reset ist die Modul-Systemsoftware wieder aktiv. Mit **RUN F000 bank** wird das Megamodul hart auf eine andere Bank als die Systembank umgeschaltet. Das Megamodul verhält sich dann wie ein normales 10K-ROM-Modul; das OS-Verhalten bzgl. Programmsuche und -start ist unverändert original Z9001. Erst nach einem Hardware-Reset ist die Modul-Systemsoftware wieder aktiv.
  
-===== eigene Software =====+===== spezielle Programme ===== 
 + 
 +Zuätzliche (für mich) wichtige Programme sind: 
 + 
 +^ Kommando  ^ Beschreibung ^ 
 +| CHKROM | Test des Moduls. Für jede Bank wird eine Prüfsumme errechnet und mit dem Sollwert verglichen. Fehler werden angezeigt. | 
 +| [[z9001:drucken|EPSON]] | Druckertreiber für verschiedene Druckertypen | 
 +| V24 | Der ROM BM116, enthält die Robotron-Druckertreiber V24A1, V24A2, V24A3 | 
 +| [[z9001:literatur:treiber|TR_SAMML]] | Treiber-Paket aus mp 10/87, umfasst SIFE,SIFA,CENTR,LX86,TD40,BEEP | 
 +| [[z9001:software:zm|ZM30, ZMA8]] | angepasste Versionen des Zusatzmonitors, kooperativ zu anderen Treibern | 
 +| [[z9001:software:os:geraetetreiber#device-kommando|DEVICE]] | ähnlich ASGN, aber mit mehr Möglichkeiten | 
 +| [[z9001:software:sysinfo|SYSINFO]] | Analyse der Hardware | 
 +| CRC | CRC-Berechnung | 
 +| CRT40 | CRT-Treiber für schnelles Bildschirmlöschen | 
 +| INITKC | Diskettenformatieren im OS. Damit kann man eine CP/M-Bootdiskette nun selbst erstellen: \\ ''initkc, cpm-48k, pip a:=c:@cpmz9.com''
 +| [[z9001:software:disk_os|DOSX]] | Treiber für Diskette statt Kassette. Im Basic gibt es dazu den Befehl DIR. | 
 +| [[z9001:software:usb|USBX]] | Treiber für USB statt Kassette. Im Basic gibt es dazu die Befehle DIR und CD. | 
 +| [[z9001:software:ramtest|RAMTEST]] | RAM-Test Y21SO (FA 12/86), an Z9001 adaptiert (vp) | 
 +|  |  | 
 +|  |  | 
 +|  |  | 
 +|  |  | 
 +|  |  | 
 +|  |  | 
 + 
 + 
 +===== Software ins Modul integrieren =====
  
 Ende 2011 habe ich diese alternative quelloffene Software für das Mega-Modul und das Mega-Flash-Modul geschrieben. Diese besteht i.W. aus einer OS-Erweiterung; damit Programme in allen Bänken gesucht und von dort gestartet werden können. Es ist **keine** Änderung des OS nötig. Eigene Programme können leicht ins Modul aufgenommen werden: Ende 2011 habe ich diese alternative quelloffene Software für das Mega-Modul und das Mega-Flash-Modul geschrieben. Diese besteht i.W. aus einer OS-Erweiterung; damit Programme in allen Bänken gesucht und von dort gestartet werden können. Es ist **keine** Änderung des OS nötig. Eigene Programme können leicht ins Modul aufgenommen werden:
Zeile 274: Zeile 305:
 {{:z9001:module_sonstige:bitex.jpg|}}\\ Beispiel für ein Programm mit OS-Rahmen. Hier stehen 3 Kommandos im OS-Rahmen. Die xx00-Adresse im EPROM muss mit der korrekten Lage im Z9001 korrespondieren (hier wäre das C000h). {{:z9001:module_sonstige:bitex.jpg|}}\\ Beispiel für ein Programm mit OS-Rahmen. Hier stehen 3 Kommandos im OS-Rahmen. Die xx00-Adresse im EPROM muss mit der korrekten Lage im Z9001 korrespondieren (hier wäre das C000h).
  
-Es wurde außerdem ein neuer Kommandorahmen eingeführt: der **FA-Rahmen**((Falls es jemand interessiert: Den Namen FA-Rahmen habe ich nach den Kennungsbyte FAh gewählt. Dieses Kennungsbyte ist FLASh ohne die nicht Hexa-Ziffern, also FAh)). Dieser Kommandorahmen wird vom erweiterten CCP der Mega-Flash-Software ebenso wie ein normaler OS-Kommandorahmen durchsucht, um ein eingegebenes Kommando zu finden. Der FA-Rahmen ist für Programme nutzbar, die im Speicherbereich von 100h-BFFFh arbeiten. +Für die Mega-Flash-Software wurde außerdem ein neuer Kommandorahmen eingeführt: der **FA-Rahmen**((Falls es jemand interessiert: Den Namen FA-Rahmen habe ich nach den Kennungsbyte FAh gewählt. Dieses Kennungsbyte ist FLASh ohne die nicht Hexa-Ziffern, also FAh)). Dieser Kommandorahmen wird vom erweiterten CCP der Mega-Flash-Software ebenso wie ein normaler OS-Kommandorahmen durchsucht, um ein eingegebenes Kommando zu finden. Der FA-Rahmen ist für Programme nutzbar, die im Speicherbereich von 100h-BFFFh arbeiten. 
  
 Der FA-Rahmen ist 32 Byte lang und liegt ebenfalls auf einer xx00h-Adresse. Der FA-Rahmen ist 32 Byte lang und liegt ebenfalls auf einer xx00h-Adresse.
Zeile 311: Zeile 342:
 Basic-Programme werden nach 0401h kopiert. Dann wird die BASIC-Bank zugeschaltet, Basic-Programme werden nach 0401h kopiert. Dann wird die BASIC-Bank zugeschaltet,
 Basic initialisiert und das Programm gestartet. Basic initialisiert und das Programm gestartet.
-Für BASIC-Programme ist programm.bin einfach die *.KCC-Datei.+Für BASIC-Programme ist programm.bin einfach die *.KCC-Datei bzw. *.SSS-Datei, aber ohne die ersten 11 Byte (Typ+Name).
  
 Zur einfachen Konvertierung von *.tap-Dateien ins binäre Format kann das Zur einfachen Konvertierung von *.tap-Dateien ins binäre Format kann das
Zeile 319: Zeile 350:
 einfach in der nächsten Bank fortgesetzt. einfach in der nächsten Bank fortgesetzt.
  
-Außerdem können alle Programme mit **bitbuster_extreme** um etwa 30% komprimiert sein, um+Außerdem können alle Programme mit **ZX7**,  um etwa 30% komprimiert sein, um
 Platz im Mega-Modul zu sparen. Bei komprimierten Programmen muss im Dateityp Platz im Mega-Modul zu sparen. Bei komprimierten Programmen muss im Dateityp
 das Bit 7 gesetzt sein (also 80h zum originalen Dateityp addiert).  das Bit 7 gesetzt sein (also 80h zum originalen Dateityp addiert). 
  
 +2021 erfolgte die Umstellung auf den Packer **ZX7**. Damit ist eine noch bessere Komprimierung 
 +gegeben. Vorher wurde **bitbuster_extreme** genutzt.
  
 **Das Mega-Modul kann somit einfach um eigene Software erweitert werden: Einfach  **Das Mega-Modul kann somit einfach um eigene Software erweitert werden: Einfach 
Zeile 350: Zeile 383:
  
 und und
 + make mega für Mega-Modul (3 ROMs)
  make flash für Mega-Flash-Modul (5 ROMs)  make flash für Mega-Flash-Modul (5 ROMs)
- make ROM f. 64K-SRAM-Modul, KOMBI-Modul bzw. Buebchen-Rx3 (1 ROM+ make kombi f. 64K-SRAM-Modul, KOMBI-Modul bzw. Buebchen-Rx3 (1 ROM)
- make roms für Megamodul (3 ROMs)+
  
 erstellt. erstellt.
Zeile 359: Zeile 392:
 Interessierte Bastler (und Linuxer) finden hier den Packer zum Verkleinern der Dateigröße: Interessierte Bastler (und Linuxer) finden hier den Packer zum Verkleinern der Dateigröße:
  
-  * http://www.west.co.tt/matt/speccy/apology/ bitbuster_extreme-0.1.tar.gz (unten auf der Seite). Der genutzte Packer. +  * https://spectrumcomputing.co.uk/entry/27996/ZX-Spectrum/ZX7, dort unter ADDITIONAL FILE DOWNLOADS: 
-  * http://www.msx.org/downloads/related/development/bitbuster-12 bitbuster1_2.zip. Das ist das originale Paketbitbuster_extreme spart sich nur den 4 Byte großen Header; ist ansonsten unverändert.+  * https://spectrumcomputing.co.uk/zxdb/sinclair/entries/0027996/ZX7_SourceCode.zip 
 +  * https://spectrumcomputing.co.uk/zxdb/sinclair/entries/0027996/ZX7_(WindowsExecutable).zip
  
 +der ältere bitbuster_extreme ist hier zu finden:
 +  * http://www.west.co.tt/matt/speccy/apology/ bitbuster_extreme-0.1.tar.gz (unten auf der Seite). Der genutzte Packer.
 +  * http://www.msx.org/downloads/related/development/bitbuster-12 bitbuster1_2.zip. Das ist das originale Bitbuster-Paket. bitbuster_extreme spart sich nur den 4 Byte großen Header; ist ansonsten unverändert. Dieser originale Packer kann nicht für die Mega-Software verwendet werden, es geht nur die Extreme-Variante!
  
 ===== Historie ===== ===== Historie =====
Zeile 446: Zeile 483:
 **15.03.2017**: MiniCPM wieder lauffähig (Dank an M.Bagola fürs Fehlerfinden). **15.03.2017**: MiniCPM wieder lauffähig (Dank an M.Bagola fürs Fehlerfinden).
 Zu ROM-Disk die KCNET-Software TFTP1287.COM und CPMN1587.COM hinzugefügt. Zu ROM-Disk die KCNET-Software TFTP1287.COM und CPMN1587.COM hinzugefügt.
 +
 +**01.08.2017**: neue Version vor allem fürs Kombi-Modul (seit April)
 +Nagelneues MINICPM speziell fürs KOMBI-Modul, mit RAM-Disk-Einbindung.
 +Banknummer wird jetzt heruntergezählt (BWS r.o.). Wenn der ZM als Geräte-
 +Treiber oder Debugginghilfe genutzt wird (rst 38), geht das nur mit der 
 +RAM-Version.
 +
 +**23.11.2017**: Rolf W. hat mich auf eine Idee gebracht. Wenn in (fcb+24) ein
 +'N' steht, wird in den Treibern DOSX, USBX bei OPENW kein Block geschrieben. Das
 +wird z.B. in BASIC genutzt. Damit sind die erzeugten SSS-Dateien kompatibel zu
 +CP/M usw.
 +
 +**02.10.2018**: Neues DOSX fürs Kombimodul. Statt der RAF2008 wird die Modul-RAM-
 +Disk unterstützt, genau wie im MiniCPM.
 +BASIC speichert auf Disk/USB nun analog zur CP/M-Version als ".ZBS" ab.
 +Neuer Parameter in includes für UZ-Version. Wider besseren Wissens wird dann 
 +die ROM-Version des ZM sowie Ulrichs Spezial-Version des ZM30 etc. eingebunden.
 +
 +**05.03.2019**: Diverse kleine Änderungen in USBX, DOSX, System für bessere
 +Zusammenarbeit. Die CRTxx-Treiber und Speicher-Treiber DOSX/USBX werden nun nach
 +<STOP> automatisch reinitialisiert.
 +Nach dem Laden eines FA-Programms wird der FCB passend gefüllt. Damit kann man
 +mit SAVE (ohne Parameter) einfach Programme aus dem ROM herauskopieren und auf
 +ein externes Speichermedium übertragen.
 +Zur Arbeit mit Disketten steht zur Erstellung einer Systemdiskette INITKC und 
 +CPM-48K bereit. Damit kann eine Diskette formatiert und mit dem OS und weiteren
 +Z9001-spezifischen Treibern beschrieben werden. Danach wird mit BOOT das CP/M
 +gestartet. USBX hat neue Kommandos DDIR und CD (s. Projekt USB-OS).\\
 +Die Extra-Version der Kombi-Variante für U.Zander und sein geändertes
 +Betriebssystem wird nur empfohlen, wenn man auch das geänderte
 +Betriebssystem nutzt. Ansonsten gibt es die bekannten Probleme mit den
 +originalen Versionen des ZM. Das automatische Reinitialisieren obiger Treiber
 +ist aufgrund der originalen Versionen des ZM nicht möglich. MINICPM ist auf
 +Wunsch weiterhin drin, aber nicht besonders sinnvoll.
 +
 +**13.03.2020** Mit Build 147 des Arnold-Assemblers musste die Verwendung von
 +Unterverzeichnissen geändert werden (Es wird jetzt relativ zu dem Verzeichnis
 +gesucht, in dem die Datei mit dem Include-Statement liegt, und nicht mehr
 +relativ zum aktuellen Verzeichnis). Das betrifft alle asm-Sourcen und Perl-
 +Tools, die was mit include zu tun haben.
 +
 +**16.03.2020** Basic mit DIR, CD unter DOSX,USBX; sonst Fehlermeldung. DOSX
 +merkt sich das aktuelle Laufwerk
 +
 +**08.04.2020** CHKROM nun auch f. KOMBI, neu DEVICE, neue Version ZM30+ZMA8
 +Korrektur BASIC
 +
 +**07.07.2020** Korrektur GRAFx (Version passend zu BASIC kompilieren), neu WORD
 +
 +**05.02.2021** Fehlerbehebung im makeprozess. Neu sind PAINTBOX, BLOCKS.
 +
 +**07.05.2021** USBX/DOSX CALL5 Nr 34+35 (CSAVE/CLOAD) analog zu USB-OS umgesetzt. Damit 
 +läuft z.B. CHIP8 von USB. DOSX Korrektur Laden fcb+24=N. Hier wurde der letzte Block 
 +nicht mehr gelesen.
 +
 +**30.09.2021** Umstellung von bitbuster_extreme auf ZX7. Dadurch noch bessere Pack-Ergebnisse.
 +
  • z9001/software/mega.1551459144.txt.gz
  • Zuletzt geändert: 2019/03/01 16:52
  • von volkerp