Assembly Language Help (alang.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
Int 21h Function 28h
 Summary                                   Up Contents Index Back
────────────────────────────────────────────────────────────────────────────
 
     The records are written (logically, not necessarily physically) to
     disk from memory at the current disk transfer area address,
     specified by the most recent call to Int 21h Function 1Ah. If the
     size and location of the buffer are such that a segment overflow
     or wraparound would occur, the function fails with a return code
     of 02h.
 
     The file location of the data to be written is determined by the
     combination of the relative-record field (offset 21h) and the
     record size field (offset 0Eh) of the FCB. The default record size
     is 128 bytes.
 
     After the disk transfer is performed, the current block (offset
     0Ch), current record (offset 020h), and relative-record (offset
     21h) fields of the FCB are updated to point to the next record in
     the file.
 
     If this function is called with CX = 00h, no data is written to
     the disk but the file is extended or truncated to the length
     specified by the combination of the record size (offset 0Eh) and
     the relative-record (offset 21h) fields of the FCB.
 
     Compare with Int 21h Function 22h, which transfers only one record
     per function call and does not update the FCB relative-record
     field.
 
     [Version 3.0+]
     If the program is running on a network, the user must have Write
     access rights to the directory containing the file to be written.
                                    -♦-