Funktion 28h Wahlfreies, blockweises Schreiben mit FCB

Überholte Funktion!
Ab DOS 2.X die Funktion 40h benutzen.
Die Datensatznummer wird normalerweise durch Aufruf der Funktion 24h gesetzt.
Wenn CX = 0 vor dem Aufruf, dann wird die Dateigröße auf den Wert im Datensatznummer-Feld gekürzt.

Vor dem Funktionsaufruf:
AX(AH) 28h
CX Anzahl der zu schreibenden Blöcke.
DX Offset des Zeigers, der den geöffneten FCB angibt.
DS Segment des Zeigers, der den geöffneten FCB angibt.
DTA: Ein Block, der geschrieben werden soll.

FCB
Laufwerksnummer Aktuelle Laufwerksnummer
Dateiname ASCII-Dateiname
Dateityp Datei-Extension im ASCII-Format
Aktueller Block Wird beim Funktionsaufruf gesetzt
Datensatzgröße 128, Wert kann vor dem Funktionsaufruf geändert werden.
Dateigröße Wie beim Öffnen der Datei
Dateidatum Wie beim Öffnen der Datei
Dateizeit Wie beim Öffnen der Datei
Reserviert Reserviert
Aktueller Datensatz Wird beim Funktionsaufruf gesetzt
Datensatznummer Zu schreibender Datensatz

Nach dem Funktionsaufruf:
AX(AL) Status, 0 = erfolgreich geschrieben; 1 = Diskette voll; 2 = DTA zu klein
CX Anzahl der zu schreibenden Blöcke.
DTA: Unverändert

FCB
Laufwerksnummer Unverändert
Dateiname Unverändert
Dateityp Unverändert
Aktueller Block Beim Aufruf gesetzt
Datensatzgröße Unverändert
Dateigröße Aktualisiert, wenn die Größe verändert wurde
Dateidatum Mit dem aktuellem Datum versehen
Dateizeit Mit der aktuellen Uhrzeit versehen
Reserviert Reserviert
Aktueller Datensatz Beim Aufruf gesetzt
Datensatznummer Erhöht durch Aufruf

Beginnend mit einem vorgegebenen Datensatz werden mehrere Datensätze in die Datei sequentiell hintereinander geschrieben.

Anzeige:

Anzeigen: