|
Modul-Entry |
B: Beschreibung, I: Eingabe-, O: Ausgabeparameter |
|
CHNINI.MAC |
CHNINI |
B: |
Initialisierung eines Diskettenkanals |
|
I: |
Register C hält Kanal in Bereich 0 bis 15
Register B hält Mode Byte wie folgt:
0 : | Öffnen einer Datei zum Lesen |
1 : | Öffnen einer neuen Datei |
2 : | Datei löschen vor neuer Öffnung |
3 : | Öffnen einer Datei zum Schreiben |
Bei gesetztem MSB kann eine Re-ininitialisierung eines bereits geöffneten Kanals erfolgen. Registerpaar DE hält Parameter Block Adresse:
PB+0,1 | die 16 Bit DMA Puffer Adresse |
PB+2 | der 8 Bit relative Puffer Zeiger |
PB+3,4 | die 16 Bit FCB Adresse |
PB+5 | der Userbereich (-1 eingestellter) |
|
|
O: |
Die Carryflag ist bei einem Fehler gesetzt - Kanal außerhalb des Bereiches oder bereits geöffnet, Datei ist nicht auf Diskette oder kann nicht neu eingerichtet werden |
|
CHNTAB.MAC |
@CHACC |
B: |
Überprüfen eines Diskettenkanals |
|
I: |
Register C hält Kanal im Bereich 0 bis 15 |
|
O: |
Die Carryflag ist gesetzt im Fehlerfall - Kanal außerhalb des Bereiches. Bei nichtgesetzter Carryflag zeigt die gesetzte Zeroflag an, dass der Kanal geöffnet ist, sonst nicht geöffnet. Registerpaar HL zeigt auf den zugehörigen Kanal Kontroll Block |
|
CHNXFR.MAC |
CHNXFR |
B: |
Durchführen eines Kanaltransfers. Lesen oder Schreiben ergibt sich aus der Initialisierung |
|
I: |
Register C hält Kanal im Bereich 0 bis 15 und Akku hält Byte, falls auf Diskette geschrieben werden soll |
|
O: |
Die Carryflag ist gesetzt im Fehlerfall - Kanal außerhalb des Bereiches oder Dateifehler. Bei nicht gesetzter Carryflag hält der Akku das Byte, falls von Diskette gelesen wurde |
|
CHNIN.MAC |
CHNIN |
B: |
Lesen eines Bytes vom Diskettenkanal |
|
I: |
Register C hält Kanal im Bereich 0 bis 15 |
|
O: |
Die Carryflag ist gesetzt im Fehlerfall - Kanal außerhalb des Bereiches oder Dateifehler, sonst nicht gesetzt und der Akku hält das gelesene Byte |
|
CHNOUT.MAC |
CHNOUT |
B: |
Schreiben eines Bytes auf Diskettenkanal |
|
I: |
Register C hält Kanal im Bereich 0 bis 15 und der Akku hält das zu schreibende Byte |
|
O: |
Die Carryflag ist gesetzt im Fehlerfall - Kanal außerhalb des Bereiches oder Dateifehler |
|
CHNEOF.MAC |
CHNEOF |
B: |
Lesen eines Zeichens vom Diskettenkanal und testen EOF |
|
I: |
Register C hält Kanal im Bereich 0 bis 15 |
|
O: |
Die Carryflag ist gesetzt im Fehlerfall - Kanal außerhalb des Bereiches oder Dateifehler - oder beim Zeichen EOF (Hex 1A - Ctrl-Z). Der Akku hält das gelesene Zeichen |
|
CHNCLS.MAC |
CHNCLS |
B: |
Schließen eines oder aller Diskettenkanäle |
|
I: |
Register C hält Kanal im Bereich 0 bis 15 oder -1 falls alle Kanäle geschlossen werden sollen |
|
O: |
Die Carryflag ist gesetzt im Fehlerfall - Kanal außerhalb des Bereiches oder Dateifehler |
|
CHNUSR.MAC |
@CHUSR |
B: |
Auswählen eines Userbereiches und Diskettenoperation ausführen |
|
I: |
Registerpaar BC hält die Adresse der auszuführenden Diskettenoperation.
Registerpaar HL hält die Definitionsadresse-1 des Userbereiches. Userbereich -1 bedeutet keine Änderung des Bereiches
|
|
O: |
Die Carryflag ist gesetzt im Fehlerfall |
|
CHNTST.MAC |
@CHTST |
B: |
Test ob der aufgerufene Kanal geöffnet ist |
|
I: |
Register C hält Kanal im Bereich 0 bis 15 |
|
O: |
Die Carryflag ist gesetzt im Fehlerfall - Kanal außerhalb des Bereiches oder nicht geöffnet. Bei nicht gesetzter Carryflag zeigt die gesetzte Zeroflag einen Schreibkanal, eine nicht gesetzte Zeroflag einen Lesekanal an |
|