TOOLED.BA by Carmen Paone [72677,42] Have you ever typed in a program from Portable 100 or some other magazine and wished that your favorite laptop would automatically put in the line numbers for you? TOOLED.BA will do just that. It also will do the following: *Put a range of line numbers of your choice in a .DO file you select. *Renumber a .DO file of your choice. *Checksum a .DO file of your choice. When each of the functions of TOOLED.BA end, you will be placed back in the main menu. --------------------------------------- A special thanks to Tony Anderson [76703,4062] for teaching me how to eliminate the space before numbers placed in a .DO file I modified RESEQ.100 by Ray Yeargin [71646,1322] for this program. ------------------------------------- Select and cut the program below the dotted line and paste it into a .DO file. Run the .DO file through BASIC and save it as TOOLED.BA ..................................... 0 REM TOOLED.BA By CARMEN PAONE [72677,42] 1 CLS:LINE(60,20)-(180,50),1,B:LINE(100,8)-(100,19):LINE(140,8)-(140,19):LINE(101,8)-(101,19):LINE(141,8)-(141,19):LINE(102,8)-(139,12),1,B:PRINT@131,STRING$(18,241):PRINT@175,"TOOLED.BA":PRINT@211,STRING$(18,241):FORT=1TO1499:NEXT 2 CLS:LINE(60,20)-(180,50),1,B:LINE(60,1)-(180,19),1,B:LINE(62,3)-(178,17),1,B:PRINT@132,"By CARMEN PAONE":PRINT@175,"[72677,42]":PRINT@211,STRING$(18,241):FORT=1TO1499:NEXT:CLS:LINE(10,1)-(228,45),1,B:LINE(30,5)-(208,40),1,B 3 PRINT@47," 1) AUTOMATIC NUMBERING":PRINT@87," 2) NUMBERING A DO FILE":PRINT@127," 3) RENUMBER A DO FILE":PRINT@167," 4) CHECKSUM A DO FILE":PRINT:INPUT" PICK A NUMBER [0 FOR MENU]";N:IFN=0THENMENU 4 IFN=1GOTO10 5 IFN=2GOTO8 6 IFN=3GOTO15 7 IFN=4GOTO12 8 CLS:RV$=CHR$(27)+"p":NV$=CHR$(27)+"q":LINE(10,10)-(228,28),1,BF:PRINT@90,RV$"NUMBERS IN A .DO FILE"NV$:MAXFILES=1:PRINT:INPUT"FILE";F$:OPENF$FORAPPENDAS1:INPUT"START LINE";S:INPUT"END LINE";E:INPUT"STEP";X:FORI=STOESTEPX:A$=STR$(I) 9 PRINT#1,MID$(A$,2):NEXTI:MENU 10 CLS:RV$=CHR$(27)+"p":NV$=CHR$(27)+"q":LINE(0,10)-(238,28),1,BF:PRINT@88,RV$"AUTOMATIC LINE NUMBERING"NV$:MAXFILES=1:PRINT:INPUT"FILE";F$:OPENF$FORAPPENDAS1 11 INPUT"STARTING LINE";S:INPUT"ENDING LINE";E:INPUT"STEP";X:CLS:FORI=STOESTEPX:PRINTI;:LINEINPUTA$:I$=STR$(I):PRINT#1,MID$(I$,2)+" "A$:NEXTI:IFI<>ETHENMENU 12 CLS:RV$=CHR$(27)+"p":NV$=CHR$(27)+"q":LINE(0,10)-(238,28),1,BF:PRINT@90,RV$"CHECKSUM A .DO FILE"NV$:PRINT:INPUT"FILE";F$:OPENF$FORINPUTAS1:CLS 13 IFEOF(1)THENPRINT"CHECKSUM"C:FORT=1TO4999:NEXT:MENUELSEL=L+1:LINEINPUT#1,A$:N=LEN(A$):IFN>WTHENW=N 14 PRINT@121,L"lines, width"W;:IFN=0THEN13ELSEFORI=1TON:C=C+ASC(MID$(A$,I,1)):NEXT:GOTO13 15 CLS:RV$=CHR$(27)+"p":NV$=CHR$(27)+"q":LINE(0,10)-(238,28),1,BF:PRINT@90,RV$"RENUMBER A .DO FILE"NV$:CLEAR999:MAXFILES=2:DEFSTRD-I:PRINT:INPUT"FILE [ADD .DO]";F:GOSUB21 16 LINEINPUT#1,E:IFNOTEOF(1)THENZ=Z+1:GOTO16 17 DIMA(Z):GOSUB21:INPUT"FIRST NUMBER";M:INPUT"STEP";K:FORY=0TOZ:LINEINPUT#1,E:A(Y)=VAL(E):NEXT:GOSUB21:OPEN"X"FOROUTPUTAS2:FORY=0TOZ:LINEINPUT#1,E:E=MID$(STR$(M+K*Y),2)+MID$(E,LEN(STR$(VAL(E)))):RESTORE:FORS=1TO6:J=1:READD 18 J=INSTR(J,E,D):IFJTHENJ=J+LEN(D)ELSENEXT:PRINT#2,E:NEXT:CLOSE:KILLF:NAME"X.DO"ASF:MENU 19 H=MID$(E,J,1):IFH=" "ORH=","THENJ=J+1:GOTO19ELSEIFH<"0"ORH>"9"THEN18ELSEV=VAL(MID$(E,J)):W=LEN(STR$(V))-1:C=-1 20 C=C+1:IFC>ZTHENPRINTETAB(J-1)"BAD#":ENDELSEIFV=A(C)THENG=STR$(M+K*C):E=LEFT$(E,J-1)+MID$(G,2)+MID$(E,J+W):J=J+LEN(G):GOTO19ELSE20 21 CLOSE:OPENFFORINPUTAS1:RETURN:DATAGOTO,GOSUB,THEN,ELSE,RESTORE,RESUME