GROUP1 EQU 3 ;CODE FOR FIRST ACE (J1) BASE EQU 48H ;BASE I/O ADDRESS SET BY SW-8C GRPCTL EQU BASE+7 ;BOARD GROUP CONTROL PORT DLL EQU BASE ;ACE BAUD RATE DIVISOR (LSB) DLM EQU BASE+1 ;ACE BAUD RATE DIVISOR (MSB) IER EQU BASE +1 ;ACE INTERRUPT ENABLE REGISTER LCR EQU BASE +3 ;ACE LINE CONTROL REGISTER LSR EQU BASE +5 ;ACE LINE STATUS REGISTER RBR EQU BASE ;ACE RECEIVER BUFFER REGISTER THR EQU BASE ;ACE TRANSMITTER HOLDING REGISTER DLAB EQU 80H ;DIVISOR LATCH ACCESS BIT THRE EQU 20H ;LINE STATUS REGISTER THRE BIT DR EQU 1 ;LINE STATUS REGISTER DR BIT BAUDL EQU 12 ;DIVISOR LATCH LOW BYTE - - 9600 BAUD BAUDH EQU 0 ;DIVISOR LATCH HIGH BYTE - - 9600 BAUD WLS0 EQU 1 ;WORD LENGTH SELECT BIT 0 - 8 BIT WORD WLS1 EQU 2 ;WORD LENGTH SELECT BIT 1 - 8 BIT WORD STB EQU 4 ;STOP BIT COUNT - 2 STOP BITS IMASK EQU 0 ;INTERRUPT MASK - DISABLE ALL ; ORG 100H INIT MVI A,GROUP1 OUT GRPCTL ;SELECT FIRST SERIAL DEVICE MVI A,DLAB+WLS0+WLS1+STB OUT LCR MVI A,BAUDL OUT DLL MVI A,BAUDH OUT DLM MVI A,WLS0+WLS1+STB OUT LCR XRA A OUT LSR MVI A,IMASK OUT IER ; OUTONE MVI C,'C' CONOUT MVI A,GROUP1 OUT GRPCTL MVI A,WLS0+WLS1+STB OUT LCR CONOUTL IN LSR ANI THRE JZ CONOUTL MOV A,C OUT THR CKINT LDA 0E3F9H ANI 4 JNZ OUTONE JMP 0 =COPYRIGHT (C) 1978, DIGITAL RESEARCH DDT VERS 2.0$10 !~=W!xe ~#Xbxʇ {z~#o}o҃