MUS (Music Tracker)
From Atariki
(Różnice między wersjami)
Wersja z dnia 13:49, 27 sty 2018 Mono (Dyskusja | wkład) (→Dane patternów - styl.) ← Previous diff |
Wersja z dnia 13:53, 27 sty 2018 Mono (Dyskusja | wkład) (ilosc patternow) Next diff → |
||
Linia 8: | Linia 8: | ||
<tr><td>$0009</td><td>$0100</td><td>dane 64 brzmień</td></tr> | <tr><td>$0009</td><td>$0100</td><td>dane 64 brzmień</td></tr> | ||
<tr><td>$0109</td><td>...</td><td>dane 4 tracków</td></tr> | <tr><td>$0109</td><td>...</td><td>dane 4 tracków</td></tr> | ||
- | <tr><td>...</td><td>...</td><td>dane 256 patternów</td></tr> | + | <tr><td>...</td><td>...</td><td>dane 64 patternów</td></tr> |
<tr><td>...</td><td>...</td><td>dane 64 obwiedni</td></tr> | <tr><td>...</td><td>...</td><td>dane 64 obwiedni</td></tr> | ||
</table> | </table> | ||
Linia 16: | Linia 16: | ||
Tracki ułożone w kolejności 1234. | Tracki ułożone w kolejności 1234. | ||
+ | * $00..$3F - oznaczają numery patternów, | ||
* $FD - wskazuje punkt zapętlenia, | * $FD - wskazuje punkt zapętlenia, | ||
* $FE - oznacza zakończenie tracka i zatrzymanie odtwarzania tracka, | * $FE - oznacza zakończenie tracka i zatrzymanie odtwarzania tracka, | ||
- | * $FF - oznacza koniec tracka i zapętlenie do punktu markowanego znacznikiem $FD | + | * $FF - oznacza koniec tracka i zapętlenie do punktu markowanego znacznikiem $FD. |
- | * pozostałe wartości oznaczają numery patternów. | + | |
Track zawsze zakończony jest wartością $FF lub $FE. | Track zawsze zakończony jest wartością $FF lub $FE. | ||
Linia 25: | Linia 25: | ||
=== Dane patternów === | === Dane patternów === | ||
- | * $nn $xx - <nuta nn>.xx (nn=$01: C-1) - xx to czas trwania nuty | + | * $00..$3F $xx - <nuta nn>.xx (nn=$01: C-1) - xx to czas trwania nuty |
* $4x $yy - per.xx.yy - xx to nr perkusji, yy to czas trwania perkusji | * $4x $yy - per.xx.yy - xx to nr perkusji, yy to czas trwania perkusji | ||
* $80 $xx - snd.xx - xx to numer brzmienia | * $80 $xx - snd.xx - xx to numer brzmienia |
Wersja z dnia 13:53, 27 sty 2018
Format modułu muzycznego obsługiwany przez program Music Tracker.
offset | długość | opis |
$0000 | $0004 | identyfikator: 'MTST' w ASCII ($4D $54 $53 $54) |
$0004 | $0001 | tempo |
$0005 | $0004 | flagi wyciszenia kanałów kolejno 4321 - $00: włączony, $FF: wyłączony |
$0009 | $0100 | dane 64 brzmień |
$0109 | ... | dane 4 tracków |
... | ... | dane 64 patternów |
... | ... | dane 64 obwiedni |
Spis treści |
Dane tracków
Tracki ułożone w kolejności 1234.
- $00..$3F - oznaczają numery patternów,
- $FD - wskazuje punkt zapętlenia,
- $FE - oznacza zakończenie tracka i zatrzymanie odtwarzania tracka,
- $FF - oznacza koniec tracka i zapętlenie do punktu markowanego znacznikiem $FD.
Track zawsze zakończony jest wartością $FF lub $FE.
Dane patternów
- $00..$3F $xx - <nuta nn>.xx (nn=$01: C-1) - xx to czas trwania nuty
- $4x $yy - per.xx.yy - xx to nr perkusji, yy to czas trwania perkusji
- $80 $xx - snd.xx - xx to numer brzmienia
- $81 $xx - and.xx - xx to maska bitów AUDCTL (odpowiada AND #$xx)
- $82 $xx - ora.xx - xx to maska bitów AUDCTL (odpowiada ORA #$xx)
- $83 $xx - tab.xx - xx to nr tablicy częstotliwości:
- $00 - ton czysty
- $01 - zniekształcenie 4
- $02 - zniekształcenie 4 lub 5
- $03 - zniekształcenie 5 dla zegara 1.77 MHz
- $84 $xx - off.xx - xx to czas trwania pauzy
- $ff - koniec patternu
Dane brzmień
Każde brzmienie składa się z 4 bajtów:
- $xx - nr obwiedni
- $yy - AUDC
- $vv - parametr dla efektu
- $zz - efekt:
- $00 - vibrato o głębokości $vv
- $01 - falowanie o głębokości $vv
- $02 - przeskok o głębokości $vv
- $03 - opad częstotliwości co $vv
- $04 - opad częstotliwości co $vv
Dane obwiedni
- %zyyyxxxx - x: głośność, y: czas trwania, z: szum
- $FF - koniec obwiedni