Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| cpm:cpm22 [2015/03/02 16:03] – [CP/M 2.2] volkerp | cpm:cpm22 [2026/02/20 10:00] (aktuell) – [SUBMIT] volkerp | ||
|---|---|---|---|
| Zeile 5: | Zeile 5: | ||
| CP/M ist eine Reihe von Betriebssystemen, | CP/M ist eine Reihe von Betriebssystemen, | ||
| + | |||
| + | ===== Allgemeines ===== | ||
| + | |||
| ? System-Start | ? System-Start | ||
| Zeile 11: | Zeile 14: | ||
| : Bereitschaftsmeldung ( A> ) Das A bezeichnet das angemeldete Laufwerk und das «größer als» die eigentliche Bereitschaft zur Annahme von Eingaben über die Tastatur. | : Bereitschaftsmeldung ( A> ) Das A bezeichnet das angemeldete Laufwerk und das «größer als» die eigentliche Bereitschaft zur Annahme von Eingaben über die Tastatur. | ||
| ? Eingaben | ? Eingaben | ||
| - | : Zulässige Eingaben sind: Kommandos und Programmaufrufe. Alle Eingaben müssen regelmäßig mit einem Wagenrücklauf (er o. carriage return) abgeschlossen werden. | + | : Zulässige Eingaben sind: Kommandos und Programmaufrufe. Alle Eingaben müssen regelmäßig mit einem Wagenrücklauf (cr o. carriage return) abgeschlossen werden. |
| ? Laufwerk | ? Laufwerk | ||
| - | : Das angemeldete Laufwerk ist das vor dem Prompt bezeichnete. Auf dieses Laufwerk wird nach einem Programmaufruf zugegriffen. Das Laufwerk kann durch Eingabe eines neuen Laufwerknamens und einem Doppelpunkt gewechselt werden. (B: «er») Der Name eines Laufwerkes besteht aus einem Buchstaben (A:, B:, ....P:) und einem Doppelpunkt. | + | : Das angemeldete Laufwerk ist das vor dem Prompt bezeichnete. Auf dieses Laufwerk wird nach einem Programmaufruf zugegriffen. Das Laufwerk kann durch Eingabe eines neuen Laufwerknamens und einem Doppelpunkt gewechselt werden. (B: «cr») Der Name eines Laufwerkes besteht aus einem Buchstaben (A:, B:, ....P:) und einem Doppelpunkt. |
| ? Dateien | ? Dateien | ||
| : Die auf einer Diskette aufgezeichneten Informationen (Daten) werden nach ihrer logischen Zusammengehörigkeit zu selbständigen Einheiten, sogenannten Dateien (Daten-Kartei) zusammengefaßt. Diese Dateien (Files) können einzeln angesprochen oder benutzt werden. | : Die auf einer Diskette aufgezeichneten Informationen (Daten) werden nach ihrer logischen Zusammengehörigkeit zu selbständigen Einheiten, sogenannten Dateien (Daten-Kartei) zusammengefaßt. Diese Dateien (Files) können einzeln angesprochen oder benutzt werden. | ||
| Zeile 26: | Zeile 29: | ||
| ? Datendateien | ? Datendateien | ||
| : Textdateien: | : Textdateien: | ||
| + | ? Programmaufrufe | ||
| + | : Neben den sechs unten genannten residenten CP/M Kommandos werden alle weiteren Befehle mittels spezieller Programme ausgeführt. Ein Programm wird unter CP/M durch Eingabe des Dateinamens ohne Klassenbezeichnung mit abschließendem «return» gestartet.\\ «Programmname» «cr» \\ z.B.: WS «cr» (Starten von WordStar) | ||
| + | ? Diskettenwechsel Warmstart | ||
| + | : Nach jedem Diskettenwechsel ist ein Warmstart durch Eingabe von Control C durchzuführen. Durch das Wechseln einer Diskette wird automatisch ein Schreibschutz eingeschaltet, | ||
| + | |||
| + | ===== residente Kommandos ===== | ||
| + | |||
| ? DIR | ? DIR | ||
| : Inhaltsverzeichnis einer Diskette auf dem Bildschirm ausgeben, (directory). Alle auf der Diskette vorhandenen Dateien werden mit ihren vollständigen Namen (name.ext) aufgelistet.\\ DIR B:*.COM ergibt ein Verzeichnis aller Dateien mit der Klassenbezeichnung «COM» auf der Diskette in Laufwerk «B: | : Inhaltsverzeichnis einer Diskette auf dem Bildschirm ausgeben, (directory). Alle auf der Diskette vorhandenen Dateien werden mit ihren vollständigen Namen (name.ext) aufgelistet.\\ DIR B:*.COM ergibt ein Verzeichnis aller Dateien mit der Klassenbezeichnung «COM» auf der Diskette in Laufwerk «B: | ||
| Zeile 31: | Zeile 41: | ||
| : «Name.ext»\\ Löscht die angegebene Datei. (Erase = Löschen)\\ Die Verwendung von Mehrfachnamen ist zulässig.\\ ERA B:*.* löscht alle auf der Diskette im Laufwerk «B:». Sollen alle Dateien gelöscht werden, erscheint eine Sicherheitsabfrage, | : «Name.ext»\\ Löscht die angegebene Datei. (Erase = Löschen)\\ Die Verwendung von Mehrfachnamen ist zulässig.\\ ERA B:*.* löscht alle auf der Diskette im Laufwerk «B:». Sollen alle Dateien gelöscht werden, erscheint eine Sicherheitsabfrage, | ||
| ? REN | ? REN | ||
| - | : «neuer Name.ext» = «alter Name.ext»\\ Umbenennen einer Datei. Die als «alter Name.ext» angegebene Datei erhält den unter «neuer Name.ext» bezeichneten Namen; keine Mehrfachnamen.\\ REN B: NEUNAME.TXT = B: ALTNAME.TXT | + | : «neuer Name.ext»=«alter Name.ext»\\ Umbenennen einer Datei. Die als «alter Name.ext» angegebene Datei erhält den unter «neuer Name.ext» bezeichneten Namen; keine Mehrfachnamen.\\ REN B: |
| ? TYPE | ? TYPE | ||
| : «name.ext» Listet den Inhalt eine Textdatei auf den Bildschirm. Die Datei darf nur darstellbare ASCII-Zeichen enthalten. Wird versucht, eine Programmdatei «.COM» zu listen, erscheint nur ein großes Durcheinander auf dem Bildschirm. Die Folge könnte ein undurchschaubarer Zustand des Rechner-Systems sein, der nur durch einen Neu-Start (booten, Kaltstart) zu beheben ist. | : «name.ext» Listet den Inhalt eine Textdatei auf den Bildschirm. Die Datei darf nur darstellbare ASCII-Zeichen enthalten. Wird versucht, eine Programmdatei «.COM» zu listen, erscheint nur ein großes Durcheinander auf dem Bildschirm. Die Folge könnte ein undurchschaubarer Zustand des Rechner-Systems sein, der nur durch einen Neu-Start (booten, Kaltstart) zu beheben ist. | ||
| Zeile 37: | Zeile 47: | ||
| : «Anzahl» «Name.ext» speichert den Inhalt des Arbeitsspeichers in einer Datei ab. Es wird der Inhalt ab Speicherstelle 100H in 256 Byte Blöcken in die Datei «name.ext» heruntergeladen. Die Anzahl der Blöcke ist stets (dezimal) mit anzugeben. | : «Anzahl» «Name.ext» speichert den Inhalt des Arbeitsspeichers in einer Datei ab. Es wird der Inhalt ab Speicherstelle 100H in 256 Byte Blöcken in die Datei «name.ext» heruntergeladen. Die Anzahl der Blöcke ist stets (dezimal) mit anzugeben. | ||
| ? USER | ? USER | ||
| - | : «nummer» schaltet auf den in „Nummer" | + | : «nummer» schaltet auf den in "Nummer" |
| - | ? Programmaufrufe | + | |
| - | : Neben den sechs genannten residenten CP/M Kommandos werden alle weiteren Befehle mittels spezieller Programme ausgeführt. Ein Programm wird unter CP/M durch Eingabe des Dateinamens ohne Klassenbezeichnung mit abschließendem «return» gestartet.\\ «Programmname» «cr» \\ z.B.: WS «cr» (Starten von WordStar) | + | |
| - | ? Diskettenwechsel Warmstart | + | |
| - | : Nach jedem Diskettenwechsel ist ein Warmstart durch Eingabe von Control C durchzuführen. Durch das Wechseln einer Diskette wird automatisch ein Schreibschutz eingeschaltet, | + | |
| Zeile 47: | Zeile 54: | ||
| ===== STAT ===== | ===== STAT ===== | ||
| + | (Status, Statistics) ist ein externer CP/M Befehl. Er wird wie jedes andere | ||
| + | Programm aus einer Programmdatei (Klassenbezeichnung «COM») heraus ausgeführt | ||
| + | (Eintrag im Inhaltsverzeichnis («DIR») = STAT.COM) | ||
| - | < | + | **Funktion** |
| - | | + | |
| - | wird wie jedes andere Programm aus einer Pro- | + | |
| - | grammdatei (Klassenbezeichnung «COM») heraus | + | |
| - | ausgeführt (Eintrag im Inhaltsverzeichnis («DIR») = | + | |
| - | STAT. COM) | + | |
| - | | + | Der Befehl (Programm) STAT dient zur Überprüfung oder Veränderung von |
| - | | + | Systemeigenschaften. Es können zusätzlich Argumente, die weitere Funktionen |
| - | | + | auslösen, mit angegeben werden. STAT «argument» STAT «cr» gibt den auf |
| - | | + | der Diskette freien Speicherplatz und den Schreibzustand an. (auch STAT |
| - | STAT «argument» | + | «laufwerk») |
| - | STAT «cr» | + | |
| - | | + | |
| - | STAT USR: Die auf der Diskette angelegten Benutzerbereiche | + | ? STAT USR: |
| - | | + | : Die auf der Diskette angelegten Benutzerbereiche und der aktive Benutzerbereich werden in einer Übersicht ausgegeben. |
| - | | + | ? STAT DEV: |
| + | : gibt eine Tabelle mit den Zuordnungen der Kanäle zu bestimmten Geräten aus. | ||
| + | ? STAT «Kanal»: | ||
| + | : weist den möglichen Kanälen CON:, LST:, PUN: oder RDR: ein bestimmtes Gerät zu. | ||
| + | ? STAT DSK: | ||
| + | : ergibt eine Tabelle der Laufwerkseigenschaften der aktiven Laufwerke. (Speicherplatz, | ||
| + | ? STAT «name.ext» | ||
| + | : liefert eine Übersicht über die Größe der angegebenen Dateien. Mehrfachnamen zulässig | ||
| + | ? STAT «name.ext» $«merkmal» | ||
| + | : setzt Dateimerkmale. | ||
| + | ? $R/W | ||
| + | : (read/ | ||
| + | ? $R/O | ||
| + | : (read/only) Es kann nur aus der Datei gelesen werden. Schreiben führt zu einer Fehlermeldung. | ||
| + | ? $DIR | ||
| + | : Die Datei erscheint nach dem Befehl «DIR» mit im Inhaltsverzeichnis. | ||
| + | ? $SYS | ||
| + | : Die Datei wird auf die Systemebene gesetzt und erscheint nicht mehr bei Ausgabe eines Inhaltsverzeichnisses. | ||
| + | : Alle Merkmale sind beliebig einsetzbar. | ||
| - | STAT DEV: gibt eine Tabelle mit den Zuordnungen der Kanäle | + | **Kanäle** |
| - | zu bestimmten Geräten aus. | + | |
| - | STAT «Kanal»: =«Gerät» weist den möglichen Kanälen | + | CON: Konsolenkanal (Bildschirmgerät m. Tastatur)\\ |
| - | PUN: oder RDR: ein bestimmtes Gerät zu. | + | LST: Druckerkanal (Drucker)\\ |
| + | PUN: Lochstreifenstanzer (Fernschreiber)\\ | ||
| + | RDR: Lochstreifenleser (Fernschreiber) | ||
| - | STAT DSK: ergibt eine Tabelle der Laufwerkseigenschaften der | + | Prinzipiell sagt diese von Digital Research vorgesehene Kanal-Bezeichnung nichts |
| - | | + | über die tatsächliche Verwendung einzelner Kanäle aus. Sie können beliebig |
| + | benutzt werden. | ||
| - | STAT «name.ext» liefert eine Übersicht über die Größe der | + | **Geräte** |
| - | angegebenen Dateien. Mehrfachnamen zulässig | + | |
| + | Den Kanälen können jeweils bestimmte Geräte zugeordnet werden. | ||
| - | STAT «name.ext» $ «merkmal» setzt Dateimerkmale. | + | z.B. LST:=TTY: LPT: UL1: UL2:\\ CON:=TTY: CRT: BAT: UC1: |
| - | | ||
| - | beschrieben werden. | ||
| - | | ||
| - | werden. Schreiben führt zu einer Fehlermeldung. | ||
| - | | + | ===== PIP ===== |
| - | Inhaltsverzeichnis. | + | |
| - | | ||
| - | erscheint nicht mehr bei Ausgabe eines | ||
| - | Inhaltverzeichnisses. | ||
| - | Alle Merkmale sind beliebig einsetzbar. | + | Mit diesem Programm besteht die Möglichkeit zum Informationsaustausch mit |
| + | Peripheriegeräten (Diskettendateien und Kanäle (CON:, LST: etc.)). Die | ||
| + | Hauptaufgabe dieses CP/M Befehls, der auch über eine Programmdatei abgewickelt | ||
| + | wird «PIP.COM», | ||
| - | | + | **Kopieren** |
| - | LST: Druckerkanal (Drucker) | + | |
| - | PUN: Lochstreifenstanzer (Fernschreiber) | + | |
| - | RDR: Lochstreifenleser (Fernschreiber) | + | |
| - | Prinzipiell sagt diese von Digital Research | + | Eine Datei wird durch die Eingabe: «Ziellaufwerk»: |
| - | vorgesehene Kanal-Bezeichnung nichts über die | + | «name.ext» von der Diskette im Herkunftslaufwerk auf die Diskette im |
| - | | + | Ziellaufwerk kopiert. Es können |
| - | können | + | kopiert alle Dateien von A: nach B:. |
| - | | + | **Drucken** |
| - | zugeordnet werden. | + | |
| - | z. B. LST: = TTY: LPT: UL1: UL2: | + | |
| - | CON: = TTY: CRT: BAT: UC1: | + | |
| - | PIP Mit diesem Programm besteht die Möglichkeit zum | + | Zum Ausdruck von ASCII-Dateien kann PIP Daten auf einen Kanal ausgeben. |
| - | | + | LST:=«name.ext» schickt den Dateiinhalt auf den angeschlossenen Drucker. |
| - | (Diskettendateien und Kanäle (CON:, | + | |
| - | Die Hauptaufgabe dieses CP/M Befehls, der auch | + | |
| - | über eine Programmdatei abgewickelt wird | + | |
| - | «PIP.COM», | + | |
| - | Disketten (Festplatte). | + | |
| - | | + | **Wiederholungseingaben** |
| - | «Ziellaufwerk»: | + | |
| - | von der Diskette im Herkunftslaufwerk auf die | + | |
| - | Diskette im Ziellaufwerk kopiert. Es können | + | |
| - | Mehrfachnamen angegeben werden. | + | |
| - | B: = A*.* kopiert alle Dateien von A: nach B:. | + | |
| - | | + | Wird PIP ohne zusätzliche Angaben aufgerufen, so erscheint als Prompt ein «*». |
| - | auf einen Kanal ausgeben. PIP LST: = «name.ext» | + | Das ist die Bereitschaftsmeldung. Es können jetzt nach dem «*» die Anweisungen |
| - | schickt den Dateiinhalt auf den angeschlossenen | + | eingegeben werden, ohne PIP jeweils von der Diskette zu laden. |
| - | Drucker. | + | |
| - | | + | **Optionen** |
| - | rufen, so erscheint als Prompt ein «*». Das ist die | + | |
| - | Bereitschaftsmeldung. Es können jetzt nach dem | + | |
| - | «*» die Anweisungen eingegeben werden, ohne PIP | + | |
| - | jeweils von der Diskette zu laden. | + | |
| - | | + | PIP bietet die Möglichkeit, |
| - | | + | werden in eckigen Klammern «[ ]» direkt nach der Befehlseingabe angegeben. PIP |
| - | | + | «Laufwerk»: |
| - | | + | |
| - | | + | |
| - | [V] Verify überprüft die Zieldatei auf korrekte Übertragung. | + | | [V] | Verify überprüft die Zieldatei auf korrekte Übertragung. Nur bei Diskettendateien. |
| - | | + | | [E] | Echo wiederholt alle gelesenen Zeichen auf dem Bildschirm. Nur bei ASCII-Dateien zu verwenden. | |
| + | | [Gn] | Get user liest die angegebene Datei aus dem in «n» bezeichneten User-Bereich. | | ||
| + | | [B] | Block mode transfer. Es wird das Software-Protokoll XON-XOFF (Control-S) gefahren. | | ||
| + | | [H] | Hex data transfer. Es werden nur Daten im Intel-Hex-Format übertragen. | | ||
| + | | [O] | Object file transfer. Es wird über alle Control-Z (Dateiende) hinaus | ||
| + | | [N] | Zeilennummerierung. | | ||
| + | | [N2] | Zeilennummerierung mit führenden Nullen und TAB. | | ||
| + | | [Pn] | Fügt alle «n» Zeilen einen Seitenvorschub ein. | | ||
| + | | [W] | Schreibt über schreibgeschützte Dateien (R/O) ohne Rückfrage. | | ||
| + | | [R] | Liest System-Dateien. Mit Stat veränderbar. | | ||
| - | | + | ===== SUBMIT ===== |
| - | Bildschirm. Nur bei ASCII-Dateien zu verwenden. | + | |
| - | | + | Mit dem Programm «SUBMIT.COM» wird unter CP/M die Möglichkeit geschaffen, |
| - | | + | gleiche, immer wieder kehrende Befehlsabläufe |
| + | heraus auszuführen. Es ist eine Datei mit den einzelnen Befehlen, je ein Befehl | ||
| + | (o. Programmaufruf) pro Zeile, zu erstellen, (keine Leerzeilen, «return» nach | ||
| + | der letzten Zeile). | ||
| - | | + | **Dateiname** |
| - | XOFF (controll-S) gefahren. | + | |
| - | | + | Der Name der «Submit» Stapeldatei kann beliebig gewählt |
| - | | + | Klassenbezeichnung muß «SUB» lauten. |
| - | | + | **Aufruf** |
| - | ende) hinaus übertragen. Nur bei Dateizusammenfassung. | + | |
| - | [N] Zeilennummerierung. | + | Die Ausführung einer Stapelverarbeitung erfolgt durch: |
| - | | + | **Kommentare** |
| - | [Pn] Fügt alle «n» Zeilen einen Seitenvorschub ein. | + | In die Stapeldatei können neben den Befehlen auch Kommentare eingefügt werden, |
| + | die auf dem Bildschirm während der Abarbeitung der Datei erscheinen. Kommentar- | ||
| + | Zeilen müssen mit einem Zeichen («».,: — ?*[]) beginnen. | ||
| - | | + | **Variable** |
| - | | + | werden in einer Stapeldatei durch das «$»-Zeichen und einer fortlaufenden Nummer |
| + | eingeführt. Variable = $1.. | ||
| - | Submit | + | Variablen-Eingaben erfolgen zusammen mit dem Aufruf der Submit-Datei.\\ |
| - | die Möglichkeit geschaffen, gleiche, immer wieder | + | SUBMIT «name» «Eingabe für Variable 1».. |
| - | kehrende Befehlsabläufe aus einer Textdatei | + | |
| - | (Stapeldatei) heraus auszuführen. Es ist eine Datei | + | |
| - | mit den einzelnen Befehlen, je ein Befehl | + | |
| - | (o. Programmaufruf) pro Zeile, zu erstellen, (keine | + | |
| - | Leerzeilen, «return» nach der letzten Zeile). | + | |
| - | | + | Zur Ergänzung |
| - | gewählt werden. Die Klassenbezeichnung muß | + | ==== XSUB ==== |
| - | | + | |
| - | | + | Mit XSUB wird die automatische Eingabe in laufende Programme, die mit der |
| - | | + | Submit-Funktion aufgerufen wurden, ermöglicht. |
| - | | + | **Aufruf** |
| - | Kommentare eingefügt werden, die auf dem | + | |
| - | Bildschirm während der Abarbeitung der Datei | + | |
| - | erscheinen. Kommentar-Zeilen müssen mit einem | + | |
| - | Zeichen («».,: — ?*[]) beginnen. | + | |
| - | | + | XSUB muß zu Beginn |
| - | und einer fortlaufenden Nummer eingeführt. | + | |
| - | Variable = $1.. | + | |
| - | | + | **Programmeingaben über XSUB** |
| - | Datei. | + | |
| - | Zur Ergänzung | + | Die von einem Programm erwarteten Eingaben sind in der entsprechenden |
| - | | + | Reihenfolge, |
| + | Eingaben können auch wieder Variable sein, die beim Aufruf der gesamten Submit | ||
| + | Funktion mit angegeben werden. | ||
| - | | + | Beispiel: Erstellen einer Backup-Kopie |
| - | | + | Submit-Datei «BACKUP.SUB» |
| - | wurden, ermöglicht. | + | |
| - | | + | < |
| - | eigenen Befehlszeile erscheinen. | + | : **** Erstellen einer Backup-Kopie **** «return» |
| - | + | PIP B:=A:*.* «return» | |
| - | | + | : **** Ende |
| - | Die von einem Programm erwarteten Eingaben sind | + | </ |
| - | in der entsprechenden Reihenfolge, | + | |
| - | Befehlszeile der Stapeldatei, | + | |
| - | Die Eingaben können auch wieder Variable sein, die | + | |
| - | beim Aufruf der gesamten Submit Funktion mit | + | |
| - | angegeben werden. | + | |
| - | + | ||
| - | Beispiel: Erstellen einer Backup-Kopie | + | |
| - | Submit-Datei «BACKUP.SUB» | + | |
| - | : **** Erstellen einer Backup-Kopie **** «return» | + | |
| - | PIPB: =A: *.* «return» | + | |
| - | : **** Ende **** «return» | + | |
| - | + | ||
| - | | + | |
| - | Steuerzeichen wirksam: | + | |
| - | + | ||
| - | Control X - Befehlszeile löschen | + | |
| - | Control U - Eingabe rückgängig machen | + | |
| - | Control E - Zeile beenden und nächste Zeile | + | |
| - | beginnen | + | |
| - | Control R - Befehlszeile abschließen | + | |
| - | Control H - Cursor eine Position nach links | + | |
| - | Control C - Warmstart auslösen (nach | + | |
| - | Diskettenwechsel) | + | |
| - | Control S - Pause | + | |
| - | Control Q - Start nach einer Pause | + | |
| - | Control l - Tabulator | + | |
| - | + | ||
| - | | + | |
| - | ist ein dynamischer «Debugger», | + | |
| - | andere Programme schrittweise abgearbeitet | + | |
| - | werden können. Das ist oft notwendig, um die | + | |
| - | korrekte Funktion eines (selbst | + | |
| - | geschriebenen) Programmes zu untersuchen. | + | |
| - | Darüber hinaus können Programme | + | |
| - | disassembliert, | + | |
| - | stellen) verändert oder Speicherbereiche im | + | |
| - | Hauptspeicher verschoben werden. | + | |
| - | Aufruf von DDT: DDT «name.ext» | + | |
| - | + | ||
| - | | + | |
| - | + | ||
| - | | + | |
| - | und an der Adresse (Originaladresse des | + | |
| - | Programms + Versatz) abgelegt. | + | |
| - | | + | **Steuerzeichen** |
| - | ausgeführt mit Haltepunkten bei «Stop 1» etc. | + | |
| - | | + | Bei Eingaben über die Tastatur sind folgende Steuerzeichen wirksam: |
| - | wird einzeln ausgeführt und der aktuelle | + | |
| - | Prozessorzustand angezeigt. | + | |
| - | | + | | Control X | Befehlszeile löschen | |
| - | | + | | Control U | Eingabe rückgängig machen | |
| - | X Der Prozessorzustand wird vollständig angezeigt. | + | | Control E | Zeile beenden und nächste Zeile beginnen | |
| + | | Control R | Befehlszeile abschließen | | ||
| + | | Control H | Cursor eine Position nach links | | ||
| + | | Control C | Warmstart auslösen (nach Diskettenwechsel) | | ||
| + | | Control S | Pause | | ||
| + | | Control Q | Start nach einer Pause | | ||
| + | | Control l | Tabulator | | ||
| - | | + | ===== DDT ===== |
| - | | + | (dynamic debugging tool) Dieses Programm ist ein dynamischer «Debugger», mit dem |
| - | | + | andere Programme schrittweise abgearbeitet werden können. Das ist oft notwendig, |
| - | | + | um die korrekte Funktion eines (selbst geschriebenen) Programmes zu untersuchen. |
| + | Darüber hinaus können Programme disassembliert, | ||
| + | stellen) verändert oder Speicherbereiche im Hauptspeicher verschoben werden. | ||
| - | | + | Aufruf von DDT: DDT «name.ext» |
| - | mnemonics ausgegeben (disassembliert). | + | |
| - | | + | ? I«name.ext» |
| - | | + | : Einen Dateinamen für eine Leseoperation vorgeben. |
| + | ? R«versatz» | ||
| + | : Die mit «l» angegebene Datei wird gelesen und an der Adresse (Originaladresse des Programms + Versatz) abgelegt. | ||
| + | ? G«start», «stopt», «stop2».. | ||
| + | : Das Programm wird ab «Start» ausgeführt mit Haltepunkten bei «Stop 1» etc. | ||
| + | ? T«anzahl» | ||
| + | : Die angegebene «Anzahl» Programmschritte wird einzeln ausgeführt und der aktuelle Prozessorzustand angezeigt. | ||
| + | ? U«anzahl» | ||
| + | : Wie T, nur der Prozessorzustand wird nicht angezeigt. | ||
| + | ? X | ||
| + | : Der Prozessorzustand wird vollständig angezeigt. | ||
| + | ? X«Register» | ||
| + | : Das angegebene Register wird angezeigt. | ||
| + | ? D«anfang, ende» | ||
| + | : Der Speicherinhalt wird von «anfang» bis «ende» Hexadezimal (Sedezimal) und im ASCII-Format ausgegeben. | ||
| + | ? L«anfang», | ||
| + | : Der Speicherinhalt wird in 8080-Assembler mnemonics ausgegeben (disassembliert). | ||
| + | ? A«adresse» | ||
| + | : Es können mnemonische Assembler-Befehle direkt eingegeben werden. | ||
| + | ? S«adresse» | ||
| + | : Die angegebene Speicherstelle kann direkt (hexadezimal) verändert werden. | ||
| + | ? F«anfang», | ||
| + | : Der Speicherbereich wird mit «wert» gefüllt. | ||
| + | ? M«anfang», | ||
| + | : Der Speicherbereich wird an die Adresse ab «Ziel» kopiert. | ||
| + | ? H«wert 1», «wert 2» | ||
| + | : Die Summe und die Differenz zwischen Wert 1 und Wert 2 wird ermittelt und Hexadezimal ausgegeben. | ||
| + | |||
| + | ===== ASM ===== | ||
| - | | + | ASM ist der Standard-Assembler unter CP/M. Mit ihm können selbstgeschriebene |
| - | (hexadezimal) verändert | + | Programme |
| + | Datei muß die Klassenbezeichnung (ext) «ASM» tragen. | ||
| - | | + | Aufruf |
| - | gefüllt. | + | |
| - | | + | ASM «name» |
| - | Adresse ab «Ziel» kopiert. | + | |
| - | | + | Erzeugte Dateien |
| - | Wert 1 und Wert 2 wird ermittelt und | + | «. ASM»-Datei, |
| - | Hexadezimal ausgegeben. | + | |
| - | | + | PRN-Datei Hier wird das komplette Listing des Programmes abgelegt. |
| - | Mit ihm können selbstgeschriebene | + | |
| - | Programme (in 8080-Assembler) in das Intel- | + | |
| - | Hex-Format übersetzt werden. Die Datei muß | + | |
| - | die Klassenbezeichnung (ext) «ASM» tragen. | + | |
| - | | + | HEX-Datei |
| - | | + | |
| - | stets den Namen der «. ASM»-Datei, jedoch | + | |
| - | unterschiedliche Klassenbezeichnung. | + | |
| - | PRN-Datei | + | ===== LOAD ===== |
| - | Programmes abgelegt. | + | |
| - | | + | Mit dem Programm «Load. COM» wird das |
| - | Hex-Format abgelegt. | + | |
| - | + | ||
| - | | + | |
| zuvor assemblierte Programm vom Intel-Hex- | zuvor assemblierte Programm vom Intel-Hex- | ||
| Format in Maschinensprache übersetzt und in | Format in Maschinensprache übersetzt und in | ||
| Zeile 345: | Zeile 315: | ||
| (Control-C) durchgeführt. | (Control-C) durchgeführt. | ||
| - | Bestandteile von CP/M | + | |
| + | | ||
| Das Betriebssystem CP/M besteht aus dem eigentlichen System, das | Das Betriebssystem CP/M besteht aus dem eigentlichen System, das | ||
| Zeile 380: | Zeile 352: | ||
| - | ED CP/M Befehl | + | ===== ED ===== |
| + | |||
| + | CP/M Befehl | ||
| Art: transienter Befehl | Art: transienter Befehl | ||
| Zeile 610: | Zeile 584: | ||
| Sie können innerhalb von ED natürlich auch mehrere Befehle gleichzeitig eingeben. Die einzelnen Befehle werden in der Eingabezeile mittels der Tastenkombination Control-Z voneinander getrennt. | Sie können innerhalb von ED natürlich auch mehrere Befehle gleichzeitig eingeben. Die einzelnen Befehle werden in der Eingabezeile mittels der Tastenkombination Control-Z voneinander getrennt. | ||
| - | </ | + | |