; ; 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