
                     * PAG
                     **********************************************************
                     *  I - FILE INPUT UTILITY                   *
                     **********************************************************
                     * OPT PAG
                     *
                     * 'I' UTILITY COPYRIGHT (C), 1979 BY
                     *
                     *   TECHNICAL SYSTEMS CONSULTANTS, INC.
                     *   BOX 2570
                     *   WEST LAFAYETTE, INDIANA  47906
                     *   USA
                     
                     * BY FLD ON 27-11-2011 FOR VEGAS
                     * DISASSEMBLY BY DYNAMITE OF 1.I.CMD
                     
                     * STANDARD PRE-NAMED LABEL EQUATES
                     
               CC02  EOLCHR  EQU    $CC02
               CC11  LSTTRM  EQU    $CC11
               CC21  SPECIO  EQU    $CC21
               CC24  OUTFIL  EQU    $CC24
               CC26  INFIL   EQU    $CC26     FILE INPUT ADRESS
               CCFC  PR1     EQU    $CCFC
               CD03  WARMS   EQU    $CD03
               CD06  RENTER  EQU    $CD06
               CD1E  PSTRNG  EQU    $CD1E
               CD2D  GETFIL  EQU    $CD2D
               CD33  SETEXT  EQU    $CD33
               CD3F  RPTERR  EQU    $CD3F
               D406  FMS     EQU    $D406
                     
                     * ASCII CODE EQUATES
                     
               0004  EOT     EQU    $04
                     
                     * EXTERNAL LABEL EQUATES
                     
               CAC0  INPFCB  EQU    $CAC0
                     
                     
  C100                       ORG    $C100
                     
  C100 20   01       CMDADR  BRA    IUTIL
  C102 01                    FCB    $01       VERSION NUMBER
  C103 7D   CC26     IUTIL   TST    INFIL     TEST FILE INPUT ADRESS
  C106 26   5A               BNE    IUTIL1    JUMP IF NOT NUL - DUPLICATE USE OF I
  C108 7D   CCFC             TST    PR1       PRINTER OUTPUT OVERLAY AREA
  C10B 26   5A               BNE    IUTIL2    JUMP IF NOT NUL - PRINT IN USE
  C10D 8E   CAC0             LDX    #INPFCB   LOAD ADRESS OF THE INPUT FCB $CAC0
  C110 BD   CD2D             JSR    GETFIL    GET THE FILE SPECIFICATION FROM THE LINE BUFFER
  C113 25   44               BCS    IUTIL3    JUMP IF ERROR - ILLEGAL FILE SPEC
  C115 B6   CC11             LDA    LSTTRM    LOAD LAST TERMINATOR
  C118 81   0D               CMPA   #$0D      IS IT A CR ?
  C11A 27   2F               BEQ    IUTIL4    JUMP IF YES - COMMAND MISSING
  C11C B1   CC02             CMPA   EOLCHR    IS IT EOL ?
  C11F 27   2A               BEQ    IUTIL4    JUMP IF YES - COMMAND MISSING
  C121 8E   CAC0             LDX    #INPFCB   LOAD ADRESS OF THE INPUT FCB $CAC0
  C124 86   01               LDA    #1        CODE FOR OPEN FOR READ
  C126 A7   84               STA    0,X       STORE IN FCB FUNCTION
  C128 BD   CD33             JSR    SETEXT    SET THE TXT EXTENSION
  C12B 8E   CAC0             LDX    #INPFCB   LOAD ADRESS OF THE INPUT FCB $CAC0
  C12E BD   D406             JSR    FMS       OPEN FOR READ
  C131 26   39               BNE    IUTIL5    JUMP IF ERROR - DUPLICATE USE OF I
  C133 86   04               LDA    #4
  C135 B7   CC21             STA    SPECIO    SET THE SPECIAL I/O FLAG
  C138 A7   84               STA    0,X       CODE FOR CLOSE FILE
  C13A BD   D406             JSR    FMS       CALL FMS
  C13D 26   2D               BNE    IUTIL5    JUMP IF ERROR - DUPLICATE USE OF I
  C13F 86   01               LDA    #1
  C141 A7   02               STA    2,X       SET ACTIVITY STATUS TO 1 (BUSY FOR READ ACCESS)
  C143 6F   84               CLR    0,X       CLEAR FUNCTION CODE
  C145 BF   CC26             STX    INFIL     SET FCB AS INPUT FILE
  C148 7E   CD06             JMP    RENTER    RE-ENTER DOS FOR REST OF THE COMMAND LINE 
                     * ERROR - COMMAND MISSING
  C14B 8E   C172     IUTIL4  LDX    #TXTER1
  C14E 7F   CC21     IUTIL6  CLR    SPECIO    CLEAR SPECIAL IO FLAG
  C151 7F   CC24             CLR    OUTFIL    CLEAR OUTPUT FILE NAME
  C154 BD   CD1E             JSR    PSTRNG    PRINT ERROR MESSAGE
  C157 20   16               BRA    IEXIT     GO TO EXIT
  C159 8E   CAC0     IUTIL3  LDX    #INPFCB
  C15C C6   15               LDB    #$15      ERROR 15 - ILLEGAL FILE SPEC
  C15E E7   01               STB    1,X       FORCE THE ERROR CODE
  C160 20   0A               BRA    IUTIL5
                     * ERROR - DUPLICATE USE OF I
  C162 8E   C18C     IUTIL1  LDX    #TXTER2
  C165 20   E7               BRA    IUTIL6
                     * ERROR - PRINT IN USE
  C167 8E   C1BC     IUTIL2  LDX    #TXTER3
  C16A 20   E2               BRA    IUTIL6
  C16C BD   CD3F     IUTIL5  JSR    RPTERR
  C16F 7E   CD03     IEXIT   JMP    WARMS
  C172 55 4E 45 20   TXTER1  FCC    "UNE COMMANDE DOIT SUIVRE"
  C176 43 4F 4D 4D   
  C17A 41 4E 44 45   
  C17E 20 44 4F 49   
  C182 54 20 53 55   
  C186 49 56 52 45   
  C18A 20                    FCC    " "
  C18B 04                    FCB    $04
  C18C 22 49 22 20   TXTER2  FCC    '"',"I",'"'," DOIT ETRE U"
  C190 44 4F 49 54   
  C194 20 45 54 52   
  C198 45 20 55      
  C19B 54 49 4C 49           FCC    "TILISEE QU'UNE FOIS PAR "
  C19F 53 45 45 20   
  C1A3 51 55 27 55   
  C1A7 4E 45 20 46   
  C1AB 4F 49 53 20   
  C1AF 50 41 52 20   
  C1B3 43 4F 4D 4D           FCC    "COMMANDE"
  C1B7 41 4E 44 45   
  C1BB 04                    FCB    $04
  C1BC 22 49 22 20   TXTER3  FCC    '"',"I",'"'," N'EST PAS F"
  C1C0 4E 27 45 53   
  C1C4 54 20 50 41   
  C1C8 53 20 46      
  C1CB 4F 4E 43 54           FCC    "ONCTIONNELLE DURANT PRINT"
  C1CF 49 4F 4E 4E   
  C1D3 45 4C 4C 45   
  C1D7 20 44 55 52   
  C1DB 41 4E 54 20   
  C1DF 50 52 49 4E   
  C1E3 54            
  C1E4 04                    FCB    $04
                     
                             END    CMDADR

0 ERROR(S) DETECTED

SYMBOL TABLE:

CMDADR C100   EOLCHR CC02   EOT    0004   FMS    D406   GETFIL CD2D   
IEXIT  C16F   INFIL  CC26   INPFCB CAC0   IUTIL  C103   IUTIL1 C162   
IUTIL2 C167   IUTIL3 C159   IUTIL4 C14B   IUTIL5 C16C   IUTIL6 C14E   
LSTTRM CC11   OUTFIL CC24   PR1    CCFC   PSTRNG CD1E   RENTER CD06   
RPTERR CD3F   SETEXT CD33   SPECIO CC21   TXTER1 C172   TXTER2 C18C   
TXTER3 C1BC   WARMS  CD03   




