0 'TASKDP.BA - By Alex Jacobs 1 'Club 100 Library - 415/939-1246 BBS, 937-5039 NEWSLETTER, 932-8856 VOICE 2 ' This program will break out, sort, and dump your TMPC Task File to a RAM 3 ' file. The sort on the year bug has been corrected. -Alex Jacobs- 4 CLEAR1500:MAXFILES=2:CLS:DIMD$(3),B$(3),SA$(200):PRINT@127,"Input Task File Name ";:INPUTFN$:FN$=FN$+".DO":CLS:OF$=LEFT$(FN$,4)+"DP.DO":PRINT@133,"Please wait...":YR=VAL(RIGHT$(DATE$,2)):OPENFN$FORINPUTAS#1:OPENOF$FOROUTPUTAS#2:C=0:A$=INPUT$(4,1) 5 IFA$<>"tMpC"THENCLOSE:CLS:PRINT@130,"Not a Task File":END 6 A$=INPUT$(3,1) 7 FORX=1TO1000:IFC=3THENC=0:GOTO11 8 IFEOF(1)THENCLOSE:GOTO31 9 A=ASC(INPUT$(1,1))-32:IFA=0THENC=C+1:GOTO7 10 A$=INPUT$(1,1):K=ASC(A$)-32:A$=INPUT$(K,1):NEXT 11 FORX=1TO1000:IFEOF(1)THENCLOSE:GOTO31 12 A$=INPUT$(6,1):IFA$=" "THENGOTO14 13 N=2:GOSUB19:A$=INPUT$(1,1):A=ASC(A$)-32:A$=INPUT$(A,1):PRINT#2,A$:NEXT 14 FORX=1TO100:A$=INPUT$(6,1):IFA$=" "THENGOTO16 15 GOSUB21:A=ASC(INPUT$(1,1))-32:A$=INPUT$(A,1):PRINT#2,A$:NEXT 16 FORX=1TO100:IFEOF(1)THENCLOSE:GOTO31 17 A$=INPUT$(11,1):IFEOF(1)THENCLOSE:GOTO31 18 GOSUB23:A=ASC(INPUT$(1,1))-32:A$=INPUT$(A,1):PRINT#2,A$:NEXT 19 FORI=1TO3:J=ASC(MID$(A$,I+N,1))-32:IFI=3THENJ=J+80 20 D$(I)=RIGHT$(STR$(J),2):NEXTI:PRINT#2,D$(2)+"/"+D$(1)+"/"+D$(3)+" ";:RETURN 21 N=ASC(MID$(A$,3,1))-32:GOSUB29:L$=MID$("1st2nd3rd4th5thLst",(Y*3)+1,3):PRINT#2,L$;" ";:N=ASC(MID$(A$,4,1))-32:GOSUB29:L$=MID$("SunMonTueWenThuFri",(Y*3)+1,3):IFN=0THENL$="Sat" 22 PRINT#2,L$+" ";:RETURN 23 N=ASC(MID$(A$,9,1))-32:GOSUB29:M=Y+1:IFN=0THENN=ASC(MID$(A$,10,1))-32:GOSUB29:M=Y+1:GOTO25 24 GOSUB26:RETURN 25 M=M+6:GOSUB26:RETURN 26 FORX=3TO8:IFEOF(1)THENCLOSE:GOTO31 27 N=ASC(MID$(A$,X,1))-32:IFN=0THENNEXTX 28 GOSUB29:E=Y+1:D=((X-3)*6)+E:PRINT#2,USING"##/##/## ";M,D,YR;:RETURN 29 FORZ=0TO5:IFN=2^ZTHENY=Z:RETURN 30 NEXT:RETURN 31 OPENOF$FORINPUTAS1:FORJ=1TO300:IFEOF(1)THENCLOSE:GOTO33 32 LINEINPUT#1,SA$(J):NEXTJ 33 CLS:PRINT@130,"Sorting........":NI=J:GOSUB34:CLOSE:GOTO40 34 Y=NI 35 Y=INT(Y/2):IFY<1THENRETURN 36 Z99=NI-Y:FORK9=1TOZ99:I=K9 37 E2=I+Y:S1$=MID$(SA$(I),7,2)+LEFT$(SA$(I),5):S2$=MID$(SA$(E2),7,2)+LEFT$(SA$(E2),5):IFS1$<=S2$THEN39 38 SV$=SA$(I):SA$(I)=SA$(E2):SA$(E2)=SV$:I=I-Y:IFI>0THEN37 39 NEXTK9:GOTO35 40 CLS:PRINT@130,"Dumping File":OPENOF$FOROUTPUTAS1:FORX=1TO500:IFX>1ANDSA$(X)=""THENCLOSE:END 41 PRINT#1,SA$(X):NEXT