Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
z9001:cpm:autostart [2016/12/06 09:01] – volkerp | z9001:cpm:autostart [2024/10/08 13:02] (aktuell) – volkerp | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Autostart ====== | ====== Autostart ====== | ||
- | CP/M kann beim Starten automatisch ein Kommando ausführen. | + | CP/M kann beim Starten automatisch ein Kommando ausführen((siehe dazu https:// |
Startkommandos können z.B. sein: | Startkommandos können z.B. sein: | ||
Zeile 8: | Zeile 9: | ||
SUBMIT AUTORUN.SUB | SUBMIT AUTORUN.SUB | ||
- | Dazu muss das Kommando in den Text-Buffer des CCP geschrieben werden. Beim CP/A übernimmt dies das BIOS. Im Initialisierungsbereich von @CPMZ9.COM ist nach der RAM-Prüfung Platz für eine Kommandozeile. Die markierte Adresse 00 ist die Länge des Autostart-Kommandos, | + | Das BIOS muss das Autostart-Kommando in den Befehlszeilenpuffer des CCP kopieren und das CCP dann auf Adresse CCP+0 starten. CCP-Quellcode: |
+ | < | ||
+ | CCP: | ||
+ | JP CCPSTART ; | ||
+ | JP CCPCLEAR ; | ||
+ | MAXLEN: | ||
+ | COMLEN: | ||
+ | COMBUF: Db 128-($-COMBUF) dup (0) | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | Dazu muss das Kommando in den Text-Buffer des CCP geschrieben werden. Beim CP/A (Rossendorf) | ||
+ | |||
+ | :!: Das BIOS der robotron-Version des @CPMZ9 unterstützt dieses Verfahren leider nicht! Hier ist kein Autostart möglich. | ||
{{: | {{: | ||
Zeile 14: | Zeile 28: | ||
Die Adressen müssen nicht stimmen! Je nach Version der Datei @CPMZ9.COM sind das andere Adressen. Am einfachsten sucht man z.B. mit POWER nach " | Die Adressen müssen nicht stimmen! Je nach Version der Datei @CPMZ9.COM sind das andere Adressen. Am einfachsten sucht man z.B. mit POWER nach " | ||
- | Im Feld nach der 7F ist die Länge des auszuführenden Befehls einzutragen, danach kommt der Befehl. | + | Im Feld nach der 7F ist der auszuführenden Befehls einzutragen. |
{{: | {{: | ||
+ | |||
+ | :!: Im Bild ist das markierte Byte 12 falsch! Dieses ist hier nicht nötig, es geht gleich mit dem Kommando los. Das Rossendorfer CP/M kopiert im BIOS die kompletten 128 Byte. Als Längenbyte wird das vorausgehende 7Fh mitkopiert (nach CCP+7, d.h. COMLEN). | ||
+ | |||
< | < | ||
Zeile 27: | Zeile 44: | ||
;7F steht auf 8466 | ;7F steht auf 8466 | ||
DS 8467 | DS 8467 | ||
- | .h 12 | ||
.a S U B M I T | .a S U B M I T | ||
.h 20 | .h 20 |