0 REM SIDIRQ PRESENTER 12/28/84 1 IFLF=0THENPRINT"[147][210]EADING THE [212]ABLE OF [195]ONTENTS..." 2 IFLF=0THENLF=1:LOAD"ROMUSIC",8,1 3 IFPEEK(49153)=11THENIFPEEK(49154)=192THEN5 4 LOAD"SIDIRQ V3",8,1 5 IFPEEK(51201)<>12ORPEEK(51202)<>200ORPEEK(52222)<>5THEN7 6 GOTO8 7 LOAD"ROUTINES V4",8,1 8 IFPEEK(928)=128THEN10 9 LOAD"MENU.SPRITES",8,1 10 POKE49161,0:POKE49162,160:OLD$="":GOTO6000 1000 POKE646,C%(2):PRINT"[147]"TL$:POKEV+33,C%(1):POKE1021,17:LP=1:POKE646,C%(4) 1002 POKE53280,C%(0) 1010 PRINTWT$;:FORI=2TO17:PRINT"[221]"SPC(38)"[221]";:NEXT:PRINTWB$;:POKE646,C%(3) 1020 PRINT"[176][192][192][192][192][192][192][192][192][192][192][192][192][192][178][192][192][192][192][192][192][192][178][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][174]"; 1025 PRINT"[221]F1[146][208]AGE [194]ACK [221] [221][202]OYSTICK[146] SCROLLS[221]"; 1030 PRINT"[221]F3[146][211]CROLL [194]ACK[221][208][146]RINTER[221] ([208]ORT 2) [221]"; 1035 PRINT"[221]F5[146][211]CROLL [198]WD.[221]"MU$" [171][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][179]"; 1040 PRINT"[221]F7[146][208]AGE [198]WD. [221][216][146]=[197]XIT [221]"SPC((16-LEN(MO$))/2)MO$TAB(39)"[221]"; 1045 PRINT"[173][192][192][192][192][192][192][192][192][192][192][192][192][192][177][192][192][192][192][192][192][192][177][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]"; 1050 FORI=217TO242:POKEI,PEEK(I)OR128:NEXT:POKE646,C%(5):SYS51203 1055 POKE2023,125:POKE56295,C%(3):RETURN 1100 POKE783,PEEK(783)AND254:POKE781,Y%:POKE782,X%:SYS65520:RETURN 1200 INPUT#15,ER%,ER$,ET%,ES% 1205 IF(ER%>19ANDER%<30)ORER%=66ORER%=67ORER%=71ORER%=73THEN1250 1210 RETURN 1250 PRINT"[147][212]HERE HAS BEEN A DISK ERROR." 1251 PRINT 1252 PRINT"[208]RESS TO CONTINUE.":POKEB,0 1253 GETK$:IF K$=""THEN 1253 1261 RUN 1270 : 1280 REMWIGGLE & BONK 1282 FORI=27TO31STEP+1:WAITR,128:POKER,I:NEXT 1284 FORI=31TO24STEP-1:WAITR,128:POKER,I:NEXT 1286 FORI=24TO27STEP+1:WAITR,128:POKER,I:NEXT 1288 : 1290 IFPEEK(788)<>49THEN1296 1291 POKES+4,0:POKES+11,0:POKES+18,0:POKES+5,8:POKES+6,0:POKES+24,15 1292 POKES+4,20:POKES,RND(0)*256:POKES+1,RND(0)*256:POKES+14,RND(0)*256 1294 POKES+15,30:POKES+4,21 1295 : 1296 RETURN 1300 REMOLD BONK 1400 REMNOW GOTO 1450 REM1280 1455 : 1500 IFF$=OLD$THENRETURN 1501 OLD$=F$ 1502 OPEN8,8,8,F$:GOSUB1200:IFER%=62THENRETURN 1505 PRINT"[158] [210]EADING: "M$(MP,0) 1510 LL=1:POKE781,8:SYS65478 1515 SYSLI,B$:T$(LL)=LEFT$(B$,38):IFST=.THENLL=LL+1:GOTO1515 1520 SYS65484:CLOSE8:GOSUB1200:FORI=LL+1TOLL+20:T$(I)="":NEXT:RETURN 2000 GETK$:J%=NOTPEEK(J)AND31:IFK$=""ANDJ%=.THEN2000 2001 POKEB,0 2005 IFK$="\"THEN60000:REM RUN A PROGRAM 2010 IFK$="[145]"ORK$=""ORK$="[134]"ORJ%=1THENGOSUB2100:GOTO2000 2015 IFK$=""ORK$="[157]"ORK$="[135]"ORJ%=2THENGOSUB2200:GOTO2000 2020 IFK$="[133]"THEN2300 2025 IFK$="[136]"THEN2400 2030 IFK$="P"ORK$="[208]"ORK$="[175]"ORK$=""THEN50000 2040 IFK$="M"ORK$="[205]"ORK$="[167]"THENMU%=-1:GOSUB2705:SYS49152:MU$="[209][146]UIET":GOTO2800 2045 IFK$="Q"ORK$="[209]"ORK$="[171]"THENMU%=0:GOSUB2705:MU$="[205][146]USIC":GOTO2800 2050 IF(K$="X"ORK$="[216]"ORK$="[189]"ORK$=""ORJ%=16ORK$=" ")ANDM$(MP,2)="RQ"THEN5000 2051 : 2052 IFK$="X"ORK$="[216]"ORK$="[189]"ORK$=""ORJ%=16ORK$=" "THENGOSUB9000:GOSUB5500 2053 IFK$="X"ORK$="[216]"ORK$="[189]"ORK$=""ORJ%=16ORK$=" "THENGOTO5900 2054 : 2055 GOTO2000 2100 IFLP=1THEN1280 2105 LP=LP-1:SYS51209:X%=1:Y%=2:GOSUB1100 2106 IFLEFT$(T$(LP),4)="\OAD"THENPRINT"":GOTO2110 2107 PRINTT$(LP) 2110 RETURN 2200 IFLP+16>LLTHEN1280 2205 LP=LP+1:SYS51206:X%=1:Y%=17:GOSUB1100 2206 IFLEFT$(T$(LP+15),4)="\OAD"THENPRINT"":GOTO2210 2207 PRINTT$(LP+15) 2210 RETURN 2300 FORI=1TO15:GOSUB2100:NEXT:GOTO2000 2400 FORI=1TO15:GOSUB2200:NEXT:GOTO2000 2500 : 2700 IFPEEK(788)=49THENPOKES+24,15:SYS49158:POKE56325,59 2702 RETURN 2705 IFPEEK(788)=49THEN2715 2710 SYS49155:POKES+4,0:POKES+11,0:POKES+18,0:POKES+5,8:POKES+6,0:POKES+24,15 2715 RETURN 2800 X%=15:Y%=22:GOSUB1100:POKE646,C%(3):PRINTMU$:POKE646,C%(5):GOTO2000 2900 X%=0:Y%=2:GOSUB1100:SYS51200:FORI=LPTOLP+15 2902 IFLEFT$(T$(I),4)="\OAD"THENPRINT"":GOTO2904 2903 PRINT""T$(I) 2904 NEXT:POKEB,0 2906 RETURN 5000 GOSUB9000:REMSCREEN 5047 GOSUB5500:REM MENU 5048 : 5049 : 5050 IFMP=1THENIFM$(1,1)="*"THENA$="":GOTO5053 5051 FORMY=55708TO55708+25:POKEMY,7:NEXT 5052 POKEV+21,VAL(M$(MP,3)):GETA$:J%=NOTPEEK(J)AND31:IFJ%=.ANDA$=""THEN5051 5053 POKEB,0 5055 IFA$="[145]"ORA$=""ORA$="[134]"ORA$="[138]"ORJ%=1THENGOSUB5100 5060 KF=0:IFA$=""ORA$="[157]"ORA$="[135]"ORA$="[139]"ORJ%=2THENGOSUB5200 5065 IFA$="[133]"ORA$="[137]"THENMP=1:GOSUB5520 5070 IFA$="[136]"ORA$="[140]"THENMP=ML:GOSUB5500 5075 IFJ%=16ORA$=" "ORA$=CHR$(13)THENGOSUB63300:GOTO5900 5080 IFA$="X"ORA$="[216]"ORA$="[189]"THENPOKEV+21,.:GOTO5600 5090 GOTO5050 5100 IFMP=1THENGOSUB1280:GOTO5160 5105 SYS51209:SYS51209:MP=MP-1 5110 IFMP<5THEN5150 5114 X%=12:Y%=2:GOSUB1100:PO$=M$(MP-4,.) 5115 IFLEFT$(PO$,1)="*"THENPRINTMID$(PO$,2);:GOTO5150 5116 PRINT"[129]"M$(MP-4,.); 5150 IFLEFT$(M$(MP,1),1)="*"THEN5100 5160 RETURN 5175 : 5200 IFMP=MLTHENGOSUB1280:GOTO5260 5205 SYS51206:SYS51206:MP=MP+1 5210 IFMP>ML-4THEN5250 5214 X%=12:Y%=18:GOSUB1100:PO$=M$(MP+4,.) 5215 IFLEFT$(PO$,1)="*"THENPRINTMID$(PO$,2);:GOTO5250 5216 PRINT"[129]"M$(MP+4,.); 5250 IFLEFT$(M$(MP,1),1)="*"THEN5200 5260 RETURN 5275 : 5300 : 5400 : 5500 SYS51200:PRINT"[129]";:IFMP<5THEN5520 5505 FORI=MP-4TOMP+4 5507 IFLEFT$(M$(I,.),1)="*"THENPRINTTAB(12)MID$(M$(I,0),2)"":GOTO5515 5510 PRINTTAB(12)"[129]"M$(I,.)"": 5515 NEXT:RETURN 5517 : 5520 SYS51200:PRINT"[129]";:FORI=MPTO4:PRINT"";:NEXT:FORI=1TOMP+4 5522 IFLEFT$(M$(I,.),1)="*"THENPRINTTAB(12)MID$(M$(I,0),2)"":GOTO5530 5525 PRINTTAB(12)M$(I,.)"": 5530 NEXT:RETURN 5600 REM EXIT 5605 GOSUB63002:GOSUB63000 5607 GOTO63400 5608 END 5620 : 5630 : 5900 POP=0:GOSUB7000:IFPOP=1THEN5000 5902 F$="T."+M$(MP,1):TL$=M$(MP,.) 5903 POP=0:GOSUB63100:IFPOP=1THEN5000 5904 GOSUB1500:IFER%=62THENCLOSE8:GOTO5000 5905 : 5906 POKEV+21,0 5907 POKE1020,2:POKE1021,18:POKE1022,1:POKE1023,38:SYS51200:PRINT"[129]";:SYS51203 5910 POKES+4,.:POKES+11,.:POKES+18,. 5915 IFMU%ANDPEEK(788)=49THENSYS49152:POKE56325,80:MU%=-1:POKES+24,15 5999 GOSUB1000:GOSUB2900:GOTO2000 6000 V=53248:R=V+17:C=128:S=V+1024:J=56320:LP=1:LI=52016:MU%=-1:SYS52176:B=198 6002 POKES+5,96:POKES+6,246 6005 OPEN15,8,15:DIMT$(600),M$(60,3),C(4):FORI=1TO4:READC(I):NEXT:MU$="[209][146]UIET 6006 [131]2,5,6,7 6010 [151]1020,2:[151]1021,17:[151]1022,1:[151]1023,38:[151]49665,4 6012 [153]:[151]S[170]23,.:[151]S[170]4,128 6014 WL$[178]"TANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTANTAN":WT$[178]"OR"[170]WL$[170]"^":WB$[178]"/"[170]WL$[170]"EXP 6015 D1$=LEFT$(WT$,27)+RIGHT$(WT$,1):D2$=LEFT$(WB$,27)+RIGHT$(WB$,1) 6016 BO$="[158][221] [221][146]" 6017 Q1$="[158] " 6018 Q2$="[158] " 6020 M$="FEATURES11":OPEN8,8,8,M$:GOSUB1200:ML=1: 6022 : 6025 INPUT#8,MT$,MO$,MN$ 6030 FORI=.TO3:POKE781,8:SYS65478:SYSLI,B$:M$(ML,I)=B$+"" 6032 IFSTTHENGOSUB1200:IFER%=.ANDST>63THEN6037 6033 NEXT 6035 ML=ML+1:GOTO6030 6037 CLOSE8:P$="P"+CHR$(8)+CHR$(1)+CHR$(0)+CHR$(1):PRINT#15,"I0":DIMC%(5) 6038 OPEN8,8,8,"COLOR.FILE":GET#8,A$,B$:FORI=0TO5:INPUT#8,C%(I):NEXT:CLOSE8 6039 OPEN8,8,8,"PRINT.FILE":PRINT#15,P$:INPUT#8,PA:INPUT#8,SA:CLOSE8 6040 SYS65484:POKES+4,.:POKES+23,.:POKES+5,9:POKES+6,. 6042 MP=PEEK(597):IFMP>MLORMP<1THENMP=1 6044 GOTO5000 6050 : 6060 : 7000 REMSUB MENUS 111885 7002 REM120485 7005 POKE53281,0:POKE53280,6:SYS51200:POKEV+21,VAL(M$(MP,3)):GOSUB2705 7006 POKE1020,6:POKE1021,14:POKE1022,12:POKE1023,37 7007 SYS51200:PRINT"";:SYS51203 7010 BL=LEN(M$(MP,2)):SQ$=M$(MP,2) 7020 C=0 7030 PRINT" "; 7031 PRINT"[159]"WT$"[221] [195][210][211][210][146] KEYS OR [202]OYSTICK[146] TO SCROLL MENU [221]"; 7032 PRINT"[221] [211][208][193][195][197]-[194][193][210][146], [210]ETURN[146], OR [194]UTTON[146] [211]ELECTS [221]"; 7033 PRINTLEFT$(WB$,39);:POKE2023,125:POKE56295,3 7035 : 7037 PRINT"[158]" 7038 PRINTSPC(11)"[158]"D1$"[146]":FORI=1TO11:PRINTBO$;:NEXT 7039 PRINTSPC(11)""D2$"[146]" 7040 FORZP=217TO242:POKEZP,128ORPEEK(ZP):NEXTZP 7045 PRINT"[158]":PRINT:FORUU=1TOBL:CH$=MID$(SQ$,UU,1) 7050 IFCH$="R"THENPRINTSPC(12)"[210]EAD ABOUT IT.":C=C+1 7060 IFCH$="E"THENPRINTSPC(12)"[210]UN IT.":C=C+1 7070 IFCH$="Q"THENPRINTSPC(12)"[198]ORGET ABOUT IT.":C=C+1 7100 NEXTUU 7135 : 7140 : 7150 PQ=1:SD=51209:SU=51206 7155 PRINT"[158]";SPC(25-(LEN(M$(MP,0))/2))M$(MP,0)"[145][145]" 7156 : 7157 : 7160 POKEB,0 7161 GETA$:J%=NOTPEEK(J)AND31:IFJ%=.ANDA$=""THEN7161 7162 POKEB,0:FF=0 7163 IFA$="[145]"ORA$=""ORA$="[134]"ORA$="[133]"ORJ%=1THENFF=1 7164 IFFF=1THENIFPQ>=2THENSYSSD:PRINTQ1$:SYSSD:PRINTQ1$:PQ=PQ-1:GOTO7161 7165 : 7166 IFA$=""ORA$="[157]"ORA$="[135]"ORA$="[136]"ORJ%=2THENFF=2 7167 IFFF=2THENIFPQCHR$(13)ANDA$<>" "ANDJ%<>16THENGOSUB1280:GOTO7161 7173 GOSUB63300 7175 IFMID$(SQ$,PQ,1)="Q"THENPOP=1:REM'POP' BACK 7176 : 7180 IFMID$(SQ$,PQ,1)="R"THEN 8000:REMREAD FILE 7185 : 7190 IFMID$(SQ$,PQ,1)="E"THENF$="LOAD"+CHR$(34)+M$(MP,1)+CHR$(34)+",8":GOTO61000 7192 REM RUN 7290 : 7390 : 8000 RETURN 9000 REM MAIN SCRN 9002 GOSUB2705:PRINT"[147]";:POKEV+33,.:PRINT"[153] "MT$TAB(39-LEN(MO$))MO$ 9005 PRINTWT$;:FORI=2TO18:PRINT"[221]"SPC(38)"[221]";:NEXT:PRINTWB$; 9010 PRINT"[159]"WT$"[221] [195][210][211][210][146] KEYS OR [202]OYSTICK[146] TO SCROLL MENU [221]"; 9015 PRINT"[221] [211][208][193][195][197]-[194][193][210][146], [210]ETURN[146], OR [194]UTTON[146] [211]ELECTS [221]"; 9020 PRINT"[221] [216][146] KEY TO EXIT [204][207][193][196][211][212][193][210] [221]"; 9022 PRINTLEFT$(WB$,39);:POKE2023,125:POKE56295,3 9025 FORI=217TO242:POKEI,PEEK(I)OR128:NEXT 9030 POKE1020,2:POKE1021,18:POKE1022,1:POKE1023,38:SYS51200:PRINT"[129]";:SYS51203 9032 : 9040 POKE2040,13:POKEV,60:POKEV+1,128:POKEV+39,7 9045 POKE2041,14:POKEV+2,60:POKEV+3,128:POKEV+40,7 9046 POKE2042,15:POKEV+4,60:POKEV+5,128:POKEV+41,7 9047 : 9048 POKEV+29,7 9049 : 9050 RETURN 9999 END 10000 D=PEEK(186):N$="PRESENTER":OPEN15,D,15,"S0:"+N$:CLOSE15:SAVEN$,D:END 50000 POKE646,C%(5):PRINT"[147] [204][207][193][196][211][212][193][210] [200]ARDCOPY " 51005 PRINT" [196]O YOU WANT YOUR HARDCOPY PRINTED IN" 51010 PRINT""SPC(12)"TWO COLUMNS?" 51035 POKEB,.:WAITB,1:GETA$ 51040 IFA$="Y"THENC8%=1:GOTO55000 51045 IFA$<>"N"THEN51035 51050 C8%=0 55000 POKE646,C%(5):PRINT"[147] [204][207][193][196][211][212][193][210] [200]ARDCOPY " 55010 PRINT" [208]LEASE MAKE SURE YOUR PRINTER IS" 55015 PRINT" ON-LINE AND READY TO GO." 55020 PRINT" [208]RESS A KEY WHEN YOU ARE READY.":POKEB,0:WAITB,1:GETA$ 55022 IFMU%THENGOSUB2705 55025 OPEN4,PA,SA:LC=.:CL=1:IFC8%THEN55100 55030 FORI=1TOLL:LC=LC+1:IFLC>60THENFORJ=1TO6:PRINT#4," ":NEXT:LC=1 55035 PRINT#4,T$(I):NEXT:FORI=LLTO65:PRINT#4," ":NEXT:GOTO55160 55100 IFLL-CL<120THEN55150 55105 FORI=CLTOCL+59:T$=T$(I):PRINT#4,T$SPC(42-LEN(T$))T$(I+60):NEXT 55110 FORI=1TO6:PRINT#4," ":NEXT:CL=CL+120:GOTO55100 55150 CH%=(LL-CL+2)/2:FORI=CLTOCL+CH%-1:T$=T$(I):PRINT#4,T$SPC(42-LEN(T$))T$(I+CH%) 55155 NEXT:FORI=1TO4:PRINT#4," ":NEXT 55160 CLOSE4:IFMU%THENGOSUB2700 55165 GOTO5999 59999 POKE56325,59:END 60050 : 60105 : 61000 REM ACTUALLY RUN 61005 MU%=0:GOSUB2705 61006 POKE597,MP:REM HIDE FLAG 61007 POP=0:GOSUB63100:IFPOP=1THEN5900 61008 POKEV+21,0 61010 PRINT"[147]"F$:PRINT"RUN" 61020 POKE631,13:POKE632,13:POKEB,2:POKE44,8:POKE56325,59:END 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:POKES+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 63005 : 63100 RETURN 63105 IFVAL(S$)=VAL(M$(MP,3))THENRETURN 63107 POKEV+21,0 63110 PRINT"[147][212]HE DISKETTE CURRENTLY IN YOUR DRIVE IS" 63120 IFI1$<>"\"THENPRINT" NOT A REGULAR [204][207][193][196][211][212][193][210] ISSUE.":GOTO63140 63130 PRINT" SIDE "S$" OF [204][207][193][196][211][212][193][210]"VAL(N1$+N2$) 63140 PRINT""TAB(17-LEN(M$(MP,0))/2);"'"M$(MP,0)"' IS ON" 63150 PRINT" SIDE "M$(MP,3)" OF [204][207][193][196][211][212][193][210] "MN$ 63160 PRINT" [201]NSERT THAT SIDE, PLEASE" 63170 PRINTSPC(19)"&" 63180 PRINTSPC(12)"PRESS SPACE BAR" 63190 PRINT" OR PRESS [210][197][212][213][210][206][146][160]TO RETURN TO MENU" 63200 PRINT:PRINT" ([201] SUGGEST YOU TURN THE DISK OVER.) 63210 [151]B,.:[146]B,1:[161]K$:[139]K$[179][177]" "[167]POP[178]1:[142] 63220 [153]"LOAD":[137]63100 63230 [143]READ SIDE MARKER 63240 [160]8 63250 [159]8,8,8,"#":[152]15,"UA:8 0 18 0":[152]15,"B-P:8 154" 63260 [161]#8,N1$,N2$,A$,A$,A$,S$,A$,A$,I1$,I2$:[160]8 63270 [142] 63300 [143]DING 63301 KT[178][194](1020):KB[178][194](1021):KL[178][194](1022):KR[178][194](1023) 63302 [129]PP[178]1020[164]1023:[151]PP,0:[130] 63304 [151]V[170]21,4:[141]63000 63308 [151]V[170]21,[197](M$(MP,3)):[141]63002 63309 [151]1020,KT:[151]1021,KB:[151]1022,KL:[151]1023,KR 63310 [142] 63350 : 63400 [153]"LOADSTOP (null)(null)ATNSTR$(null)(null)ATN(null)CLOSEIS NOT PUBLIC DOMAIN." 63406 [151]53281,1:[160]15 63408 [153]" (null)(null)ATNSTR$(null)(null)ATN(null)CLOSEIS UNPROTECTED FOR YOUR" 63410 [153][163]28);"CONVENIENCE.":[153]"(null)E WANT YOU TO BE ABLE"; 63412 [153]" TO COPY, MODIFY, AND LEARN FROM THE"; 63414 [153]" PROGRAMS ON (null)(null)ATNSTR$(null)(null)ATN(null).":[153]:[153]"(null)LEASE RESPECT THIS POLICY:" 63416 [153]:[153]"STR$O NOT ALLOW UNAUTHORIZED COPIES":[153][163]29)"TO BE MADE." 63418 [153]:[153]"((null)CHOOLS MAY MAKE A COPY FOR EACH LEN-64.)" 63420 [153]:[153]"(null)YPE (null)(null)(null) THEN PRESS <(null)VAL(null)(null)(null)(null)> TO RETURN TO (null)(null)ATNSTR$(null)(null)ATN(null)." 63422 [128]