start tok64 5 print"{white}stop tape and please wait..." 31 POKE56334,PEEK(56334)AND254:POKE1,PEEK(1)AND251 35 FORI=1TO63 36 FORJ=0TO7 37 POKE14336+I*8+J,PEEK(53248+I*8+J) 38 NEXTJ:NEXTI 75 FORI=14336+(33*8) TO 14336+((33*8)+7):READ A:POKE I,A:NEXT I:DATA 0,3,7,15,12,27,5,55 80 FORI=14336+(27*8) TO 14336+((27*8)+7):READ A:POKE I,A:NEXT I:DATA 0,198,228,118,148,214,164,239 81 FORI=14336+(28*8) TO 14336+((28*8)+7):READ A:POKE I,A:NEXT I:DATA 0,126,122,126,185,181,88,37 82 FORI=14336+(29*8) TO 14336+((29*8)+7):READ A:POKE I,A:NEXT I:DATA 0,246,54,192,80,128,56,180 83 FORI=14336+(35*8) TO 14336+((35*8)+7):READ A:POKE I,A:NEXT I:DATA 8,44,69,107,73,42,77,39 84 FORI=14336+(37*8) TO 14336+((37*8)+7):READ A:POKE I,A:NEXT I:DATA 16,52,162,214,146,84,178,228 85 FORI=14336+(39*8) TO 14336+((39*8)+7):READ A:POKE I,A:NEXT I:DATA 91,31,47,47,42,5,56,92 86 FORI=14336+(63*8) TO 14336+((63*8)+7):READ A:POKE I,A:NEXT I:DATA 218,248,228,212,164,64,28,58 87 FORI=14336+(47*8) TO 14336+((47*8)+7):READ A:POKE I,A:NEXT I:DATA 0,122,83,102,76,89,114,0 148 POKE1,PEEK(1)OR4:POKE56334,PEEK(56334)OR1 149 POKE53272,(PEEK(53272)AND240)+14 150 REM inicio 180 DIMF(8,8) 190 printchr$(147):POKE53280,0:POKE53281,0 200 PRINT "{home}{yellow} knights & demons":PRINT"{blue} a game by kabuto factory" 210 PRINT:PRINT:PRINT "{green} c-64 version by manuel gomez":PRINT:PRINT:PRINT:PRINT:PRINT"{red} 1. easy level":PRINT"{red} 2. medium level":PRINT"{red} 3. hard level" 225 GETA$ 230 IFA$="1"THENDI=1:GOTO270 240 IFA$="2"THENDI=2:GOTO270 250 IFA$="3"THENDI=3:GOTO270 260 IFA$=""THEN225 270 REM varglob 280 X=1:Y=1:SU=0:BA=16 290 REM varfase 300 IFDI=1THENCA=10:T=200:P=5 310 IFDI=2THENCA=20:T=300:P=15 320 IFDI=3THENCA=30:T=400:P=10 330 IFBA<8ORBA>23THENGOTO1370 340 GOSUB1040 350 REM bucle 355 GETA$ 360 IFA$="o"ANDX>1THEND=1:GOSUB650:GOTO420 370 IFA$="p"ANDX<8THEND=2:GOSUB650:GOTO420 380 IFA$="q"ANDY>1THEND=3:GOSUB650:GOTO420 390 IFA$="a"ANDY<8THEND=4:GOSUB650:GOTO420 400 IFA$="m"THEND=4:GOSUB740:GOTO420 410 IFA$="z"ANDP>0THENGOSUB570:P=P-1:GOTO420 420 T=T-.1 440 REM cond 450 IFINT(T)=0THENGOTO1340 460 IFSU=64ORSU=128THENGOTO500 470 PRINT"{home}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{right}{cyan}time:";INT(T);"{left}{blue}/";TAB(20);"{green}pikes:";P;"{left}{blue}/" 490 GOTO350 500 REM pasa 510 IFSU=64THENPRINT"{green}{down}{down}{right}{right}{right}{right}{right}{right}{right}board clear.good side":BA=BA-1:SU=0:X=1:Y=1:GOTO530 520 IFSU=128THENPRINT"{red}{down}{down}{right}{right}{right}{right}{right}{right}{right}board clear.evil side":BA=BA+1:SU=0:X=1:Y=1:GOTO530 530 IFDI=1THENT=200 540 IFDI=2THENT=300 550 IFDI=3THENT=400 560 geta$:ifa$=""then560 561 GOTO330 570 REM pica 580 IFF(X,Y)=1THENF(X,Y)=2:SU=SU+1:GOTO600 590 IFF(X,Y)=2THENF(X,Y)=1:SU=SU-1:GOTO600 600 IFF(X,Y)=1THENGOSUB2100 620 IFF(X,Y)=2THENGOSUB2150 625 POKE55296+(8+2*(X-1))+40*(3+2*(Y-1)),5:POKE55296+((8+2*(X-1))+1)+40*(3+2*(Y-1)),5:POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))+1),5:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))+1),5 640 RETURN 650 REM cursor 660 IFF(X,Y)=1THENGOSUB2100 670 IFF(X,Y)=2THENGOSUB2150 680 IFD=1THENX=X-1 690 IFD=2THENX=X+1 700 IFD=3THENY=Y-1 710 IFD=4THENY=Y+1 720 POKE55296+(8+2*(X-1))+40*(3+2*(Y-1)),5:POKE55296+((8+2*(X-1))+1)+40*(3+2*(Y-1)),5:POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))+1),5:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))+1),5 730 RETURN 740 REM cambia 750 REM rutcambio 760 IFF(X,Y)=1THENF(X,Y)=2:SU=SU+1:GOTO780 770 IFF(X,Y)=2THENF(X,Y)=1:SU=SU-1:GOTO780 780 IFY>1THENGOTO1520 790 IFY>1THENGOTO1530 800 IFY<8THENGOTO1540 810 IFY<8THENGOTO1550 820 IFX>1THENGOTO1560 830 IFX>1THENGOTO1570 840 IFX<8THENGOTO1580 850 IFX<8THENGOTO1590 860 REM rutpinta 880 IFF(X,Y)=1THENGOSUB2100 890 IFF(X,Y)=2THENGOSUB2150 900 IFY>1THENGOSUB2200 910 IFY>1THENGOTO1430 920 IFY>1THENGOTO1440 930 IFY<8THENGOSUB2250 940 IFY<8THENGOTO1450 950 IFY<8THENGOTO1460 960 IFX>1THENGOSUB2300 970 IFX>1THENGOTO1470 980 IFX>1THENGOTO1480 990 IFX<8THENGOSUB2350 1000 IFX<8THENGOTO1490 1010 IFX<8THENGOTO1500 1020 POKE55296+(8+2*(X-1))+40*(3+2*(Y-1)),5:POKE55296+((8+2*(X-1))+1)+40*(3+2*(Y-1)),5:POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))+1),5:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))+1),5 1030 RETURN 1040 REM tablero 1050 printchr$(147):print"{home}{purple}a new battle begins..." 1060 FORR=1TO8:FORC=1TO8 1070 F(C,R)=1:SU=SU+1 1080 NEXTC:NEXTR 1090 FORN=1TOCA 1100 R=INT(RND(1)*8)+1:C=INT(RND(1)*8)+1 1110 IFF(C,R)=1THENF(C,R)=2:SU=SU+1:GOTO1130 1120 IFF(C,R)=2THENF(C,R)=1:SU=SU-1:GOTO1130 1130 IFR>1THENIFF(C,R-1)=1THENF(C,R-1)=2:SU=SU+1:GOTO1150 1140 IFR>1THENIFF(C,R-1)=2THENF(C,R-1)=1:SU=SU-1:GOTO1150 1150 IFR<8THENIFF(C,R+1)=1THENF(C,R+1)=2:SU=SU+1:GOTO1170 1160 IFR<8THENIFF(C,R+1)=2THENF(C,R+1)=1:SU=SU-1:GOTO1170 1170 IFC>1THENIFF(C-1,R)=1THENF(C-1,R)=2:SU=SU+1:GOTO1190 1180 IFC>1THENIFF(C-1,R)=2THENF(C-1,R)=1:SU=SU-1:GOTO1190 1190 IFC<8THENIFF(C+1,R)=1THENF(C+1,R)=2:SU=SU+1:GOTO1210 1200 IFC<8THENIFF(C+1,R)=2THENF(C+1,R)=1:SU=SU-1:GOTO1210 1210 NEXTN 1215 POKE53270,PEEK(53270)OR16:poke53281,0:poke53282,9:poke53283,11 1220 PRINTCHR$(147):forn=0to23:print"{blue}////////////////////////////////":nextn 1227 print"{home}{right}{right}{right}{right}{right}{right}{right}{right}{pink}----------------";chr$(35);chr$(37) 1228 print"{right}{right}{right}{right}{right}{right}{right}{right}{pink}----------------";chr$(39);chr$(63) 1230 POKE55296+6+40*0,15:POKE55296+7+40*0,15:POKE55296+6+40*1,14:POKE55296+7+40*1,11 1235 POKE1024+6+40*0,33:POKE1024+7+40*0,27:POKE1024+6+40*1,28:POKE1024+7+40*1,29 1240 poke55296+BA,1:poke55296+BA+40,1:poke1024+BA,47:poke1024+BA+40,47 1260 FORR=1TO8 1270 FORC=1TO8 1280 IFF(C,R)=1THENGOSUB2000 1290 IFF(C,R)=2THENGOSUB2050 1300 NEXTC 1310 NEXTR 1320 POKE55296+(8+2*(X-1))+40*(3+2*(Y-1)),5:POKE55296+((8+2*(X-1))+1)+40*(3+2*(Y-1)),5:POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))+1),5:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))+1),5 1330 RETURN 1340 REM gameover 1350 PRINT"{home}{down}{down}{down}{down}{down}{down}{down}{down}{down}{down}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{right}{red}game over" 1360 geta$:ifa$=""then1360 1361 GOTO190 1370 REM final 1380 IFBA>23THENprintchr$(147):PRINT"{red}you have finished with the bad guys":PRINT"{orange}welcome to the dark side":FORN=0TO5000:NEXTN:GOTO190 1390 IFBA<8ANDDI=1THENprintchr$(147):PRINT"{green}you have finished the game":PRINT"{light green}... but try with a harder level.":FORN=0TO5000:NEXTN:GOTO190 1400 IFBA<8ANDDI=2THENprintchr$(147):PRINT"{green}you have finished the game":PRINT"{light green}... but try with a harder level.":FORN=0TO5000:NEXTN:GOTO190 1410 IFBA<8ANDDI=3THENprintchr$(147):PRINT"{light blue} you have mastered the game...":PRINT"{cyan}thanks for playing...":FORN=0TO5000:NEXTN:GOTO190 1420 REM pifs 1430 IFF(X,Y-1)=1THENGOSUB2400:GOTO930 1440 IFF(X,Y-1)=2THENGOSUB2450:GOTO930 1450 IFF(X,Y+1)=1THENGOSUB2500:GOTO960 1460 IFF(X,Y+1)=2THENGOSUB2550:GOTO960 1470 IFF(X-1,Y)=1THENGOSUB2600:GOTO990 1480 IFF(X-1,Y)=2THENGOSUB2650:GOTO990 1490 IFF(X+1,Y)=1THENGOSUB2700:GOTO1020 1500 IFF(X+1,Y)=2THENGOSUB2750:GOTO1020 1510 REM cifs 1520 IFF(X,Y-1)=1THENF(X,Y-1)=2:SU=SU+1:GOTO800 1530 IFF(X,Y-1)=2THENF(X,Y-1)=1:SU=SU-1:GOTO800 1540 IFF(X,Y+1)=1THENF(X,Y+1)=2:SU=SU+1:GOTO820 1550 IFF(X,Y+1)=2THENF(X,Y+1)=1:SU=SU-1:GOTO820 1560 IFF(X-1,Y)=1THENF(X-1,Y)=2:SU=SU+1:GOTO840 1570 IFF(X-1,Y)=2THENF(X-1,Y)=1:SU=SU-1:GOTO840 1580 IFF(X+1,Y)=1THENF(X+1,Y)=2:SU=SU+1:GOTO860 1590 IFF(X+1,Y)=2THENF(X+1,Y)=1:SU=SU-1:GOTO860 2000 POKE55296+(8+2*(C-1))+40*(3+2*(R-1)),15:POKE55296+((8+2*(C-1))+1)+40*(3+2*(R-1)),15:POKE55296+(8+2*(C-1))+40*((3+2*(R-1))+1),14:POKE55296+((8+2*(C-1))+1)+40*((3+2*(R-1))+1),11 2010 POKE1024+(8+2*(C-1))+40*(3+2*(R-1)),33:POKE1024+((8+2*(C-1))+1)+40*(3+2*(R-1)),27:POKE1024+(8+2*(C-1))+40*((3+2*(R-1))+1),28:POKE1024+((8+2*(C-1))+1)+40*((3+2*(R-1))+1),29 2020 RETURN 2050 POKE55296+(8+2*(C-1))+40*(3+2*(R-1)),10:POKE55296+((8+2*(C-1))+1)+40*(3+2*(R-1)),10:POKE55296+(8+2*(C-1))+40*((3+2*(R-1))+1),10:POKE55296+((8+2*(C-1))+1)+40*((3+2*(R-1))+1),10 2060 POKE1024+(8+2*(C-1))+40*(3+2*(R-1)),35:POKE1024+((8+2*(C-1))+1)+40*(3+2*(R-1)),37:POKE1024+(8+2*(C-1))+40*((3+2*(R-1))+1),39:POKE1024+((8+2*(C-1))+1)+40*((3+2*(R-1))+1),63 2070 RETURN 2100 POKE55296+(8+2*(X-1))+40*(3+2*(Y-1)),15:POKE55296+((8+2*(X-1))+1)+40*(3+2*(Y-1)),15:POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))+1),14:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))+1),11 2110 POKE1024+(8+2*(X-1))+40*(3+2*(Y-1)),33:POKE1024+((8+2*(X-1))+1)+40*(3+2*(Y-1)),27:POKE1024+(8+2*(X-1))+40*((3+2*(Y-1))+1),28:POKE1024+((8+2*(X-1))+1)+40*((3+2*(Y-1))+1),29 2120 RETURN 2150 POKE55296+(8+2*(X-1))+40*(3+2*(Y-1)),10:POKE55296+((8+2*(X-1))+1)+40*(3+2*(Y-1)),10:POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))+1),10:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))+1),10 2160 POKE1024+(8+2*(X-1))+40*(3+2*(Y-1)),35:POKE1024+((8+2*(X-1))+1)+40*(3+2*(Y-1)),37:POKE1024+(8+2*(X-1))+40*((3+2*(Y-1))+1),39:POKE1024+((8+2*(X-1))+1)+40*((3+2*(Y-1))+1),63 2170 RETURN 2200 RETURN 2250 RETURN 2300 RETURN 2350 RETURN 2400 POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))-2),15:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))-2),15:POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))-1),14:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))-1),11 2410 POKE1024+(8+2*(X-1))+40*((3+2*(Y-1))-2),33:POKE1024+((8+2*(X-1))+1)+40*((3+2*(Y-1))-2),27:POKE1024+(8+2*(X-1))+40*((3+2*(Y-1))-1),28:POKE1024+((8+2*(X-1))+1)+40*((3+2*(Y-1))-1),29 2420 RETURN 2450 POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))-2),10:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))-2),10:POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))-1),10:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))-1),10 2460 POKE1024+(8+2*(X-1))+40*((3+2*(Y-1))-2),35:POKE1024+((8+2*(X-1))+1)+40*((3+2*(Y-1))-2),37:POKE1024+(8+2*(X-1))+40*((3+2*(Y-1))-1),39:POKE1024+((8+2*(X-1))+1)+40*((3+2*(Y-1))-1),63 2470 RETURN 2500 POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))+2),15:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))+2),15:POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))+3),14:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))+3),11 2510 POKE1024+(8+2*(X-1))+40*((3+2*(Y-1))+2),33:POKE1024+((8+2*(X-1))+1)+40*((3+2*(Y-1))+2),27:POKE1024+(8+2*(X-1))+40*((3+2*(Y-1))+3),28:POKE1024+((8+2*(X-1))+1)+40*((3+2*(Y-1))+3),29 2520 RETURN 2550 POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))+2),10:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))+2),10:POKE55296+(8+2*(X-1))+40*((3+2*(Y-1))+3),10:POKE55296+((8+2*(X-1))+1)+40*((3+2*(Y-1))+3),10 2560 POKE1024+(8+2*(X-1))+40*((3+2*(Y-1))+2),35:POKE1024+((8+2*(X-1))+1)+40*((3+2*(Y-1))+2),37:POKE1024+(8+2*(X-1))+40*((3+2*(Y-1))+3),39:POKE1024+((8+2*(X-1))+1)+40*((3+2*(Y-1))+3),63 2570 RETURN 2600 POKE55296+(8+2*((X-1)-1))+40*(3+2*(Y-1)),15:POKE55296+((8+2*((X-1)-1))+1)+40*(3+2*(Y-1)),15:POKE55296+(8+2*((X-1)-1))+40*((3+2*(Y-1))+1),14:POKE55296+((8+2*((X-1)-1))+1)+40*((3+2*(Y-1))+1),11 2610 POKE1024+(8+2*((X-1)-1))+40*(3+2*(Y-1)),33:POKE1024+((8+2*((X-1)-1))+1)+40*(3+2*(Y-1)),27:POKE1024+(8+2*((X-1)-1))+40*((3+2*(Y-1))+1),28:POKE1024+((8+2*((X-1)-1))+1)+40*((3+2*(Y-1))+1),29 2620 RETURN 2650 POKE55296+(8+2*((X-1)-1))+40*(3+2*(Y-1)),10:POKE55296+((8+2*((X-1)-1))+1)+40*(3+2*(Y-1)),10:POKE55296+(8+2*((X-1)-1))+40*((3+2*(Y-1))+1),10:POKE55296+((8+2*((X-1)-1))+1)+40*((3+2*(Y-1))+1),10 2660 POKE1024+(8+2*((X-1)-1))+40*(3+2*(Y-1)),35:POKE1024+((8+2*((X-1)-1))+1)+40*(3+2*(Y-1)),37:POKE1024+(8+2*((X-1)-1))+40*((3+2*(Y-1))+1),39:POKE1024+((8+2*((X-1)-1))+1)+40*((3+2*(Y-1))+1),63 2670 RETURN 2700 POKE55296+(8+2*((X-1)+1))+40*(3+2*(Y-1)),15:POKE55296+((8+2*((X-1)+1))+1)+40*(3+2*(Y-1)),15:POKE55296+(8+2*((X-1)+1))+40*((3+2*(Y-1))+1),14:POKE55296+((8+2*((X-1)+1))+1)+40*((3+2*(Y-1))+1),11 2710 POKE1024+(8+2*((X-1)+1))+40*(3+2*(Y-1)),33:POKE1024+((8+2*((X-1)+1))+1)+40*(3+2*(Y-1)),27:POKE1024+(8+2*((X-1)+1))+40*((3+2*(Y-1))+1),28:POKE1024+((8+2*((X-1)+1))+1)+40*((3+2*(Y-1))+1),29 2720 RETURN 2750 POKE55296+(8+2*((X-1)+1))+40*(3+2*(Y-1)),10:POKE55296+((8+2*((X-1)+1))+1)+40*(3+2*(Y-1)),10:POKE55296+(8+2*((X-1)+1))+40*((3+2*(Y-1))+1),10:POKE55296+((8+2*((X-1)+1))+1)+40*((3+2*(Y-1))+1),10 2760 POKE1024+(8+2*((X-1)+1))+40*(3+2*(Y-1)),35:POKE1024+((8+2*((X-1)+1))+1)+40*(3+2*(Y-1)),37:POKE1024+(8+2*((X-1)+1))+40*((3+2*(Y-1))+1),39:POKE1024+((8+2*((X-1)+1))+1)+40*((3+2*(Y-1))+1),63 2770 RETURN stop tok64