Function  27h  Random Block Read From File Specified by Struct -FCB

Similar to 21h (Random Read) except allows multiple files to be read.

entry AH 27h

CX number of records to be read

DS:DX address of an opened Struct -FCB

return AL 00h successful read

01h end of file, no data read

02h DTA too small for record size specified (read canceled)

03h end of file

CX actual number of records read (includes partial if AL=03h)

note 1) The record size is specified in the FCB. The service updates the Current

Block (offset 0Ch) and Current Record (offset 20h) fields to the next

record not read.

2) If CX contained 0 on entry, this is a NOP.

3) If the DTA is larger than the file, the file is padded to the requested

length with zeroes.

4) This function assumes that the FCB record size field (0Eh) is correctly

set. If not set by the user, the default is 128 bytes.

5) The record is written to disk at the current DTA address as specified

by the most recent call to function 1Ah. If the size of the record and

location of the DTA are such that a segment overflow or wraparound would

occur, the error return is set to AL=02h