Download Print this page

IMS IMSAI 8080 User Manual page 503

Advertisement

MIOA.PRN
31A3 CASF31
31A6 78
3 1A7 D342
31A9 C9
;INPUT A CHAR WHEN READY.
;OCCURS , PUT ?E,CE,FE,RRDY,TRDY IN 4 TO 0.
3 IAA DB4 3
SINP:
31 AC E60A
3 1AE C3
31AF EEOA
3 1B1 CABA31
31B4 EE02
3 1B6 C8
31B7 DB4 2
31B9 C9
3 1BA 3E80
3IN1:
31BC D343
3 13E DB4 3
3 ICO E603
31C 2 07
31C3 47
31C4 3EC0
31C5 D343
31C8 DB43
31CA E508
3 ICC OF
31CD 80
31CE 47
31CF 3E40
31D1 D343
31D3 DB4 3
31D5 E60B
31D7 80
31D8 47
3 1D9 DB4 2
31DB AF
31DC D343
3 IDE F680
31E0 78
31E1 C9
;INPUT SENSE SWITCHES-DELAY IF DIFFERENT
31E2 DBFF
S31N :
31E4 47
31E5 3AFA31
31E8 A8
31E9 78
31EA CS
3 1EB CDFB31
31EE CDFB31
3 1F1 CDFB31
31F4 DBFF
31F6 32FA31
31F9 C9
31FA 00
SSAV:
?DELAY 5 SECONDS. - REQUIRES 10 MILLION CYCLES (APPROXIMATELY)
31FB 3E00
DLA5 :
31FD 0EC9
3 IFF CD0B32
DLA51: CALL DONS
JZ SOUTl
MOV A,B
OUT SIO
;CHAR OUT
RET
IF AH ERROR
IS CNT
;SEE IF READY ON ERROR
ANI 0AH
RZ
XRI 0AH
;YES, TEST ERROR
JZ SIN1
XRI 2
;SEE IF OLD ERROR FLAG
RZ
/IF SO,RETURN
IN SIO
/NO ERROR, GET CHAR
RET
MVI A ,80H
;GET ERROR BITS
OUT CNT
/PARITY ERROR
IN CNT
ANI 3
RLC
MOV B,A
MVI A,0C0H
;FRAMING ERROR
OUT CNT
IN CNT
ANI 8
RRC
ADD 3
MOV B,A
MVI A,40H
;OVERUN,RRDY AND TFDY
OUT CNT
IN CNT
ANI 0BH
ADD 3
MOV 3, A
IN SIO
/CLEAR CHARACTER
XRA A
/RESET CONTROL FOR ERROR FLAG
OUT CNT
ORI 30H
MOV A, 8
RET
IN SSPT
/GET THEM
MOV 3,A
LDA SSAV
/COMPARE WITH PAST
XRA 3
MOV A ,B
RZ
CALL CLA5
/DIFFERENT WAIT FOR A WHILE
CALL DLA5
CALL DLA5
IN SSPT
. •
/GET NEW VALUE
STA SSAV
RET
DB 0
MVI A , 0
MVI C,201
PAGE 3

Advertisement

loading