home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / simtel / sigm / vols000 / vol026 / qsoscan.bas < prev    next >
BASIC Source File  |  1984-04-29  |  2KB  |  95 lines

  1. 1000    REM    SCAN
  2.     INPUT "FILENAME: ";FILENAME$
  3.     FILEOUT$=FILENAME$
  4.     DIM    FLAGS(20)
  5.     DIM CALL$(20),NAME$(20),QTH$(20),FREQ$(20),DATE$(20),TIME$(20),CARD$(20)
  6.     K=20
  7.     OUTCNT=0
  8.     COUNTER=0
  9.     FILE    FILENAME$
  10.     FILE    FILEOUT$
  11.  
  12. 1010    REM
  13.     FOR J=1 TO 20
  14.     FLAGS(J)=0
  15.     NEXT J
  16.  
  17.     FOR J=1 TO 20
  18.     READ #1; CALL$(J),NAME$(J),QTH$(J),FREQ$(J),\
  19.     DATE$(J),TIME$(J),CARD$(J)
  20.     IF CALL$(J)="END" THEN 1020
  21.     COUNTER=COUNTER+1
  22.     NEXT J
  23. 1020    GOSUB 1065
  24. 1033    REM
  25.     PRINT
  26.     PRINT "0=END PAGE / 1-20=DELETE ITEM / 21=RESTART / 22=CHANGE"
  27.  
  28. 1035    REM
  29.     INPUT ANSWER
  30.     IF ANSWER = 0 THEN 1040
  31.     IF ANSWER = 21 THEN 1055
  32.     IF ANSWER = 22 THEN 1500
  33.     IF ANSWER > 20 THEN 1035
  34.     IF ANSWER <1   THEN 1035
  35.     FLAGS(ANSWER)=1
  36.     GOTO 1035
  37.  
  38. 1040    REM
  39.     FOR J=1 TO K
  40.     IF FLAGS(J) <> 0 THEN 1045
  41.     PRINT #2; CALL$(J),NAME$(J),QTH$(J),FREQ$(J),\
  42.     DATE$(J),TIME$(J),CARD$(J)
  43.     IF CALL$(J)="END" THEN 1022
  44.     OUTCNT=OUTCNT+1
  45. 1045    REM
  46.     NEXT J
  47.     GOTO 1010
  48.  
  49. 1055    REM
  50.     FOR J=1 TO 20
  51.     FLAGS(J)=0
  52.     NEXT J
  53.     GOSUB 1065
  54.     GOTO 1033
  55.  
  56. 1065    REM    LIST
  57.     PRINT CHR$(26)
  58.     FOR J=1 TO 20
  59.     IF CALL$(J)="END" THEN 1070
  60.     GOSUB 1700
  61.     NEXT J
  62. 1070    RETURN
  63.  
  64. 1022    REM    END OF JOB ROUTINE
  65.     PRINT "END OF LIST"
  66.     PRINT COUNTER;" INPUT ITEMS"
  67.     PRINT OUTCNT;" OUTPUT ITEMS"
  68.     CLOSE 1:CLOSE 2
  69.     GOTO 1999
  70.  
  71. 1500    REM CHANGE 
  72.     INPUT "Which item/number to change?";J
  73.     GOSUB 1600
  74. 1510    INPUT "Which above field to change?";F$
  75.     INPUT "New entry: ";N$
  76.     IF F$="CALL" THEN CALL$(J)=N$
  77.     IF F$="NAME" THEN NAME$(J)=N$
  78.     IF F$="QTH" THEN QTH$(J)=N$
  79.     IF F$="FREQ" THEN FREQ$(J)=N$
  80.     IF F$="DATE" THEN DATE$(J)=N$
  81.     IF F$="TIME" THEN TIME$(J)=N$
  82.     IF F$="CARD" THEN CARD$(J)=N$
  83.     GOSUB 1700
  84.     INPUT "More field change? (Y/N)";A$
  85.     IF A$="Y" THEN GOTO 1510
  86.     INPUT "More number/items to change? (Y/N)";A$
  87.     IF A$="Y" THEN GOTO 1500
  88.     GOTO 1055
  89. 1600    PRINT "CALL";TAB(12);"NAME";TAB(23);"QTH";TAB(37);"FREQ";\
  90.         TAB(47);"DATE";TAB(57);"TIME";TAB(63);"CARD"
  91. 1700    PRINT J;CALL$(J);TAB(12);NAME$(J);TAB(23);QTH$(J);TAB(37);\
  92.     FREQ$(J);TAB(47);DATE$(J);TAB(57);TIME$(J);TAB(63);CARD$(J)
  93.     RETURN
  94. 1999    GOTO 2
  95.