10 '********************************
20 '**** **** 30 '**** N I B B L E R **** 40 '**** **** 50 '**** SUR AMSTRAD CPC 464 **** 60 '**** **** 70 '**** PAR BRUNO BOSSO **** 80 '**** **** 90 '**** COPYRIGHT 1985 **** 100 '**** **** 110 '******************************** 120 : 130 : 140 SPEED KEY 1,1 150 ON ERROR GOTO 5570 160 ON BREAK GOSUB 5090 170 GOSUB 510:GOSUB 760 180 GOSUB 200 190 GOTO 4000 200 DIM HI(20),NM$(20) 210 FOR I=1 TO 20:HI(I)=0:NM$(I)=".......":NEXT 220 RETURN 230 '****************************** 240 '** CALCUL & AFFICHAGE BONUS ** 250 '****************************** 260 BO=100-INT((TIME/300)-SEC)-DIFF*2 270 PEN 1:LOCATE 10,23:PRINT BO 280 IF BO<10 THEN SOUND 2,10,1,15,1,1 290 IF BO<0 THEN 3540 300 RETURN 310 '**************************** 320 '****** INITIALISATIONS ***** 330 '**************************** 340 DIM DX%(4000),DY%(4000) 350 TA=1:CH=1:VIE=3:SC=0:PO=0 360 DEF FN EC2(X,Y)=TEST((16*X)-8,(25-Y)*16+7) 370 DEF FN EC1(X,Y)=TEST((16*X)-9,(25-Y)*16+9) 380 RESTORE 4370 390 NOMBRE=23:NO=NOMBRE 400 SYMBOL 255,126,255,231,219,219,231,255,126 410 AL=5 420 FI=100:DE=105 430 XQ=20:YQ=14 440 FOR I=1 TO 105 450 DX%(I)=14:DY%(I)=14 460 NEXT 470 XT=14:YT=14 480 XP=0:YP=0 490 INK 0,0:INK 4,8:INK 1,24:INK 2,14:INK 3,21 500 RETURN 510 '******************************* 520 '* REDEFINITION DES CARACTERES * 530 '******************************* 540 DATA 0,31,32,79,95,92,89,90 550 DATA 0,248,4,242,250,58,154,90 560 DATA 90,89,92,95,79,32,31,0 570 DATA 90,154,58,250,242,4,248,0 580 DATA 0,255,0,255,255,0,255,0 590 DATA 90,90,90,90,90,90,90,90 600 DATA 90,153,60,255,255,60,153,90 610 DATA 90,153,60,255,255,0,255,0 620 DATA 0,255,0,255,255,60,153,90 630 DATA 90,89,92,95,95,92,89,90 640 DATA 90,154,58,250,250,58,154,90 650 DATA 0,252,2,250,250,2,252,0 660 DATA 0,63,64,95,95,64,63,0 670 DATA 0,60,66,90,90,90,90,90 680 DATA 90,90,90,90,90,66,60,0 690 DATA 2,4,30,63,57,57,63,30 700 SYMBOL AFTER 96 710 FOR I=1 TO 16 720 READ A,B,C,D,E,F,G,H 730 SYMBOL 96+I,A,B,C,D,E,F,G,H 740 NEXT I 750 RETURN 760 '***************************** 770 '****** PRESENTATION ****** 780 '***************************** 790 MODE 1 800 LOCATE 1,25 810 PEN 1 820 PRINT " ab n g aeeb aeeb n aeel aeeb"; 830 CALL &BD19:SOUND 2,300,1,15 840 PRINT " ff f f f f f f f f f"; 850 CALL &BD19:SOUND 2,290,1,15 860 PRINT " fcb f n f f f f f f f f"; 870 CALL &BD19:SOUND 2,280,1,15 880 PRINT " f f f f jeehb jeehb f jel jeid"; 890 CALL &BD19:SOUND 2,270,1,15 900 PRINT " f cbf f f f f f f f f cb"; 910 CALL &BD19:SOUND 2,260,1,15 920 PRINT " f ff f f f f f f f f f"; 930 CALL &BD19:SOUND 2,250,1,15 940 PRINT " o cd o ceeed ceeed cel ceel o o"; 950 CALL &BD19:SOUND 2,240,1,15 960 PRINT " meeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeel"; 970 CALL &BD19:SOUND 2,230,1,15 980 PRINT 990 FOR I=1 TO 10:PRINT " ";CHR$(164)+" 1985 BRUNO BOSSO ":CALL &BD19:SOUND 2,220-I*10,1,15:NEXT 1000 GOSUB 310 1010 FOR I=1 TO 25:FOR D=1 TO 10:NEXT:LOCATE 1,1:PRINT CHR$(11):CALL &BD19:SOUND 2,200+I*10,1,15,1:NEXT 1020 RETURN 1030 '***************************** 1040 '******* TABLEAU 1 ******* 1050 '***************************** 1060 MODE 1 1070 INK 1,0:PEN 1 1080 BORDER 24,10 1090 PRINT "aeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeb"; 1100 PRINT "f f"; 1110 PRINT "f n n g aeb aeb n aeel aeeb f"; 1120 PRINT "f jb f f f f f f f f f f"; 1130 PRINT "f fcbf n jehb jehb f jel jeid f"; 1140 PRINT "f f ck f f f f f f f f cb f"; 1150 PRINT "f o o o ceed ceed cel ceel o o f"; 1160 PRINT "f f"; 1170 PRINT "f meeieeeieeeieeeieeeeieeeieeeieeeieel f"; 1180 PRINT "f o f f f f f f f f"; 1190 PRINT "f ml n o n o n o ml o n o n o n o ml f"; 1200 PRINT "f n f f f f f f f"; 1210 PRINT "f meek f meheeehl meeeeehel ceeeheeeel f"; 1220 PRINT "f f f f"; 1230 PRINT "f al o cl aeeeeb n aeeeeeb n aeeb aeeeek"; 1240 PRINT "f o ceeeed o ceeeeed o ceed f f"; 1250 PRINT "f aeeeb f f"; 1260 PRINT "ceeeheeeheeeeeeeeeeeeeeeeeeeeeeeeeheeeed"; 1270 GOSUB 3150:INK 1,24:BORDER 10 1280 ENV 2,50,-1,10 1290 RESTORE 1330:FOR I=1 TO NOMBRE 1300 PEN 2:READ A,B:LOCATE B,A:PRINT "p"; 1310 SOUND 1,0,0.5,15,2,0,12:FOR KKK=1 TO 20:NEXT 1320 NEXT:RETURN 1330 DATA 2,2,2,28,4,9,4,15,6,10,6,22,14,15,12,30,14,36,14,2,11,13,10,37,14,37,10,20,12,20,13,28,2,2,2,5,10,2,10,8,10,15,12,37,4,32,17,27,2,28 1340 '******************************** 1350 '********* TABLEAU 2 ********** 1360 '******************************** 1370 MODE 1:INK 1,0:PEN 1:BORDER 24,10 1380 PRINT "aeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeb"; 1390 PRINT "f f"; 1400 PRINT "f n ml ml ml ml ml ml ml ml ml ml ml n f"; 1410 PRINT "f f f f"; 1420 PRINT "f f ml ml ml ml ml ml ml ml ml ml ml f f"; 1430 PRINT "f f f f"; 1440 PRINT "f f ml ml ml ml ml ml ml ml ml ml ml f f"; 1450 PRINT "f f f f"; 1460 PRINT "f f ml ml ml ml ml ml ml ml ml ml ml f f"; 1470 PRINT "f f f f"; 1480 PRINT "f f ml ml ml ml ml ml ml ml ml ml ml f f"; 1490 PRINT "f f f f"; 1500 PRINT "f f ml ml ml ml ml ml ml ml ml ml ml f f"; 1510 PRINT "f f f f"; 1520 PRINT "f f n n n n n n n n n n n n n n n n f f"; 1530 PRINT "f o o o o o o o o o o o o o o o o o o f"; 1540 PRINT "f f"; 1550 PRINT "ceeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed"; 1560 GOSUB 3150:INK 1,24:BORDER 10:RESTORE 1600 1570 FOR I=1 TO NOMBRE:PEN 2 1580 READ A,B:LOCATE A,B:PRINT "p";:SOUND 1,0,0.5,15,1,1,5:NEXT 1590 RETURN 1600 DATA 2,2,2,5,10,2,10,8,10,14,26,12,37,4,32,17,27,2,28,6,10,15,6,12,16,16,39,6,39,10, 2,2,2,4,9,4,15,6,10,6,22,14,14,12,30,14,36,14,2,11,13,10,37,14,37,10,20,12,20,13,28,2,2,2,5,10,2,10,8,10,15,12,37,4,32,17,27,2,28 1610 '******************************* 1620 '********* TABLEAU 3 *********** 1630 '******************************* 1640 MODE 1 1650 INK 1,0:PEN 1 1660 BORDER 24,10 1670 PRINT "aeeeeeeeieeeeeeeeeeeeeeeeeeeeeeieeeeeeeb"; 1680 PRINT "f f f f"; 1690 PRINT "f aeeeb o aeeeieeeb aeeeieeeeb o aeeeb f"; 1700 PRINT "f f f o f o o f o f f f"; 1710 PRINT "f o n o n n o n n o ab n o n o f"; 1720 PRINT "f f f n f f n n f ff n f f f"; 1730 PRINT "f n f n f f jeeek f f f n ff f f n f n f"; 1740 PRINT "f f f f f f f f f f f f ff f f f f f f"; 1750 PRINT "f o f o f o o n f o o f f ff o f o f o f"; 1760 PRINT "f f f f o o f cd o o f"; 1770 PRINT "f med megeeel f mel o n n n f"; 1780 PRINT "f f f n n aeed med med f"; 1790 PRINT "f meb n f aeeed o aeb o med f"; 1800 PRINT "f o f f f ced aeeeeeeeeb f"; 1810 PRINT "f n f f f aeeeb aeeeb f f f"; 1820 PRINT "f o n o o o o o aeb o o o aeeeeb o f"; 1830 PRINT "f f n f f n f f f"; 1840 PRINT "ceeeheeeeeeeeeheeeheheeeheeeeeheeeeheeed"; 1850 GOSUB 3150:INK 1,24:BORDER 10 1860 PEN 2 1870 RESTORE 1920:FOR I=1 TO NOMBRE 1880 READ A,B:LOCATE A,B:PRINT "p"; 1890 SOUND 1,234,1,15,1,2,1 1900 NEXT I 1910 RETURN 1920 DATA 2,2,39,2,17,2,23,2,6,10,20,12,20,9,10,12,8,12,35,15,26,9,2,2,28,4,9,4,15,6,10,6,22,14,14,12,30,10,36,13,2,11,13,10,37,13,37,10,20 1930 '***************************** 1940 '******** TABLEAU 4 ********** 1950 '***************************** 1960 MODE 1:BORDER 24,10 1970 INK 1,0:PEN 1 1980 PRINT "aeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeb"; 1990 PRINT "f f"; 2000 PRINT "f aeeeeeeeeeeeeeeel meeeeeeeeeeeeeeeb f"; 2010 PRINT "f f f f"; 2020 PRINT "f f aeeeeeeeeeeeeel meeeeeeeeeeeeeb f f"; 2030 PRINT "f f f f f f"; 2040 PRINT "f f f aeeeeeeeeeeel meeeeeeeeeeeb f f f"; 2050 PRINT "f o o o o o o f"; 2060 PRINT "f f"; 2070 PRINT "f n n n n n n f"; 2080 PRINT "f f f ceeeeeeeeeeel meeeeeeeeeeed f f f"; 2090 PRINT "f f f f f f"; 2100 PRINT "f f ceeeeeeeeeeeeel meeeeeeeeeeeeed f f"; 2110 PRINT "f f f f"; 2120 PRINT "f ceeeeeeeeeeeeeeel meeeeeeeeeeeeeeed f"; 2130 PRINT "f f"; 2140 PRINT "jiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiik"; 2150 PRINT "chhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhd"; 2160 GOSUB 3150:INK 1,24:RESTORE 2230:BORDER 10 2170 PEN 2 2180 FOR I=1 TO NOMBRE 2190 READ A,B:LOCATE A,B:PRINT "p"; 2200 SOUND 1,234,1,15,1,2,1 2210 NEXT I 2220 RETURN 2230 DATA 2,2,39,2,17,2,23,2,6,10,20,12,20,9,10,12,8,12,35,16,26,9,2,2,28,4,9,4,15,6,10,6,22,14,14,12,30,10,36,9,2,11,13,10,37,14,37,12,20 2240 '********************************* 2250 '******** TABLEAU 5 ************ 2260 '********************************* 2270 MODE 1:INK 1,0:PEN 1:BORDER 24,10 2280 PRINT "aeeeeeieeeeeeeeeeeeeeeeeeeeeeeeeeieeeeeb"; 2290 PRINT "f f f f"; 2300 PRINT "f aeb f aeeeeeeeb aeeeeeeeb f aeb f"; 2310 PRINT "f f f f jeeeeeeek aeeb jeeeeeeek f f f f"; 2320 PRINT "f ced o f f f f f f o ced f"; 2330 PRINT "f f f f f f f f"; 2340 PRINT "jl ml f ab ab o ciid o ab ab f ml mk"; 2350 PRINT "f med cd cd cd cd cd cel f"; 2360 PRINT "f aeb ab ab aeb f"; 2370 PRINT "f ced meeeeeeeeehheeeehheeeeeeeeel ced f"; 2380 PRINT "f f"; 2390 PRINT "f ab ab ab ab ab n n ab ab ab ab ab f"; 2400 PRINT "f cd cd cd cd cd f f cd cd cd cd cd f"; 2410 PRINT "f f f f"; 2420 PRINT "f ab ab ab ab ab jb ak ab ab ab ab ab f"; 2430 PRINT "f cd cd cd cd cd cd cd cd cd cd cd cd f"; 2440 PRINT "f f"; 2450 PRINT "ceeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed"; 2460 GOSUB 3150:INK 1,24:RESTORE 2530:BORDER 10 2470 PEN 2 2480 FOR I=1 TO NOMBRE 2490 READ A,B:LOCATE A,B:PRINT "p"; 2500 SOUND 1,234,1,15,1,2,1 2510 NEXT I 2520 RETURN 2530 DATA 2,2,39,2,17,2,23,2,6,10,20,11,20,9,10,11,8,11,35,17,26,9,2,2,28,2,9,2,15,6,10,6,22,14,14,12,30,9,36,8,2,11,13,9,37,14,37,12,20 2540 '********************************* 2550 '******** TABLEAU 6 ************ 2560 '********************************* 2570 MODE 1:INK 1,0:PEN 1:BORDER 24,10 2580 PRINT "aeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeb"; 2590 PRINT "f f"; 2600 PRINT "f aiiib aiiiiib aiiiiiib aiiiiib aiiib f"; 2610 PRINT "f jgggk jgggggk chhhhhhd jgggggk jgggk f"; 2620 PRINT "f chhhd chhhhhd chhhhhd chhhd f"; 2630 PRINT "f ab ab ab f"; 2640 PRINT "f aiiiiiiiiiiib jk jk jk aiiiiiiiiiiib f"; 2650 PRINT "f chhhhhhhhhhhd jk jk jk chhhhhhhhhhhd f"; 2660 PRINT "f cd cd cd f"; 2670 PRINT "f aiiib aiiiiib aiiiiib aiiib f"; 2680 PRINT "f jgggk jgggggk aiiiiiib jgggggk jgggk f"; 2690 PRINT "f chhhd chhhhhd chhhhhhd chhhhhd chhhd f"; 2700 PRINT "f f"; 2710 PRINT "f aiiiiiiiiib meiiiiiiiiel aiiiiiiiiib f"; 2720 PRINT "f jgggggggggk jggggggk jgggggggggk f"; 2730 PRINT "f chhhhhhhhhhel chhhhhhd mehhhhhhhhhhd f"; 2740 PRINT "f f"; 2750 PRINT "ceeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed"; 2760 GOSUB 3150:INK 1,24:RESTORE 2830:BORDER 10 2770 PEN 2 2780 FOR I=1 TO 24 2790 READ A,B:LOCATE A,B:PRINT "p"; 2800 SOUND 1,234,1,15,1,2,1 2810 NEXT I 2820 RETURN 2830 DATA 2,2,39,2,17,2,23,2,5,9,20,10,20,10,16,10,8,10,35,17,25,10,2,2,28,17,9,2,15,6,10,17,22,13,16,12,30,6,36,9,2,11,13,9,39,14,33,12,20 2840 '***************************** 2850 '**** BOUCLE PRINCIPALE ***** 2860 '***************************** 2870 INK 3,21 2880 ENT 1,24,9,4 2890 IF TA>6 THEN TA=1:DIFF=DIFF+1 2900 ON TA GOSUB 1030,1340,1610,1930,2240,2540,2560 2910 SEC=TIME/300:AX=0:AY=0 2920 PEN 3:LOCATE XT,YT:PRINT CHR$(224);:GOSUB 260 2925 '============================================= 2930 IF CH=1 THEN 3850 ELSE 3940 2940 IF TEM=30 THEN GOSUB 260:TEM=0 ELSE TEM=TEM+1 2950 IF AX=0 AND AY=0 THEN 2930 2960 ' 2970 TEO=FN EC1(XT+XP,YT+YP) 2980 IF TEO=0 THEN TEO=FN EC2(XT+XP,YT+YP) 2990 IF TEO=1 THEN XP=AX:YP=AY:GOSUB 3120:IF TEO=1 OR (TEO=3 AND XT=XT+XP AND YT=YT+YP) THEN AX=0:AY=0:GOTO 2930 3000 IF TEO=2 THEN GOSUB 3330 3010 IF TEO=3 THEN 3540 3020 XT=XT+XP:YT=YT+YP 3030 PEN 3:LOCATE XT,YT:PRINT CHR$(224); 3040 LOCATE XT-XP,YT-YP:PRINT CHR$(255) 3050 PEN 1 3060 DE=DE+1 3070 DX%(DE)=XT:DY%(DE)=YT 3080 FI=FI+1:XQ=DX%(FI) 3090 YQ=DY%(FI) 3100 LOCATE XQ,YQ:PRINT CHR$(32); 3110 GOTO 2930 3120 TEO=FN EC1(XT+XP,YT+YP) 3130 IF TEO=0 THEN TEO=FN EC2(XT+XP,YT+YP) 3140 RETURN 3150 '****************************** 3160 '*** AFFICHAGE SCORE ETC.. **** 3170 '****************************** 3180 INK 2,0:PEN 2 3190 PRINT "aeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeebf";:PEN 1 3200 PRINT "aeeeeeeeeeeeeeeeieeeeeeeeeeeeeeeeeeeeb";:PEN 2:PRINT "f";:PRINT "f"; 3210 PEN 1 3220 PRINT "f SCORE: f HI-SCORE: f";:PEN 2:PRINT "f";:PRINT"f"; 3230 PEN 1 3240 PRINT "jeeeeeeeeeeeeieeheeeeeeeeeeieeeeeeeeek";:PEN 2:PRINT "f";:PRINT"f"; 3250 PEN 1 3260 PRINT "f BONUS: f POMMES: f VIES: f";:PEN 2:PRINT "f";:PRINT"f"; 3270 PEN 1 3280 PRINT "ceeeeeeeeeeeeheeeeeeeeeeeeeheeeeeeeeed";:PEN 2:PRINT "f"; 3290 PRINT "ceeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed"; 3300 PEN 1:LOCATE 29,21:PRINT HI(1):LOCATE 36,23:PRINT VIE 3310 LOCATE 10,21:PRINT SC;:LOCATE 24,23:PRINT PO; 3320 INK 2,14:RETURN 3330 '********************** 3340 '*** FIN DE TABLEAU *** 3350 '********************** 3360 PEN 1:SOUND 1,0,6,15,1,2,25 3370 FI=FI-5:SC=SC+10:PO=PO+1 3380 NO=NO-1:IF NO<2 THEN GOSUB 3410:GOSUB 360:TA=TA+1:GOTO 2840 3390 LOCATE 10,21:PRINT SC;:LOCATE 24,23:PRINT PO; 3400 RETURN 3410 LOCATE XT+XP,YT+YP:PRINT " ":SOUND 1,0,6,15,1,2,25 3420 FOR I=FI TO DE 3430 LOCATE DX%(I),DY%(I):PRINT CHR$(32); 3440 SC=SC+10:SOUND 1,I,1,15,2,2,1 3450 LOCATE 10,21:PRINT SC 3460 NEXT 3470 FOR I=BO TO 0 STEP-1 3480 SC=SC+2:SOUND 1,10+I,5,15,4,2,0 3490 LOCATE 10,21:PRINT SC 3500 LOCATE 11,23:PRINT USING "##";I 3510 NEXT 3520 SOUND 2,100,10,15,,1 3530 RETURN 3540 '**************************** 3550 '******* VIE=VIE-1 ********** 3560 '**************************** 3570 VIE=VIE-1:LOCATE 36,23:PRINT VIE 3580 SOUND 2,1000,60,15,1,2,5 3590 FOR D=1 TO 100:NEXT 3600 IF VIE<1 THEN 3620 3610 GOSUB 390:GOTO 2840 3620 '**************************** 3630 '***** FIN DE PARTIE ****** 3640 '**************************** 3650 INK 3,24,10:PEN 3 3660 LOCATE 13,12:PRINT CHR$(24)+"G A M E O V E R"+CHR$(24) 3670 PEN 1 3680 FOR I=1 TO 2000:NEXT 3690 FOR I=1 TO 16 3700 IF SC>HI(I) THEN 3720 3710 NEXT 3720 FOR J=16 TO I STEP-1 3730 HI(J+1)=HI(J):NM$(J+1)=NM$(J) 3740 NEXT 3750 HI(I)=SC:SPEED KEY 10,3 3760 MODE 1:PRINT:PRINT:PRINT " BRAVO, VOUS ETES CLASSE DANS LE TOP 16" 3770 PRINT:PRINT " ENTREZ VOTRE NOM:"; 3780 IF CH=1 THEN WHILE INKEY$<>"":WEND 3790 LINE INPUT G$ 3800 NM$(I)=LEFT$(G$,6):GOSUB 5460 3810 GOSUB 350:SPEED KEY 1,1:GOTO 4000 3820 '***************************** 3830 '******* TEST JOYSTICK ******* 3840 '***************************** 3850 RA=JOY(0) 3860 IF RA<>1 AND RA<>2 AND RA<>4 AND RA<>8 THEN 2940 3870 AX=XP:AY=YP:XP=0:YP=0 3880 XP=-(RA=8)+(RA=4) 3890 YP=-(RA=2)+(RA=1) 3900 GOTO 2940 3910 '*************************** 3920 '***** TEST CLAVIER ******** 3930 '*************************** 3940 A$=INKEY$ 3950 IF A$<>DA$ AND A$<>BA$ AND A$<>GA$ AND A$<>HA$ THEN 2940 3960 AX=XP:AY=YP:XP=0:YP=0 3970 XP=(A$=GA$)-(A$=DA$) 3980 YP=(A$=HA$)-(A$=BA$) 3990 GOTO 2940 4000 '*************************** 4010 '******** MENU *********** 4020 '*************************** 4030 MODE 1:SPEED INK 5,5:SPEED KEY 10,3:RESTORE 4370 4040 INK 1,0::PRINT:PRINT:INK 3,10,24 4050 PRINT:PEN 3:PRINT " N I B B L E R":PEN 1 4060 PRINT 4070 PRINT " MENU" 4080 PRINT 4090 PRINT " 1.....CHOIX CLAVIER OU JOYSTICK" 4100 PRINT 4110 PRINT " 2.....REGLAGE DE LA DIFFICULTE" 4120 PRINT 4130 PRINT " 3.....SORTIE PROGRAMME" 4140 PRINT 4150 PRINT " 4.....INSTRUCTIONS" 4160 PRINT 4170 PRINT " 5.....MEILLEURS SCORES" 4180 PRINT 4190 PRINT " 6.....JEU" 4200 PRINT:PRINT:PRINT " "+CHR$(24)+"VOTRE CHOIX"+CHR$(24)" 4210 INK 1,24:GOSUB 4300:COUL=COUL+1:IF COUL>26 THEN COUL=1 4220 INK 3,COUL 4230 IF INKEY(64)=0 THEN GOSUB 4380:GOTO 4000 4240 IF INKEY(65)=0 THEN GOSUB 4860:GOTO 4000 4250 IF INKEY(57)=0 THEN GOTO 5090 4260 IF INKEY(56)=0 THEN GOSUB 5160:GOTO 4000 4270 IF INKEY(49)=0 THEN GOSUB 5430:GOTO 4000 4280 IF INKEY(48)=0 THEN SPEED KEY 1,1:GOTO 2840 4290 GOTO 4210 4300 '****************************** 4310 '** MUSIQUE ATTENTE CLAVIER *** 4320 '****************************** 4330 READ B 4340 IF B=-1 THEN RESTORE 4370:GOTO 4330 4350 SOUND 2,B,20,15:SOUND 1,B+1,20,15:SOUND 4,B+2,20,15 4360 RETURN 4370 DATA 190,175,169,159,190,179,169,159,95,95,106,0,106,95,95,106,119,127,119,127,142,106,127,159,190,179,169,159,190,179,169,159,95,95,106,119,159,190,159,190,239,142,179,213,179,213,253,239,-1 4380 '****************************** 4390 '** CHOIX CLAVIER OU JOYSTICK ** 4400 '******************************* 4410 MODE 1:INK 3,10,24 4420 BORDER 10 4430 PEN 1 4440 PRINT:PRINT 4450 PEN 3:PRINT " N I B B L E R" 4460 PEN 1 4470 PRINT 4480 PRINT " CHOIX CLAVIER OU JOYSTICK" 4490 PRINT:PRINT:PRINT:PRINT 4500 PRINT " 1......CLAVIER ":PRINT 4510 PRINT " 2......JOYSTICK":PRINT 4520 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT 4530 PRINT " "+CHR$(24)+"VOTRE CHOIX"+CHR$(24) 4540 R$="" 4550 GOSUB 4300 4560 IF INKEY(64)=0 THEN 4590 4570 IF INKEY(65)=0 THEN CH=1:LOCATE 10,23:PRINT"OK POUR LE JOYSTICK.":FOR I=1 TO 1000:NEXT:GOTO 4000 4580 GOTO 4550 4590 '****************************** 4600 '***** CHOIX DES TOUCHES ****** 4610 '****************************** 4620 FOR I=1 TO 25:PRINT:NEXT 4630 MODE 1:WHILE INKEY$<>"":WEND 4640 PRINT:PRINT " N I B B L E R":PRINT:PRINT:PRINT 4650 INPUT " TOUCHE DU HAUT ";HA$ 4660 PRINT: 4670 INPUT " TOUCHE DU BAS ";BA$ 4680 PRINT 4690 INPUT " TOUCHE DE DROITE ";DA$ 4700 PRINT 4710 INPUT " TOUCHE DE GAUCHE ";GA$ 4720 PRINT 4730 IF HA$=BA$ THEN 4820 4740 IF HA$=DA$ THEN 4820 4750 IF HA$=GA$ THEN 4820 4760 IF DA$=BA$ THEN 4820 4770 IF DA$=GA$ THEN 4820 4780 IF BA$=GA$ THEN 4820 4790 PRINT:PRINT:PRINT " OK OK OK OK OK OK OK OK OK OK OK OK " 4800 FOR I=1 TO 200:SOUND 1,I,1,15,4,1,0:SOUND 2,200-I,1,15,4,1,0:NEXT 4810 CH=2:RETURN 4820 FOR I=1 TO 20:SOUND 1,100,12,15,1,1,10 4830 PEN 2:PRINT " ERREUR !!!!!":NEXT 4840 FOR I=1 TO 500:NEXT 4850 GOTO 4380 4860 '*************************** 4870 '*** REGLAGE DIFFICULTE *** 4880 '*************************** 4890 MODE 1:PEN 3:INK 3,10,24 4900 PRINT:PRINT " N I B B L E R" 4910 INK 1,0:PEN 1 4920 PRINT:PRINT " UTILISEZ LE JOYSTICK OU LE CLAVIER" 4930 PRINT " APPUYEZ SUR 'ESPACE' OU 'FIRE'" 4940 PRINT " QUAND VOUS AVEZ FINI":PRINT:PRINT:PRINT:PRINT 4950 PRINT " aeeeeeeeeeeeeeeeeeeeeeb" 4960 PRINT " f1 20f" 4970 PRINT " f f" 4980 PRINT " f f" 4990 PRINT " ceeeeeeeeeeeeeeeeeeeeed" 5000 LOCATE 9,13:PRINT CHR$(207);:LOCATE 9,14:PRINT CHR$(207);:INK 1,24 5010 A=JOY(0):A$=INKEY$ 5020 IF A=0 THEN A$=INKEY$ 5030 IF A$="" THEN 5010 5040 IF A$=DA$ OR A=8 THEN DIFF=DIFF+1:IF DIFF>20 THEN DIFF=20 ELSE LOCATE 8+DIFF,13:PRINT CHR$(207);:LOCATE 8+DIFF,14:PRINT CHR$(207); 5050 IF A$=GA$ OR A=4 THEN DIFF=DIFF-1:IF DIFF<1 THEN DIFF=1 ELSE LOCATE DIFF+9,13:PRINT " ";:LOCATE DIFF+9,14:PRINT " "; 5060 IF A$=" " OR A=16 THEN :FOR I=1 TO 1000:NEXT:GOTO 4000 5070 SOUND 1,DIFF*10,1,15,1,1,0 5080 GOTO 5010 5090 '*************************** 5100 '*** SORTIE DU PROGRAMME *** 5110 '*************************** 5120 MODE 1:PEN 1:INK 1,24:BORDER 10 5130 SYMBOL AFTER 96 5140 SPEED KEY 10,3 5150 END 5160 '********************** 5170 '**** INSTRUCTIONS **** 5180 '********************** 5190 MODE 1:INK 3,24,10 5200 ENT 4,127,3,2,30,0,1,127,-2,3 5210 PEN 3: A$="aeeeeeeeeeeeeeb":GOSUB 5370:LOCATE 1,1:PRINT CHR$(11) 5220 A$=" f"+CHR$(24)+"N I B B L E R"+CHR$(24)+"f":GOSUB 5370:LOCATE 1,1:PRINT CHR$(11) 5230 A$="ceeeeeeeeeeeeed":GOSUB 5370:PEN 1 5240 A$="PARCOUREZ PLUS DE 6 TABLEAUX TOUS":GOSUB 5370 5250 A$="DIFFERENTS OU VOUS DEVREZ,POUR PASSER":GOSUB 5370 5260 A$="DE L'UN A L'AUTRE, DEVORER TOUTES LES":GOSUB 5370 5270 A$="POMMES 'p'. ":GOSUB 5370 5280 a$="ATTENTION ! LE TEMPS EST LIMITE":GOSUB 5370 5290 A$="ET VOTRE CORPS S'ALLONGE A VUE D'OEIL.":GOSUB 5370 5300 A$="DE PLUS,IL NE FAUT EN AUCUN CAS QUE":GOSUB 5370 5310 A$="LA TETE DE NIBBLER '"+CHR$(224)+"' NE TOUCHE":GOSUB 5370 5320 A$="UNE AUTRE PARTIE DE SON CORPS '"+CHR$(255)+"'.":GOSUB 5370 5330 a$="LE JOYSTICK EST FORTEMENT CONSEILLE.":GOSUB 5370 5340 A$=CHR$(24)+"APPUYEZ SUR 'ENTER'"+CHR$(24):GOSUB 5370 5350 INK 3,10,24:WHILE INKEY(18)<>0:WEND 5360 GOTO 4000 5370 ' 5380 LOCATE INT((42-LEN(A$))/2),25 5390 FOR i=1 TO LEN(A$) 5400 PRINT MID$(A$,i,1);:INK 3,INT(I/2) 5410 SOUND 7,1000-I*20,2,15:FOR t=1 TO 10:NEXT 5420 NEXT:IF A$=CHR$(24)+"APPUYEZ SUR 'ENTER'"+CHR$(24) THEN RETURN ELSE PRINT:PRINT:PRINT:RETURN 5430 '************************* 5440 '*** MEILLEURS SCORES **** 5450 '************************* 5460 MODE 1:WINDOW #1,10,30,5,20:INK 3,10,14 5470 PEN 3 5480 PRINT " N I B B L E R":INK 1,0:PEN 1 5490 PRINT "meeeeeeeieeeeeeeeeeeeeeeeeeeeeeieeeeeeel"; 5500 PRINT " f f" 5510 PRINT " jeeeeeeeeeeeeeeeeeeeeeek" 5520 FOR i=1 TO 16:INK 3,I:PRINT " f f":PRINT#1,USING"###";I;:PRINT#1," "; USING"######";HI(I);:PRINT #1," ";:PRINT#1, NM$(I):NEXT 5530 PRINT " ceeeeeeeeeeeeeeeeeeeeeed" 5540 LOCATE 10,3:PRINT CHR$(24)+" APPUYEZ SUR 'ENTER' "+CHR$(24):INK 1,24:WHILE INKEY(18)<>0:COUL=COUL+1:IF COUL>26 THEN COUL=1 5550 INK 3,COUL:FOR KKK=1 TO 10:NEXT KKK:WEND 5560 SOUND 1,200,3,15,4,2,1:RETURN 5570 '*************************** 5580 '** TRAITEMENT ERREUR ** 5590 '*************************** 5600 MODE 1:PEN 1:SPEED KEY 10,4 5610 BORDER 10:INK 1,24 5620 PRINT "ERREUR No";ERR;" EN LIGNE";ERL 5630 END 5640 '******************************** 5650 'VOUS POUVEZ CHANGER LES COULEURS 5660 ' SACHANT QUE: 5670 ' INK 1=DECORS 5680 ' INK 2=POMMES 5690 ' INK 3=NIBBLER 5700 '******************************** 5710 : 5720 '**************************** 5730 '**** SPEED WRITE 2 **** 5740 '**************************** 5750 POKE &B8D1,0:POKE &B8D2,28:SAVE "NIBBLER" |