home *** CD-ROM | disk | FTP | other *** search
- ;
- ; SYSLIB Module Name: S3FILE
- ; Author: Richard Conn
- ; SYSLIB Version Number: 2.0
- ; Module Version Number: 1.0
- ; Module Entry Points:
- ; F3$GET F3$PUT FI3$CLOSE FI3$OPEN
- ; FO3$CLOSE FO3$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 F3
- ;
- FI3$OPEN::
- CALL F3$COPY ; COPY ADDRESSES
- JMP FI$OPEN ; DO IT
- FO3$OPEN::
- CALL F3$COPY ; COPY ADDRESSES
- JMP FO$OPEN
- F3$GET::
- CALL F3$COPY ; COPY ADDRESSES
- JMP F$GET
- F3$PUT::
- CALL F3$COPY ; COPY ADDRESSES
- JMP F$PUT
- FI3$CLOSE::
- CALL F3$COPY ; COPY ADDRESSES
- JMP FI$CLOSE
- FO3$CLOSE::
- CALL F3$COPY ; COPY ADDRESSES
- JMP FO$CLOSE
-
- F3$COPY:
- PUSH H
- PUSH D
- PUSH B
- PUSH PSW
- LXI D,F3$TAB ; COPY F3
- CALL ADRCPY
- POP PSW
- POP B
- POP D
- POP H
- RET
-
- ;
- ; INIT TABLE AND BUFFERS FOR F3 ROUTINES
- ;
- I3$FLG: DB 0 ; INPUT FILE OPENED FLAG (0=NO)
- O3$FLG: DB 0 ; OUTPUT FILE OPENED FLAG (0=NO)
- I3$FCB: DS 36 ; INPUT FILE FCB
- O3$FCB: DS 36 ; OUTPUT FILE FCB
- I3$BUF: DS 128 ; INPUT BUFFER
- O3$BUF: DS 128 ; OUTPUT BUFFER
- I3$PTR: DS 2 ; INPUT CHAR PTR
- O3$PTR: DS 2 ; OUTPUT CHAR PTR
- I3$CNT: DS 1 ; INPUT CHAR COUNT
- O3$CNT: DS 1 ; OUTPUT CHAR COUNT
-
- F3$TAB:
- DW I3$FLG
- DW O3$FLG
- DW I3$FCB
- DW O3$FCB
- DW I3$BUF
- DW O3$BUF
- DW I3$PTR
- DW O3$PTR
- DW I3$CNT
- DW O3$CNT
-
- END
-