Specifications
Application Examples
;
; SINGLE BYTE TRANSFERS
; INCREMENT MEMORY ADDRESS
; SBX I/O TO RAM OPERATION
;
; INPUTS: NONE
; OUTPUTS: SBX I/O TO RAM MEMORY TRANSFERS ARMED
; CALLS: NONE
; DESTROYS: FLAGS
DCU_WRITE PROC
; PRESERVE REGISTER STATUS
PUSH AX
PUSH BX
PUSH CX
PUSH DX
; SET UP ADDRESS REGISTERS
MOV AX,SEG DATA
MOV DX,OFFSET DMA_BUF
MOV BL,AH
MOV CL,4
SHL AX,CL
SHR BL,CL
ADD DX,AX
ADC BL,0
MOV AX,DX
MOV DX,DCU_DBA_OFF
OUT DX,AX
MOV AX,BX
MOV DX,DCU_DBA_SEG
OUT DX,AL
; SET UP COUNT REGISTERS
MOV AX,SIZE DMA_BUF-1
MOV DX,DCU_DBC
OUT DX,AX
; SET UP MODE AND ENABLE
PUT DCU_DMD,DCU_DMD_WRTE
PUT DCU_DMK,DCU_DMK_INIT
; RESTORE REGISTER STATUS
POP DX
POP CX
POP BX
POP AX
DCU_WRITE ENDP
; ONCE THE DMA CONTROLLER IS INITIALIZED, IT IS PROGRAMMED FOR
; DMA READ TRANSFERS WITH THE FOLLOWING PROCEDURE. A DMA
; READ DEFINES THE RAM MEMORY AS THE DATA SOURCE AND THE SBX
; I/O AS THE DESTINATION. NOTE THAT EITHER DUAL PORT OR LOCAL
; RAM MAY BE USED AS RAM MEMORY. THE FOLLOWING PARAMETERS ARE
; SELECTED:
;
; SINGLE BYTE TRANSFERS
; INCREMENT MEMORY ADDRESS
; RAM TO SBX I/O OPERATION
;
; INPUTS: NONE
; OUTPUTS: RAM MEMORY TO SBX I/O TRANSFERS ARMED
4-16