Download Print this page

IMS IMSAI 8080 User Manual page 585

Advertisement

OAF 8 2 A 9 2 1 0
0CN2 :
0AF8
09
OAFC
2 2 9 2 1 0
OAFF
87
0 8 0 0
C8
0 8 0 1
3A9 D10
0 8 0 9
EB
0 8 0 5
E9
0 8 0 6
21AD0C
OERR:
0 8 0 9
0 E 0 3
080B
C 3F 20A
0 8 0 8
2 1 3 2 1 0
:
p s e u
0 8 1 1
7E
0 8 1 2
B7
0 8 1 3
C 2 0 6 0 8
0 8 1 6
3 A 9 9 1 0
8 7
0 8 1 9
08 1A C A 9 9 0 7
OS ID
C 3 C 8 0 7
i
;
T H IS
ROUTINE
CHECKS TO SEE
;
I T
OR N OT.
;
;
AND H , L
;
THE R EGIS TE R NAMES A ,
;
PRE - D E F I N E D ANO NEED NOT BE ENTERED BY THE USER.
; ON RETURN,
FE 9 1
0 8 2 0
:
s l a s
0 8 2 2
D 8
0 8 2 3
FE 5 8
3F
0 8 2 5
0 8 2 6
D8
CD 7 5 08
0 8 2 7
0 8 2A
2 1 7 E 1 0
OB 2D 2 2 7 9 1 0
0 8 3 0
05
0 8 3 1
C 29 9 0 B
: CHECK I F
09
0 8 3 9
0 8 5 5
1 1 6 0 0 8
0 8 3 8
CD50 0A
0 8 3 8
C 2 9 9 0 8
083 E 6F
083F
2 6 0 0
08 91
C35AOB
0 8 9 9
3A981Q
S L A i :
0B9 7 97
0 8 9 8
1 11A1 1
0 8 9 8
87
08 9C
CA5D0B
0 8 9 F
3 E 0 5 '
085 1 3 2 9 5 1 0
0 8 5 9
CD3C01
0 8 5 7
9C
085 8 65
0 8 5 9
69
05 5A
37
S LA 2 :
085B
3F
085C
C9
08 5D
3C
S LA 3 :
08 5 E 37
0 8 5F
C9
LHLD
A 5 PC
; FETCH PROGRAM COUNTER
B
DAO
; ADD I N BYTE COUNT
SHLD
ASPC
; STORE PC
ORA
A
; WH ICH PASS?
RZ
; RETURN
LDA
TEMP
; FETCH OPCOOE
XCHG
PCHL
L X I
H,ERRO
; SET ERROR ADDRESS
MV I
; LEAVE 3 BYTES FOR PATCH
C , 3
JMP
O C N 1 -3
L X I
H , A 8 U F + 9
MOV
A , M
; FETCH CHARACTER AFTER OPCOOE
ORA
A
; SHOULD 3E A ZERO
JNZ
OERR
LDA
P ASI
; FETCH PASS
ORA
A
J Z
PSU1
JMP
PSU2
I S
USED TO PROCESS LA BELS .
I F A LABEL
ON' RETURN,
Z = 1
IN D IC A T E S A MATCH WAS FOUND
CONTAIN
THE VALUE ASSO CIATED WITH THE LA B E L.
8 ,
C ,
C=1
IN D IC A T E S A LABEL ERROR.
>A 1
C P I
; CHECK FOR LEGAL CHAR
RC
C P I
' Z ' + l
; CHECK FOR
CMC
RC
; RETURN
CALL
ALPS
; PLACE SYM 80L
L X I
H ,A 8 U F
; SET BUFFER ADDRESS
SHLD
ADDS
; SAVE AOOORESS
; CHECK I F
DC R
3
JNZ
S L A I
PRED EFINED R E GIS TE R NAME
INR
8
; SET 8 = 1
O ,R TAB
L X I
; R EGIS TE R TA8L E ADDRESS
CALL
COPC
; CHECK NAME OF R EGIS TE R
JNZ
S L A I
; NOT A PRED EFINED RE GISTE R
L , A
; SET VA LU E C H IG H )
MOV
H , 0
MV I
JMP
SLA 2
LDA
NOLA
; FETCH SYM80 L COUNT
MOV
B , A
L X I
O,STM T
; SET SYMBOL TABLE ADDRESS
ORA
A
; ARE THERE ANY LABELS?
J Z
; JUMP I F
SLA 3
MV!
A ,L L A B
; FETCH LENGTH OF LABEL
STA
NCHR
CALL
COMS
; CHECK TA8 EL
MOV
C , H
; SWAP H AND L
MOV
H , L
MOV
L , C
STC
; SET CARRY
CMC
;CL EAR CARRY
RET
; RETURN
IN R
A
;CLEA R ZERO FLAG
ORA
A
; CLEAR CARRY
RET
I F
PASS
1
} SET SUFFER ADDRESS
IN D IC A TO R
IS
I N
THE SYMBOL TABLE
D ,
E ,
H ,
L ,
P ,
AND S ARE
IL LE G A L CHAR
I F
IL LE GA L CHAR
IN BUFFER
ONE CHARACTER
NO LABELS
12 - 47

Advertisement

loading