Download Print this page

IMS IMSAI 8080 User Manual page 575

Advertisement

A S M2: .
0 6 0 9
C D 9 3 0 7
06 8C
2 1 3 2 1 0
06BF COC 5 0 6
06 C2 C 3 8 C 0 6
• T H I S
ROU TINE
;
AN A S SE M B L Y .
: ALL L I N E S ARE TO BE P R IN TE D OR JUST THOSE WITH
;
ERRORS.
3 A 8 E 1 0
:
06C5
a o u t
06 C8 8 7
06 C9 C 2 D 2 0 6
06CC 3A 8 2 10
AOU2 :
06 CF F E 2 0
0 6 0 1
C8
0 6 0 2
2 1 8 2 1 0
:
a o u i
0 6 0 5 C D 7 A 0 2
0 6 0 8 CDOE Ol
0 6 0 3
C9
• PASS 1 OF ASSEMBLER.
06OC C D 6 S 0 1
PA S I :
06 OF 3 2 9 9 1 0
06 E2
2 1 C 7 1 0
2 2 9 5 1 0
0 6E5
06 E8
7E
0 6E9 F E 2 0
06 E 3
C A 1 E 0 7
06EE FE 2A
06F0
C8
• PROCESS LABEL
0 6F I
CD200 B
0 6F 9 DAOFOA
0 6F7 CAC70C
0 6FA C O 3 5 0 7
0 6FD C 2D F0 A
0 7 0 0
0 E 0 5
0 7 0 2
2 1 7 6 1 0
0 7 0 5
7E
MLAB:
0 7 0 6
12
0 7 0 7
13
0 7 0 8
23
OD
0 7 0 9
0 70A C 2 0 5 0 7
0 70 0 EB
0 70E
2 2 9 0 1 0
0 7 1 1
3 A 9 3 1 0
0 71 9
77
0 7 1 5
23
0 7 1 6
3 A 9 2 1 0
0 7 1 9
77
0 7 1A 2 1 9 8 1 0
0 7 1 0
3 9
;
PROCESS OPCOOE
0 7 I E
C O 66 01
:
o p c
0 7 2 1
CD0Ö09
0 7 2 9 DA 0 6 08
0 7 2 7 CO 7 5 08
0 7 2A F E 2 0
072C OA 65 0A
CALL
PAS 2
h
LX 1
,OBUF
^OUTPUT BUFFER AOORESS
AOUT
;OUT PUT L I N E
CALL
JMP
ASM1
IS USED TO OUTPUT THE L I S T I N G
I T CHECKS THE ERROR SWITCH TO SEE
LOA
AERR
; FETCH ERROR SWITCH
A
; SET FLAGS
ORA
JNZ
AOUI
; OUTPUT ALL L I N E S
OBUF
;F ET C H ERROR IN D IC A TO R
LOA
t
i
; CHECK FOR AN ERROR
C P I
; RETURN
RZ
LX I
H,OBUF
jO U TPU T BUFFER ADDRESS
SCRN
;OUTPU T L I N E . . .
CALL
CALL
CRLF
RET
USED TO FORM SYM80L TABLE
CALL
Z8UF
; CLEAR BUFFER
STA
; SET FOR PASS1
' PA SI
H, I8 U F
LX I
I N I T I A L I Z E
SHLD
PNTR
MOV
A, M
; FETCH CHARACTER
i
i
C P I
; CHECK FOR A BLANK
OPC
z
} JUMP I F
JZ
i
i
C P I
jCHECK FOR CGMMENT
; RETURN I F
RZ
CALL
SLAB
;GET. AND CHECK LABEL
JC
; ERROR I N
OP5
JZ
ERRD
; D U P L IC A T E LABEL
CALL
LCHK
; CHECK CHARACTER AFTER LABEL
; ERROR I F
JNZ
OP5
MV I
C , LLA8
; LENGTH OF LABELS
LX I
H,ABUF
; SET BUFFER ADDRESS
MOV
A,M
; FETCH NEXT CHARACTER
STAX
0
; STORE
I NX
0
I NX
H
DC R
C
JNZ
MLAB
XCHG
SHLD
TA8A
; SAVE TABLE ADDRESS FOR EQU
LOA
ASPC+1
; FETCH PC ( H I G H )
MOV
M,A
INX
H
LOA
ASPC
; FETCH PC (L O W )
MOV
M,A
; STORE
LX 1
H,NGLA
INR
M
; INCREMENT NUM3ER OF LABELS
CALL
ZBUF
; ZERO WORKING BUFFER
CALL
S8LK
} SCAN TO OPCODE
JC
; FOUND CARRIAGE RETURN
OERR
CALL
ALPS
; PLACE OPCODE
1 f
CP I
; CHECK FOR BLANK AFTER OPCODE
JC
CPCD
;CR AFTER OPCOCE
./
FOR
I F
I F
NO ERROR
L I N E
POINTER
NO LABEL
COMMENT
LABEL
NO BLANK
IN
SYMBOL TABLE
I N
TABLE
IN
BUFFER
37
12
-

Advertisement

loading