home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CP/M
/
CPM_CDROM.iso
/
simtel
/
sigm
/
vols000
/
vol089
/
s1fileio.mac
< prev
next >
Wrap
Text File
|
1984-04-29
|
1KB
|
87 lines
;
; SYSLIB Module Name: S1FILE
; Author: Richard Conn
; SYSLIB Version Number: 2.0
; Module Version Number: 1.0
; Module Entry Points:
; F1$GET F1$PUT FI1$CLOSE FI1$OPEN
; FO1$CLOSE FO1$OPEN
; Module External References:
; ADRCPY F$GET F$PUT FI$CLOSE
; FI$OPEN FO$CLOSE FO$OPEN
;
;
; EXTERNAL DECLARATIONS
;
EXT ADRCPY
EXT FI$OPEN
EXT FO$OPEN
EXT FI$CLOSE
EXT FO$CLOSE
EXT F$GET
EXT F$PUT
;
; MAIN ROUTINES FOR F1
;
FI1$OPEN::
CALL F1$COPY ; COPY ADDRESSES
JMP FI$OPEN ; DO IT
FO1$OPEN::
CALL F1$COPY ; COPY ADDRESSES
JMP FO$OPEN
F1$GET::
CALL F1$COPY ; COPY ADDRESSES
JMP F$GET
F1$PUT::
CALL F1$COPY ; COPY ADDRESSES
JMP F$PUT
FI1$CLOSE::
CALL F1$COPY ; COPY ADDRESSES
JMP FI$CLOSE
FO1$CLOSE::
CALL F1$COPY ; COPY ADDRESSES
JMP FO$CLOSE
F1$COPY:
PUSH H
PUSH D
PUSH B
PUSH PSW
LXI D,F1$TAB ; COPY F1
CALL ADRCPY
POP PSW
POP B
POP D
POP H
RET
;
; INIT TABLE AND BUFFERS FOR F1 ROUTINES
;
I1$FLG: DB 0 ; INPUT FILE OPENED FLAG (0=NO)
O1$FLG: DB 0 ; OUTPUT FILE OPENED FLAG (0=NO)
I1$FCB: DS 36 ; INPUT FILE FCB
O1$FCB: DS 36 ; OUTPUT FILE FCB
I1$BUF: DS 128 ; INPUT BUFFER
O1$BUF: DS 128 ; OUTPUT BUFFER
I1$PTR: DS 2 ; INPUT CHAR PTR
O1$PTR: DS 2 ; OUTPUT CHAR PTR
I1$CNT: DS 1 ; INPUT CHAR COUNT
O1$CNT: DS 1 ; OUTPUT CHAR COUNT
F1$TAB:
DW I1$FLG
DW O1$FLG
DW I1$FCB
DW O1$FCB
DW I1$BUF
DW O1$BUF
DW I1$PTR
DW O1$PTR
DW I1$CNT
DW O1$CNT
END