System information
Table 6-5. (continued)
  Entry Point Function
  SETSEC Register BC contains the sector number, 1 through 26, for subsequent disk 
accesses on the currently selected drive. The sector number in BC is the 
same as the number returned from the SECTRAN entry point. You can 
choose to send this information to the controller at this point or delay 
sector selection until a read or write operation occurs.
  SETDMA Register BC contains the DMA (Disk Memory Access) address for 
subsequent read or write operations. For example, if B = 00H and C = 80H 
when SETDMA is called, all subsequent read operations read their data 
into 80H through 0FFH and all subsequent write operations get their data 
from 80H through 0FFH, until the next call to SETDMA occurs. The
initial  DMA address is assumed to be 80H. The controller need not actually 
support Direct Memory Access. If, for example, all data transfers are 
through I/O ports, the CBIOS that is constructed uses the 128byte area 
starting at the selected DMA address for the memory buffer during the 
subsequent read or write operations. 
  READ Assuming the drive has been selected, the track has been set, and 
the DMA address has been specified, the READ subroutine attempts to 
read eone sector based upon these parameters and returns the following 
error codes in register A:
  0 no errors occurred
   1 nonrecoverable error condition occurred
Currently, CP/M responds only to a zero or nonzero value as the return 
code. That is, if the value in register A is 0, CP/M assumes that the disk 
operation was completed properly. IF an error occurs the CBIOS should 
attempt at least 10 retries to see if the error is recoverable. When an error 
is reported the BDOS prints the message BDOS ERR ON x: BAD 
SECTOR. The operator then has the option of pressing a carriage return to 
ignore the error, or CTRL-C to abort.
6.6 BIOS Entry Points CP/M Operating System Manual
6-23










