10 REM CASTLE 20.3.1986 V 223.0 20 REM BY ARTTU SUIHKONEN 30 REM 50 PRINTCHR$(8):POKE895,0 80 POKE900,10:POKE910,0:POKE890,3 85 POKE913,0:POKE914,0:POKE808,232 90 POKE53280,0:POKE53281,0:POKE908,0 105 IFA=0THENA=1:LOAD"SUPER ORK89",8,8 110 IFB=0THENB=1:LOAD"4.ORK2",8,8 115 IFC=0THENC=1:LOAD"CA 37",8,8 120 IFD=0THEND=1:LOAD"MSB 9",8,1 125 IFE=0THENE=1:LOAD"GAME OVER",8,8 127 IFK=0THENK=1:LOAD"MUSIC 21",8,8 128 IFF=0THENF=1:LOAD"PR. GAME*",8,8 130 IFI=0THENI=1:LOAD"SE 5",8,8,8 135 GOSUB3100:SYS51350:SYS49400 139 FORA=832TO838:POKEA,1:NEXT:PRINT"[147]" 140 POKE203,64:GOTO350 150 SYS51040 330 FORT=0TO2000:NEXT:POKE53269,0 332 PRINT"[147]":POKE913,0:POKE914,0:RETURN 350 POKE53280,0:POKE53281,0 370 POKE56341,50:SYS49710:PRINT"[147]" 590 V=53248:PRINT"":POKE53269,0 600 POKE890,3:GOSUB1680 620 AX=230:AC=231:LV=0:POKE924,0:POKE850,AX:POKE851,AC:GOSUB1080:POKE203,64 630 POKE53264,0:SYS49710:JH=0:AI=150 700 POKEV+28,1:GOSUB920:POKE53278,0:SYS51418:POKE53278,0 710 POKE203,64:IFPEEK(901)<>0THEN1570 715 IFPEEK(203)=60THEN7000 720 IFPEEK(203)=3THEN1680 730 IFPEEK(910)<>0THENSC=SC+PEEK(910)*100:POKE910,0:GOSUB920 740 IFPEEK(900)=0THEN1420 810 AI=AI-1:GOSUB920:GOTO710 920 POKE646,K:PRINT"TIME";AI;"[157] " 930 PRINTTAB(12)"[145][154]SCORE";SC;" " 940 PRINTTAB(28)"[145][145]LEVEL[150]";LV;"[157] " 950 PRINT"[156]LIVES";PEEK(890);"[157] ":IFPEEK(890)=0THEN1410 955 IFSC=>HCTHEN HC=SC 960 PRINTTAB(12)"[154][145]HI-SCORE[154]";HC;" " 970 IFAI=0THENSYS49400:POKE53269,1:POKE53264,0:SYS50615:GOTO1570 990 RETURN 1080 LV=LV+1:IFLV=10THENAX=230:AC=231 1090 POKE924,LV:LV=PEEK(924):IFLV=20THENGOSUB1890:GOSUB1500:GOTO1680 1110 GOSUB150:POKE53269,0:POKE53264,0 1122 AX=AX+2:AC=AC+2:R=INT(9*RND(1)) 1125 POKE850,AX:POKE851,AC:POKE900,10 1130 AI=150:IFLV>1THENSC=SC+LV*100 1200 IFLV<04THENK=03:G=06:GOTO1252 1205 IFLV<06THENK=06:G=13:GOTO1252 1210 IFLV<08THENK=05:G=01:GOTO1252 1215 IFLV<11THENK=02:G=10:GOTO1252 1220 IFLV<13THENK=03:G=07:GOTO1252 1225 IFLV<15THENK=08:G=04:GOTO1252 1230 IFLV<17THENK=14:G=07:GOTO1252 1234 IFLV<20THENK=02:G=06:GOTO1252 1252 IFLV<05THENRT=15:GOTO1260 1255 RT=31:POKE2040,215 1260 PRINT"[147]":GOSUB920:POKE898,K 1265 POKEV+28,1:POKE921,G:POKE925,R 1330 POKE920,PEEK(52000+LV-1):LK=LK+1 1380 SYS51490:POKE918,RT 1400 IFLV=5ORLV=10ORLV=15THENPOKE890,PEEK(890)+1:SYS50315:GOTO1405 1403 FORT=0TO250:NEXT 1405 POKE56341,49:POKE924,LV:RETURN 1410 GOSUB1890:GOSUB1500:GOTO1680 1420 POKEV+21,1 1425 FORT=1TOAI:SC=SC+10:AI=AI-1 1445 IFSC=>HCTHEN HC=SC 1460 PRINT"TIME";AI;"[157] " 1470 PRINT"";TAB(12)"[154]SCORE";SC 1475 PRINT"";TAB(12)"[154]HI-SCORE";HC 1480 NEXTT:FORA=1TO200:NEXTA 1490 GOSUB1080:GOTO630 1500 POKEV+21,0:IFSC<=NO(9)THENRETURN 1509 NI$=" ":SYS49400:GOSUB5400 1510 N$=IN$:POKE53269,0 1520 NO(9)=SC:NI$(9)=N$:FORI=9TO1STEP-1 1530 IFNO(I)<=NO(I-1)THENGY=1:GOTO1680 1540 NO(I)=NO(I-1):NO(I-1)=SC 1550 NI$(I)=NI$(I-1):NI$(I-1)=N$:NEXT 1560 GY=1:GOTO1680 1570 AI=150:POKE53269,1:POKE53278,0 1575 POKE53264,0:POKE908,0:SYS49400 1660 IFPEEK(890)=0THENPOKEV+21,RT-1:GOTO1410 1665 SYS50488:POKE901,0 1670 PRINT"";TAB(5)"";PEEK(890)" ":FORA=0TO100:NEXT:GOTO630 1680 PRINT"[147]":POKE53276,0:POKE53269,0 1690 POKE890,3:POKE53280,0:POKE53281,0 1710 POKE203,64:V=53248:POKEV+21,0 1715 POKE56341,50:HC=NO(0):PRINTCHR$(8) 1720 POKEV+28,0:SYS49400:LK=LK+1 1740 PRINT"[154] [201][202][193][194]89<=\[146] @A[146] [193][194] 89[146] \" 1750 PRINT"[154] [203][204][195][196]:;>?^_BC[146] BY [195][196].:;[146]UIHKONEN":POKE895,0 1760 PRINT"[156]HI-SCORE TABLE":POKE53264,0 1780 PRINT 1810 PRINT"[159]  FIRE TO START GAME [159] F7 NEW GAME":POKE1787,0 1812 PRINT"[C] MCMLXXXVI HELSINKI" 1815 POKE906,0:GOSUB6040 1820 IFGY=1THENGY=0:GOSUB3200 1822 IFLK=10THENLK=0:RUN135 1840 J2=PEEK(56320):SYS50990:POKE1787,0 1870 IFJ2=111ORPEEK(203)=60THENPOKE890,3:SC=0:POKE53269,0:GOTO620 1875 IFPEEK(203)=4THENGOSUB6000 1877 IFPEEK(203)=3THENGOSUB8000 1880 GOTO1840 1890 SYS50488:SYS49710:POKE53269,RT-1 1897 SYS49386:PRINT""PEEK(890)"[157] ":SYS51120:SYS51090:POKE56341,50 1950 FORI=0TO76:SYS51120:FORT=0TO150:NEXT:NEXT 1960 RETURN 3100 REM *** SCOREN LOUDAUS LEVYLTA *** 3102 POKE54296,0:SYS51400:OPEN 1,8,15 3105 OPEN2,8,2,"-HIGH SCORES-,S,R" 3110 GOSUB3500:FORI=0TO9:INPUT#2,NI$(I):INPUT#2,NO(I):NEXT:CLOSE2:CLOSE1 3150 POKE54296,15:SYS49400:RETURN 3200 REM *** SCOREN SEIVAUS LEVYLLE *** 3201 POKE54296,0:SYS51400 3205 OPEN2,8,2,"@0:-HIGH SCORES-,S,W" 3210 FORI=0TO9:PRINT#2,NI$(I):PRINT#2,NO(I):NEXT:CLOSE2 3300 SYS49400:POKE54296,15:RETURN 3500 REM ** DISK ERROR ROUTINE ** 3501 POKE53269,0:INPUT#1,A$,B$,C$,D$ 3502 IFVAL(A$)=0THENRETURN 3505 POKE53280,0:POKE53281,11:PRINT"[147]" 3510 PRINT"DISK ERROR[146]: "B$ 3520 CLOSE2:CLOSE1:PRINT" INSERT DISK TO DRIVE " 3600 PRINT" AND PRESS ANY KEY." 3610 IFPEEK(203)<>64THENRUN135 3620 GOTO3610 5400 BL$=" ":POKE53264,0:SYS50532:LE=15 5405 POKE53280,0:POKE53281,0:PRINT"[147]" 5407 PRINT""TAB(14)"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]" 5410 CR$=CHR$(13):DE$=CHR$(20):C=1 5420 V$="" 5425 MSG$="[146]YOUR NAME:":LI=6:COL=4 5430 Y9=2:IN$="":UC=0:UB$=LEFT$(BL$,LE):GOSUB 5530:UB$=" ":UC=3 5440 UT=TI 5450 GETA$:IFA$=""THEN5510 5460 IFA$=CR$THENY9=2:GOSUB5530:PRINT "[157][157] ":RETURN 5470 IF A$=DE$THENON-(LEN(IN$)=0)GOTO 5510:IN$=LEFT$(IN$,LEN(IN$)-1):GOTO5510 5480 IF (ASC(A$)AND127)<32 OR A$=CHR$(34) THEN 5510 5490 IF LE=LEN(IN$) THEN 5510 5500 IN$=IN$+A$ 5510 GOSUB 5530:IF TI-UT<10 THEN 5450 5520 Y9=3-Y9:GOTO 5440 5530 PRINT LEFT$(V$,LI)TAB(COL-1)MID$(MSG$,Y9)UB$IN$MID$(" [146]",Y9,UC)" ";:RETURN 5999 REM NIMI TAULUKOIDEN PRINTTAUS 6000 POKE203,64:WQ=PEEK(906):SYS50990 6010 IFWQ=0THENPOKE906,5:GOTO6040 6020 IFWQ=5THENPOKE906,0:GOTO6040 6035 SYS50990 6040 PRINT"[144]";:SYS20430 6062 WQ=PEEK(906):FORI=WQTOWQ+4 6065 SYS50990:TQ=6:IFI>8THENTQ=5 6070 IFNO(I)<100THENNI$(I)="FLOPPY 1986 6071 [139]NO(I)[179]1000000[167]TB[178]24 6072 [158]50990:[139]NO(I)[179]100000[167]TB[178]25 6074 [139]NO(I)[179]10000[167]TB[178]26 6076 [139]NO(I)[179]1000[167]TB[178]27 6078 [158]50990:[139]NO(I)[179]100[167]TB[178]29 6110 [153][163]TQ)I[170]1"CMD. "NI$(I) 6111 [153]"ON"[163]TB[170]2)NO(I) 6120 [158]50990:[130]:[158]20415:[142] 7000 [143] PAUSE -RUTIINI 7015 [153]""[163]28)"PAUSE GAME" 7020 [158]49400: 7021 [139][194](203)[178]60[167]7021 7030 [139][194](203)[178]60[167]7040 7035 [137]7030 7040 [153]""[163]28)" ":[129]T[178]0[164]100:[130]:[151]203,0:[158]49386:[137]710 8000 [143] HI-SCORE LISTAN PUHDISTUS 8005 [151]54296,0:[158]51400:[159]2,8,2,"@0:-HIGH SCORES-,S,W":[129]I[178]0[164]9:NO(I)[178]1000 8010 NI$(I)[178]"FLOPPY 1986 ":[152]2,NI$(I):[152]2,NO(I):[130]:[160]2 8020 [138]135