2000 REM ...... THIS IS FILE "RESEQ2.BAS" 2010 2020 !----------------------------------------------------! 2030 ! PROGRAM TO RESEQUENCE ALPHABASIC SOURCE PROGRAMS ! 2035 ! BY MANUAL STEP-THROUGH (ASSUMES LABELS USED) ! 2040 !----------------------------------------------------! 2050 2060 REM ...... STRING DEFINTIONS 2070 MAP1 TEXT$ ,S,100 2080 MAP1 COMD$ ,S,1 2090 MAP1 SLINE$ ,S,10 2100 MAP1 CHAR$ ,S,1 2120 MAP1 SHARP$ ,S,1,"#" 2130 MAP1 NLINE$,S,10 2140 MAP1 FNAME1$,S,15 2150 MAP1 FNAME2$,S,15 2160 2170 NEW'FILE: 2180 PRINT TAB(-1,0); 2190 PRINT "ENTER INPUT (CURRENT) FILE NAME : < >"; 2200 FOR I=1 TO 11 : PRINT CHR(8); : NEXT I 2210 INPUT "" FNAME1$ 2220 PRINT "ENTER OUTPUT (NEW) FILE NAME : < >"; 2230 FOR I=1 TO 11 : PRINT CHR(8); : NEXT I 2240 INPUT "" FNAME2$ 2250 2260 REM ...... OPEN FILES 2270 LOOKUP FNAME1$, THERE 2280 IF(THERE=0) THEN PRINT "ERROR---INPUT FILE NOT FOUND" : GO TO END 2290 OPEN #1, FNAME1$, INPUT 2300 LOOKUP FNAME2$, THERE 2310 IF(THERE <> 0) THEN ? "ERROR---OUTPUT FILE EXISTS !" : GO TO END 2320 OPEN #2, FNAME2$, OUTPUT 2330 2340 REM ...... SET INITIAL CONDITIONS 2350 XLINE=0 2360 INCR=10 2370 PRINT 2380 PRINT 2390 2400 2410 2420 NEXT'LINE: 2430 INPUT LINE #1, TEXT$ 2440 IF(EOF(1)=1) THEN GO TO END'OF'FILE 2450 SLINE$="" 2460 2470 NEXT'DIGIT: 2480 CHAR$=LEFT$(TEXT$,1) 2490 IF(CHAR$ < "0" OR CHAR$ > "9") THEN GO TO INPUT'LINE'NUMBER 2500 SLINE$=SLINE$+CHAR$ 2510 L=LEN(TEXT$) 2520 TEXT$=RIGHT$(TEXT$,L-1) 2530 GO TO NEXT'DIGIT 2540 2550 INPUT'LINE'NUMBER: 2560 PRINT SLINE$+TEXT$ 2570 PRINT 2580 YLINE=XLINE+INCR 2590 PRINT USING "NEW ! : <#####>", SHARP$, YLINE; 2600 FOR I=1 TO 6 : PRINT CHR(8); : NEXT I 2610 INPUT "" YLINE 2620 IF(YLINE > XLINE) THEN GO TO RESEQUENCE 2630 PRINT "ERROR---LINE #"; YLINE; "OUT OF SEQUENCE" 2640 PRINT TAB(-1,3); TAB(-1,3); TAB(-1,3); TAB(-1,3); 2650 GO TO INPUT'LINE'NUMBER 2660 2670 RESEQUENCE: 2680 INCR=YLINE-XLINE 2690 XLINE=YLINE 2700 2710 REM ...... WRITE RE-NUMBERED LINE TO OUTPUT FILE 2720 NLINE$=STR$(XLINE) 2730 PRINT #2, NLINE$+TEXT$ 2740 2750 REM ...... UPDATE SCREEN 2760 PRINT TAB(-1,3); TAB(-1,3); TAB(-1,3); NLINE$; 2770 IF(LEN(NLINE$) <> LEN(SLINE$)) THEN PRINT TAB(-1,9); TEXT$; 2780 PRINT 2790 PRINT TAB(-1,10); 2800 GO TO NEXT'LINE 2810 2820 2830 2840 2850 END'OF'FILE: 2860 CLOSE #1 2870 CLOSE #2 2880 PRINT 2890 PRINT "[END OF SOURCE TEXT]" 2900 PRINT 2910 2920 REM ...... AGAIN ? 2930 COMD$="N" 2940 INPUT "DO YOU WANT TO RENUMBER ANOTHER FILE ('Y' OR 'N') : ", COMD$ 2950 IF(COMD$="Y") THEN GO TO NEW'FILE 2960 2970 END: 2980 END