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:usb [2021/01/27 09:37] – [JKCEMU] volkerpz9001:software:usb [2025/03/09 09:35] (aktuell) – [OS-Erweiterung USB+SD] volkerp
Zeile 1: Zeile 1:
-====== VDIP-OS USB ======+====== OS-Erweiterung USB+SD ======
  
 **USB/VDIP im OS-Modus**\\ **USB/VDIP im OS-Modus**\\
 Volker Pohlers, 2016 Volker Pohlers, 2016
  
-Benötigt wird ein **[[z9001:module_sonstige:gide_usb|]]** mit einem VDIP1-Modul oder einem V2DIP-Modul.+**2024: Version für CH376 [[z9001:module_sonstige:usbmodul|CH376]]** 
 + 
 +**2025: Version für SD-Modul [[z9001:erweiterungen:sdcard2|]]** 
 + 
 +{{youtube>lWoKiIBZa0A}} 
 + 
 + 
 +Verwenden eines USB-Sticks bzw. SD-Karte zum Speichern/Laden anstelle eines Kassettenrekorders.\\ 
 +Das System lässt sich auch im Emulator [[#jkcemu]] testen! 
 + 
 +Für das [[#usb-os]] am originalen Z9001 bzw. KC87 benötigt man: 
 +  - kein,eins oder zwei RAM-Module (16K .. 48K RAM) 
 +  - ein ROM-Modul auf Adresse C000 eingestellt, Eprom-Inhalt modul.rom (8k) 
 +  - ein USB-Modul (PIO + VDIP), z.B. eine teilbestückte [[z9001:module_sonstige:gide_usb|GUR-Platine]] 
 +  - mit einen VDIP-Modul (VDIP1 von vinculum oder Nachbau V2DIP). 
 Beschreibung des VDIP-Moduls s. [[z9001:module_sonstige:gide_usb#vdip1|VDIP1]] und [[z9001:module_sonstige:gide_usb#v2dip|]]. Beschreibung des VDIP-Moduls s. [[z9001:module_sonstige:gide_usb#vdip1|VDIP1]] und [[z9001:module_sonstige:gide_usb#v2dip|]].
  
-Es funktionieren auch kompatible Module wie **GU-K1520 von Kingstener** oder das **[[z1013:module:usb|Z1013-USB-Modul]] von Lötspitze**. Prozipiell wird nur eine PIO und ein VDIP-Modul benötigt. Die [[z9001:module_sonstige:gide_usb#hardware1|Schaltung]] ist für alle Module gleich!+Beschreibung **GUR-Platine** siehe [[z9001:module_sonstige:gide_usb|]].
  
-{{:z9001:module_sonstige:usb-modul-0.jpg?300|}} {{:z9001:module_sonstige:vdip1-1.jpg?300|}}\\ Modul, und Teilbestückung nur USB+Es funktionieren auch kompatible Module wie **GU-K1520 von Kingstener** [[z9001:module_sonstige:guk_v8|]] oder das **[[z1013:module:usb|Z1013-USB-Modul]] von Lötspitze**Prinzipiell wird nur eine PIO und ein VDIP-Modul benötigt. Die [[z9001:module_sonstige:gide_usb#hardware1|Schaltung]] ist für alle Module gleich!
  
 +{{:z9001:module_sonstige:usb-modul-0.jpg?300|}} {{:z9001:module_sonstige:gurv3_usb.jpg?300|}}\\ GUR-V3-Modul, und Teilbestückung nur USB
  
 An das [[z9001:module_sonstige:gide_usb#vdip1|VDIP1-Modul]] wird ein USB-Stick angesteckt. Unterstützt werden USB 1.1 und USB 2.0-Sticks. Ein 8GB-Stick wurde erfolgreich getestet. Der Stick muss mit **FAT12, FAT16 oder FAT32** formatiert sein. An das [[z9001:module_sonstige:gide_usb#vdip1|VDIP1-Modul]] wird ein USB-Stick angesteckt. Unterstützt werden USB 1.1 und USB 2.0-Sticks. Ein 8GB-Stick wurde erfolgreich getestet. Der Stick muss mit **FAT12, FAT16 oder FAT32** formatiert sein.
 Ein [[z9001:module_sonstige:gide_usb#v2dip|V2DIP-Modul]] unterstützt normalerweise nur FAT 16 und FAT32. Ein [[z9001:module_sonstige:gide_usb#v2dip|V2DIP-Modul]] unterstützt normalerweise nur FAT 16 und FAT32.
  
-**Jumper**:+**Jumper** GUR-Modul. Bei Teilbestückung USB gibt es nur Jumper JP5
  
   * USB Jumper JP5 (unter dem DOM-Modul) v.u.n.o. A2..A7. Es ist nur A5 gejumpert (Port DCh)   * USB Jumper JP5 (unter dem DOM-Modul) v.u.n.o. A2..A7. Es ist nur A5 gejumpert (Port DCh)
   * GIDE Jumper JP2 (Mitte) v.l.n.r. A4..A7, hi-Teil-PortAdr. Es ist A5 und A7 gejumpert (Port 50h)   * GIDE Jumper JP2 (Mitte) v.l.n.r. A4..A7, hi-Teil-PortAdr. Es ist A5 und A7 gejumpert (Port 50h)
   * DOM Jumper J2 (quer): gesteckt für Stromversorgung des DOM-Moduls   * DOM Jumper J2 (quer): gesteckt für Stromversorgung des DOM-Moduls
- 
  
 | Adressbereich | - | |  | Adressbereich | - | | 
 | I/O-Adressen | GIDE | 54h-5Fh (empfohlener Port für Z9001) | | I/O-Adressen | GIDE | 54h-5Fh (empfohlener Port für Z9001) |
 | | USB | DCh..DFh (empfohlener Port für Z9001) | | | USB | DCh..DFh (empfohlener Port für Z9001) |
 +
 +Hinweis Für das Modul [[z9001:module_sonstige:guk_v8|]] **GU-K1520 von Kingstener** muss ein spezieller GAL genutzt werden, der die Port-Adresse DCh für USB unterstützt.
  
  
Zeile 44: Zeile 61:
  
   * Programm, Quellcodes ursprüngliche Version {{:z9001:software:z9001_vdip_os.zip|}}   * Programm, Quellcodes ursprüngliche Version {{:z9001:software:z9001_vdip_os.zip|}}
-  * eigenständige aktuelle Version f. Modul mit ROM {{ :z9001:software:usb-os.zip |}} Stand 12.8.2020+  * eigenständige aktuelle Version f. Modul mit ROM {{ :z9001:software:usb-os.zip |}} Stand 25.02.2025, incl. Quellcodes etc. 
 +  * Binär-Version {{ :z9001:software:usb-os-bin.zip |}} Stand 25.02.2025 
 +  * Handbuch {{ :z9001:software:usb-os.pdf |}} 
 +  * Handbuch SD-OS {{ :z9001:software:sd-os.pdf |}}
  
-Achtung! Das Programm wird im Rahmen der Mega-Flash-Software gepflegt. Aktuelle Quellen sind ggf. dort zu finden!+**Hinweis**: Das Programm wird als USBX auch im Rahmen der Mega-Flash-Software gepflegt.
  
 Autoren: Von mir stammt die Einbindung ins Betriebssystem. Der eigentliche Zugriff auf das VDIP-Modul stammt von den UTOOLS von Mario Leubner. Autoren: Von mir stammt die Einbindung ins Betriebssystem. Der eigentliche Zugriff auf das VDIP-Modul stammt von den UTOOLS von Mario Leubner.
  
- +**2019**: Ich habe eine eigenständige Version usb-os.zip für die Arbeit ohne Mega-Modul/Kombi-Modul zusammengestellt. Die enthaltenen Programme für den USB-Stick und die Anleitung gelten auch für die Mega-Flash-Version.
-**2019**: Ich habe eine Version usb-os.zip für die Arbeit ohne Mega-Modul/Kombi-Modul zusammengestellt. Die enthaltenen Programme für den USB-Stick und die Anleitung gelten auch für die Mega-Flash-Version.+
 Im ROM sind auch die vom Mega-Flash bekannten Kommandos LOAD,SAVE,RUN,MEM,DUMP etc. enthalten. Im ROM sind auch die vom Mega-Flash bekannten Kommandos LOAD,SAVE,RUN,MEM,DUMP etc. enthalten.
 +
 +**2024**: Der Quellcode wurde umstrukturiert und aufgeräumt.
 +
 +**24.1.25**: Es können nun Programmversionen für [[z9001:erweiterungen:sdcard2|SD-Modul]] + [[z9001:module_sonstige:usbmodul|CH376]] erzeugt werden.
  
 Abweichungen:  Abweichungen: 
Zeile 59: Zeile 82:
 | MENU    | DIR         | | MENU    | DIR         |
  
-Anleitung s. usb-os.txt im Download-Paket+Anleitung s. Handbuch {{ :z9001:software:usb-os.pdf |Handbuch }} und usb-os.txt im Download-Paket
  
 ===== Laden ===== ===== Laden =====
 +
 +**USB-OS**
 +
 +Das USB-System startet automatisch vom ROM-Modul.
 +
 +**Megaflash-Software**
  
 Die derzeitige Version **USB** belegt den Speicherbereich von B800h-BCFFh. Das ist ein Kompromiss, um trotzdem mit BASIC, Assembler u.v.a. Programmen testen zu können, ohne ständig auf EOR oder anderes achten zu müssen. Der Speicher für Treiber oder andere Systemtools bleibt frei, der Speicher am RAM-Ende (unterhalb C000h) steht auch zur Verfügung. Die derzeitige Version **USB** belegt den Speicherbereich von B800h-BCFFh. Das ist ein Kompromiss, um trotzdem mit BASIC, Assembler u.v.a. Programmen testen zu können, ohne ständig auf EOR oder anderes achten zu müssen. Der Speicher für Treiber oder andere Systemtools bleibt frei, der Speicher am RAM-Ende (unterhalb C000h) steht auch zur Verfügung.
Zeile 84: Zeile 113:
  
  
-Im Z9001-OS kann mit "DOS" bzw. "CAOS" zwischen Diskette und Kassette umgeschaltet werden.+Im Z9001-OS kann mit "DOS" bzw. "CAOS" zwischen USB und Kassette umgeschaltet werden.
  
  
-**USB** allgemeine Funktionen, Verzeichiswechsel+**USB** allgemeine Funktionen, Verzeichniswechsel
  
 ^ Kommando ^ Bemerkung ^ ^ Kommando ^ Bemerkung ^
Zeile 108: Zeile 137:
 ===== USBX ===== ===== USBX =====
  
-**Folgende Hinweise gelten zur Arbeit mit der im Mega-Flash integrierten Version USBX. Eine Nutzung des reinen Treibers ohne zusätzliche System-Software ist nur eingeschränkt möglich (keine Laden und Speichern im OS, kein Laden und Speichern im BASIC)!**+USBX ist eine Variante der USB-Software, die in der [[z9001:software:mega|]] enthalten istSie wird als Treiber geladen und bleibt dann bis zum nächsten Reset aktiv. Bei Strg-C (Warmstart) wird der Treiber automatisch reinitialisiert. 
 + 
 +**Eine Nutzung des reinen Treibers ohne zusätzliche System-Software ist nur eingeschränkt möglich (keine Laden und Speichern im OS, kein Laden und Speichern im BASIC)! Deshalb ist es nur sinnvoll, USBX via Mega-Flash u.ä. anzuwenden**
  
 Mit Mit
Zeile 148: Zeile 179:
 ===== USB-OS ===== ===== USB-OS =====
  
-USB-OS ist eine kleine autarke Software für eine USB-Modul mit einem 8K-ROM auf C000h.+| Dateiname | (vdipos.rom) | 
 +| Laden in | OS | 
 +| Programmstandort | C000-C3FF | 
 +| OS-Kommando | # und s.u. | 
 + 
 +USB-OS ist eine kleine autarke Software für eine USB-Modul mit einem 4K(8K)-ROM auf C000h. 
 +Mit dieser Software ist ein sofortiger Betrieb des Z9001 mit USB möglich. Direkt nach dem Einschalten wird mit USB geladen und gespeichert, es muss kein Treiber aktiviert werden. 
 In der im Download beliegenden Beschreibung ist die Installation und Benutzung ausführlicher beschrieben. In der im Download beliegenden Beschreibung ist die Installation und Benutzung ausführlicher beschrieben.
  
Zeile 204: Zeile 242:
 (vgl. Beschreibung http://hc-ddr.hucki.net/wiki/doku.php/z9001/software/mega) (vgl. Beschreibung http://hc-ddr.hucki.net/wiki/doku.php/z9001/software/mega)
  
-- Parameter hexadezimal, eine Vornull is nicht nötig!+- Parameter hexadezimal, eine Vornull ist nicht nötig!
 - Bei vielen Kommandos kann man mit <PAUSE> die Ausgabe anhalten/fortsetzen - Bei vielen Kommandos kann man mit <PAUSE> die Ausgabe anhalten/fortsetzen
   <STOP> beendet das Kommando, jede andere Taste setzt fort   <STOP> beendet das Kommando, jede andere Taste setzt fort
Zeile 210: Zeile 248:
 <code> <code>
 MENU Auflisten aller Kommandos im Speicher MENU Auflisten aller Kommandos im Speicher
- Angezeit werden Name, Adresse des Kommandonamens, Adresse des Programms+ Angezeigt werden Name, Adresse des Kommandonamens, Adresse des Programms
  Die Reihenfolge entspricht der Suchreihenfolge des OS  Die Reihenfolge entspricht der Suchreihenfolge des OS
  
Zeile 232: Zeile 270:
  
 Bei LOAD/SAVE kann ein weiterer Parameter "1" angehängt werden. Dann wird kein Bei LOAD/SAVE kann ein weiterer Parameter "1" angehängt werden. Dann wird kein
-OS-Kopfblock geschrieben bzw. geladen! Das wird z.B. intern in BASIC genutzt. +OS-Kopfblock geschrieben bzw. geladen! Das wird z.B. intern in BASIC genutzt.\\ 
-Tipp: Mit "LOAD 1000 1", filename:TEST.COM wird das Programm TEST.COM in den+Tipp1: Mit "LOAD 1000 1", filename:TEST.COM wird das Programm TEST.COM in den
 Speicher ab Adresse 1000 geladen. "DUMP 1000 107F" zeigt den Kopflock an, "DUMP Speicher ab Adresse 1000 geladen. "DUMP 1000 107F" zeigt den Kopflock an, "DUMP
 1080 3FFF" das eigentlich Programm.\\ 1080 3FFF" das eigentlich Programm.\\
Zeile 244: Zeile 282:
 eine Verzeichnisebene zurück und CD "/" wechselt direkt ins Root-Verzeichnis. eine Verzeichnisebene zurück und CD "/" wechselt direkt ins Root-Verzeichnis.
  
-**09.12.2019**: Neues Kommando HELPDIR-Anzeige in BASIC nun ohne Erweiterunginterne Anpassungen+**5.2.2025**: Das externe Programm DIRX [maske] analysiert die Dateienauf die die Maske passt und 
 +zeigt bei Basic-Programmen Typ, Schutz, und Länge (dez.) an, bei anderen Dateien 
 +die FCB-Felder Anfangsadresse, Endadresse, Startadresse (hex.) 
 + 
 +===== SD-OS ===== 
 + 
 +| Dateiname | (sdosc0.rom) | 
 +| Laden in | OS | 
 +| Programmstandort | C000-C3FF | 
 +| OS-Kommando | #  u.a.m. | 
 + 
 +SD-OS ist zu USB-OS kompatible Software für ein [[z9001:erweiterungen:sdcard2|SD-Modul]] und einem 4K(8K)-ROM auf C000h. 
 +Mit dieser Software ist ein sofortiger Betrieb des Z9001 mit SD-Karte möglich. Direkt nach dem Einschalten wird mit SD-OS geladen und gestartet, es muss kein Treiber aktiviert werden. 
 + 
 +In der im Download beliegenden Beschreibung ist die Installation und Benutzung ausführlicher beschrieben. 
 + 
 +Alternativ: 
 + 
 +| Dateiname | sdos.com, sdos38.com | 
 +| Laden in | OS | 
 +| Programmstandort | B200-BFFF, 3800-3FFF | 
 +| OS-Kommando | # u.a.m. | 
 + 
 +Für den Einsatz ohne extra ROM-Modul. Die Software wird vom SD-Modul geladen; dazu ist ein Kabel mit dem Kassetteneingang zu verbinden. Der Start der Software erfolgt "X"siehe Beschreibung sd-os.pdf.
  
 ===== Programme ===== ===== Programme =====
Zeile 259: Zeile 320:
 von Diskette (incl. Feldern und ASCII). von Diskette (incl. Feldern und ASCII).
  
-Im aktuellen [[z9001:module_sonstige:megaflash|]] ist dieses BASIC bereits enthalten.  +Zusätzlich gibt es die neuen Basic-Befehle DIR und CD.
- +
-{{:z9001:software:usb-basic.gif|}}\\ Es wird ein Kopfblock 0 geschrieben, der nur den korrekten Dateinamen enthält (Byte 0..11). Damit sind BASIC-Programme speicherkompatibel zu OS-Programmen. +
- +
-:!: **23.11.2017: Die aktuelle Software schreibt den Kopfblock 0 nicht**, wenn ein spezielles Flag (fcb+24='N') gesetzt ist. Das +
-wird nun in BASIC genutzt. Damit sind die erzeugten SSS-Dateien kompatibel zu CP/M (ZBS). Sie werden im USB-OS auch mit dem Dateityp .ZBS gespeichert.+
  
 **ZMxx** funktioniert (gepatchte Version). mit AP=T und Paadr_eadr_sadr wird gespeichert (s. [[z9001:software:zm#kassettenarbeit|]]. Die originalen Versionen funktionieren nicht mit Diskette/USB. Die Punch/Reader-Treiber für Kassette springen leider direkt in den Monitor und nutzen nicht CALL 5. **ZMxx** funktioniert (gepatchte Version). mit AP=T und Paadr_eadr_sadr wird gespeichert (s. [[z9001:software:zm#kassettenarbeit|]]. Die originalen Versionen funktionieren nicht mit Diskette/USB. Die Punch/Reader-Treiber für Kassette springen leider direkt in den Monitor und nutzen nicht CALL 5.
  
-**KCPASCAL** funktioniert nur mit USB-OS. Ursache dafür ist einfach, dass KCPASCAL den gesamten Speicher von 300h bis BFFFh belegt.  +**KCPASCAL** funktioniert nur mit USB-OS, nicht mit USBX. Ursache dafür ist einfach, dass KCPASCAL den gesamten Speicher von 300h bis BFFFh belegt.  
-Speichern/Laden funktioniert, Speichern von COM-Dateien leider noch nicht.+Speichern/Laden funktioniert, Speichern von COM-Dateien leider noch nicht. Auch nicht mit Kassette. Das ist offenbar ein Bug in KCPASCAL.
  
 **PRETTYC** funktioniert nicht komplett mit Diskette/USB. Das Speichern funktioniert, doch beim Laden wird leider nicht OPENR genutzt. PrettyC verfügt über einen Modifikations-Selbstschutz, ein Patchen ist nicht ohne weiteres möglich. **PRETTYC** funktioniert nicht komplett mit Diskette/USB. Das Speichern funktioniert, doch beim Laden wird leider nicht OPENR genutzt. PrettyC verfügt über einen Modifikations-Selbstschutz, ein Patchen ist nicht ohne weiteres möglich.
  
 ===== JKCEMU ===== ===== JKCEMU =====
 +
 +**Ausprobieren/Verwenden von USB-OS im [[http://www.jens-mueller.org/jkcemu|JKCEMU - Kleincomputer-Emulator]]** 
  
 {{:z9001:software:jkcemu-usb-os.jpg?600|}} {{:z9001:software:jkcemu-usb-os.jpg?600|}}
Zeile 291: Zeile 349:
 Nun kann man wie gewohnt mit der KC87-Emulation arbeiten. Speichern/Laden erfolgt im Verzeichnis "usb-stick", ein Umweg über Audio-Aufzeichnung ist nicht nötig. Nun kann man wie gewohnt mit der KC87-Emulation arbeiten. Speichern/Laden erfolgt im Verzeichnis "usb-stick", ein Umweg über Audio-Aufzeichnung ist nicht nötig.
  
-Die Anleitung liegt als Textdatei vor (src\00inhalt.txt und src\00usb-os.txt), Beschreibungen von robtron etc. liegen im Ordner usb-stick\doc. Dort findet man auch die Datei usb-stick\doc\megamodul.pdf, in der diverse zusätzliche Programme beschrieben sind.+Die Anleitung zu USB-OS, Beschreibungen von robotron etc. liegen im Ordner usb-stick\doc.
  
 ===== Internes ===== ===== Internes =====
Zeile 305: Zeile 363:
 ===== Historie ===== ===== Historie =====
  
-**27.02.2019** erste Version+**27.02.2019** erste eigenständige Modul-Version
  
 **05.03.2019** Neue Kommandos DIR und CD zur einfachen Arbeit mit USB **05.03.2019** Neue Kommandos DIR und CD zur einfachen Arbeit mit USB
Zeile 333: Zeile 391:
 Testweise SYSINFO0 im Modul-ROM enthalten. Testweise SYSINFO0 im Modul-ROM enthalten.
 Anleitungen, Handbücher etc. im Paket! Anleitungen, Handbücher etc. im Paket!
 +
 +**01.07.2021**
 +ausführliche Modul-Dokumentation als PDF, Programmübersicht "usb-stick programme.txt"
 +FILL ohne Parameter löscht 300-BFFF (ala CLEAR MEMORY)
 +CTRL-C bei DIR in BASIC bricht ab (vorher Rücksprung ins OS)
 +CRT-Treiber im OS integeriert (schnelles CLS, ASCII-Spezialzeichen mit @)
 +CALL 5 CLOAD neu A=3 wie A=1, aber ohne initiales GVAL (Anwendung s. HLPKDO)
 +R-NLREG, R-PERDAT korrigiert. WORD, SYSINFO, HLPEDIT, CRT40 aktualisiert
 +neu CHIP-8, Programme Kassetten INFORMATIK 
 +zusätzliche und korrigierte Dokus.
 +
 +**05.10.2021**
 +SYSINFO0 Umstellung von bitbuster_extreme auf ZX7. 
 +
 +**22.10.2024**
 +Umstrukturierung Code
 +
 +**10.2024** 
 +R.Hecht Adaption an CH376-USB-Modul
 +
 +**23.01.2025**
 +Version für Kingsteners SD-Modul
 +
 +**04.02.2025**
 +CALL 5 DIR erweitert um Ablage im Speicher, neues Programm DIRX.COM
  
  • z9001/software/usb.1611740278.txt.gz
  • Zuletzt geändert: 2021/01/27 09:37
  • von volkerp