Voici un petit programme réalisé par CloudStrife. C’est un petit menu assez simple (Comme vous pouvez le voir CloudStrife l’utilise pour sa Compile de Boulder Dash 😉 où l’on peut mettre un musique de fond (En DATA dans les ligne a partir de 2000)
Listing :

Ligne 50 : Cette ligne permet de savoir si une place c’est libérait dans la fils d’attente sonore du canal 4 Si oui aller a la ligne 1000
60 : Pour choisir les couleur
70 : Titre
80 : Premier choix
90 : 2éme
100 : etc …
130 : Permet d’entrer les différent choix puis au module 50000 à 50100
140 : Si K=1 GOTO 200 K=2 GOTO 300 etc… (Au plus vous voulais de chois au plus vous ajouter de GOTO)
200 : Module de Chargement Boulder Dash300,400,500,600 : pour les autres
Linge 1000 : Debut Module Sonore
1010 : Nombre de note en DATA (Pour efectuer un RESTORE des DATA)
1020 : Pour aller faire le RESTORE
1030 : Lire les DATA, jouer le Son et entrez qu’il y a eu une note de jouer
1040 : Réinitialiser le détecteur puis retour
1100 : Module RESTORE est remiser des note jouer a zéro
1110 : RESTORE et remise a zéro
1120 : Retour
2000 : Tous les DATA
2010 : DATA entrez sous la forme Période, Durée maximum 8 par ligne (plus facile a modifier)

Ligne 50000 à 50100 : le module Menu en lui même

 
10 ‘Sound Menu
20 ‘Par CloudStrife
30 ‘D’aprés Michel Archambault (Module ligne 50000 à 50100)
40 CLS:MODE 1
50 ON SQ(4) GOSUB 1000
60 BORDER 0:INK 0,0:PAPER 0:INK 1,26:PEN 1
70 LOCATE 12,2:PRINT « BoUlDeR DaSh CoMpIl »
80 LOCATE 12,8:PRINT « 1 – Boulder Dash I »
90 LOCATE 12,10:PRINT « 2 – Boulder Dash II »
100 LOCATE 12,12:PRINT « 3 – Boulder Dash III »
110 LOCATE 12,14:PRINT « 6 – Boulder Dash VI »
120 LOCATE 12,14:PRINT « K – Boulder Dash CK »
130 TEX$= »1236K »:GOSUB 50000
140 ON K GOTO 200,300,400,500,600
150 END
200 ‘Chargement Boulder DASH 1
210 PRINT « Chargement de BOULDER DASH I »
220 RUN »BOULDER
230 END
300 ‘Chargement BOULDER DASH 2
310 PRINT « Chargement de BOULDER DASH II »
320 RUN »BOULDER2
330 END
400 ‘Chargement BOULDER DASH 3
410 PRINT « Chargement de BOULDER DASH III »
420 RUN »DASHIII
430 END
500 ‘Chargement BOULDER DASH 6
510 PRINT « Chargement de BOULDER DASH VI »
520 RUN »BOULDER6
530 END
600 ‘Chargement BOULDER DASH Construction Kit
610 PRINT « Chargement de BOULDER DASH »
620 PRINT « Construction Kit »
630 RUN »Boulkit
640 END
1000 ‘Sound Module
1010 NT=10:’Nombre Total de note en DATA
1020 IF NJ>=NT THEN GOSUB 1100
1030 READ S,T:SOUND 4,S,T:NJ=NJ 1
1040 ON SQ(4) GOSUB 1000:RETURN
1100 ‘Module RESTORE DATA
1110 RESTORE 2000:NJ=0
1120 RETURN
2000 ‘DATA Sound
2010 DATA 200,10,250,10,300,10,350,10,400,50,450,10
2020 DATA 500,10,550,10,600,10,650,20
50000 ‘Reponse a un Menu (Parti de Michel Archambault Paru dans CPC)
50010 LT=LEN(TEX$):R$= » »
50020 LOCATE 15-LT,24:PRINT « Reponse (« ;
50030 FOR I=1 TO LT-1
50040 PRINT MID$(TEX$,I,1); », »;:NEXT
50050 PRINT RIGHT$(TEX$,1); ») »;CHR$(154);CHR$(243);CHR$(207)
50060 TEX$=UPPER$(TEX$)
50070 WHILE R$= » »:R$=INKEY$:WEND
50080 R$=UPPER$(R$):K=INSTR(TEX$,R$)
50090 IF K=0 THEN R$= » »:GOTO 50070
50100 RETURN
 

 

 

 

 

Information complémentaire :

Vous pouvez bien sur aussi intégrer le module dans vos programme pour faire un Menu (En virent tous ce que vous n’avez pas besoin)