home *** CD-ROM | disk | FTP | other *** search
- 0 REM PAYLOAD
- 5 IFPEEK(51200)<>76ORPEEK(52016)<>32ORPEEK(52080)<>173THEN7
- 6 IFPEEK(52176)=169THEN10
- 7 LOAD"0:ROUTINES V4",8,1
- 10 IFPEEK(832)<>24ORPEEK(960)<>63ORPEEK(1019)>.THENLOAD"0:MENU.SP1",8,1
- 20 IFPEEK(704)<>3ORPEEK(732)<>252ORPEEK(760)THENLOAD"0:MENU.SP2",8,1
- 25 OPEN15,8,15:SYS52176
- 30 W=53265:U=128:V=53248:S=V+1024:LI=52016:WI=51200:CL=51203:SU=51206:SD=51209
- 40 POKE1020,5:POKE1021,19:POKE1022,1:POKE1023,38:REM SET WINDOW BOUNDARIES
- 50 POKE600,00:REM SET ARTICLE FLAG TO ZERO
- 200 PP=PEEK(599)+1:REM MENU POINTER
- 210 SP$=" "
- 212 SL$=" "
- 220 AF=1
- 222 POKE53280,5
- 225 D$=CHR$(96):FORX=1TO6:D$=D$+D$:NEXT
- 226 FORX=STOS+24:POKEX,0:NEXT
- 227 POKE54277,8:POKE54278,8:POKE54291,8:POKE54292,8
- 230 POKE V+33,.
- 270 POKE V+29,2:POKEV+27,12:POKEV+23,.
- 275 :
- 276 :
- 280 DIM PN$(50),RC$(50),CA$(50),SA(50),SY(50),T$(650)
- 285 REM MENU NAME,PROG NAME,CATEGORY,SECONDARY ADDR,SYS ADDR,ABOUT TEXT STORAGE
- 286 :
- 287 GOSUB52000: REM READ PRGS FILE
- 288 POKE V+21,11:REM 0,1,3 ON
- 289 :
- 290 FORCO=.TO2:POKE2040+CO,13+CO:POKE2043,11:NEXT:REMSPRITE POINTERS
- 300 POKEV+39,15:POKEV+40,7:POKEV+41,7:POKEV+42,7:POKEV+27,255
- 305 POKEV+16,.
- 310 POKEV,49:POKEV+1,218:REM CRSRS
- 320 POKEV+2,45:POKEV+3,143:REM SELECTOR
- 330 POKEV+4,56:POKEV+5,54:REM RT HAND
- 340 POKEV+6,44:POKEV+7,54:REM LT HAND
- 350 POKEV+16,4
- 360 POKES+24,15:REM LOUD SOUND
- 1000 GOSUB 50000:REMHEADER
- 2000 :
- 3000 GOSUB 51000:REMHOME
- 3500 TP=PP:IFPP<>1THENGOSUB53005:GOTO4100
- 4000 GOSUB 53000:REMPRINT MENU
- 4100 GOSUB49000
- 5000 GOSUB 54000:POKEV+21,0:REMKEYWAIT
- 5005 PRINT"[147][196]OCKING WITH [212]ABLE OF [195]ONTENTS"
- 5006 GOSUB63002:GOSUB63000
- 5007 FORX=STOS+23:POKEX,0:NEXT
- 5010 LOAD"HELLO CONNECT",8
- 5015 :
- 39000 SYSWI:REM CLEAR WINDOW
- 39010 X%=9:Y%=8:GOSUB56000:PRINT"[212]URN YOUR PRINTER ON"
- 39015 X%=18:Y%=10:GOSUB56000:PRINT"&"
- 39016 X%=12:Y%=12:GOSUB56000:PRINT"[208]RESS [[210][197][212][213][210][206]]."
- 39017 X%=15:Y%=14:GOSUB56000:PRINT"[216][146] TO EXIT"
- 39020 GETK$:IF K$=""THEN39020
- 39025 IFK$<>CHR$(13)ANDK$<>"X"ANDK$<>"[203]"THEN39020
- 39030 IF K$="X"ORK$="[216]"THEN SYSWI:RETURN
- 39040 OPEN4,4,7:CMD4
- 39045 PRINTSPC(40-LEN(MO$));MO$:PRINT:PRINTSPC(40-LEN(PN$(PP+1)));PN$(PP)
- 39046 PRINT
- 39050 FOR C8=1TO LC
- 39055 IFT$(C8)=""THEN39070
- 39060 PRINT#4,T$(C8)
- 39070 NEXT
- 39080 PRINT#4:CLOSE4
- 39085 SYSWI
- 39090 RETURN
- 40000 REM BOING!
- 40003 GOSUB41000
- 40005 FORI=27TO31:WAITW,U:POKEW,I:NEXT
- 40010 FORI=31TO25STEP-1:WAITW,U:WAITW,U:POKEW,I:NEXT
- 40015 FORI=25TO27:WAITW,U:WAITW,U:WAITW,U:WAITW,U:POKEW,I:NEXT
- 40020 RETURN
- 40100 R=V+17:C=128:REM OTHER BOING!
- 40103 GOSUB41000
- 40105 FORI=27TO24STEP-1:WAITW,U:POKEW,I:NEXT
- 40110 FORI=24TO29:WAITW,U:WAITW,U:POKEW,I:NEXT
- 40115 FORI=29TO27STEP-1:WAITW,U:WAITW,U:WAITW,U:WAITW,U:POKEW,I:NEXT
- 40120 RETURN
- 41000 POKES+4,20:POKES,RND(.)*256:POKES+1,RND(.)*256:POKES+14,RND(.)*256
- 41005 POKES+15,RND(.)*256:POKES+4,21:RETURN
- 41010 REM :ALREADY RETURNED ^
- 43000 PL=15:X%=.:Y%=24:GOSUB56000:PRINT" [159][[155][200][159]] FOR [200]ARDCOPY";:AF=0
- 43001 X%=1:Y%=12:GOSUB56000:PRINT"[158][210]EADING[146]":POKEV+21,.
- 43002 X%=22:Y%=21:GOSUB 56000:PRINT"[159][205][197][206][213]/[210][213][206] ";
- 43003 X%=14:Y%=22:GOSUB 56000:PRINT"[159][211]CROLLS [212]EXT";
- 43004 IFPEEK(600)=PPTHENSYSWI:SYSCL:GOTO43050
- 43005 POKE600,PP:X%=0:Y%=5:LP=1:GOSUB56000:SYSWI:SYSCL
- 43006 OPEN8,8,8,"T."+RC$(PP):GOSUB46000:IFER%=62THENRF=.:AF=1:RESTORE:GOTO290
- 43010 FORC1=1TO650:POKE781,8:SYS65478
- 43020 SYSLI,B$:T$(C1)=B$+""
- 43025 IFSTTHENGOSUB46000:IFER%=0ANDST=64THENLC=C1:C1=650:GOTO43030
- 43030 IFC1<=15THENPRINT"";T$(C1)
- 43032 NEXT:SYS65484
- 43035 CLOSE8:POKE198,0
- 43040 FORC8=LC+1TO650:T$(C8)="":NEXT:SYSCL
- 43050 X%=.:Y%=5:LP=1:GOSUB56000:FORC1=1TO15
- 43060 PRINT"";T$(C1)
- 43070 NEXT
- 43075 RF=1:X%=.:Y%=3:POKE198,0:GOSUB 56000:GOSUB48000:REM"'[193]BOUT' HEADER"
- 43080 GETK$:J=NOTPEEK(56320)AND31:IFK$=""ANDJ=0THEN43080
- 43090 K1=ASC(K$+CHR$(.))
- 43100 IFK$="[157]"ORJ=4THENMF=1:RF=0:GOSUB48000:GOTO43080:REMCRSR LEFT
- 43110 IFK$=""ORJ=8THENMF=0:RF=1:GOSUB48000:GOTO43080:REMCRSR RIGHT
- 43120 IFK$=""ORK$="[135]"ORK$="[139]"ORJ=2THENGOSUB45000:GOTO43080:REM SCROLL FORWARD
- 43122 IFK$="[133]"THENGOSUB43300:REM BIG UP
- 43130 IFK$="[145]"ORK$="[134]"ORK$="[138]"ORJ=1THENGOSUB44000:GOTO43080:REM SCROLL BACKWARD
- 43132 IFK$="[136]"THENGOSUB43400:REM B/DOWN
- 43140 IFJ=16ORK$=" "THENIFRFTHEN63900
- 43150 IFJ=16ORK$=" "THENMF=0:AF=1:RESTORE:K$="":J=.:GOTO290
- 43160 IFK1=72THENGOSUB39000:GOTO43050:REM HARDCOPY
- 43170 GOTO43080
- 43230 :REM
- 43300 FORQ3=1TO7
- 43301 IFLP<2THENGOSUB40000:GOTO43306
- 43302 GOSUB44000
- 43304 NEXT
- 43306 RETURN
- 43308 :
- 43400 FORQ3=1TO7
- 43401 IFLP>LC-14THENGOSUB40100:GOTO43406
- 43402 GOSUB45000
- 43404 NEXT
- 43406 RETURN
- 43408 :
- 44000 IF LP<2THENGOSUB40000:RETURN:REM SCROLL BACKWARD
- 44010 LP=LP-1:SYS51209
- 44020 X%=1:Y%=5:GOSUB56000:PRINTT$(LP)
- 44022 Q9=NOTQ9:IFQ9<>0THEN44010
- 44090 RETURN
- 45000 IF LP>LC-14THENGOSUB40100:RETURN:REM SCROLL FORWARD
- 45010 LP=LP+1:SYS51206
- 45020 X%=1:Y%=19:GOSUB56000:PRINT""T$(LP+14)
- 45022 Q9=NOTQ9:IFQ9<>0THEN45010
- 45090 RETURN
- 46000 INPUT#15,ER%,ER$,ET%,EB%
- 46005 IF(ER%>19ANDER%<30)ORER%=66ORER%=67THEN46015
- 46010 RETURN
- 46015 PRINT"[147][152][217]OU JUST HAD A DISK [201]/[207] ERROR."
- 46020 PRINT:PRINT"[208]RESS SPACE TO CONTINUE."
- 46025 GETK$:IFK$=""THEN46025
- 46030 RUN
- 48000 IFRFTHENGOSUB59300:REM REWRITE PGM NAME
- 48010 IFMFTHENGOSUB59200:REM REWRITE PGM NAME
- 48020 Y%=3:X%=20-LEN(PN$(PP))/2:GOSUB56000:PRINT"";PN$(PP);"[153]";
- 48030 RETURN
- 49000 IFRFTHENGOSUB58000:REM REWRITE CATEGORY
- 49010 IFAFTHENGOSUB57000
- 49020 Y%=3:X%=20-LEN(CA$(PP))/2:GOSUB56000
- 49025 PRINT"[158]";CA$(PP);"[153]";
- 49030 RETURN
- 50000 PRINT"[147]"TAB(6)"[176]";:PRINTLEFT$(D$,28);"[174]":REM "HEADER STUFF"
- 50010 PRINTTAB(5)" [221][153] "HT$" ";CHR$(221)
- 50012 PRINTTAB(6)"[173]";:PRINTLEFT$(D$,28);:PRINT"[189][153]"
- 50013 GOSUB59000
- 50014 IFAFTHENGOSUB57000
- 50015 IFRFTHENGOSUB58000
- 50019 PRINT"[176]";LEFT$(D$,38);"[174]";
- 50020 FORI=1TO15:PRINT"[221] [221]";:NEXT
- 50021 PRINT"[173]";LEFT$(D$,38);"[189]";
- 50030 PRINT" [159][ [155] [195][210][211][210][159] ] [211]ELECTS [193][194][207][213][212]/[210][213][206]"
- 50040 PRINT" [159][ [155] [195][210][211][210][159] ] [211]CROLLS [205]ENU"
- 50050 PRINT" [159][ [155][211][208][193][195][197][159] ] [211]ELECTS [158][200]IGHLIGHTED[159] [201]TEMS"
- 50060 PRINT" [159][[155][216][159]] [197]XITS";
- 50070 PRINT"[129]";:SYS51200:SYS51203:X%=1:Y%=12:GOSUB56000
- 50080 PRINT"[158] ";
- 50090 FORI=217TO242:POKEI,PEEK(I)OR128:NEXT:RETURN
- 51000 PRINT"[153]":REM HOME
- 51010 PRINT"";
- 51020 RETURN
- 52000 REM READ IN FROM WHAT FILE???
- 52001 NU=USR(65535)
- 52002 IFNU=11THENNU$="MAG.PRGS"
- 52004 IFNU=12THENNU$="PAY.PRGS"
- 52006 I=0:OPEN2,8,2,NU$
- 52007 INPUT#2,HT$ :REM HEADER FOR TOP
- 52008 I=I+1
- 52010 INPUT#2,PN$(I)
- 52012 INPUT#2,RC$(I)
- 52014 INPUT#2,CA$(I)
- 52016 INPUT#2,SA(I)
- 52018 INPUT#2,SY(I)
- 52020 IF PN$(I)<>"!"THEN 52008
- 52022 CLOSE2
- 52025 PC=I-1
- 52030 PN$(PC+1)="":IFPP>PCTHENPP=PC
- 52040 RETURN
- 53000 SYS51200:PRINT"[129]";:IFPP<4THEN53020
- 53005 PRINT"[129]";:FORI=PP-3TOPP+3:QQ=I:IFQQ<0THENQQ=0
- 53010 IFI=PPTHENPRINT"[158]";
- 53015 PRINTTAB(10)PN$(QQ)"[129]":NEXT:RETURN
- 53020 FORI=PPTO3:PRINT"";:NEXT:FORI=1TOPP+3:IFI=PPTHENPRINT"[158]";
- 53025 PRINTTAB(10)PN$(I)"[129]":NEXT:RETURN
- 54000 REM MAIN MENU KEYPRESS SELECTION
- 54010 GETK$:IFK$=""THENJ=NOTPEEK(56320)AND31:IFK$=""ANDJ=.THEN54010
- 54020 K=ASC(K$+CHR$(.))
- 54025 IFK$="[157]"ORJ=4THENAF=1:RF=.:GOSUB49000:GOTO54000:REMLEFT
- 54026 IFK$=""ORJ=8THENAF=.:RF=1:GOSUB49000:GOTO54000:REMRIGHT
- 54040 IFK$=""ORK$="[135]"ORK$="[139]"ORJ=2THENGOSUB54100:GOSUB49000:GOTO 54000:REMDOWN
- 54045 IFK$="[136]"THENFOROP=PPTOPC:GOSUB54100:NEXT:GOSUB49000:GOTO54000:REMBIG DOWN
- 54050 IFK$="[145]"ORK$="[134]"ORK$="[138]"ORJ=1THENGOSUB54200:GOSUB49000:GOTO54000:REM UP
- 54055 IFK$="[133]"THENFOROP=PPTO1STEP-1:GOSUB54200:NEXT:GOSUB49000:GOTO54000:REMB/UP
- 54060 IFK$="X"ORK$="[216]"THEN RETURN
- 54070 IFJ=16ORK$=" "THENIFRFTHENPRINT:GOSUB51000:GOTO63800
- 54075 IFJ=16ORK$=" "THENIFAFTHEN 43000
- 54080 J=.:GOTO 54000
- 54100 IFPP>PC-1THENGOSUB40100:RETURN
- 54110 PP=PP+1:SYS51206:SYS51206:X%=10:Y%=18:GOSUB56000
- 54120 IFPP<PC-2THENPRINT"[129]"PN$(PP+3):RETURN
- 54130 PRINT"[129] ":RETURN
- 54200 IFPP<2THENGOSUB40000:RETURN
- 54210 PP=PP-1:SYS51209:SYS51209:X%=10:Y%=6:GOSUB56000
- 54220 IFPP>2THENPRINT"[129]"PN$(PP-3):RETURN
- 54230 PRINT"[129] ":RETURN
- 56000 POKE783,PEEK(783)AND254:POKE781,Y%:POKE782,X%:SYS65520:RETURN
- 56010 POKE783,PEEK(783)OR1:SYS65520:Y%=PEEK(781):X%=PEEK(782):RETURN
- 57000 X%=0:Y%=3:GOSUB56000:GOSUB59000
- 57005 X%=1:Y%=3:GOSUB56000:PRINT"[158][193][194][207][213][212][146]"
- 57010 POKE V+21,11
- 57020 RETURN
- 58000 X%=0:Y%=3:GOSUB56000:GOSUB59000
- 58005 X%=36:Y%=3:GOSUB56000:PRINT"[158][210][213][206][146]"
- 58010 POKE V+21,7
- 58020 RETURN
- 59000 PRINT" [153][193][194][207][213][212] [210][213][206]":RETURN
- 59100 PRINT" [153][205][197][206][213] [210][213][206]":RETURN
- 59200 X%=0:Y%=3:GOSUB56000:GOSUB59100
- 59205 X%=1:Y%=3:GOSUB56000:PRINT"[158][205][197][206][213][146]"
- 59210 POKE V+21,9
- 59220 RETURN
- 59300 X%=0:Y%=3:GOSUB56000:GOSUB59100
- 59305 X%=36:Y%=3:GOSUB56000:PRINT"[158][210][213][206][146]"
- 59310 POKE V+21,5
- 59320 RETURN
- 60050 :
- 62000 REM CAN'T RUN THIS PUPPY
- 62005 POKE53248+21,0:MF=0:RF=0:AF=1
- 62010 PRINT"[147] [211]ORRY! [217]OU CANNOT RUN ":PRINT
- 62015 PRINTSPC(20-LEN(PN$(PP))/2)PN$(PP)
- 62020 PRINT" FROM THE [204][207][193][196][211][212][193][210] ENVIRONMENT."
- 62030 PRINT" [208]LEASE PRESS A KEY TO RETURN TO MENU"
- 62040 POKE198,0:WAIT198,1:POKE198,0: GOSUB48000:RESTORE:GOTO288
- 63000 FORI=.TO24:POKES+I,.:NEXT:POKES+1,100:POKES+2,100:POKES+5,10:POKES+6,2
- 63001 POKES+24,15:POKES+4,33:FORDL=1TO600:NEXT:POKE2+4,32:RETURN
- 63002 FORI=0TO24:POKES+I,0:NEXT:POKES+1,40:POKES+2,40:POKES+5,10:POKES+6,2
- 63003 POKES+24,15:POKES+4,33:FORDL=1TO600:NEXT:POKES+4,32:RETURN
- 63800 REM EXECUTE PROGRAM
- 63900 REM EXECUTE PROGRAM
- 63902 IFSA(PP)=2THEN62000
- 63903 SYS65412:SYS65409:PRINT"[147]LOAD"CHR$(34);RC$(PP);CHR$(34)",8,"SA(PP)"
- 63904 [151]599,PP[171]1:[143] MENU POINTER
- 63905 [139]SA(PP)[178].[167][153]"RUN":[137]63910
- 63907 [153]"SYS"SY(PP)""
- 63910 [151] 631,13:[151]632,13:[151]198,2
- 63920 [151]V[170]21,0
- 63999 [131]!,!,!,,:[143]NEED THESE FOR EOF MARKERS.
-