Suite à l'article de FroST dans le dernier Toxic Mag, je me demandais
s'il était possible d'adapter la routine pour jouer des musiques du type
"Sid Sound Designer" en GFA Basic. Je me suis risqué à convertir le
source fourni avec le Toxic Mag 17 en GFA, mais en vain. Mais c'était
sans compter sur le Zorro des temps modernes, celui qui vient à temps
sauver la veuve et l'orphelin, j'ai nommé : ST GHOST ! En effet, le timer
B est déjà utilisé par le GFA, il était donc impossible de rejouer des
musiques "Sid Sound" telles quelles. ST Ghost s'est donc chargé de
modifier le player pour qu'il utilise le timer C. Exyl est passé par là et
il a concocté un petit player pour les fans du GFA qui n'attendaient que ça !
Pourquoi est-il préférable d'inclure une musique au format "Sid Sound
Designer" dans une démo ? Parce que ça change des vieilles musiques à
la Mad Max, Big Alec ou Count Zero et parce que je reste convaincu que
le design est quelque chose de très important dans une démo, c'est à mon
avis plus important que le niveau technique de la programmation. ST
Survivor avait écrit un article au sujet du design dans un ancien Toxic
Mag, le 16 il me semble, il serait bon que les programmeurs de démos s'y
réfèrent de temps en temps. On voit trop de démos pourtant très bonnes,
techniquement parlant, mais sans aucun design. Que de gâchis !
Allez, trêve de blabla, on passe au listing, qui est très court. Vous
trouverez le source GFA quelque part dans le Toxic 18.
. Routine SID pour le GFA . Code : ST Ghost & Exyl SECTOR ONE . CLS RESERVE 50000 . INLINE sid_gfa%,244 INLINE sid_rout%,9014
*** AVERTISSEMENT ***
Ces deux INLINE contiennent le player en assembleur. Il est très important,
voire IMPÉRATIF, de les recharger juste AVANT d'exécuter le programme,
sous peine de plantage ! Pour les débutants, il faut sauvegarder ces
INLINE : mettez le curseur dessus, pressez HELP puis SAVE. J'ai remarqué
qu'à la moindre modification du source, le fait de ne pas recharger les
INLINE peut conduire à un plantage !
INLINE tri%,16260 INLINE tvs%,17172
Chaque musique "Sid Sound" est composée de deux fichiers : celui dont
l'extension est TRI contient la partition, et celui dont l'extension est
TVS contient les instruments. Vous n'êtes pas obligés de mettre les fichiers
dans des INLINE, il est possible de les charger avec FILESELECT puis BGET, par
exemple.
super%=GEMDOS(32,L:0) ! superviseur . ~C:sid_gfa%(L:tvs%,L:tri%,L:sid_rout%,W:50,W:0)
Le player s'appelle en passant des paramètres. "tvs%" et "tri%" sont les
adresses des fichiers *.TVS et *.TRI, nous les avons vu plus haut. 50 est la
fréquence de l'écran (50 Hz), il faudra changer ce paramètre en conséquence, au
risque de jouer la musique plus vite qu'elle ne devrait l'être. Quant au
dernier paramètre, il indique tout simplement qu'il faut jouer la musique.
~GEMDOS(32,L:super%) ! on retourne au mode utilisateur . ~INP(2) ! attente de touche . super%=GEMDOS(32,L:0) ! superviseur . ~C:sid_gfa%(L:0,L:0,L:sid_rout%,W:0,W:-1)
Pour arrêter la musique, il ne faut s'occuper que du 3ème et du 5ème
paramètre. Les autres peuvent être laissés à 0. Le dernier paramètre doit
contenir la valeur -1 afin de signaler au player que l'on veut couper la
musique.
~GEMDOS(32,L:super%) ! on retourne au mode utilisateur . RESERVE EDIT
Et voilà. J'espère que cette petite routine vous sera très utile pour vos
prochaines réalisations. Quant aux fichiers TRI et TVS, à part sur Internet,
je ne vois pas trop où vous pourrez en trouver. Si vous n'avez pas accès au
réseau des réseaux, vous pouvez m'envoyer une disquette + une enveloppe timbrée
et libellée à vos nom et adresse (la mienne se trouve dans l'édito).