home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CP/M
/
CPM_CDROM.iso
/
simtel
/
sigm
/
vols000
/
vol074
/
uccs7710.asm
< prev
next >
Wrap
Assembly Source File
|
1984-04-29
|
2KB
|
104 lines
;********************************************************
;* *
;* BSTAM INTERFACE CCS 7710A CARD IN APPLE CP/M SYSTEM *
;* *
;********************************************************
;
; Jan 10, 1981
;
; By Bill Bolton
; Software Tools
; P.O. Box 80
; Newport Beach
; NSW, 2106
; Australia
;
; TCY396
;
;
;VERSION 6850/4.5
;
BEGIN ORG 103H
INITIL JMP INITIU ;UART/USART INITIALATION ENTRY POINT
INSPORT JMP INSPRU ;STATUS PORT READ ENTRY POINT
ERRSET JMP ERRSTU ;UART/USART ERROR RESET ENTRY POINT
INPORT JMP INPRTU ;READ DATA PORT ENTRY POINT
OUTPORT JMP OUTPRU ;WRITE DATA PORT ENTRY POINT
;
;
;
TPS EQU 0E0A0H ;STATUS PORT
TP EQU TPS+1 ;DATA PORT
;
;
INITIU:
CALL SIGNON
RESET:
MVI A,17H ;RESET ACIA
STA TPS
MVI A,11H ;8 BITS, 2 STOP, 16X CLK, NO PAR
STA TPS
RET ;RETURN TO BSTAM
;
;
;
;
INSPRU:
PUSH B
LDA TPS ;GET STATUS
MOV C,A ;C <--- STATUS
MVI B,1 ;PRESET 8251 TX READY
ANI 1 ;6850 RX DATA?
JZ CHKTXE ;NO
MVI A,02H ;YES, SET 8251 RX DATA
ORA B ;COMBINE WITH B
MOV B,A
CHKTXE: MOV A,C ;A <--- STATUS
ANI 02H ;TX EMPTY?
JZ CHKOVR ;NO
MVI A,04H ;YES, SET 8251 TXE
ORA B ;COMBINE WITH B
MOV B,A
CHKOVR: MOV A,C ;A <--- STATUS
ANI 20H ;RX OVERRUN
JZ ENDCHK ;NO
MVI A,10H ;YES, SET 8251 OE
ORA B ;COMBINE WITH B
MOV B,A
ENDCHK: MOV A,B ;A <--- 8251 LIKE STATUS
POP B
RET
;
ERRSTU:
CALL RESET ;RESET ACIA
RET ;RETURN TO BSTAM
;
;
INPRTU:
LDA TP ;GET DATA FROM PORT
RET ;RETURN TO BSTAM
;
;
OUTPRU:
STA TP ;SEND DATA TO REMOTE CPU
RET ;RETURN TO BSTAM
;
;
MESSGE: DB 0DH,0AH,0DH,0AH
DB 'Version 4.5 - Software Tools',0DH,0AH
DB 'For APPLE CP/M 2.2 with',0DH,0AH
DB 'CCS 7710A (6850), no parity',0DH,0AH,'$'
;
SIGNON: PUSH B
PUSH D
PUSH H
LXI D,MESSGE
MVI C,9
CALL 5 ;ANOUNCE VERSION TO USER
POP H
POP D
POP B
RET
;
END BEGIN