PDS and Stub Files Part 1

 BBS: Inland Empire Archive
Date: 06-14-92 (10:48)             Number: 383
From: ZACK JONES                   Refer#: NONE
  To: MARK MARZION                  Recvd: NO  
Subj: PDS and Stub Files Part 1      Conf: (2) Quik_Bas
 > Please re-post this as it never made it to my neck of the woods.

Well,
I didn't post it.  I just mentioned it.  I'll post my
modified version for you though.


   'STUBSCAN.BAS   03-14-90  T.E.M.  Scan .BAS for stub file conflicts.
   'Modified by Zack Jones to name .RPT and .BAT files the
same name 'as the source file. '----------------------------
----------------------------------------
    ON ERROR GOTO E.Handler

    False% = 0: True% = -1

    NOFLTIN& = -1  ' Init as true...can be used.
    NOEDIT& = -1
    NOCOM& = -1
    NOLPT& = -1
    SMALLERR& = -1
   '
--
COLOR 15, 0: CLS PRINT STRING$(50, 196) PRINT STRING$(2, 196); PRINT " STUBSCAN parses .BAS for stub file conflicts "; PRINT STRING$(2, 196) PRINT STRING$(50, 196) '
DIM PROPELLER$(4) PROPELLER$(1) = "|": PROPELLER$(2) = "/" PROPELLER$(3) = CHR$(196): PROPELLER$(4) = "\" IPROP% = 1: OPROP% = 1 ' Pointer to action propeller characters '
IROW% = CSRLIN IFILE$ = COMMAND$ IF IFILE$ = "" THEN INPUT "Enter INPUT <.BAS> path\filename: ", IFILE$ PRINT STRING$(50, 196) IF IFILE$ = "" THEN GOTO PgmExit IFILE$ = UCASE$(IFILE$) Temp% = INSTR(IFILE$, ".") zIFILE$ = LEFT$(IFILE$, (Temp% - 1)) ' Trim any filetype IF Temp% = 0 THEN IFILE$ = IFILE$ + ".BAS" '
-
RPTFILE$ = zIFILE$ + ".RPT" 100 CLOSE 1: OPEN IFILE$ FOR INPUT AS #1 '200 CLOSE 2: OPEN "STUBSCAN.RPT" FOR OUTPUT AS #2 CLOSE 2: OPEN RPTFILE$ FOR OUTPUT AS #2 201 PRINT #2, " " PRINT #2, IFILE$; " BASIC source file as of "; PRINT #2, DATE$; " at "; LEFT$(TIME$, 5); " o`clock." PRINT #2, " " PRINT #2, "Line --Stub-- Source statement which may conflict..." PRINT #2, "---- -------- --------------------------------------" '
-
WHILE NOT EOF(1) IF NOT EOF(1) THEN LINE INPUT #1, R$ ICOUNT& = ICOUNT& + 1 R$ = LTRIM$(R$) ' Trim leading spaces RLEN% = LEN(R$) IF RLEN% < 2 THEN GOTO NextRecord R$ = UCASE$(R$) ' Toupper Temp$ = LEFT$(R$, 1) IF Temp$ = "'" THEN GOTO NextRecord Temp$ = LEFT$(R$, 3) IF Temp$ = "REM'" THEN GOTO NextRecord IPROP% = IPROP% + 1: IF IPROP% > 4 THEN IPROP% = 1 LOCATE IROW% + 1, 15: PRINT "Working "; : LOCATE , 25: PRINT '***append to line above PROPELLER$(IPROP%); ' Action propeller Temp% = INSTR(R$, "FOR INPUT ") ' This one is OK IF Temp% <> 0 THEN GOTO EndInput Temp% = INSTR(R$, "INPUT ") IF Temp% = 0 THEN GOTO EndInput NOFLTIN& = False%: Conflict$ = " NOFLTIN " GOSUB F.WriteReptLine NOEDIT& = False%: Conflict$ = " NOEDIT " GOSUB F.WriteReptLine EndInput: Temp% = INSTR(R$, "VAL(") IF Temp% <> 0 THEN NOFLTIN& = False%: Conflict$ = " NOFLTIN " GOSUB F.WriteReptLine END IF Temp% = INSTR(R$, "READ ") IF Temp% <> 0 THEN NOFLTIN& = False%: Conflict$ = " NOFLTIN " GOSUB F.WriteReptLine END IF 'end of part 1 --- * Origin: Zack's Shack - San Antonio TX (1:387/905.1)
Outer Court
Echo Basic Postings

Books at Amazon:

Back to BASIC: The History, Corruption, and Future of the Language

Hackers: Heroes of the Computer Revolution (including Tiny BASIC)

Go to: The Story of the Math Majors, Bridge Players, Engineers, Chess Wizards, Scientists and Iconoclasts who were the Hero Programmers of the Software Revolution

The Advent of the Algorithm: The Idea that Rules the World

Moths in the Machine: The Power and Perils of Programming

Mastering Visual Basic .NET