*********************************************************************** *********** *********** *********** *********** *********** Descrition des diff‚rents formats SoundTracker *********** *********** *********** *********** Formats Amiga 4 … 32 voies *********** *********** *********** *********** *********** *********** par Simplet / ABSTRACT *********** *********** *********** *********************************************************************** Structure d'infos sample : -------------------------- RsReset Amiga_Name rs.b 22 Amiga_Length rs.w 1 * Taille cod‚e en words Amiga_Fine_Tune rs.b 1 * de 0 … 15 = 0 … 7 et -8 … -1 Amiga_Volume rs.b 1 * de 0 … 64 Amiga_Repeat_Start rs.w 1 Amiga_Repeat_Length rs.w 1 Amiga_Size rs.b 1 * 30 octets Structure d'un fichier : ------------------------ Offset Longueur Valeur Song_Name 0 20 Nom du Module Song_Sample_Infos 20 31*Amiga_Size Infos sur les samples Song_Length 950 1 Longueur du Morceau Song_Restart 951 1 Position de Rebouclage Song_Sequence 952 128 S‚quence des Patterns Song_Chunk 1080 4 Module Chunk Song_Patterns 1084 Nb_Patterns*Pattern_Size Song_Samples 1084 Samples Sign‚s +Nb_Patterns*Pattern_Size La Taille d'un pattern est de 4*Nb_Voies*64 Le Nombre de patterns dans un module est le num‚ro de pattern le plus haut + 1 car la num‚rotation des patterns commence … 0. Il faut pour le connaitre scanner la s‚quence et prendre le maximum. Le Restart est utilis‚ seulement par le NoiseTracker. Le ProTracker met $7f ou $78 … la place. Donc pour savoir s'il y a un Restart ou non, il faut comparer la valeur … la longueur du module, si il est plus petit, c'est que la valeur doit ˆtre bonne, sinon on d‚cide que Restart = 0 Pour les anciens modules 15 instruments, il y a la place pour 15 instruments dans les infos samples. Et il n'y a pas de Chunk. Le Digital Tracker utilise ce format standard, si ce n'est qu'il y a un long mot de plus juste aprŠs le Chunk. Le premier mot donne le nombre de lignes d'un Pattern. Structure d'un morceau : ------------------------ Le Morceau (Song) est compose de x positions auxquelles on associe un num‚ro de pattern au travers de la s‚quence des patterns (Song_Sequence) Dans la s‚quence, chaque num‚ro de pattern est cod‚ sur un octet. Un pattern est constitu‚ de 64 lignes de x voies, chaque colonne est cod‚e sur 4 octets de la manniŠre suivante : Word 0 : 000spppppppppppp Octet 2 : sssseeee Octet 3 : aaaaaaaa pppppppppppp : P‚riode de la note 0 = pas de Note sssss : Sample de 1 … 31 eeee : Effet aaaaaaaa : ParamŠtre de l'Effet Les Effets ProTracker : ----------------------- L'octet de paramŠtre est not‚ XY Num‚ro Nom Description 0 Rien ou Arpeggio Changement rapide entre 3 notes Note normale, Note + X et Note + Y 1 Portamento Up Augmente la Hauteur de la Note en diminuant sa p‚riode de $XY … chaque 'tick' de chaque ligne 2 Portamento Down Diminue la Hauteur de la Note en augmentant sa p‚riode de $XY … chaque 'tick' de chaque ligne 3 Tone Portamento 'Liaison' entre deux Notes, Rapproche la p‚riode actuelle de la p‚riode de la Note d‚sir‚e en l'augmentant ou la diminuant de $XY … chaque Ligne (vitesse) 4 Vibrato Fait osciller la p‚riode (… chaque 'tick') X est la vitesse Y est l'amplitude 5 Tone Portamento Conserve l'effet de Tone Portamento + Volume Slide et effectue un Volume Slide (Effet No A) 6 Vibrato Conserve l'effet de Vibrato + Volume Slide et effectue un Volume Slide (Effet No A) 7 Tremolo Vibrato sur le Volume, mˆme fonctionnement 8 Phasor Effect ? Connait pas 9 Sample Offset Augmente le point de d‚part du sample de $XY00 octets. A Volume Slide Augmente le Volume de $X ou le diminue de $Y … chaque 'tick' de chaque ligne et $X est prioritaire B Position Jump Saute … la position num‚ro $XY de la s‚quence des patterns. C Volume Change Fixe le Volume Courant … $XY D Pattern Break Passe … la position suivante dans la s‚quence et commence le pattern … la ligne 10 * X + Y, c'est un codage en BCD. Donc le num‚ro apparait en d‚cimal E Effets Etendus Effet Etendu no X, paramŠtre Y F Set Speed/Tempo Si 0 < $XY < 32, fixe la vitesse (Speed) entre deux lignes Si $XY > 32, fixe le Tempo. Effets Etendus EX: 0 Set Filter Y : 1 = On, 0 = Off (ne fonctionne que sur certains types trŠs particuliers d'Amiga) 1 Fine Portamento Up Idem Portamento Up, sauf que la p‚riode n'est diminu‚e de $Y qu'une seule fois par ligne (au 1er 'tick') 2 Fine Portamento Down Idem Portamento Down, sauf que la p‚riode n'est augment‚e de $Y qu'une seule fois par ligne (au 1er 'tick') 3 Set Glissando Control Y : 1 = On, 0 = Off A utiliser avec le Tone Portamento Si Off, on a un Tone Portamento normal sinon le glissement entre les deux p‚riodes se fait demi-ton par demi-ton 4 Set Vibrato Control Y Fixe le type de courbe utilis‚e pour le Vibrato : 0: Sinuso‹de (par d‚faut) 1: Ramp Down 2: Onde Carr‚e +4: pour ne pas r‚initialiser la courbe pour une nouvelle note 5 Set Fine Tune Y Fixe le Fine Tune du Sample : de 0 … 15 <=> de 0 … 7 et -8 … -1 huitiŠmes de demi-ton 6 Pattern Loop $Y vaut 0 pour fixer le d‚but de la boucle. Sinon, c'est le nombre de fois … r‚p‚ter jusqu'… cette position. 7 Set Tremolo Control Fixe le type de courbe utilis‚e pour le Tremolo. Idem commande $E4 8 Set Panoramic Y Fixe la balance de la voie : ( Parfois Stop ) 0 Gauche...8 Milieu...15 Droite 9 Retrig Note Rejoue la note plusieurs fois entre deux lignes. $Y est le nombre de 'ticks' au bout desquels on rejoue la note. Donc avec un Speed de 6 Si on indique 3, la note ne sera rejou‚e qu'une seule fois. Avec un Speed de 8, si on indique 2 la note sera rejou‚e 3 fois de plus A Fine Volume Slide Up Idem Volume Slide Up, sauf que le volume n'est augment‚ de $Y qu'une seule fois par ligne (au 1er 'tick') B Fine Volume Slide Down Idem Volume Slide Down, sauf que le volume n'est diminu‚ de $Y qu'une seule fois par ligne (au 1er 'tick') C Note Cut Coupe la note (Volume 0) au bout de $Y 'ticks' dans la ligne. Cela permet de faire des notes extrˆmement courtes. D Note Delay Ne joue la note qu'au bout de $Y 'ticks' E Pattern Delay Passe au pattern suivant au bout de $Y lignes. F Funk It Vitesse en $Y Invert Loop Les positions st‚r‚o s'enchainent comme ceci : ---------------------------------------------- Left - Right - Right - Left - Left - Right - Right - Left Les diff‚rents Chunk possibles sont : ------------------------------------- Chunk Nombre de Voies Tracker Extensions M.K. 4 Noise/Pro-Tracker .MOD/.NST M!K! 4 Noise/Pro-Tracker .MOD/.NST M&K& 4 Noise/Pro-Tracker .MOD/.NST M.K. 8 GravePlayer .WOW RASP 4 StarTrekker .MOD/.NST FLT4 4 StarTrekker .MOD/.NST FLT6 6 StarTrekker .MOD/.NST FLT8 8 StarTrekker .MOD/.WOW/.OCT 6CHN 6 FastTracker .MOD 8CHN 8 FastTracker .MOD/.WOW/.OCT 16CH 16 FastTracker .MOD 32CH 32 FastTracker .MOD OCTA 8 Octalyser .MOD/.WOW/.OCT FA04 4 Digital Tracker .MOD FA06 6 Digital Tracker .MOD FA08 8 Digital Tracker .MOD ???? 4 Old 15 Samples Module .MOD/.SD0