1 CLEAR500,&H7FFF:A$=INKEY$:LL=76:J9=0 2 FORX=0TO7:DATE$=DATE$+CHR$(PEEK(&H422+X)):NEXTX:FORX=1TO32:ST$=ST$+CHR$(PEEK(&H440+X)):IF PEEK(&H440+X)<>13 THEN NEXTX ELSE X=33:NEXTX 3 FORX=0TO7:READA:PALETTEX,A:PALETTEX+8,A:NEXTX 4 DATA 0,36,18,54,11,40,27,63 5 A=PEEK(&H421):IF (A AND 32)=32 THEN BAUD=1200 ELSE BAUD=300 6 CLS1:CLS1:ATTR7,0:GOTO 45 7 ' 8 'BBS EDITOR 9 IF LL=0 THEN LL=76 10 A=USR3(0):POKE&H50C,LL:POKE&H50F,0:X=0 11 PRINTCHR$(12);"Title: ";TT$:PRINTSTRING$(LL,"-"):A$="<$d3$>Color <$d2$>Legends <$d6$>Editor <$d4$>Subsystem 4.3<$d7$>":GOSUB247:PRINT"Enter 24 lines of";LL;"column text.":PRINT"A . or / in column 1 will activate these editor commands" 12 PRINT"A=abort D=delete E=edit L=list S=save R=read w/ SEC" 13 PRINT" ?=HELP":PRINTSTRING$(LL-3,"-");:PRINT">*" 14 X=PEEK(&H50F):IF X>=23 THEN 17 ELSE A=USR3(1):IF A=-1 THEN 347 15 IF A=1 THEN PRINT"OUT OF ROOM!":GOTO 16 16 ' Main-Line Editor Sub Commands 17 PRINT "(E> "; 18 A=USR(0):IFA=-1THEN347ELSEIF A=8 THEN PRINTSTRING$(4,8);:GOTO 14 19 IF A>96 THEN A=A-32:B$=CHR$(A) 20 B$=CHR$(A) 21 C=INSTR("ADELRS?",B$):ON C GOTO 23,28,32,37,38,39,43 22 PRINTCHR$(7);:GOTO 18 23 PRINT " Abort - Are you sure? (Y/N) "; 24 A=USR0(0):IFA=-1THEN347ELSEIF A>94 THEN A=A-32 25 C$=CHR$(A):IF C$="N" THEN PRINT STRING$(PEEK(&HFE02),8);:GOTO 14 26 IF C$<>"Y" THEN PRINTCHR$(7);:GOTO 24 27 PRINT" Yes":PRINT:PRINT"Message aborted!":PRINT:PRINT:CL=-1:CLOSE:GOTO97 28 PRINT " Delete a line-Which line to delete [X-Y]? (0=Abort) ";:POKE&H402,0:POKE&H403,0:A$=STRING$(10,0): 29 A=USR0(VARPTR(A$)):IFA=-1THEN347ELSEIF VAL(A$)<1 OR VAL(A$)>23 THEN PRINT" None":PRINT:GOTO15ELSEIFINSTR(A$,"-")=0THENFD=VAL(A$):LD=FD:GOTO30ELSEGOSUB416 30 X=PEEK(&H50F):A=VAL(A$):A=FD:FORPC=1 TO (LD-FD)+1:FORZ=(A-1) TO 23:A$=STRING$(128,0):POKE&H500,3:POKE&H501,Z+1:Q=USR1(VARPTR(A$)):POKE&H501,Z:A$=A$+CHR$(0):Q=USR2(VARPTR(A$)):NEXTZ:X=X-1:NEXTPC:POKE &H50F,X 31 PRINT:PRINT:IF FD<>LD THEN PRINT" Lines"FD"-"LD" deleted.":PRINT:GOTO14 ELSE PRINT" Line "FD" deleted.":PRINT:GOTO14 32 PRINT " Edit a line- Which line to edit? (0=Abort) ";:POKE&H402,0:POKE&H403,0:A$=STRING$(4,0):A=USR0(VARPTR(A$)):IFA=-1THEN347ELSEIF VAL(A$)<1 OR VAL(A$)>X THEN PRINT" None":GOTO14 33 L=VAL(A$):PRINT:PRINT"Old line- Enter a new line or press RETURN for no change.":A$=STRING$(128,0):POKE&H500,3:POKE&H501,L-1:A=USR1(VARPTR(A$)):PRINTA$ 34 PRINT:A$=STRING$(LL-1,0):B=USR0(VARPTR(A$)):IFB=-1THEN347ELSE IF LEN(A$)<1 THEN PRINT"No changes made- continue mssage.":PRINT:GOTO 14 35 Z=INSTR(A$,CHR$(13)):IF Z=0 THEN Z=LL 36 A$=A$+CHR$(0)+CHR$(0):A=USR2(VARPTR(A$)):PRINT:GOTO 14 37 PRINT" List the message.":PRINT:FORZ=0 TO PEEK(&H50F):PRINT Z+1;") ";:A$=STRING$(128,0):POKE&H500,3:POKE&H501,Z:A=USR1(VARPTR(A$)):PRINTA$:NEXTZ:PRINT:GOTO14 38 ZZ=X:PRINT" SEC read message.":PRINT:FORZ=0 TO PEEK(&H50F):A$=STRING$(128,0):POKE&H500,3:POKE&H501,Z:A=USR1(VARPTR(A$)):GOSUB247:NEXTZ:X=ZZ:PRINT:GOTO14 39 PRINT" Save message- Do you want to save this? (Y/N) "; 40 A=USR0(0):IFA=-1THEN347ELSEA$=CHR$(A):IF A$="N" OR A$="n" THEN PRINT:GOTO15 41 IF A$<>"Y" AND A$<>"y" THEN 40 42 LA=PEEK(&H50F):RETURN 43 PRINT" Help (Command List)":PRINTSTRING$(LL-1,"=") 44 PRINT "A=abort D=delete E=edit L=list R=sec read S=save":PRINTSTRING$(LL,"="):PRINT:GOTO 14 45 ' 46 'Main-Line Code 47 ' 48 ' 49 SYSOP$="Genius" 50 BA$(0)="Mail":BA$(1)="General":BA$(2)="Topic 'X'":BA$(3)="Federation council":BA$(4)="Music":BA$(5)="Genius's Lab":BA$(6)="CoCo Consultants":SD(0)=2:SD(1)=0:SD(2)=0:SD(3)=0:SD(4)=2:SD(5)=2:SD(6)=2 51 BN$(0)="MAIL":BN$(1)="GENERAL":BN$(2)="TOPIC X":BN$(3)="COUNCIL":BN$(4)="MUSIC":BN$(5)="LAB":BN$(6)="COMPUTER" 52 IF PEEK(&H420)<>0 THEN LOCATE 0,6:GOTO 75 53 POKE&H406,0:CLS1:ATTR 1,6:PRINT"Color Legends BBS 2.1":PRINT"(C) 1987 By Mike Pepe and Jason Dessel - Radical Vision Systems, Inc.":PRINT"Special thanx to Richard Tsao":PRINT:ATTR7,0 54 ATTR 4,1:LOCATE 30,10:PRINT"The Big Generator!!";:LOCATE 30,12:ATTR 3,0:PRINT"A Color Legends BBS":LOCATE 32,20:ATTR 6,0,U:PRINT"Waiting for call";:ATTR7,0:LOCATE 0,22 55 X=PEEK(&HFF20)AND1 56 A$=INKEY$ 57 IF A$="L" OR A$="l" THEN POKE&H406,0:POKE&H410,0:POKE&H420,1:RUN ELSE IF A$="S" OR A$="s" THEN GOTO413 ELSE IF A$<>"" THEN POKE&H406,0:POKE&H410,0:GOTO 60 58 IF X=0 THEN 55 59 POKE&H410,1:POKE&H406,1 60 PRINTCHR$(12);CHR$(7):LOCATE0,0:ATTR4,3:PRINTTAB(40-11);"(* Carrier Detected *)":PRINT:PRINT:PRINT:ATTR7,0:PRINT:FORX=1TO50:NEXTX61 PRINT "Connection Established.":PRINT 62 PRINT:PRINT"Can your terminal display ANSI Color? ";:A=USR(0):IFA=-1THEN347ELSEA$=CHR$(A) 63 IF A$="Y" OR A$="y" THEN PRINT"Of Course!!!":POKE&H418,0:GOTO 66 64 IF A$="N" OR A$="n" THEN PRINT"Nope":ANSI=-1:POKE&H418,1:GOTO 66 65 GOTO 62 66 FORX=1TO600:NEXTX:POKE&H500,2:LA=2:PRINTCHR$(12);:GOSUB412 67 PRINT:A$="<$D7$>":GOSUB247:ON BRK GOTO 0 68 J9=J9+1:IF J9=4 THEN PRINT"Call back when you get your act together!!":GOTO 241ELSEPOKE&HFF40,0:PRINT:PRINTCHR$(7);:A$="<$d4$><$e0$>Enter your <$d6$>User number,<$d4$> or NEW!<$d7$>":GOSUB247:PRINT 69 PRINT"Enter user number here!> ";:POKE&H402,1:POKE&H403,1:A$=STRING$(3,0):A=USR0(VARPTR(A$)):IFA=-1THEN347 70 IF A$="NEW" THEN 152 71 IF (VAL(A$)=0 AND A$<>"NEW") OR VAL(A$)<1 THEN PRINTCHR$(7):A$="<$d5$>Try again!<$D7$>":GOSUB247:J9=J9+1:IF J9=4 THEN PRINT"Call back when you get your act together!":GOTO241ELSEPRINT:GOTO69 72 UL=VAL(A$) 73 PRINT:A$="<$D2$>Enter your <$D3$>password.<$D7$>":GOSUB247:PRINT:PRINT"PW > ";:A$=STRING$(15,0):A=USR0(VARPTR(A$)):IFA=-1THEN347ELSEIF LEN(A$)<16 THEN A$=A$+STRING$(16-LEN(A$),32) 74 PL$=A$:PRINT:PRINT"*** Checking Password! ***" 75 IF PEEK(&H420)<>0 THEN UL=PEEK(&H420) 76 DRIVE0:OPEN"D",#1,"USERLOG/BBS:0",64:IF UL>LOF(1) THEN PRINT"INVALID!":FORX=1TO1000:NEXTX:CLOSE:GOTO 68 77 FIELD#1,16 AS NM$,16 AS PW$,5 AS LV$,5 AS CN$,5 AS TC$,8 AS LD$ 78 GET#1,UL:IF PEEK(&H420)=0 AND PW$<>A$ THEN CLOSE:A$="<$E5$>Incorrect number and/or password<$E0$>":CLOSE:FORX=1TO1000:NEXTX:GOTO68 79 UN=UL:OPEN"D",#2,"BBSTAT/BBS:0",32:FIELD#2,5 AS CL$,5 AS CT$,16 AS LC$:GET#2,1 80 CL=CVN(CL$):CT=CVN(CT$):IF PEEK(&H420)<>0 THEN CLOSE#2:GOTO 81 ELSE CL=CL+1:CT=CT+1:LSET CT$=MKN$(CT):LSET CL$=MKN$(CL):LO$=LC$:LSET LC$=NM$:PUT#2,1:CLOSE#2 81 LAST$=LD$:NA$=NM$:LV=CVN(LV$):LO=CVN(CN$):POKE&H419,LO:TC=CVN(TC$):IF PEEK(&H420)=0 THEN TC=TC+1:LSET TC$=MKN$(TC):LSET CN$=MKN$(CT):LSET CN$=MKN$(CL):LSET LD$=DATE$:PUT #1,UL:CLOSE ELSE IF PEEK(&H420)<>0 THEN CLOSE:GOTO 86 82 PRINTCHR$(12);CHR$(13);"Dude! It's ";NA$:PRINT"Level ";LV:PRINT"Caller number ";CL;" - Last number ("LO")":PRINT:PRINT"The last caller was ";LO$:PRINT CT;" Calls today.":PRINT"You have called here";TC;" times." 83 PRINT:PRINT "The SysOp is ";ST$:PRINT:PRINT"SysOp is ";:IF PEEK(&H440)=0 THEN 84 ELSE PRINT "not "; 84 PRINT"available for a chat.":PRINT 85 PRINT"Your last call was on ";LA$:PRINT"Today's date is ";DA$:PRINT:PRINT 86 XP=PEEK(&HFE03):P=PEEK(&H406):LOCATE 0,0:ATTR 5,6,B:POKE&H406,0:PRINT"Online now:":ATTR 6,5:PRINTNA$;" Level";LV:PRINT"Caller";CL", "TC" Total Calls, Last call date ";LAST$:PRINT:LOCATE 0,XP:ATTR 7,0:POKE&H406,P 87 IF PEEK(&H418)<>96 AND PEEK(&H419)<>96 THEN ANSI=PEEK(&H418):LO=PEEK(&H419):BN=1:PRINT"Pulverize your RETURN key!";:POKE&HFF40,0ELSEPRINT"Pulverize your RETURN key!";:POKE&HFF40,0 88 A=USR(0):IF A=-1 THEN 347 ELSE IF A<>13 THEN PRINTCHR$(7);:GOTO 88 89 PRINTCHR$(12);"Welcome to The Big Generator BBS, ";NA$;"!!!":PRINT:PRINT 90 IF PEEK(&H420)=0 THEN 93 ELSE LO=256*PEEK(&H40E)+PEEK(&H40F) 91 PRINT:PRINT"Returned to BBS main menu!":PRINT:PRINT:POKE &H420,0:GOTO 100 92 A=PEEK(&H422):POKE &H406,(A AND 32) 93 OPEN"D",#1,"BBSTAT/BBS:0",128:FIELD#1,128 AS A$:GET#1,2:GOSUB247::PRINT:CLOSE#1:POKE&HFF40,0 94 QQ$=STRING$(128,0):POKE&H500,2:POKE&H501,32:A=USR1(VARPTR(QQ$)) 95 PRINT"Do you want to read the System News dated "QQ$"? "; 96 A=USR0(0):IF A=-1 THEN 346 ELSE A$=CHR$(A):IFA$="N" OR A$="n" THEN PRINT"NO!":GOTO99 ELSEIF A$="Y" OR A$="y" THEN 97 ELSE 96 97 PRINT "Yeah!":PRINT:A$="<$d6$>System News:<$d7$>":GOSUB247 98 POKE&H500,2:LA=32:GOSUB412 99 DRIVE0:IFOO=0 THEN GOTO 293 100 ANSI=PEEK(&H418) 101 ONERRGOTO386:DRIVE0:ONBRKGOTO0:CLOSE#1:OO=0:POKE&HFF40,0:IF (BN=0 AND LV<>7) THEN BN=1 102 A=RND(PEEK(&H502))-1:A$=STRING$(128,0):POKE&H500,0:POKE&H501,A:A=USR1(VARPTR(A$)):GOSUB247:PRINT 103 A$="<$d7$>":GOSUB247:PRINT"[Main]["BA$(BN)"] Command >"; 104 A=USR(0):IFA=-1THEN347ELSEIF A>97 THEN A$=CHR$(A-32) ELSE A$=CHR$(A) 105 IF A=4 THEN 331ELSE IF A=64 THEN K=PEEK(&H406):K=K+1:K=K AND 1:POKE&H406,K:K=PEEK(&H408):K=K+1:K=K AND 1:POKE &H408,K 106 IF A$="F" THEN A$="<$d1$>Feedback to sysops<$D7$>":GOSUB247:GOTO159 107 IF A$="?" THEN A$="<$D2$>Help with BBS commands<$D7$>":GOSUB247:GOTO166 108 IF A$="S" THEN A$="<$D3$>Send Email<$D7$>":GOSUB247:GOTO172 109 IF A$="=" THEN A$="<$D4$>Change sub-board<$D7$>":GOSUB247:GOTO183 110 IF A$="P" THEN A$="<$D5$>Post message<$D7$>":GOSUB247:GOTO199 111 IF A$="R" THEN A$="<$D6$>Read messages<$D7$>":GOSUB247:GOTO212 112 IF A$="G" THEN A$="<$d1$>Goodbye/Logoff/Hangup<$d7$>":GOSUB247:PRINT:GOTO 236 113 IF A$="W" THEN A$="<$d6$>Editor width change<$d7$>":GOSUB247:PRINT:GOTO388 114 IF A=19 THEN 239 115 IF A$="U" THEN A$="<$D2$>Userlist<$D7$>":GOSUB247:PRINT:GOSUB 275:GOTO 101 116 IF A$="T" THEN PRINT"Title scan of board";BN:GOTO284ELSEIFA$="+"THENPRINT"Read System News":OO=1:GOTO94 117 IF A$="I" THEN A$="<$d2$>System Info<$d7$>":GOSUB247:POKE&H500,3:LA=0:GOSUB412:GOTO101 118 IF A$="C" THEN A$="<$D3$>Chat with Genius!<$D7$>":GOSUB247:GOTO 327 119 IF A$="A" THEN A$="<$D4$>Change Auto-Message<$D7$>":GOSUB247:GOSUB242:GOTO 101 120 IF A$="*" THEN IF ANSI=0 THEN ANSI=1:PRINT"ANSI color [off]":GOTO101:ELSEPRINT"ANSI color [on]":ANSI=0:GOTO101 121 IF A$="%" THEN A$="<$D5$>Enter system level...<$D7$>":GOSUB247:IFLV<5 THEN PRINT"Access too low!":GOTO101ELSEFI$="SYSOP/MOD:2":GOTO 340 122 IF A$="X" THEN A$="<$D6$>X-Fer subs<$D7$>":GOSUB247:GOTO410 123 IF A$="H"THENA$="<$d3$>Help with SEC/ANSI commands<$D7$>":GOSUB247:FORX=1TO600:NEXTX:PRINTCHR$(12):POKE&H500,3:LA=32:GOSUB412:GOTO101 124 IF A$="N" THEN PRINT"New message scan":GOTO 349 125 IF A$="Y" THEN PRINT"Your stats":GOTO 405 126 IF A$="O" THEN A$="<$D3$>Online Game [Galactic Conflict]<$D7$>":GOSUB247: IFLV<2 THEN PRINT"Access too low!":GOTO101ELSEFI$="GALACTIC/ONL:1":GOTO340 127 PRINT:PRINT"Unrecognized command- enter a ? for a menu.":PRINT:GOTO101 128 'DOS 129 'SAVE 130 OPEN"D",#1,"BBSTAT/BBS",35:FIELD#1,5 AS B0$,5 AS B1$,5 AS B2$,5 AS B3$,5 AS B4$,5 AS B5$,5 AS B6$:GET#1,2 131 ON BN GOTO 133,134,135,136,137,138 132 PN=CVN(B0$)+1:LSET B0$=MKN$(PN):GOTO 139 133 PN=CVN(B1$)+1:LSET B1$=MKN$(PN):GOTO 139 134 PN=CVN(B2$)+1:LSET B2$=MKN$(PN):GOTO 139 135 PN=CVN(B3$)+1:LSET B3$=MKN$(PN):GOTO 139 136 PN=CVN(B4$)+1:LSET B4$=MKN$(PN):GOTO 139 137 PN=CVN(B5$)+1:LSET B5$=MKN$(PN):GOTO 139 138 PN=CVN(B6$)+1:LSET B6$=MKN$(PN):GOTO 139 139 IF PN>16 THEN DRIVE SD(BN):KILL B$(BN)+"/ 1":FORQ5=2TO16:RENAME BN$(BN)+"/"+STR$(Q5) TO BN$(BN)+"/"+STR$(Q5-1):NEXTX:CLOSE:PN=16:GOTO141 140 PUT#1,2:CLOSE#1 141 DRIVESD(BN):OPEN"O",#2,BN$(BN)+"/"+STR$(PN):PRINT#2,"From: ";MF$:PRINT#2," To: ";MT$:PRINT#2," Re: ";TT$:PRINT#2,"Date: ";DATE$;"-";CL:PRINT#2,CHR$(13):FORX=0TOLA:POKE&H500,3:POKE&H501,X:A$=STRING$(128,0):A=USR1(VARPTR(A$)):PRINT#2,A$:NEXTX:CLOSE 142 PRINT:PRINT"Message";PN;" saved.":RETURN 143 'LOAD 144 DRIVE SD(BN):OPEN"I",#1,BN$(BN)+"/"+STR$(MN):LI=0 145 IF EOF(1) THEN 149 146 LINEINPUT#1,A$ 147 GOSUB 247 148 GOTO 145 149 CLOSE#1:RETURN 150 ' 151 ' 152 PRINTCHR$(12):LOCATE0,2:ATTR6,0,B:PRINT"New User Validation Application";:ATTR7,0:LOCATE 0,5:PRINT:PRINT:POKE&H500,1:LN=32 153 POKE&H501,LN:LN=LN+1:A$=STRING$(128,0):A=USR1(VARPTR(A$)):IFLEN(A$)>2 THEN GOSUB 247:GOTO 153 154 PRINT:PRINT:A$=STRING$(16,0):PRINT"Enter your handle (16 Char max) >";:POKE&H402,0:POKE&H403,0:A=USR0(VARPTR(A$)):IFA=-1THEN347ELSEPRINT:PRINT A$;" <= Is this correct?(Y/N) ";:A=USR0(0):IFA=-1THEN347ELSEB$=CHR$(A):IFB$="N"ORB$="n" THENPRINT:GOTO154 155 PRINT:PRINT:PRINT"Enter your password (16 Chars max) >";:POKE&H403,1:C$=STRING$(16,0):A=USR0(VARPTR(C$)):IFA=-1THEN347ELSEPRINT:PRINTC$;" <= Is this correct? (Y/N) ";:A=USR(0):IFA=-1THEN347ELSEB$=CHR$(A):IFB$="N" OR B$="n" THEN PRINT:GOTO155 156 PRINT:PRINT"Saving your account...":OPEN"D",#1,"USERLOG/BBS:0",64:FIELD#1,16 AS NM$,16 AS PW$,5 AS LV$,5 AS CN$,5 AS TC$,8 AS LD$:LSET NM$=A$:LSET PW$=C$:LSET LV$=MKN$(0):LSET CN$=MKN$(0):LSET TC$=MKN$(0):LSET LD$="00/00/00":L=LOF(1):PUT#1,L+1:CLOSE 157 PRINT:PRINTSTRING$(20,"="):PRINT"your user number is: ";L+1:PRINT"your password is ";C$:PRINT:PRINT"Write it down, and then press RETURN to continue.":A$=CHR$(0):A=USR0(VARPTR(A$)):IFA=-1THEN347 158 A$="<$d3$>Logon test. Get ready to type in your <$d1$>account number & password<$d7$>":GOSUB247:PRINT:FORX=1TO1500:NEXTX:J9=0:LO=0:GOTO68 159 ' SEND FEEDBACK 160 PRINT:PRINT"Send Feedback to the Sysop? (y/n) ";:A=USR0(0):IFA=-1THEN347 161 A$=CHR$(A):IF A$="N" OR A$="n" THEN PRINT:PRINT:GOTO101 162 IF A$<>"Y" AND A$<>"y" THEN PRINTCHR$(7);:PRINT"No!!":GOTO162 163 TT$="Feedback":GOSUB8 164 IF LL=-1 THEN PRINT:PRINT"Message aborted! "CHR$(7):GOTO101 165 BN=0:MT$=SYSOP$+" - 1":MF$=NA$+" -"+STR$(UN):GOSUB 129:PRINT:PRINT:GOTO101 166 'MAIN MENU 167 POKE&H500,1:LN=0:FORX=1TO500:NEXTX:PRINTCHR$(12):PRINT 168 POKE&H501,LN:LN=LN+1:A$=STRING$(128,0):A=USR1(VARPTR(A$)) 169 IF INSTR(A$,"@")=0 THEN GOSUB 247:GOTO 168 170 PRINT:PRINT:GOTO 101 171 GOTO 168 172 ' SEND EMAIL 173 IF LV<2 THEN PRINT:PRINTCHR$(7);"Sorry, validation required.":PRINT:GOTO101 174 BN=0:POKE&H402,0:POKE&H403,0:PRINT:PRINT:PRINT"Enter recipient user ID # or enter a 0 to abort -> ";:A$=STRING$(2,0):A=USR0(VARPTR(A$)):IFA=-1THEN347ELSEPRINT 175 IF VAL(A$)=0 THEN PRINT:GOTO101 176 A=VAL(A$) 177 OPEN"D",#1,"USERLOG/BBS",64:FIELD #1,16 AS NM$,16 AS PW$,5 AS LV$,5 AS CN$,5 AS TC$:L=LOF(1):IF A<1 OR A>L THEN CLOSE:PRINT"Aborted!":GOTO101 178 GET#1,A:PRINT:PRINT"Send Email to ";NM$;" (Y/N)? ";:A$=CHR$(0) 179 B=USR0(0):IFA=-1THEN347ELSEB$=CHR$(B):IF B$<>"Y" AND B$="N" AND B$<>"y" AND B$="n" THEN PRINTCHR$(7):GOTO 179 180 IF B$="N" OR B$="n" THEN CLOSE:PRINT"NO":PRINT:PRINT"Email aborted!":PRINT:GOTO 101 181 MT$=NM$+" -"+STR$(A):CLOSE#1:MF$=NA$+" -"+STR$(UN):TT$="Email":GOSUB8:IFLL=-1 GOTO101 182 PRINT:GOSUB 129:PRINT:PRINT"Message saved! ":PRINT:GOTO101 183 ' CHANGE SUB BOARDS 184 PRINT:PRINT"Sub boards available for your use:":PRINT1,BA$(1) 185 IF LV>1 THEN PRINT2,BA$(2) 186 IF LV>2 THEN PRINT3,BA$(3):PRINT4,BA$(4):PRINT5,BA$(5) 187 IF LV>3 THEN PRINT6,BA$(6) 188 IF LV=7 THEN PRINT9,BA$(0) 189 PRINT:PRINT:PRINT"Enter new board number > ";:POKE&H402,0:POKE&H403,0:A$=STRING$(2,0):A=USR0(0):IFA=-1THEN347ELSEA=VAL(CHR$(A)) 190 PRINTA$:IF LV=1 AND A>1 THEN A=0:GOTO 196 191 IF LV=2 AND A>2 THEN A=0:GOTO 196 192 IF LV=3 AND A>5 THEN A=0:GOTO 196 193 IF LV=7 AND A=9 THEN A=0:GOTO197 194 IF A<1 OR A>6 THEN A=0:GOTO196 195 GOTO197 196 PRINT CHR$(7)"Invalid Sub-Board #":PRINT:GOTO 101 197 BN=A:PRINT BA$(A);"- #"A 198 PRINT:GOTO101 199 ' POST MESSAGE 200 IF LV<2 THEN PRINT:PRINT"Sorry, validation required.":PRINT:GOTO101 201 PRINT 202 PRINT"Enter user's ID#, ALL, 0 to abort > ";:A$=STRING$(3,0):POKE &H402,0:POKE&H403,1:A=USR0(VARPTR(A$)):A=VAL(A$):IF A=0 AND A$<>"ALL" THEN PRINT:GOTO101 203 ' 204 IF A$="ALL" THEN N$="All ":GOTO 207 205 OPEN"D",#1,"USERLOG/BBS",64:N=A:FIELD#1,16 AS NM$,16 AS PW$,5 AS LV$,5 AS CN$,5AS TC$:IF A<1 OR A>LOF(1) THEN PRINT:PRINT"ERROR! Aborted!":PRINT:CLOSE:GOTO101 206 GET#1,A:N$=NM$:CLOSE 207 PRINT:PRINT"Send this to ";N$;" (Y/N)? ";:A=USR0(0):IFA=-1THEN347ELSEA$=CHR$(A) 208 IF A$="N" OR A$="n" THEN PRINT"No way!":PRINT:PRINT"Message aborted":PRINT:GOTO 101 209 PRINT"Yeah, why not":PRINT:PRINT"Enter title of the message : ";:A$=STRING$(16,0):POKE&H402,0:POKE&H403,0:A=USR0(VARPTR(A$)):IFA=-1THEN347ELSETT$=A$:GOSUB 8:IF LL=-1 THEN 101 210 MT$=N$+" -"+STR$(N):MF$=NA$+" -"+STR$(UN) 211 PRINT:GOSUB129:GOTO101 212 'READ 213 DRIVE 0:OPEN"D",#1,"BBSTAT/BBS",35 214 FIELD#1,5 AS B0$,5 AS B1$,5 AS B2$,5 AS B3$,5 AS B4$,5 AS B5$,5 AS B6$:GET #1,2:IFBN=0THENX=CVN(B0$)ELSEIFBN=1THENX=CVN(B1$)ELSEIFBN=2THENX=CVN(B2$)ELSEIF BN=3THENX=CVN(B3$)ELSEIFBN=4THENX=CVN(B$)ELSEIFBN=5THENX=CVN(B5$)ELSEIFBN=6THENX=CVN(B6$) 215 X2=X:PRINT X2"message(s) exist on this sub!":PRINT:CLOSE:POKE&HFF40,0 216 PRINT:PRINT"["BA$(BN)"] Read which message? (x - y) ";:A$=STRING$(10,0):POKE&H402,0:POKE&H403,0:A=USR0(VARPTR(A$)):IFA=-1THEN347:IF INSTR(A$,"-")=0 THEN SM=VAL(A$):SE=SM:GOTO221 217 IF INSTR(A$,"-") = 0 THEN SM=VAL(A$):GOTO 221 218 E=INSTR(A$,"-") 219 IF E=1 THEN SM=1:SE=16 : 220 SM=VAL(MID$(A$,1,E-1)):SE=VAL(MID$(A$,E+1)):IF SE=0 THEN SE=16 221 IF SM=0 THEN PRINT:GOTO 101 ELSE FORX0=SM TO SE:ON ERR GOTO 386 222 PRINT:PRINTCHR$(12);"Board ";BA$(BN);" Message ";X0;"of"X2"Total" 223 FI$=BN$(BN)+"/"+STR$(X0) 224 DRIVE SD(BN) 225 CLOSE:OPEN"I",#1,FI$ 226 IF NOT(EOF(1)) THEN LINEINPUT#1,A$:GOSUB247:GOTO226 227 CLOSE 228 A$="<$d7$>":GOSUB247:POKE&HFF40,0:PRINT:PRINT"[A]gain [R]eply [Q]uit [RETURN for next] "; 229 A=USR0(0):IF A=-1 THEN 347 230 IF A$="Q" OR A$="q" THEN PRINT:PRINT"Message read aborted":CLOSE:GOTO100 231 A$=CHR$(A):IF A$="R" OR A$="r" THEN Q0=X0:Q1=X1:X0=BN:X1=X0:GOSUB383:X0=Q0:X1=Q1:GOTO 234 232 IF A$="A" OR A$="a" THEN 222 233 IF A<>13 THEN A=USR(0):IF A=-1 THEN 347ELSE A$=CHR$(A):GOTO 230 234 NEXTX0 235 PRINT:PRINT:ONERRGOTO386:GOTO 101 236 ' LOGOFF 237 PRINT:PRINT"Are you sure you want to leave? ";:A=USR0(0):IFA=-1THEN347ELSEA$=CHR$(A) 238 IF A$<>"Y" AND A$<>"y" THEN PRINT"NO WAY!":PRINT:GOTO101 239 PRINT"YES!":PRINTCHR$(12):A$="<$d3$>Thanx for calling <$d1$>The Big Generator!!":GOSUB 247:A$=" <$d1$>B<$d3$>C<$d2$>N<$d4$>U<$d5$>L<$d6$>8<$d7$>R !!":GOSUB247:PRINT:A$="<$d2$>Now hold on while I <$d6$>unplug<$d2$> this damn thing!<$d7$>":GOSUB247 240 ' hangup routine here 241 FORX=1TO1700:NEXTX:PRINT"+++";:FORX=1TO2000:NEXTX:PRINT"ATH":RUN 242 IFLV<2 THEN PRINT"Sorry, your access is too low!":GOTO101ELSEA$="<$D6$>Present <$d2$>Auto-Message:<$d7$>":GOSUB247:OPEN"D",#1,"BBSTAT/BBS:0",128:FIELD#1,128 AS B$:GET#1,2:A$=B$+"<$d7$>":GOSUB247:CLOSE#1:PRINT:PRINT"Do you want to change this? "; 243 A=USR0(0):A$=CHR$(A):IFA$="N" OR A$="n" THEN PRINT"No, not really!":GOTO 101 ELSE IF A$="Y" OR A$="y" THEN PRINT"Sure!!":GOTO 245 244 POKE&HFF40,0:GOTO243 245 PRINT:A$="<$d3$>Enter your <$d2$>message<$d3$>, 80 chars maximum!<$d7$>":GOSUB247:A$=STRING$(80,0) 246 POKE&H402,0:POKE&H403,0:A=USR0(VARPTR(A$)):IFA=-1THEN347ELSEC$="Auto-Message from "+NA$+CHR$(13)+CHR$(13)+A$:OPEN"D",#1,"BBSTAT/BBS:0",128:FIELD#1,128 AS B$:LSET B$=C$:PUT#1,2:CLOSE#1:PRINT:PRINT:RETURN 247 ' SEC 248 P=INSTR(A$,"<$"):IF P=0 THEN PRINTA$:RETURN 249 IF P>1 THEN PRINTMID$(A$,1,P-1); 250 CM$=MID$(A$,P+2,1):AG$=MID$(A$,P+3,1) 251 QQ=INSTR("ABCDEFabcdef",CM$):ON QQ GOSUB 253,257,260,263,267,271,253,257,260,263,267,271 252 IF QQ=0 THEN PRINT"<-ILLEGAL SEC COMMAND->":PRINTCHR$(7):RETURN ELSE GOTO 248 253 'A 254 E=INSTR(A$,"$>"):IF E=0 THEN PRINTA$:RETURN 255 TX$=MID$(A$,P+3,E-2):FORR=1TOVAL(AG$):FORX=1TOLEN(TX$)-2:PRINTMID$(TX$,X,1);:PRINTCHR$(8);:NEXTX,R:A$=MID$(A$,E+2,80):RETURN 256 ' SPACES FORWARD & BACK, BUILD TEXT ONE LETTER AT A TIME 257 E=INSTR(A$,"$>"):IF E=0 THEN RETURN 258 IF VAL(AG$)<2 THEN AG$="2" 259 AG=VAL(AG$):TX$=MID$(A$,P+4,(E-P)-2):FORX=1TOLEN(TX$)-2:PRINTMID$(TX$,X,1);:PRINTSTRING$(AG,32);:PRINTSTRING$(AG,8);:NEXTX:A$=MID$(A$,E+2,80):RETURN 260 'C 261 E=INSTR(A$,"$>"):IF E=0 THEN RETURN 262 TX$=MID$(A$,P+4,(E-P)-2):FORX=1TOLEN(TX$)-2:PRINTMID$(TX$,X,1);:FORD=1TOVAL(AG$)*29:NEXTD,X:A$=MID$(A$,E+2,80):RETURN 263 'D 264 E=INSTR(A$,"$>"):A$=MID$(A$,E+2,80) 265 E=PEEK(&HFE0B):AG=VAL(AG$) AND 7:ATTR AG,E 266 IF ANSI THEN RETURN ELSE PRINT #-2,CHR$(27);"[3";AG$;"m";:RETURN 267 'E 268 E=INSTR(A$,"$>"):A$=MID$(A$,E+2,80) 269 E=PEEK(&HFE0A):AG=VAL(AG$) AND 7:ATTR E,AG 270 IF ANSI THEN RETURN ELSE PRINT #-2,CHR$(27);"[4";AG$;"m";:RETURN 271 'F 272 E=INSTR(A$,"$>"):A$=MID$(A$,E+2,80) 273 ATTR 7,0 274 IF ANSI THEN RETURN ELSE PRINT #-2,CHR$(27);"[37m ";CHR$(27);"[40m":RETURN 275 ' USERLIST 276 PRINT:PRINT"ID# Name Level Calls Last Call ";:IF LV>5 THEN PRINT"Password" ELSE PRINT 277 PRINTSTRING$(80,"-") 278 X=0:OPEN"D",#1,"USERLOG/BBS:0",64:FIELD#1,16 AS NM$, 16 AS PW$, 5 AS LV$, 5 AS CN$,5 AS TC$,8 AS A$:FORX=1TOLOF(1):GET#1,X:PRINTX" "NM$" "CVN(LV$)" "CVN(TC$)" "A$; 279 IF LV=7 THEN PRINT" ";PW$ 280 IF LV=6 AND CVN(LV$)>5 THEN PRINT" ===CLASSIFIED===" ELSE IF LV=6 AND CVN(LV$)<6 THEN PRINT " ";PW$ 281 IF LV<6 THEN PRINT 282 NEXTX 283 CLOSE#1:PRINT:PRINTSTRING$(79,"-"):PRINT:RETURN 284 'TITLE SCAN 285 PRINT:PRINT"# From To Re" 286 FORX=1 TO 17 287 ON ERR GOTO 292 288 DRIVE SD(BN):OPEN"I",#1,BN$(BN)+"/"+STR$(X):LINEINPUT#1,B$:A$=STR$(X)+MID$(B$,6,20):LINEINPUT#1,B$:A$=A$+MID$(B$,6,20):LINEINPUT#1,B$:A$=A$+MID$(B$,6,17) 289 CLOSE#1 290 GOSUB247 291 NEXTX 292 CLOSE#1:ON ERR GOTO 386:PRINT:PRINT:GOTO101 293 PRINT:A$="<$D6$>Checking for <$d2$>Email.<$d7$>":GOSUB247 294 FORXP=1TO17:ON ERR GOTO 305 295 CLOSE:DRIVE SD(BN):OPEN"I",#1,BN$(0)+"/"+STR$(XP):LINEINPUT#1,B$:LINEINPUT#1,B$ 296 X0=INSTR(B$,"-"):IF VAL(MID$(B$,X0+1,8))=UN THEN EM=1:CLOSE #1:BN=0:MN=XP:PRINT"you have mail":PRINT:GOSUB 143:PRINT 297 IF EM=0 THEN NEXTXP 298 A$="<$d7$>":GOSUB247:PRINT"[A]gain [R]eply Next ";:A=USR(0):IFA=-1THEN347 299 IF A>96 THEN A=A-32:A$=CHR$(A) ELSE A$=CHR$(A) 300 IF A$="A" THEN 296 301 IF A$="R" THEN 307 302 IF A$<>CHR$(13) THEN PRINTCHR$(7):GOTO 298 303 IF EM=1 THEN PRINT"Deleting this message- ":MN=XP:GOSUB311 304 CLOSE #1:PRINT".";:XP=1:NEXTXP 305 IF EM=0 THEN PRINT:A$="<$d3$>Sorry, <$d1$>No <$d6$>Email <$d3$>for you..<$d7$>":GOSUB247:PRINT:ONERRGOTO386:GOTO100 306 ON ERR GOTO 386:GOTO 100 307 'E- REPLY 308 TT$="Email reply.":GOSUB8:IFLL=-1 THEN 303 309 OPEN"I",#1,BN$(0)+"/"+STR$(MN):LINEINPUT#1,B$(0):LINEINPUT#1,B$(1):CLOSE#1:KILLBN$(0)+"/"+STR$(MN):OPEN"O",#1,BN$(0)+"/"+STR$(MN) 310 MF$=MID$(B$(0),7,20):MT$=MID$(B$(1),7,20):TT$="email reply":GOSUB 129 311 'DELETE 312 DRIVE SD(BN):KILL BN$(BN)+"/"+STR$(MN) 313 CLOSE:OPEN"D",#1,"BBSTAT/BBS:0",35:FIELD#1,5 AS B0$,5 AS B1$,5 AS B2$,5 AS B3$,5 AS B4$,5 AS B5$,5 AS B6$:GET#1,2 314 ON BN GOTO 316,317,318,319,320,321 315 HM=CVN(B0$):LSET B0$=MKN$(HM-1):GOTO322 316 HM=CVN(B1$):LSET B1$=MKN$(HM-1):GOTO322 317 HM=CVN(B2$):LSET B2$=MKN$(HM-1):GOTO322 318 HM=CVN(B3$):LSET B3$=MKN$(HM-1):GOTO322 319 HM=CVN(B4$):LSET B4$=MKN$(HM-1):GOTO322 320 HM=CVN(B5$):LSET B5$=MKN$(HM-1):GOTO322 321 HM=CVN(B6$):LSET B6$=MKN$(HM-1):GOTO322 322 DRIVE 0 323 PUT #1,2:CLOSE #1 324 IF HM=1 THEN RETURN 325 DRIVE SD(BN):FORXO=MN TO HM-1:RENAME BN$(BN)+"/"+STR$(XO+1) TO BN$(BN)+"/"+STR$(XO):NEXTXO 326 CLOSE:RETURN 327 'CHAT 328 A$=INKEY$:IF PEEK(&H440)<>0 THEN PRINT:PRINT"Sorry, SysOp is not available for a chat":PRINT"Leave feedback if it's important":PRINT:PRINT:GOTO101 329 PRINT:A$="<$d3$>SCREAMIN' <$d2$>for <$d6$>Genius!!<$d7$>":GOSUB247 330 FORX0=0TO10:PRINTCHR$(7);".";:PLAY"T40CDE":FORX1=1TO400:IF INKEY$="" THEN NEXTX1,X0:PRINT" Sorry, I can't seem to find him... try again l8r or leave feedback!!":GOTO100 331 PRINTCHR$(12):A$="--* <$d6$>POOF!!<$d7$> <$d2$>"+SY$+"<$d3$> is here for a <$d7$>CHAT!":GOSUB247 332 A=USR(0):IFA=-1THEN347ELSEIF A=3 THENPRINTCHR$(12);"Returning you to main menu":PRINT:GOTO101 333 IF A=189 THEN 335 334 PRINTCHR$(A);:GOTO 332 335 ZZ=LV:LV=7:PRINT:A$="<$d3$>SysOp is <$d6$>online.<$d7$> Please standby...":GOSUB247:POKE&H406,0:GOSUB 336:POKE&H406,1:POKE&H408,1:PRINT:A$="<$d3$>-* POOF *-<$d2$> The SysOp has re-appeared!<$d7$>":GOSUB247:LV=ZZ:GOTO 332 336 PRINT:PRINT:PRINT"Enter new temprorary access ";:A=USR(0) 337 A$=CHR$(A):PRINTA$ 338 IF A$<"0" OR A$>"7" THEN 336 339 LV=VAL(A$):ZZ=VAL(A$):RETURN 340 'RUN FI$ 341 POKE &H420,UN ' SAVE USER NUMBER IN $420 342 A=0:IF NOT(ANSI) THEN A=A+128 343 IF PEEK(&H406)<>0 THEN A=A+32 344 IF BAUD=1200 THEN A=A+64 345 POKE &H421,A+LV:POKE&H40E,INT(LO/256):POKE&H40F,(LO AND 255):IF ANSI THEN POKE &H418,1 ELSE POKE &H418,0 346 LOAD FI$,R 347 'CD DROP 348 POKE&H420,0:POKE&H421,0:CLS:ATTR0,7,B:PRINT"Loss of carrier!":ATTR7,0:PRINTCHR$(8);:UNLOAD:CLEAR:MOTOROFF:PRINT"+++";:FORX=1TO2000:NEXTX:PRINT"ATH":RUN 349 ' NEW MESSAGE SCAN 350 PRINT:PRINT"Do you want a [G]lobal or [R]egular scan ? "; 351 A=USR(0):IFA=-1THEN RUN ELSEA$=CHR$(A) 352 IF A$="G" OR A$="g" THEN TY=1:PRINT"Global":GOTO 355 353 IF A$="R" OR A$="r" THEN TY=0:PRINT"Regular":GOTO 355 354 PRINTCHR$(7);:GOTO 351 355 IF TY=0 THEN SS=BN:SE=BN:GOTO 358 356 SS=1 357 IF LV=0 THEN SE=1 ELSE IF LV=1 THEN SE=1 ELSE IF LV=2 THEN SE=3 ELSE IF LV=3 THEN SE=5 ELSE IF LV=4 THEN SE=6 ELSE SE=6 358 FOR X0=SS TO SE 359 PRINT:PRINT"Checking board ";X0; "."; 360 CLOSE:OPEN"D",#1,"BBSTAT/BBS:0",35:FIELD #1,5 AS B0$,5 AS B1$,5 AS B2$,5 AS B3$,5 AS B4$, 5 AS B5$,5 AS B6$:GET #1,2:ON X0 GOTO 361,362,363,364,365,366 361 HP=CVN(B1$):GOTO 368 362 HP=CVN(B2$):GOTO 368 363 HP=CVN(B3$):GOTO 368 364 HP=CVN(B4$):GOTO 368 365 HP=CVN(B5$):GOTO 368 366 HP=CVN(B6$):GOTO 368 367 PRINT:PRINT"New message scan complete":GOTO 101 368 ON ERR GOTO 386:CLOSE:IF HP=0 THEN 371 ELSE FOR X1=1 TO HP:PRINT".";:DRIVE SD(X0):CLOSE:OPEN"I",#1,BN$(X0)+"/"+STR$(X1):FORZZ=1 TO 4:LINEINPUT#1,B$:NEXTZZ:E=INSTR(B$,"-"):PO=VAL(MID$(B$,E+1,5)) 369 IF PO>LO THEN PRINT:PRINT"BOARD";X0;" HAS NEW MESSAGE(S)":GOTO 373 370 NEXT X1 371 NEXT X0 372 PRINT:PRINT:PRINT"Newscan completed":PRINT:PRINT:ON ERR GOTO 386:GOTO 101 373 'NEWSCAN 374 PRINT:PRINT"Board ";X0;" New message #";X1 375 FI$=BN$(X0)+"/"+STR$(X1):GOSUB402 376 A$="<$d7$>":GOSUB247:POKE&HFF40,0:PRINT"[A]gain [R]eply [Q]uit [RETURN for next] "; 377 A=USR(0):IF A=-1 THEN RUN 378 IF A=13 THEN 370 379 IF CHR$(A)="R" OR CHR$(A)="r" THEN PRINTCHR$(A):GOSUB 383:GOTO 370 380 IF CHR$(A)="A" OR CHR$(A)="a" THEN PRINTCHR$(A):X1=X1-1:GOTO 370 381 IF CHR$(A)="Q" OR CHR$(A)="q" THEN PRINT:PRINT"Newscan aborted!":PRINT:GOTO 101 382 GOTO 377 383 'REPLY 384 OPEN"I",#1,BN$(BN)+"/"+STR$(Q0):LINEINPUT#1,B$:MT$=MID$(B$,7):LINEINPUT#1,B$:LINEINPUT#1,B$:TT$=MID$(B$,7):CLOSE:MF$=NA$+" - "+STR$(UN):GOSUB 7:IF CL=-1 THEN RETURN 385 GOSUB 128:RETURN 386 'ERROR 387 IF ERNO=26 THEN GOTO 101 ELSE UNLOAD:PRINT:PRINT:PRINT"Error ";ERNO;"in";ERLIN:PRINT"Please inform the sysop!!!":GOTO 101 388 'WIDTH 389 PRINT:PRINT"Width change (80,40,32)-enter 8,4,3: "; 390 A=USR0(0):A$=CHR$(A):IFA$="8"THENLL=79:PRINT"80 columns":GOTO101ELSEIFA$="4"THENLL=39:PRINT"40 columns":GOTO101ELSEIFA$="3"THENLL=31:PRINT"32 columns":GOTO101 391 'TF READ 392 ONBRKGOTO101:PRINTCHR$(12);:Z1=0:Z2=0 393 OPEN"I",#1,FI$ 394 IF Z2=1 THEN 400 ELSE Z1=Z1+1:IF Z1<23 THEN 400 395 PRINT "([C]ont [A]bort [N]onstop)";:P=PEEK(&HFE02) 396 A=USR(0):A=A AND 223:IFA=65THEN401 397 IF A=67 THEN Z1=0:PRINTSTRING$(P,8);:GOTO 400 398 IF A=78 THEN PRINTSTRING$(P,8);:Z2=1:GOTO 400 399 PRINTCHR$(7);:GOTO 396 400 IF NOT(EOF(1)) THEN LINEINPUT#1,A$:IFA$="@"THENCLOSE:RETURNELSEGOSUB247:GOTO394 401 CLOSE:RETURN 402 DRIVE SD(X0):CLOSE:OPEN"I",#1,FI$ 403 IF NOT(EOF(1)) THEN LINEINPUT#1,A$:GOSUB 247:GOTO 403 404 CLOSE:RETURN 405 ' YOUR STATS 406 PRINT:PRINT"Your stats:":PRINT:OPEN"D",#1,"USERLOG/BBS",64:FIELD #1,16 AS NM$,16 AS PW$,5 AS LV$,5 AS CN$,5 AS TC$,8 AS LD$ 407 GET #1,UN:PRINT:PRINT"Name ";NM$:PRINT"Access level ";CVN(LV$):PRINT"Caller number ";CL:PRINT"Last call ";LO:PRINT"Total calls ";CVN(TC$):PRINT"Last call date ";LD$ 408 CLOSE 409 PRINT:PRINT:GOTO 101 410 ' XFER SUB 411 PRINT:PRINT:PRINT"due to limited space, this command is not supported right now.":PRINT:PRINT:GOTO 102 412 POKE&H501,LA:A$=STRING$(128,0):A=USR1(VARPTR(A$)):LA=LA+1:IFA$="@"THENRETURN ELSE GOSUB247:GOTO412 413 CLS:PRINT"Enter new sysop status":PRINT:LINEINPUTA$:A$=A$+CHR$(13):FORX=1TOLEN(A$):POKE&H440+X,ASC(MID$(A$,X,1)):NEXTX 414 PRINT:PRINT"Is SysOp available for chat? "; 415 A$=INKEY$:IF A$="" THEN 415 ELSE IF A$="Y" OR A$="y" THEN POKE&H440,0 ELSE POKE&H440,1:RUN 416 ' Delete post loop set 417 PRINT:PRINT"Working":E=INSTR(A$,"-") 418 IF E=1THENFD=1:LD=24 419 FD=VAL(MID$(A$,1,E-1)):LD=VAL(MID$(A$,E+1)):IFLD=0 THENLD=24 420 IF LD>X THEN LD=X 421 RETURN