Les fichiers POL
Les fichiers Polyphonia sont des fichiers
de type $01, de flag $00 et de suffixe « .POL ». Ils sont constitués
d'une partie info et de la partition proprement dite.
La partie info du fichier Polyphonia
La partie info d'un fichier Polyphonia est constituée de 10 octets:
Octet 0 Armature de la portée
Octet 1 Temps de la mesure (2,3,4,5,6,7 ou 9)
Octet 2 Division de la mesure (2,4 ou 8)
Octet 3 Volume pour la voix 1 (de 0 à 4)
Octet 4 Volume pour la voix 2 (de 0 à 4)
Octet 5 Volume pour la voix 3 (de 0 à 4)
Octet 6 Enveloppe du son pour la voix 1 (de 0 à 9)
Octet 7 Enveloppe du son pour la voix 2 (de 0 à 9)
Octet 8 Enveloppe du son pour la voix 3 (de 0 à 9)
Octet 9 Tempo général (de 1 à 20)
L'armature de la portée est définie comme suit:
Bit 3 1 = Bémol 0 = Dièse
Bits 2-0 Pour une gamme dièsée:
1 = Fa
2 = Fa, Do
3 = Fa, Do, Sol
4 = Fa, Do, Sol, Ré
5 = Fa, Do, Sol, Ré, La
6 = Fa, Do, Sol, Ré, La, Mi
7 = Fa, Do, Sol, Ré, La, Mi, Si
Pour une gamme bémolée:
1 = Si
2 = Si, Mi
3 = Si, Mi, La
4 = Si, Mi, La, Ré
5 = Si, Mi, La, Ré, Sol
6 = Si, Mi, La, Ré, Sol, Do
7 = Si, Mi, La, Ré, Sol, Do, Fa
Les sons sélectionnés pour chaque voix sont fabriqués par
Polyphonia dans des plages de mémoire de 256 octets chacune. L'enveloppe du son
peut être créée selon les formes suivantes:
0 Carré ( _|¯|_ )
1 Rampe ( / )
2 Triangle ( /\ )
3 Sinus
4 Sinus 2 (sinus avec un pas de 2)
5 Sinus 3 (sinus avec un pas de 3)
6 Sinus 4 (sinus avec un pas de 4)
7 Sinus 5 (sinus avec un pas de 5)
8 Sinus 6 (sinus avec un pas de 6)
9 Sinus 7 (sinus avec un pas de 7)
La partition du fichier Polyphonia
Les notes étant regroupées en mesures, les trois premiers octets de
la séquence indiquent le nombre respectif de notes pour chaque voix
consécutive. Ex: $01 $02 $04 indique que la voix 1 est constituée par une note pour cette mesure, la voix 2 par 2 notes
et la voix 3 par 4 notes.
Comme chaque note est repérée par 2 octets, les 2 octets suivants
donnent donc la note de la voix 1, puis viennent les 4 octets pour les 2 notes
de la voix 2 et enfin les 8 octets pour les 4 notes de la voix 3. Et la mesure
est bouclée.
Pour chaque note, le premier octet
renseigne sur la durée de la note et la voix qu'elle concerne:
Bit 7 1 = notes liées
0 = notes détachées
Bits 6-5 1 = voix 1
2 = voix 2
3 = voix 3
Bit 4 1 = Triolet
Bit 3 1 = Note pointée
Bits 2-0 0 = Triple croche
1 = Double croche
2 = Croche
3 = Noire
4 = Blanche
5 = Ronde
Le deuxième octet renseigne sur la hauteur de la note:
Bit 7-6 1 = Bémol
2 = Bécarre
3 = Dièse
Bits 5-0 $01-$07 => 7 notes pour l'octave 5 (la plus aiguë)
$09-$0F => 7 notes pour l'octave 4
$11-$17 => 7 notes pour l'octave 3
$19-$1F => 7 notes pour l'octave 2
$21-$23 => 3 notes pour l'octave 1 (la plus grave)
(La valeur $08 implique un silence)
|