NEC CP/M-86 System Reference Manual page 54

Advanced personal computer
Table of Contents

Advertisement

Basic Disk Operating System (BDOS) Functions
4-20
SET DMA ADDRESS
ENTRY
CL: IAH
DX: DMA
Offset
FUNCTION 26
SET DMA
ADDRESS
RETURN
DMA is an acronym for Direct Memory Address, which is often used in connection
with disk controllers that directly access the memory of the mainframe computer to
transfer data to and from the disk subsystem. Although many computer systems use
non-DMA access (i.e., the data is transferred through programmed I/O opera-
tions), the DMA address, has, in CP/M, come to mean the address at which the
128-byte data record resides before a disk write and after a disk read.
In the CP/M-86 environment, the Set DMA Address function specifies the offset of
the read or write buffer from the current DMA base. Therefore, to specify the DMA
address, both a function 26 call and a function 51 (Set DMA Base) call are required.
The DMA address is the value specified by DX plus the DMA base value, until it is
changed by a subsequent Set DMA Address or Set DMA Base function.
GET ALLOCATION ADDRESS
ENTRY
RETURN
CL: IBH
FUNCTION 27
BX: ALLOC Offset
GET ADDR(ALLOC)
ES: Segment base
An allocation vector is maintained in main memory for each online disk drive.
Various system programs use the information provided by the allocation vector to
determine the amount of remaining storage (see the STAT program in the CP / M-86
User's Guide for the APC). The Get Allocation Address function returns the
segment base and the offset address of the allocation vector for the currently
selected drive. The allocation information may, however, be invalid if the selected
disk has been marked read/only.

Advertisement

Table of Contents
loading

Table of Contents