NEW ' ------- 01 Simple Shoot 10 CLS:CLP:X=14:Y=17:F=0:T=100:H=1 20 LOCATE X, Y:PRINT CHR$(32,240,32) 30 K=INKEY() 40 IF K=28 AND X>0 THEN X=X-1 50 IF K=29 AND X<30 THEN X=X+1 60 IF K=32 AND F=0 THEN F=1:C=X+1:B=Y-1 70 IF F=0 THEN GOTO 120 80 LOCATE C,B:PRINT CHR$(242) 90 LOCATE C,B+1:PRINT " " 100 B=B-1 110 IF B<-1 THEN F=0 120 LOCATE T/10, 2:PRINT CHR$(32,241,32) 130 IF F=1 AND B=1 AND (C=(T/10)+1) THEN LOCATE C,2:PRINT CHR$(15,13):PRINT "Clear!!":END 140 T=T+H 150 IF T>290 OR T<10 THEN H=-H 160 GOTO 20 SAVE 100 NEW ' ------- 02 Submarine 10 CLS:C=10:X=RND(10):Y=RND(10) 20 LOCATE 0, 14 30 INPUT A 40 INPUT B 50 LOCATE A,B:PRINT CHR$(15) 60 IF A=X AND B=Y THEN PRINT "[[ Hit! ]]":END 70 N=ABS(X-A) 80 M=ABS(Y-B) 90 IF N<3 AND N<>0 THEN LOCATE 0,12:PRINT "X Near!" 100 IF M<3 AND M<>0 THEN LOCATE 0,13:PRINT "Y Near!" 110 IF A=X THEN LOCATE 0,12:PRINT "X Match" 120 IF B=Y THEN LOCATE 0,13:PRINT "Y Match" 130 C=C-1 140 IF C>0 THEN GOTO 20 SAVE 101 NEW ' ------- 03 Asteroid 10 CLS:CLP:X=14:Y=23:W=100:S=0 20 SCROLL 2 30 C=SCR(X,Y) 40 LOCATE X, Y:PRINT CHR$(240); 50 LOCATE RND(30), 0:PRINT CHR$(233) 60 K=INKEY():X=X-(K=28 AND X>0)+(K=29 AND X<28) 70 S=S+1 80 CLK 90 WAIT W/10 100 W=W-1:IF W<3 THEN W=2 110 IF C<>233 THEN GOTO 20 120 LOCATE X,Y:PRINT CHR$(244); 130 LOCATE 11, 13:PRINT "Game Over" 140 PRINT S;:PRINT " points" SAVE 102 NEW ' ------- 04 Drive Game 10 CLS:CLP:X=16:Y=23:R=8:H=17:T=0:S=0 20 SCROLL 2 30 S=S+1 40 C=SCR(X,Y) 50 LOCATE X,Y:PRINT "A"; 60 T=T+1:D=(T&7)>3 70 LOCATE R, 0:PRINT CHR$(2+D) 80 LOCATE R+H, 0:PRINT CHR$(2+D) 90 LOCATE R+H/2+1, 0:PRINT CHR$(124*((T&3)>1)) 100 K=INKEY():X=X-(K=28 AND X>0)+(K=29 AND X<28) 110 IF (T%64)=0 THEN H=H-1:IF H<3 THEN H=3 120 IF (T%16)<>0 THEN GOTO 160 130 R=R+RND(3)-1 140 IF R<3 THEN R=3 150 IF (R+H)>26 THEN R=26-H 160 IF (C=0) OR (C=124) THEN GOTO 20 170 LOCATE X,Y:PRINT CHR$(244) 180 LOCATE 4,13:PRINT "Game Over. Score = ";S SAVE 103 NEW ' ------- 05 Onpu Get 10 LET[0],#FF,#FF,#FF,#80,#10,#01,#BF,#D7,#FD,#80,#00,#01,#BF,#7D,#FD,#81,#11,#01,#DF,#D7 20 LET[20],#FB,#D0,#00,#0B,#DF,#EF,#FB,#DF,#EF,#FB,#C0,#28,#03,#FF,#6D,#FF,#80,#7C,#01,#FE 30 LET[40],#00,#FF,#80,#FE,#01,#BE,#C6,#FD,#BE,#D6,#FD,#BE,#D6,#FD,#80,#00,#01,#FF,#FF,#FF 40 CLS:CLP:D=0:FOR J=0TO19:FOR I=0 TO2:B=[I+J*3] 50 FOR K=0TO7:LOCATE K+I*8,J 60 IF B & #80 THEN ?CHR$(1); ELSE ?CHR$(238);:D=D+1 70 B=(B<<1)&#FF:NEXT:NEXT:?:NEXT 100 X=11:Y=18:M=11:N=13:D=D-1:T=1:G=238 110 LOCATE X,Y:?CHR$(5); 120 K=INKEY():CLK 130 A=X-(K=28)+(K=29) 140 B=Y-(K=30)+(K=31) 150 C=SCR(A,B) 160 IF C=238 THEN D=D-1:IF D=0 THEN LOCATE X,Y:?" ":LOCATE A,B:?CHR$(5):LOCATE 9,8:?"Clear":END 170 IF C<>1 THEN LOCATE X,Y:?" ";:X=A:Y=B 180 IF X=M AND Y=N THEN LOCATE 7,8:?"Game Over":END 190 T=T+1:IF (T%8)>0 THEN GOTO 110 200 LOCATE M,N:?CHR$(G); 210 E=M+(X>M)-(XN)-(Y1 THEN M=E 240 IF SCR(M,F)<>1 THEN N=F 250 G=SCR(M,N) 260 LOCATE M,N:?CHR$(237); 270 GOTO 110 SAVE 104 NEW ' ------- 06 Naruto road 10 CLS:CLP:CLV:Y=12:A=30:B=RND(15)+7 20 POKE #700,0,7,8,21,35,36,104,121,0,255,1,255,8,107,235,235,0,0,192,224,48,152,207,228,0,0,0,0,0,0,128,112 30 POKE #720,209,176,191,176,99,119,23,3,235,8,255,0,0,191,191,0,244,2,255,0,3,247,247,3,8,4,2,255,3,190,188,0 40 POKE #740,255,127,63,31,15,7,3,1 50 FOR I=0 TO 31 STEP 8 60 LC I,5:?CHR$(158,32,32,32,#E8,1,1,1); 70 LC I,22:?CHR$(158,32,32,32,#E8,1,1,1); 80 NEXT 90 LC 0,Y:?CHR$(#E0,#E1,#E2,#E3);:LC 0,Y+1:?CHR$(#E4,#E5,#E6,#E7); 100 LC 0,Y-1:?" ";:LC 0,Y+2:?" "; 110 C=SCR(0,5):LC 0,5:?CHR$(127);:LC 31,5:?CHR$(C); 120 C=SCR(0,22):LC 0,22:?CHR$(127);:LC 31,22:?CHR$(C); 130 A=A-1:IF SCR(A,B)>=#E0 THEN LC 12,11:PRINT "Crash!":BEEP 80,20:END 140 IF A<0 THEN LC A,B:?" ";:A=30:B=RND(15)+7 150 LC A,B:?CHR$(239,32); 160 K=INKEY():IF K=0 THEN GOTO 110 170 Y=Y-(K=30 AND Y>7)+(K=31 AND Y<19) 180 GOTO 90 SAVE 105 NEW ' ------- 07 Squash 10 CLS:CLP:X=21:Y=18:B=0:C=0:D=1:E=80:F=1 20 LOCATE X-1, Y:PRINT CHR$(32,131,131,131,32); 30 K=INKEY() 40 IF K=28 AND X>0 THEN X=X-1 50 IF K=29 AND X<29 THEN X=X+1 60 F=F+1:IF (F%2)=0 THEN GOTO 20 70 LOCATE B,C/100:PRINT " "; 80 B=B+D 90 C=C+E 100 LOCATE B,C/100:PRINT CHR$(233); 110 IF B<0 OR B=29 THEN D=-D 120 IF C<0 THEN E=-E 130 T=C/100 140 IF (T=Y-1 OR T=Y) AND (B>=X AND B<=X+2) THEN E=-80+RND(11) 150 IF T<22 THEN GOTO 20 160 LOCATE 12,9:PRINT "Game Over" SAVE 106 NEW ' ------- 08 Break Block 10 CLS:X=6:Y=20:D=50:E=50:F=1:G=0:S=0 20 B=0:C=1000 30 FOR J=1 TO 4 40 FOR I=1 TO 13 50 LOCATE I*2, J*2:PRINT CHR$(1); 60 G=G+1 70 NEXT 80 NEXT 100 LOCATE 0,21:PRINT "Score ";S; 110 LOCATE X-1, Y:PRINT CHR$(32,131,131,131,32); 120 K=INKEY():X=X-(K=28 AND X>0)+(K=29 AND X<28) 130 F=F+1:IF (F%2)>0 THEN GOTO 230 140 LOCATE B/100,C/100:PRINT " "; 150 B=B+D 160 C=C+E 170 Q=B/100:R=C/100 180 IF SCR(Q,R)=1 THEN S=S+1:E=-E:G=G-1:IF G=0 THEN CLS:GOTO 20 190 M=B%100:N=C%100 200 LOCATE Q,R:PRINT CHR$(128+(M<50 AND N<50)+(M>=50 AND N<50)*2+(M<50 AND N>=50)*4+(M>=50 AND N>=50)*8); 210 IF B<0 OR B=2900 THEN D=-D 220 IF C<0 THEN E=-E 230 Q=B/100:R=C/100 240 IF (R=Y-1 OR R=Y) AND (Q>=X AND Q<=X+2) THEN E=-80+RND(11) 250 IF R<20 THEN GOTO 100 260 LOCATE 12,9:PRINT "Game Over" SAVE 107 NEW ' ------- 09 SKI 10 CLS:CLP:X=12:Y=9:S=0:T=10:W=100 20 POKE #700,#18,#2C,#5E,#FF,#FF,#FF,#18,#18 30 POKE #708,#42,#42,#42,#42,#42,#42,#42,#42 40 C=SCR(X,Y) 50 LOCATE 0,0:PRINT "Score ";S; 60 LOCATE X-1,Y:PRINT CHR$(32,5,32); 70 LOCATE X-1,Y-1:PRINT CHR$(32,#E1,32); 80 K=INKEY():X=X-(K=28 AND X>0)+(K=29 AND X<28) 90 S=S+1 100 T=T+1 110 IF T/10>3 THEN T=0 120 FOR I=0 TO T/10 130 LOCATE RND(30),24-RND(2):PRINT CHR$(#E0); 140 NEXT 150 SCROLL 0 160 WAIT W/10 170 W=W-1:IF W<2 THEN W=1 180 IF T%2>0 THEN POKE #700,#18,#2C,#5E,#BD,#BF: ELSE POKE #700,#18,#2C,#5E,#FF,#FF 190 IF C<>#E0 THEN GOTO 40 200 LOCATE X,Y-1:PRINT CHR$(244) 210 LOCATE 11,9:PRINT "Score ";S;"pt" 220 LOCATE 11,11:PRINT "Game Over" SAVE 108 NEW ' ------- 10 GOTO Train 10 POKE #700,#ff,#0,#78,#48,#48,#48,#78,#0 20 POKE #708,#ff,#1,#ef,#a9,#a9,#a9,#a9,#af 30 POKE #710,#0,#0,#0,#0,#ff,#ff,#50,#70 40 POKE #718,#a1,#a1,#a1,#e1,#ff,#ff,#50,#70 50 CLS:S=100:D=20000 60 LET[0],0,8,16,24 70 LOCATE 0,15:PRINT CHR$(#E0,#E0,#E0,#E0,#E0,#E0,#E0,#E0,#E0,#E0,#E1); 80 LOCATE 0,16:PRINT CHR$(#E2,#E2,#E2,#E2,#E2,#E2,#E2,#E2,#E2,#E2,#E3); 90 FOR I=0 TO 31:LOCATE I,17:PRINT CHR$(131);:LOCATE I,18:PRINT CHR$(131);:NEXT 100 FOR I=0 TO 3 110 LOCATE [I],17:PRINT CHR$(135); 120 LOCATE [I],18:PRINT CHR$(135); 130 LOCATE [I]+1,17:PRINT CHR$(131); 140 LOCATE [I]+1,18:PRINT CHR$(131); 150 [I]=[I]-1:IF [I]<-1 THEN [I]=31 160 NEXT 170 LOCATE 0,11:PRINT (D/10);"m "; 180 LOCATE 0,12:PRINT S;"km/h "; 190 D=D-S:IF D<0 THEN LOCATE 5,6:PRINT "Overrun! Game Over":GOTO 230 200 IF INKEY()=0 THEN GOTO 100 210 S=S-1:IF S>0 THEN GOTO 100 220 LOCATE 4,6:PRINT "Train stop!! Game Over" 230 LOCATE 4,7:PRINT "Distance is ";D SAVE 109 NEW ' ------- 11 Mogura 10 POKE #700,0,0,0,0,0,0,0,0 20 POKE #708,0,0,0,0,0,0,0,#7e 30 POKE #710,0,0,0,0,0,0,#7e,#42 40 POKE #718,0,0,0,0,0,#7e,#42,#81 50 POKE #720,0,0,0,#7e,#42,#81,#a5,#a5 60 POKE #728,0,0,#7e,#42,#81,#a5,#a5,#81 70 POKE #730,0,#7e,#42,#81,#a5,#a5,#81,#89 80 POKE #738,#7e,#42,#81,#a5,#a5,#81,#89,#81 90 POKE #740,#7e,#42,#81,#a5,#a5,#81,#91,#81 100 CLS:CLV:S=0 110 FOR I=1 TO 9:LOCATE I*3+1,10:PRINT CHR$(131); 120 LOCATE I*3+1,11:PRINT I; 130 NEXT 200 A=RND(9)+1 210 [A]=([A]+1) & #0F 220 C=[A]:IF C>8 THEN C=16-C 230 LOCATE A*3+1,9:PRINT CHR$(#E0+C); 300 K=INKEY() 310 IF K=0 THEN GOTO 200 320 S=S+[K-48] 330 [K-48]=0 340 LOCATE 0,0:PRINT "Score ";S; 350 GOTO 200 SAVE 110 NEW ' ------- 12 Ichigride 10 CLS:CLV:X=22:Y=20:L=5 20 POKE #700,8,15,255,128,128,240,255,8,16,88,50,20,92,56,24,60,0,0,12,26,62,62,0,0 30 POKE #730,0,56,126,251,253,127,0,0 40 POKE #780,64,195,246,124,56,240,254,192 50 POKE #7F0,64,192,240,191,185,240,254,192 60 FOR I=1 TO 32*22:?CHR$(#E0);:NEXT 70 LET[0],58,#E1,58,32,#E2,32,58,32,#E6,58,58,58,#E2,32 80 FOR J=1 TO 20:FOR I=1 TO 22:LC I,J:?CHR$([RND(14)]);:NEXT:NEXT 90 LC 1,1:?CHR$(#FE) 100 LC X,Y:D=SCR():?CHR$(5); 110 IF L<0 THEN ?"Game Over":END 120 LC 24,2:?"Life ";L;" ";:LC 24,10:?"Exp ";E 130 IF (TICK()%180)=0 THEN L=L+(L<10) 140 K=INKEY():IF K=0 THEN GOTO 120 150 A=X-(K=28)+(K=29):B=Y-(K=30)+(K=31) 160 C=SCR(A,B)-#E1 170 LC X,Y:?CHR$(D);:LC A,B 180 IF C<=-167 THEN X=A:Y=B 190 IF C<0 THEN GOTO 100 200 GOTO 1000+C*100 1000 IF E>50 THEN ?":" 1010 GOTO 100 1100 E=E+1:?":":IF E<20 THEN L=L-1 1110 GOTO 100 1500 E=E+4:?CHR$(#E2):IF E<40 THEN L=L-1 1510 GOTO 100 2500 L=L-5:?"X":IF L>0 THEN ?"Clear":END 3900 L=L-7:IF E>80 THEN ?CHR$(#F0) 3910 GOTO 100 SAVE 111 NEW ' ------- 13 Otoate Game for IchigoJam 10 CLS:S=0:T=1:PRINT "Sound Start" 20 GOSUB 200+RND(7)*10 30 K=INKEY():K=K&`01001111 40 IF KASC("G") THEN GOTO 30 50 IF K=C THEN BEEP 2:S=S+1:PRINT "O":ELSE PLAY "O1C8R8C8R8C8":PRINT "X" 60 T=T+1 70 IF T<11 THEN GOTO 20 80 PRINT "GAME END.SCORE ";S 90 END 200 PLAY "O4C2":C=ASC("C"):RETURN 210 PLAY "O4D2":C=ASC("D"):RETURN 220 PLAY "O4E2":C=ASC("E"):RETURN 230 PLAY "O4F2":C=ASC("F"):RETURN 240 PLAY "O4G2":C=ASC("G"):RETURN 250 PLAY "O4A2":C=ASC("A"):RETURN 260 PLAY "O4B2":C=ASC("B"):RETURN SAVE 112 NEW ' ------- 13 Otoate Game for IchigoJam+PanCake 10 CLS:S=0:T=1:PRINT "Sound Start" 15 UART 1:?"PC RESET":?"PC IMAGE 04" 20 GOSUB 200+RND(7)*10 30 K=INKEY():K=K&`01001111 40 IF KASC("G") THEN GOTO 30 50 IF K=C THEN S=S+1:?"PC CIRCLE 28 16 14 02" ELSE ?"PC LINE 00 00 4F 2C 02":?"PC LINE 4F 00 00 2C 02" 55 WAIT 60:?"PC IMAGE 04" 60 T=T+1 70 IF T<11 THEN GOTO 20 80 PRINT "GAME END.SCORE ";S 85 ?"PC MUSIC SCORE 00 01 3E CDECECEFGAB>C" 90 END 200 ?"PC MUSIC SCORE 00 01 30 C":C=ASC("C"):RETURN 210 ?"PC MUSIC SCORE 00 01 30 D":C=ASC("D"):RETURN 220 ?"PC MUSIC SCORE 00 01 30 E":C=ASC("E"):RETURN 230 ?"PC MUSIC SCORE 00 01 30 F":C=ASC("F"):RETURN 240 ?"PC MUSIC SCORE 00 01 30 G":C=ASC("G"):RETURN 250 ?"PC MUSIC SCORE 00 01 30 A":C=ASC("A"):RETURN 260 ?"PC MUSIC SCORE 00 01 30 B":C=ASC("B"):RETURN SAVE 113 NEW ' ------- 14 Taisen Kakutou 10 CLS:CLV:CLP:R=1 20 LET[0],10,10 30 LOCATE 14,12:PRINT CHR$(131,131,131,131); 40 LOCATE 12,2:PRINT "ROUND ";R; 100 LOCATE 0,0:PRINT "1UP ";[0];CHR$(9,9,9);"2UP ";[1];" "; 110 A=(A+1)%60:B=A%30<15 120 K=INKEY():CLK 130 IF K=49 THEN [1]=[1]-1:LOCATE 15,11:PRINT CHR$(251,244);:WAIT 15:ELSE LOCATE 15,11:PRINT CHR$(249+B); 140 IF K=48 THEN [0]=[0]-1:LOCATE 15,11:PRINT CHR$(244,253);:WAIT 15:ELSE LOCATE 16,11:PRINT CHR$(249+B); 150 IF [0]>=0 AND [1]>=0 THEN GOTO 100 160 LOCATE 9,7 170 IF [0]<0 AND [1]<0 THEN PRINT "DRAW":GOTO 200 180 IF [0]<0 THEN PRINT "Player 1 Lose"; 190 IF [1]<0 THEN PRINT "Player 2 Lose"; 200 WAIT 180 210 R=R+1:A=0 220 CLS:GOTO 20 SAVE 114 NEW ' ------- 15 Suika Kid(1) 10 CLS:CLV:CLP 20 POKE #700,0,0,0,0,3,196,228,254,0,0,0,0,224,16,80,73,127,63,14,51,0,0,0,0,253,255,15,253,249,32,80,112 30 POKE #720,64,224,240,254,127,191,95,171,0,0,0,0,128,192,224,250,0,0,0,3,5,27,117,234,0,0,1,130,229,242,253,254 40 POKE #740,0,0,0,0,16,60,94,175 50 POKE #7F8,60,86,171,169,169,171,118,60 60 FOR I=0 TO 31:POKE #900+22*32+I,95:NEXT 70 FOR I=0 TO 31 STEP 4:POKE #900+5*32+I,#E4,#E5,#E6,#E7:NEXT 80 FOR I=0 TO 31:POKE #900+4*32+I,#E8:NEXT 90 X=0:Y=10:D=0:F=0:M=X+1:N=Y+2:S=0 100 LRUN 116 SAVE 115 NEW ' ------- 15 Suika Kid(2) 100 LC X,Y:? CHR$(#E0,#E1);:LC X,Y+1:? CHR$(#E2,#E3); 110 LC M,N:?CHR$(#FF); 120 LC 0,0:?"Score ";S; 200 FOR I=#744 TO #747:A=(PEEK(I)P)>>7:C=PEEK(I)<<1:POKE I,C|A:NEXT 210 D=D+1:IF D%2=0 THEN C=PEEK(#900+5*32):LC 0,5:?CHR$(127);:POKE #900+5*32+31,C 220 LC 0,22:?CHR$(127); 230 IF RND(10)<2 THEN POKE #900+22*32+31,250 ELSE POKE #900+22*32+31,95 300 K=INKEY():CLK:IF K=0 THEN GOTO 350 310 IF K=32 AND F=0 THEN F=Y 320 LC X,Y:?" ";:LC X,Y+1:?" "; 330 X=X-(K=28 AND X>0)+(K=29 AND X<29) 340 Y=Y-(K=30 AND Y>9)+(K=31 AND Y<17) 350 LC M,N:?" "; 360 IF F=0 THEN M=X+1:N=Y+2:GOTO 100 370 N=N+1:IF N<21 THEN GOTO 100 380 LC M+1,22:IF SCR()=250 THEN S=S+1+(17-Y):?CHR$(1);:ELSE ?CHR$(#FF); 390 F=0 400 GOTO 100 SAVE 116 NEW ' ------- 16 3D Shot(1) 10 CLS:CLV:CLP:FOR I=#700 TO #73F:POKE I,0:NEXT 20 P=0:X=13:Y=10:Z=0:S=0:A=RND(11)*3+1:B=(RND(4)+1)*3+1:M=A:N=B 30 VIDEO 0 40 FOR J=0 TO 7:FOR I=0 TO 31 50 LC I,J+16:?CHR$(#E0+J); 60 NEXT:NEXT 70 VIDEO 1 80 LC X-1,Y-1:?CHR$(152,0,153); 90 LC X-1,Y+1:?CHR$(154,0,155); 100 POKE #740,0,0,0,8,0,0,0,0 110 POKE #748,0,0,0,0,16,0,0,0 120 POKE #750,0,0,0,0,8,0,0,0 130 POKE #758,0,0,0,16,8,0,0,0 140 POKE #760,0,0,16,24,0,0,0,0 150 POKE #768,0,0,16,56,0,0,0,0 160 POKE #770,0,0,24,60,60,0,0,0 170 POKE #778,0,0,24,60,24,60,0,0 180 POKE #780,0,0,28,62,20,54,0,0 190 POKE #788,0,0,28,54,62,20,54,0 200 POKE #790,0,28,34,119,62,20,54,0 210 POKE #798,0,28,34,85,65,62,20,54 220 POKE #7A0,0,60,66,165,129,126,36,102 230 POKE #7A8,60,66,129,165,129,126,36,102 240 POKE #7B0,60,66,129,165,129,126,36,102 250 POKE #7B8,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0 500 LC 0,0:?"Score 0"; 900 LRUNFILE()+1 SAVE 117 NEW ' ------- 16 3D Shot(2) 100 K=INKEY():CLK:IF K=0 THEN GOTO 500 110 LC X-1,Y-1:?CHR$(0,0,0); 120 LC X-1,Y+1:?CHR$(0,0,0); 130 X=X-(K=28 AND X>1)*3+(K=29 AND X<28)*3 140 Y=Y-(K=30 AND Y>5)*3+(K=31 AND Y<13)*3 150 LC X-1,Y-1:?CHR$(152,0,153); 160 LC X-1,Y+1:?CHR$(154,0,155); 400 IF K=32 AND X=A AND Y=B THEN S=S+1:LC 6,0:?S;:LC A,B:?CHR$(42);:Z=99:F=9:M=A:N=B 500 IF Z>60 THEN Z=0:A=RND(10)*3+1:B=(RND(4)+1)*3+1 510 LC A,B:?CHR$(#E8+Z/4); 520 Z=Z+1 600 IF F=0 THEN LRUNFILE()+1 610 F=F-1: 620 IF F=0 THEN LC M,N:?" "; 1000 LRUNFILE()+1 SAVE 118 NEW ' ------- 16 3D Shot(3) 10 P=(P+1)&3:GOSUB 100+P 20 LRUNFILE()-1 100 POKE #700,0,0,0,0,85,0,0,0,85,85,0,0,0,0,85,85,0,0,0,0,0,85,85,85,0,0,0,0,0,85,85,85,0,0,0,0,0,0,85,85,85,85,85,0,0,0,0,0,0,0,85,85,85,85,85,85,0,0,0,0,0,0,0,0:RETURN 101 POKE #700,85,0,0,0,0,85,0,0,0,0,85,85,0,0,0,0,85,85,0,0,0,0,0,85,85,0,0,0,0,0,0,85,85,85,85,0,0,0,0,0,0,85,85,85,85,85,0,0,0,0,0,0,0,0,85,85,85,85,85,85,0,0,0,0:RETURN 102 POKE #700,0,85,0,0,0,0,85,0,0,0,0,85,85,0,0,0,0,85,85,85,0,0,0,0,85,85,85,85,0,0,0,0,0,85,85,85,85,0,0,0,0,0,0,0,85,85,85,85,85,0,0,0,0,0,0,0,0,85,85,85,85,85,85,85:RETURN 103 POKE #700,0,0,85,0,0,0,0,85,85,0,0,0,85,85,0,0,0,0,0,85,85,0,0,0,0,0,85,85,85,85,0,0,0,0,0,0,85,85,85,85,0,0,0,0,0,0,0,85,85,85,85,85,0,0,0,0,0,0,0,0,0,85,85,85:RETURN SAVE 119 NEW ' ------- 17 Hyakuretsuken 10 CLS:CLP:C=0:?"Hit Any Key" 20 IF INKEY()=0 THEN GOTO 20 30 CLT 40 IF INKEY()=0 THEN GOTO 40 50 LOCATE RND(30),RND(20):PRINT CHR$(244); 60 BEEP:C=C+1:IF C<101 THEN GOTO 40 70 T=TICK()/60 80 LOCATE 9,23:PRINT "Time : ";T;" sec" 90 IF T<4 THEN PRINT "Great":END 100 IF T<7 THEN PRINT "Normal":END 110 PRINT "No Good..." SAVE 120 NEW ' ------- 18 Ichigo Ban 10 R=0:CLP:POKE #700,8,15,255,128,128,240,255,8 20 LET[0],16392,128,17919,29728,17443,17696,4358,20486,12,6 30 LET[10],256,16692,8258,19778,18756,18480,20736,256,12,5 40 LET[20],0,65526,32,28710,20484,24052,36,8224,7,7 50 LET[30],338,21632,324,21545,4,17568,8412,17408,8,5 60 X=1:Y=1:CLS 70 FOR I=0 TO 17:LC I,0:?CHR$(#E0);:LC I,9:?CHR$(#E0);:NEXT 80 FOR I=1 TO 8:LC 0,I:?CHR$(#E0);:LC 17,I:?CHR$(#E0);:NEXT 90 GOSUB 500 100 LC X,Y:?CHR$(5); 110 K=INKEY() 120 G=(K=RIGHT)-(K=LEFT):A=X+G 130 H=(K=DOWN)-(K=UP):B=Y+H 140 V=SCR(A,B) 150 IF X=A AND Y=B OR V=#E0 GOTO 110 160 IF V=0 THEN LC X,Y:?CHR$(0);:X=A:Y=B:GOTO 100 170 IF V<>255 GOTO 110 180 IF SCR(A+G,B+H)<>0 GOTO 110 190 LC D,E:?CHR$(0); 200 D=A+G:E=B+H:LC D,E:?CHR$(255); 210 IF D=1 AND E=1 THEN LC 6,12:?"Clear":WAIT 180:R=(R+1)&3:GOTO 60 220 GOTO 100 500 FOR J=0 TO 7:A=[R*10+J] 510 FOR I=0 TO 15 520 IF A & #8000 THEN LC I+1,J+1:?CHR$(#E0); 530 A=A<<1:NEXT:NEXT 560 D=[R*10+8]:E=[R*10+9]:LC D,E:?CHR$(255); 570 RETURN SAVE 121 NEW ' ------- 19 Omikuji(1) 10 POKE #700,255,252,252,252,252,252,248,192,255,255,255,255,255,143,7,127,252,252,248,241,227,207,159,255,255,127,63,31,135,193,225,255 POKE #720,255,254,254,254,248,192,206,222,255,127,127,127,3,3,103,103,192,240,254,254,254,254,254,255,7,31,127,127,127,127,127,255 20 POKE #720,255,254,254,254,248,192,206,222,255,127,127,127,3,3,103,103,192,240,254,254,254,254,254,255,7,31,127,127,127,127,127,255 30 POKE #740,255,254,252,254,254,254,254,238,255,255,127,127,127,127,79,71,206,206,142,222,248,252,252,255,99,113,113,127,127,127,127,255 40 POKE #760,255,252,252,254,254,192,134,254,255,255,127,127,71,3,99,63,224,255,224,224,243,240,240,255,15,255,15,15,143,31,31,255 50 POKE #780,255,255,255,255,243,249,252,206,255,255,191,31,31,55,99,51,204,201,235,224,192,199,255,255,19,147,243,3,51,247,255,255 60 LRUN 123 SAVE 122 NEW ' ------- 19 Omikuji(2) 10 CLS:CLV 20 LOCATE 0,0:PRINT "Push Any Key or Button" 30 IF INKEY()=0 AND BTN()=0 THEN GOTO 30 40 A=RND(3)*4:B=RND(2)*4 50 CLS:CLK 60 FOR I=0 TO 6 70 LOCATE 13,6+I:PRINT CHR$(#8a,3,2,2,3,#85); 80 NEXT 90 FOR I=1 TO 6:SCROLL 0:WAIT 8:SCROLL 2:WAIT 8:NEXT 100 LOCATE 15,13:PRINT CHR$(#E0+A,#E1+A); 110 LOCATE 15,14:PRINT CHR$(#E2+A,#E3+A); 120 LOCATE 15,15:PRINT CHR$(#EC+B,#ED+B); 130 LOCATE 15,16:PRINT CHR$(#EE+B,#EF+B); 140 WAIT 60 150 GOTO 20 SAVE 123 NEW ' ------- 20 Seizano Benkyou 10 CLP:A=-1 20 R=RND(5):IF R=A THEN GOTO 20 30 A=R 40 GOSUB R*20+1000 50 LC 0,23:?"Push any key"; 60 IF INKEY()=0 THEN GOTO 60 70 GOTO 20 1000 LET [0],15,1,6,5,16,10,14,11,12,12,23,16,13,20,-1 1010 GOSUB 2000:?"Orion":RETURN 1020 LET [0],27,2,16,7,28,7,10,8,5,11,21,11,2,15,-1 1030 GOSUB 2000:?"Hokuto Shichisei":RETURN 1040 LET [0],23,2,16,11,23,12,5,13,14,17,-1 1050 GOSUB 2000:?"Cassiopeia":RETURN 1060 LET [0],23,2,25,2,11,3,20,5,15,8,10,11,4,12,20,14,23,17,-1 1070 GOSUB 2000:?"Hakuchou":RETURN 1080 LET [0],15,2,21,7,9,8,15,17,-1 1090 GOSUB 2000:?"Minami Jyujisei":RETURN 2000 CLS 2010 I=0 2020 X=[I]:Y=[I+1] 2030 IF X=-1 THEN LC 0,0:RETURN 2040 LC X,Y:?CHR$(233);:WAIT 5:LC X,Y:?CHR$(11);:WAIT 5:LC X,Y:?"."; 2050 I=I+2:GOTO 2020 SAVE 124 NEW ' ------- 21 Telopper(1) 10 CLS:CLV 100 LET[0],#FF,#49,#63,#68,#69,#67,#6F,#4A,#61,#6D,#20 110 C=[P] 120 FOR N=0 TO 7 130 GOSUB 1000 140 SCROLL 0 150 NEXT 160 SCROLL 0 170 P=P+1 180 IF [P]=0 THEN P=0 190 GOTO 110 1000 A=PEEK(C*8+N) 1010 FOR I=0 TO 7 1020 LOCATE I+12,23:?CHR$(((A & #80)<>0)*4); 1030 A=A<<1 1040 NEXT 1050 RETURN SAVE 125 NEW ' ------- 21 Telopper(2) 10 CLS:CLV 100 LET[0],#FF,#49,#63,#68,#69,#67,#6F,#4A,#61,#6D,#20 110 C=[P] 120 FOR N=0 TO 7 130 GOSUB 1000 140 SCROLL 3 150 NEXT 160 P=P+1 180 IF [P]=0 THEN P=0 190 GOTO 110 1000 FOR I=0 TO 7 1010 A=PEEK(C*8+I) 1020 T=(A<0)*4); 1040 NEXT 1050 RETURN SAVE 126 NEW ' ------- 22 Squash Analog Joy Stick Version 10 CLS:CLP:X=21:Y=18:B=0:C=0:D=1:E=80:F=1 20 LOCATE X, Y:PRINT " "; 30 X=X+(ANA(0)-512)/256 40 IF X<0 THEN X=0 50 IF X>29 THEN X=29 55 LOCATE X, Y:PRINT CHR$(131,131,131); 60 F=F+1:IF (F%2)=0 THEN GOTO 20 70 LOCATE B,C/100:PRINT " "; 80 B=B+D 90 C=C+E 100 LOCATE B,C/100:PRINT CHR$(233); 110 IF B<0 OR B=29 THEN D=-D 120 IF C<0 THEN E=-E 130 T=C/100 140 IF (T=Y-1 OR T=Y) AND (B>=X AND B<=X+2) THEN E=-80+RND(11) 150 IF T<22 THEN GOTO 20 160 LOCATE 12,9:PRINT "Game Over" SAVE 127 NEW ' ------- 23 PCG Tool 10 CLS:CLV:C=46 20 GOSUB 400 30 LC 10,0:?CHR$(#E0) 40 Z=Z+1:LC X,Y 50 IF Z%63<32 THEN ?CHR$(C); ELSE ?CHR$(1); 60 K=INKEY():IF K=0 THEN GOTO 40 70 LC X,Y:?CHR$(C); 80 IF K<>32 THEN GOTO 300 90 IF SCR(X,Y)=46 THEN LC X,Y:?CHR$(233); ELSE LC X,Y:?CHR$(46); 100 C=SCR(X,Y) 110 LC 0,12:?"POKE #700"; 120 FOR J=0 TO 7:D=0 130 FOR I=0 TO 7 140 D=D<<1|(SCR(I,J)=233) 150 NEXT 160 POKE #700+J,D 170 ?",";PEEK(#700+J); 180 NEXT 190 ?" "; 200 GOTO 40 300 X=X-(K=28 AND X>0)+(K=29 AND X<7) 310 Y=Y-(K=30 AND Y>0)+(K=31 AND Y<7) 320 C=SCR(X,Y) 330 GOTO 40 400 FOR J=0 TO 7 410 D=PEEK(#700+J) 420 FOR I=0 TO 7 430 LC I,J 440 IF DP THEN ?CHR$(233); ELSE ?CHR$(46); 450 D=D<<1 460 NEXT 470 NEXT 480 RETURN SAVE 128 NEW ' ------- 23 PCG Tool 16x16 10 CLS:CLV:C=46 20 GOSUB 400:A=8:B=0:F=8:GOSUB 400:A=0:B=8:F=16:GOSUB 400:A=8:F=24:GOSUB 400 30 LC 18,0:?CHR$(#E0,#E1):LC 18,1:?CHR$(#E2,#E3) 40 Z=Z+1:LC X,Y 50 IF Z%63<32 THEN ?CHR$(C); ELSE ?CHR$(1); 60 K=INKEY():IF K=0 THEN GOTO 40 70 LC X,Y:?CHR$(C); 80 IF K<>32 THEN GOTO 300 90 IF SCR(X,Y)=46 THEN LC X,Y:?CHR$(233); ELSE LC X,Y:?CHR$(46); 100 C=SCR(X,Y) 110 LC 0,16:?"POKE #700";:A=0:B=0:F=0:GOSUB 500 120 LC 0,18:?"POKE #708";:A=8:B=0:F=8:GOSUB 500 130 LC 0,20:?"POKE #710";:A=0:B=8:F=16:GOSUB 500 140 LC 0,22:?"POKE #718";:A=8:B=8:F=24:GOSUB 500 200 GOTO 40 300 X=X-(K=28 AND X>0)+(K=29 AND X<15) 310 Y=Y-(K=30 AND Y>0)+(K=31 AND Y<15) 320 C=SCR(X,Y) 330 GOTO 40 400 FOR J=0 TO 7 410 D=PEEK(#700+J+F) 420 FOR I=0 TO 7 430 LC A+I,B+J 440 IF D&128 THEN ?CHR$(233); ELSE ?CHR$(46); 450 D=D<<1 460 NEXT 470 NEXT 480 RETURN 500 FOR J=0 TO 7:D=0 510 FOR I=0 TO 7 520 D=D<<1|(SCR(A+I,B+J)=233) 530 NEXT 540 POKE #700+J+F,D 550 ?",";D; 560 NEXT 570 ?" "; 580 RETURN SAVE 129 NEW ' ------- 24 IchigoJam Cluster Main 10 N=5 20 OUT 0 30 INPUT "Command:",M 40 INPUT "Data:",D 50 CLT:GOSUB 700 60 GOSUB 800:M=Z&7:GOSUB 900 70 GOSUB 800:A=Z&7:GOSUB 900 80 GOSUB 800:B=Z&7:GOSUB 900 90 GOSUB 800:C=Z&7:GOSUB 900 100 D=A+(B<<3)+(C<<6) 110 ?M;":";A,B,C 120 ?">>";D 130 ?"Time:";TICK() 140 GOTO 20 700 LED 1:OUT M|8:WAIT N:OUT 0:WAIT N 710 OUT ( D &7)|8:WAIT N:OUT 0:WAIT N 720 OUT ((D>>3)&7)|8:WAIT N:OUT 0:WAIT N 730 OUT ((D>>6)&7)|8:WAIT N:OUT 0:LED 0:RETURN 800 Z=IN():IF (Z&8)=0 GOTO 800 810 RETURN 900 IF (IN()&8)=8 GOTO 900 910 RETURN SAVE 130 NEW ' ------- 24 IchigoJam Cluster Sub 10 N=5 20 OUT 0 30 GOSUB 800:M=Z&7:GOSUB 900 40 GOSUB 800:A=Z&7:GOSUB 900 50 GOSUB 800:B=Z&7:GOSUB 900 60 GOSUB 800:C=Z&7:GOSUB 900 70 D=A+(B<<3)+(C<<6) 80 ?M;":";A,B,C 90 ?">>";D 100 IF M=0 THEN Q=D:D=D+1:FOR I=0 TO 100:[I]=I+Q*100:NEXT:?"Init:ID=";Q 110 IF M=2 AND Q=D/100 THEN M=1:D=[D%100]:?"Out Data:";D 120 IF M=4 AND F=1 THEN [W]=D:M=1:?"Write ";(Q*100+D%100);"<-";D 130 IF M=3 AND Q=D/100 THEN W=D%100:?"Set Address ";(Q*100+W):M=1:F=1 ELSE F=0 140 GOSUB 950 150 GOTO 20 800 Z=IN():IF (Z&8)=0 GOTO 800 810 RETURN 900 IF (IN()&8)=8 GOTO 900 910 RETURN 950 LED 1:OUT M|8:WAIT N:OUT 0:WAIT N 960 OUT ( D &7)|8:WAIT N:OUT 0:WAIT N 970 OUT ((D>>3)&7)|8:WAIT N:OUT 0:WAIT N 980 OUT ((D>>6)&7)|8:WAIT N:OUT 0:LED 0 990 RETURN SAVE 131 NEW ' ------- 25 Screen Saver (PanCake) 10 ?"PC CLEAR 00" 20 X=RND(80):Y=RND(40):V=1:W=1 30 A=RND(40)+40:B=RND(20)+22:C=-1:D=-1 40 Z=0 100 ?"PC LINE ";HEX$(X,2);" ";HEX$(Y,2);" ";HEX$(A,2);" ";HEX$(B,2);" ";HEX$(RND(15)+1,2) 110 Z=Z+1 120 IF Z>400 THEN Z=0:RUN 130 X=X+V:Y=Y+W:A=A+C:B=B+D 140 IF X<1 OR X>78 THEN V=-V 150 IF Y<1 OR Y>44 THEN W=-W 160 IF A<1 OR A>78 THEN C=-C 170 IF B<1 OR B>44 THEN D=-D 180 GOTO 100 SAVE 132 NEW