CMC (format pliku)
From Atariki
(Różnice między wersjami)
Wersja z dnia 17:08, 6 sty 2006 Jellonek (Dyskusja | wkład) ← Previous diff |
Wersja z dnia 22:16, 29 cze 2006 Sq5irz (Dyskusja | wkład) (→Dane ścieżek w oknie Song - literówki) Next diff → |
||
Linia 45: | Linia 45: | ||
|align="center"| $8F ||align="center"|SHIFT '''S''' || STOP - zatrzymuje odtwarzanie songu ale instrumenty są odtwarzane do końca. | |align="center"| $8F ||align="center"|SHIFT '''S''' || STOP - zatrzymuje odtwarzanie songu ale instrumenty są odtwarzane do końca. | ||
|- | |- | ||
- | |align="center"| $9F ||align="center"|SHIFT '''J''' || JUMP - skacze do lini w songu - wartość pozycji jest w brana z 2 ścieżki. (na tej samej pozycji) | + | |align="center"| $9F ||align="center"|SHIFT '''J''' || JUMP - skacze do linii w songu - wartość pozycji jest w brana z 2 ścieżki. (na tej samej pozycji) |
|- | |- | ||
- | |align="center"| $AF ||align="center"|SHIFT '''U''' || UP - skacz w górę ileś linii - ilość lini jest brana z 2 ścieżki. | + | |align="center"| $AF ||align="center"|SHIFT '''U''' || UP - skacz w górę ileś linii - ilość linii jest brana z 2 ścieżki. |
|- | |- | ||
|align="center"| $BF ||align="center"|SHIFT '''D''' || DOWN - skacz w dół ileś linii - j.w. | |align="center"| $BF ||align="center"|SHIFT '''D''' || DOWN - skacz w dół ileś linii - j.w. | ||
Linia 55: | Linia 55: | ||
|align="center"| $DF ||align="center"|SHIFT '''R''' || REPLAY - pętla odtwarzana n razy na m pozycjach w dół, n brana z 3 ścieżki, m - z 2. | |align="center"| $DF ||align="center"|SHIFT '''R''' || REPLAY - pętla odtwarzana n razy na m pozycjach w dół, n brana z 3 ścieżki, m - z 2. | ||
|- | |- | ||
- | |align="center"| $EF ||align="center"|SHIFT '''B''' || BREAK - zatrzymaj odtwarzanie danego songu i skacz do góry do pierszej lini po napotkanej takiej samej wartości lub do początku songu. | + | |align="center"| $EF ||align="center"|SHIFT '''B''' || BREAK - zatrzymaj odtwarzanie danego songu i skacz do góry do pierwszej linii po napotkanej takiej samej wartości lub do początku songu. |
|- | |- | ||
|align="center"| $FF,$FE || || pusta pozycja - nie odtwarza na tej ścieżce żadnego patternu. | |align="center"| $FF,$FE || || pusta pozycja - nie odtwarza na tej ścieżce żadnego patternu. |
Wersja z dnia 22:16, 29 cze 2006
Format pliku używany przez program Chaos Music Composer. Plik .CMC jest dosowym plikiem, zawiera 6 bajtowy nagłówek DOSa.
Spis treści |
Pierwsze bajty w pliku (pomijając nagłówek DOSa)
Offset | Opis |
$00 - $12 | Podpis - CMC Data File |
$13 | Tempo (globalne) |
$14 - $53 | Tablica adresów Patternów - młodsze bajty |
$54 - $93 | Tablica adresów Patternów - starsze bajty |
$94 - $12f | Tablica definicji instrumentów i mapa akcentów |
$130 - $1ff | Definicja obwiedni instrumentów (głośności) |
$200 - $254 | 1 ścieżka w SONG (1 kanał) |
$255 - $2a9 | 2 ścieżka w SONG (2 kanał) |
$2AA - $2ff | 3 scieżka w SONG (3 kanał) |
$300 - end | Dane patternów |
Definicje instrumentów
- offset = numer instrumentu x 6
- Pierwsze cztery bajty to wartości z prawej strony edytora instrumentów,
- Jeśli definicja instrumentu ma ustawione "slide up" (strzałka w górę), wtedy w drugim bajcie zostaje ustawiony 3 bit. (zwiększony jest o wartość 8)
- Jeśli definicja instrumentu ma ustawione "slide down" (strzałka w dół), wtedy w drugim bajcie zostaje ustawiony 4 bit, (zwiększony jest o wartość 16)
- Kolejne 2 bajty to mapa bitowa akcentów - kolejny bit, kolejny akcent w definicji obwiedni.
Definicja obwiedni
- offset = numer instrumentu x 8,
- kolejne osiem bajtów stanowią definicję - 16 połówek bajtu (nibble) o wartości (0-15) - od lewej do prawej strony, pierwszy dolny nibble, kolejny górny.
Dane ścieżek w oknie Song
Wszystkie ścieżki w oknie SONG zawierają numery kolejno odtwarzanych patternów, ale wartości z ustawionym 7 bitem (+ $80) są bajtami kontrolnymi:
Wartość | Klawisz w CMC | Opis |
$8F | SHIFT S | STOP - zatrzymuje odtwarzanie songu ale instrumenty są odtwarzane do końca. |
$9F | SHIFT J | JUMP - skacze do linii w songu - wartość pozycji jest w brana z 2 ścieżki. (na tej samej pozycji) |
$AF | SHIFT U | UP - skacz w górę ileś linii - ilość linii jest brana z 2 ścieżki. |
$BF | SHIFT D | DOWN - skacz w dół ileś linii - j.w. |
$CF | SHIFT T | TEMPO - ustaw nowe tempo - wartość z 2 ścieżki. |
$DF | SHIFT R | REPLAY - pętla odtwarzana n razy na m pozycjach w dół, n brana z 3 ścieżki, m - z 2. |
$EF | SHIFT B | BREAK - zatrzymaj odtwarzanie danego songu i skacz do góry do pierwszej linii po napotkanej takiej samej wartości lub do początku songu. |
$FF,$FE | pusta pozycja - nie odtwarza na tej ścieżce żadnego patternu. |
Dane Patternów
Wartość | Opis |
$00 - $19 | Numer instrumentu który będzie odtwarzany (na kolejnej pozycji zawsze znajduje się numer nuty) |
$40 - $7E | Numer nuty liczony w półtonach (od $C1 do $D6) plus wartość - $40 |
$80 - $BD | Ilość pustych linii między nutami plus $7F |
$FF | Koniec patternu |