10 !USED TO FIX MAIL.TXT HEADERS SHOULD THEY BECOME INACCURATE. ! 15 ON ERROR GOTO 20000 20 EXTEND 30 PRINT "Account with MAIL.TXT file to re-headerize"; \ INPUT LINE ACCOUNT$ \ ACCOUNT$=CVT$$(ACCOUNT$,-1%) 40 OPEN ACCOUNT$+"MAIL.TXT" FOR INPUT AS FILE 1%,MODE 4096% 50 MCOUNT%=0%\ STX$=CHR$(2%)\ INPUT LINE #1%,JUNK$ ! Skip the old header ! 60 INPUT LINE #1%,JUNK$ \ JUNK$=CVT$$(JUNK$,5%) 70 IF LEFT(JUNK$,1%)<>STX$ THEN 60 ! Read records until a msg header is hit ! 80 MCOUNT%=MCOUNT%+1% \ DATIME$=MID(JUNK$,30%,13%) \ HIMSGNO$=MID(JUNK$,2%,5%) \ GOTO 60 ! Increment msg count, d/t of latest msg read, msg # of this one ! 90 ! 95 IF MCOUNT%=0% THEN PRINT "No messages in "+ACCOUNT$+"MAIL.TXT..." \ GOTO 32767 ! 100 CLOSE 1% \ OPEN ACCOUNT$+"MAIL.TXT" FOR INPUT AS FILE 1%,MODE 2% \ FIELD #1%,5% AS N0$,5% AS N1$,13% AS N2$,13% AS N3$,13% AS N4$ \ GET #1%,RECORD 1% 110 MCOUNT$=NUM1$(MCOUNT%) \ MCOUNT$="0"+MCOUNT$ UNTIL LEN(MCOUNT$)=5% \ DT$=CVT$$(DATE$(0%),-1%)+CVT$$(TIME$(0%),-1%) \ DT$=LEFT(DT$,11%)+RIGHT(DT$,13%) 120 LSET N0$=MCOUNT$ \ LSET N1$=HIMSGNO$ \ LSET N2$=DATIME$ \ LSET N3$=DT$ \ LSET N4$=DT$ \ PUT #1%,RECORD 1% \ CLOSE 1% ! Update the header ! 130 PRINT\ PRINT "Successfully re-headerized..." \ PRINT \ GOTO 32767 200 ! 20000 ! 20010 IF ERL=40 THEN PRINT "No MAIL.TXT file on account ";ACCOUNT$ \ RESUME 32767 20020 IF ERL=50 THEN PRINT "MAIL.TXT is zero length..." \ RESUME 32767 20030 IF ERR=11% AND ERL=60 THEN RESUME 90 !Normal trap 20040 ON ERROR GOTO 0\ STOP ! Misc. errors ! 32767 CLOSE 1%\ END