Download Print this page

IMS IMSAI 8080 User Manual page 576

Advertisement

0 72F C 20 6 0 B
0 7 3 2
C 3 6 5 0 A
;
T H I S
ROU TIN E
}
FOR A BLANK OR A COLON .
LCHK :
0 7 3 5
2 A 9 6 1 0
0 7 3 8
7E
0 7 3 9
F E 2 0
0 73B C8
0 7 3 C FE 3A
0 73 E CO
0 7 3 F
23
0 7 9 0
2 2 9 6 1 0
0 7 9 3
C9
PROCESS ANT PSEUDO OPS THAT NEED TO BE I N PASS
;
0 7 9 9
PSU1 :
C 0 0 0 0 9
1A
0 7 9 7
0 7 9 8
3 7
0 7 9 9
C A 6 0 0 7
0 79C F A 9 0 0 7
0 79 F
E 2 7 5 0 7
0 7 5 2
F E 0 5
0 7 5 9
D A 8 8 0 7
0 7 5 7
C 2 Q 1 0 9
;
OO OW PSEUDO/OP
07 5A
0E 02
A C O l :
0 75C AF
0 7 5 0 C 3 F 5 0 A
0 0 ORG PSEUDO -O P
;
0 7 6 0
C D 9 7 0 8
O R G 1:
3AB 21 0
0 7 6 3
0 7 6 6
F E 2 0
0 7 6 8
CO
0 7 6 9
2 2 9 2 1 0
0 7 5C 3A C 71 0
0 7 5 F
FE 2 0
C8
0 7 7 1
0 7 7 2
C 3 8 0 0 7
: 0 0 EQU PSEUDO - O P
0 7 7 5
CD970 B
EQU1 :
0 7 7 8
3AC71 0
0 778
FE 2 0
0 7 7 0 CA9F0C
0 7 80
EB
EQUS:
0 7 8 1
2 A 9 0 1 0
0 7 8 9
72
0 7 8 5
23
0 7 8 6
73
0 7 8 7
C9
;
0 0
DS PSEUDO- OP
0 7 8 8
C D 9 7 0 8
R E S I :
0 7 8 8
9 9
0 78C
9 0
0 7 8 0 C 3 EDO 7
; DO OB PSEUDO- OP
0 7 9 0
OAT1 :
C 3 F 90 7
;
PERFORM PASS
0 7 9 3
2 1 3 9 1 0
PAS2 :
0 7 9 6
3 A 9 3 1 0
; ERROR I F
JNZ
OERR
JMP
; CHECK OPCOOE
OPCD
C HECKS THE CHARACTER AFTER A LABEL
i
PNTR
LHLO
A , M
; GET CHARACTER AFTER LABEL
MOV
■ ,
i
i
C P I
CHECK FOR A BLANK
; RETURN I F
RZ
i
i
C P I
;CHECK FOR A COLON
RNZ
INX
H
PNTR
SHLD
; SAVE P O IN TE R '
RET
CALL
SBLK
; SCAN TO OPERAND
LOAX
0
; FETCH VALUE
ORA
A
; SET FLAGS
J Z
ORG1
/O RG OPCOOE
; D A T A STATEMENT
DAT1
UM
JPO
EQU1
; EQU OPCODE
C P I
5
JC
R E S I
; RES OPCOOE
; JUMP IF
UNZ
EASS
M V I
0 / 2
} 2
8 YTE IN S T R U C T IO N
XRA
; G E T A ZERO
A
;AOO VALUE TO PROGRAM CNTR
JMP
OC N l
CALL
A5CN
; G c T OPERAND
LDA
OBUF
; rE T C H ERROR IN D IC A T O R
? i
; CHECK FOR AN ERROR
C P I
RNZ
; STORE NEW O R I G I N
SHLD
ASPC
LDA
I 3 U F
; GET F I R S T
i
i
; CHECK FOR LABEL
C P I
; NO LABEL
RZ
JMP
EQUS
; CHANGE LABEL VALUE
ASCN
; GET OPERAND
CALL
LDA
IBUF
; FETCH 1S T CHARACTER
r
t
C P I
; CHECK FOR LABEL
ERRM
J Z
; M I S S ING LABEL
XCHG
■ ,
TABA
LHLO
SYMBOL TABLE ADDRESS
MOV
M /D
; STORE LA B EL VALUE
IN X
H
MOV
M , E
RET
; GET OPERAND
CALL
ASCN
MOV
B , H
MOV
C / L
JMP
RES 21
; ADD VALUE TO PROGRAM COUNTER
JMP
OAT2A
2 OF THE ASSEMBLER
L X l
I
H ,C 8 U F + ;
; SET OUTPUT BUFFER ADDRESS
; F E TCH P C C H IG H )
LCA
ASPC+1
NO BLANK
A BLANK
1
END
CHARACTER
'

Advertisement

loading