670 IF PEEK(8) = 1 AND Y >1 AND Y <7 THEN FOR D = 1 TO 300: NEXT D: GOSUB 360
680 FOR D = 1 TO 300: NEXT D
690 NB = Y
700 ON Y GOTO 720,740,1100,1950,2930,4130,4720
710 POKE 34,0: HOME : VTAB 12: HTAB 3: PRINT "THIS FILE HAS ONLY BEEN INITIALIZED": PRINT : HTAB 9: PRINT "AND CONTAINS NO RECORDS";G$: HTAB 22: PRINT "--": FOR D = 1 TO 2000: NEXT D: GOTO 480
720 PRINT D$"RUN INITIALIZE"
730 REM ** DATA ENTRY **
740 RX = 0: IF PEEK(8) = 1 THEN GOSUB 190
750 PRINT D$"CLOSE ";FILE$
760 REC = REC +1: IF REC >NR THEN HOME : VTAB 12: PRINT "THIS FILE ALREADY CONTAINS ";NR;"RECORDS";G$;G$: VTAB 14: HTAB 9: PRINT "PLEASE OPEN A NEW FILE ": FOR D = 1 TO 2500: NEXT D
770 IF REC >NR THEN REC = REC -1: GOTO 480
780 POKE 34,0: HOME : VTAB 3: HTAB (21 - LEN(FILE$)/2): POKE 50,63: PRINT FILE$;: NORMAL
790 IF REC = NR +1 THEN HOME : VTAB 12: HTAB 5: PRINT NR;" RECORDS MAXIMUM FOR THIS FILE";G$;G$: VTAB 22: HTAB 10: PRINT "HIT ANY KEY FOR MENU ";: GET A$:REC = REC -1: GOTO 480
1280 VTAB 21: HTAB 2: POKE 50,63: PRINT "ESC";: NORMAL : PRINT " FETCH ";: POKE 50,63: PRINT "<--";: NORMAL : PRINT " LAST ";: POKE 50,63: PRINT "-->";: NORMAL : PRINT " NEXT"
1290 VTAB 23: HTAB 2: POKE 50,63: PRINT " P ";: NORMAL : PRINT " PRINT ";: POKE 50,63: PRINT " E ";: NORMAL : PRINT " EDIT ";: POKE 50,63: PRINT " F ";: NORMAL : PRINT " FIND ";G$;" ";: GET Y$: PRINT
1300 IF Y$ = "F" THEN VTAB 21: HTAB 2: CALL -958: POKE 50,63: PRINT "FIELD #";: NORMAL : PRINT " TO SEARCH: ";G$;: INPUT " ";TV$:TV = VAL(TV$): IF TV <1 OR TV >NF THEN 1300
1310 IF Y$ = "F" THEN VTAB (6 +TV): HTAB 5: FLASH : PRINT T$(TV): NORMAL
1320 IF Y$ = "F" THEN VTAB 20: CALL -958: GOTO 2280
1330 IF Y$ = CHR$(27) THEN VTAB 21: HTAB 1: CALL -958: VTAB 22: HTAB 11: PRINT "RECORD TO FETCH : ";G$;: INPUT " ";DA$: VTAB 21: CALL -958
1340 IF Y$ = CHR$(27) AND LEN(DA$) = 0 THEN 1280
1350 IF Y$ = CHR$(27) THEN RD$ = DA$: GOTO 1140
1360 IF Y$ = CHR$(13) OR LEN(RD$) = 0 THEN 480
1370 IF Y$ = CHR$(80) THEN PRINT D$"PR#1": PRINT CHR$(9);"80N";: GOSUB 1050: PRINT : PRINT D$"PR#0": GOTO 1280
1380 IF Y$ = CHR$(21) THEN RD = RD +1: IF RD >REC THEN RD = 1
1390 IF RD = 1 AND Y$ < >"E" THEN VTAB 5: HTAB 24: PRINT " "
1400 IF Y$ = CHR$(21) THEN VTAB 5: HTAB 24: POKE 50,63: PRINT " ";: IF RD -1 >9 THEN PRINT " ";: IF RD -1 >99 THEN PRINT " "
1410 IF Y$ = CHR$(21) THEN NORMAL : PRINT " ": GOTO 1210
1420 IF Y$ = CHR$(8) THEN RD = RD -1: IF RD <1 THEN RD = REC
1430 IF Y$ = CHR$(8) THEN VTAB 5: HTAB 24: POKE 50,63: PRINT " ";: IF RD >9 THEN PRINT " ";: IF RD >99 THEN PRINT " "
1440 IF Y$ = CHR$(8) THEN NORMAL : PRINT " ": GOTO 1210
1450 IF Y$ < >"E" THEN 1280
1460 VTAB 21: HTAB 1: CALL -958: VTAB 22: POKE 50,63: PRINT " M ";: NORMAL : PRINT " MODIFY ";: POKE 50,63: PRINT " E ";: NORMAL : PRINT " ERASE ";: POKE 50,63: PRINT "RTN";: NORMAL : PRINT " ABORT ";G$;" ";: GET Y$
1470 IF Y$ = CHR$(13) THEN HTAB 1: VTAB 21: CALL -958: GOTO 1270
2310 IF LEN(KEY$) >TV%(TV) +L THEN VTAB 21: HTAB 16: CALL -958: HTAB 18: POKE 50,63: PRINT " KEYWORD > FIELD ";G$;G$;: FOR D = 1 TO 1000: NEXT D: HTAB 16: CALL -868: VTAB 20: NORMAL : GOTO 2280
2320 IF KEY$ = CHR$(42) THEN VTAB 20: HTAB 18: CALL -958: GOTO 2280
2330 A$ = KEY$
2340 FOR D = 1 TO 100: NEXT D
2350 IF Y$ = "F" THEN 2390
2360 HOME : VTAB 3: HTAB (21 - LEN(FILE$)/2): POKE 50,63: PRINT FILE$: NORMAL : VTAB 6: POKE 34,4: HOME
3750 HOME : VTAB 9: PRINT "HOW MANY ";: POKE 50,63: PRINT "CARRIAGE RETURNS";: NORMAL : PRINT " FROM END OF": PRINT : HTAB 11: PRINT "ONE ";B1$;" TO NEXT ? ";G$;: INPUT " ";CR
3760 VTAB 15: HTAB 13: POKE 50,63: PRINT "V";: NORMAL : PRINT "IEW OR ";: POKE 50,63: PRINT "P";: NORMAL : PRINT "RINT ? ";G$;: GET VP$: IF VP$ < >"V" AND VP$ < >"P" THEN 3760
3770 PRINT VP$: FOR D = 1 TO 500: NEXT D:XX = 6
3780 GOTO 3810
3790 HOME
3800 FOR K1 = 1 TO REC:RX = SO%(K1): GOTO 3960
3810 POKE 35,24: HOME
3820 VTAB 23: POKE 50,63: PRINT "PADDLE #1";: NORMAL : PRINT " CONTROLS SCROLL/PRINT SPEED !": POKE 35,21: VTAB 6: FOR D = 1 TO 750: NEXT D
3830 IF VP$ = "P" THEN PRINT D$"PR#1": PRINT CHR$(9);"80N";
3840 IF Y1$ = "Y" THEN 3790
3850 RX = RX +1: IF RX <1 THEN RX = 1
3860 IF RX < = REC THEN 3960
3870 PRINT D$"PR#0": PRINT : SPEED= 255: HTAB 15: POKE 50,63: PRINT " END OF FILE ": NORMAL : FOR D = 1 TO 1000: NEXT D
3880 IF VP$ = "P" THEN PRINT D$"PR#1": PRINT CHR$(12): PRINT D$"PR#0"
3890 POKE 35,24: HOME : VTAB 9
3900 PRINT : PRINT : PRINT : POKE -16368,0
3910 HTAB 5: PRINT "PRESS ";: POKE 50,63: PRINT "RETURN";: NORMAL : PRINT " TO RE-FORMAT COPY": PRINT
3920 HTAB 7: PRINT "PRESS ";: POKE 50,63: PRINT " C ";: NORMAL : PRINT " FOR ANOTHER COPY ";G$;: GET Y$: PRINT
3930 IF Y$ = CHR$(67) THEN HOME :LABEL = 1:RX = XR: GOTO 3750
3940 IF Y$ = CHR$(13) THEN LABEL = 0:RX = XR: GOTO 2990
3950 VTAB 14: GOTO 3920
3960 IF VP$ = "P" THEN HTAB (INDENT): IF (XX +LINES +LC) >60 THEN PRINT CHR$(12):XX = 6: HTAB (INDENT)
3970 FL = 0: FOR K = 1 TO NF:P$(K) = MID$ (RD$(RX),FL +1,TV%(K)):FL = FL +TV%(K): NEXT
3980 IF VP$ = "P" THEN HTAB (INDENT)
3990 FOR K = 1 TO LINES
4000 L = LEN(P$(TW%(K))): IF L <2 THEN L = 1: GOTO 4040
4010 FOR J = 1 TO L -1
4020 IF MID$ (P$(TW%(K)),L,1) < >" " THEN 4040
4030 L = L -1: NEXT
4040 PRINT LEFT$(P$(TW%(K)),L);TX$(K);: IF TX$(K) = CHR$(13) THEN XX = XX +1: IF VP$ = "P" THEN HTAB (INDENT)
4050 SPEED= PDL(1): NEXT K
4060 ON CR +1 GOTO 4100,4090
4070 FOR D = 1 TO CR: PRINT :XX = XX +1: NEXT D
4080 GOTO 4100
4090 PRINT :XX = XX +1
4100 IF Y1$ < >"Y" THEN 3850
4110 NEXT K1: PRINT D$"PR#0": GOTO 3870
4120 REM *** PURGE/PACK ***
4130 B1$ = CHR$(91):B2$ = CHR$(93)
4140 RX = 0: IF PEEK(8) = 1 THEN GOSUB 190
4150 PRINT D$"CLOSE ";FILE$
4160 IF REC = 0 THEN 710
4170 POKE 34,0: HOME : VTAB 2: HTAB (21 - LEN(FILE$)/2): POKE 50,63: PRINT FILE$: POKE 34,4: NORMAL
4180 NP = 0:L = 1
4190 VTAB 5: HTAB 1: POKE 50,63: PRINT "ALL";: NORMAL : PRINT " ERASED/BLANK RECORDS WILL BE PURGED": PRINT
4200 PRINT "FROM YOUR FILE AND THE REMAINING RECORDS"
4210 PRINT "WILL BE REPACKED. FOR EXAMPLE :": PRINT : PRINT