Download Print this page

IMS IMSAI 8080 User Manual page 566

Advertisement

T H IS
ROUTINE
AND END OF F I L E
WHEN THE F I L E
0 3 3 E
CD 0E 01
F I L E :
CALL
CHECK FOR F I L E
;
0 3 9 1
3 A 7 6 1 0
LDA
0 3 9 9
37
UZ
0 3 9 5
C A 8 9 0 3
C D 1 8 0 9
0 3 9 8
CALL
E3
0 3 9 a
C 2 6 3 0 3
0 3 9 c
;
NO ENTRY
0 3 9 F
3 A 7 E 1 0
0 3 5 2 8 7
CA 5O 09
0 3 5 3
;
CHECK FOR ROOM I N
0 3 5 6
3A 7D 10
0 3 5 9
87
0 3 5 A C 2 7 8 0 3
0 3 5 D
2 1 6 3 0 9
0 3 6 0
C 3 6 0 0 9
;
ENTRY FOUNO ARE THESE PARAMETERS
3 A 7 E 1 0
TE S T:
0 3 6 3
0 3 6 6
8 7
0 5 6 7
CA80O3
0 3 5 A
2A 8A 10
03SD
7C
0 3 6 E
85
0 3 6 F
C A 8 8 0 3 '
0 3 7 2
2 1 7 0 0 9
C 3 6 0 0 9
0 3 7 5
;
MOVE F I L E
0 3 7 8
2 A 7 8 1 0
ROOM:
0 3 7 8
EB
0 37C
2 1 7 6 1 0
0 3 7 F
D5
0 3 8 0
0E 05
0 3 8 2
7E
MOV23 :
12
0 38 3
0 3 8 9
13
0D
0 3 8 5
0 3 8 6
23
03 8 7 C 2 8 2 0 3
03 8A
D 1
;
MAKE F I L E
0 3 8 8
2 1 2 9 1 0
SWAPS:
0 3 8 E
0E0D
1A
SWAP:
0 3 9 0
0 3 9 1
96
0 3 9 2
77
0 3 9 3
73
0 3 9 9
12
0 3 9 5
13
0 3 9 6
23
03 9 7 0D
0 3 9 8
C 290 Q 3
i
CHECK FOR 2NO PARAMETER
0 39B
3 A 7 E 1 0
0 3 9 E
87
0 3 9 F
CAC303
;
PROCE SS
05A2
2A 8A 10
0 3 A 5 2 2 2 9 1 0
I N I T I A L I Z E S
THE B E G IN N IN G OF F I L E AODRESS
ADORESS AS WELL AS THE F I L E
COMMAND I S
USED
CRLF
PARAMETERS
FBUF
A
ORA
F o u r
;N O -
GO L I S T
FSE A
; LOOK UP F I L E
; PNTR I N
XCHG
JNZ
TE S T
LDA
ABUF
; CHECK FOR PARAM
ORA
A
WHA1
;N O ? 7
-
J Z
DIRECTORY
LDA
FEF
ORA
A
JNZ
ROOM
LX I
H ,E ME S1
JMP
MESS
LDA
ABUF
ORA
A
JZ
SWAPS
LHLD
BBUF
MOV
A , H
ORA
L
J Z
SWAPS
LX I
H ,E M E S 2
; NO-NO C A N ' T DO
JMP
MESS
; I T
-
DELETE F I R S T
NAME TO 8LOCK P OIN TE D
LHLD
FREAD
XCHG
LX I
H ,F B U F
; F I L E
NAME P OIN TE R
PUSH
D
MV I
C .NMLEN
; NAME LENGTH COUNT
MOV
A , M
STAX
D
D
1NX
C
; TEST COUNT
OCR
I NX
H
JNZ
MOV23
POP
D
; RESTORE ENTRY P O IN TE R
P O IN T E D
TO 3Y O .E CURRENT
LX I
H , F I L E D
C
M V I
, F E L E N
; ENTRY LENGTH
LDAX
D
MOV
B ,M
MOV
M , A
; EXCHANGE
A ,
MOV
B
STAX
D
I NX
D
I NX
H
; BUMP P OIN TE R S
OCR
C
; TE S T COUNT
JNZ
SWAP
LDA
ABUF
ORA
A
J Z
FOOT
;N O SECOND PARAMETER
2ND PARAMETER
' r
"
BBUF
Gc T AODRESS
l h l d
SHLD
BOFP
; SET BEGIN
AREA
ERROR
TO BY FREAD
I N

Advertisement

loading