Dokumentacja do CMC
Wielu z Was wyraziło swoje zainteresowanie
sposobem zapisywania utworu przez program Chaos
Music Composer. Przyznam, że temat jest ciekawy
i warto go przybliżyć, co też poniżej czynię
w zastępstwie autora CMC, z którym trudno jest się
skontaktować.
$00 |
Nagłówek (tytuł) służący do rozpoznania programu. |
$13 |
Tempo. |
$14 |
Młodszy bajt adresu patternu. |
$54 |
Starszy bajt adresu patternu. |
$94 |
Wartości dla definicji instrumentu i akcenty. |
$130 |
Definicja obwiedni (natężenia dźwięku) instrumentu. |
$200 |
Zapis pierwszej ścieżki z okna SONG. |
$255 |
Zapis drugiej ścieżki. |
$2AA |
Zapis trzeciej ścieżki. |
$300 |
Początek zapisu patternów. |
Objaśnienia niektórych pozycji tabeli:
Wartości dla definicji instrumentu mają następujące znaczenie:
— Pierwsze cztery bajty są to wartości widoczne po prawej
stronie okna INSTR. Jeżeli definicja ma ustawione podciągnięcie dźwięku, to drugi bajt zwiększony jest o 8. Jeżeli definicja ma ustawiony "zjazd" dźwięku, to drugi bajt
zwiększony jest o 16.
— Bajty piąty i szósty to bitowa mapa akcentów - kolejnym
bitom odpowiadają kolejne pozycje w definicji obwiedni.
Definicja natężenia dźwięku składa się z ośmiu kolejnych
bajtów, których połówki odpowiadają za natężenie dźwięku
w danej pozycji. Są one ułożone od lewej do prawej strony,
najpierw w młodszej, potem w starszej połówce bajtu.
Ścieżki w oknie SONG zawierają numery pattemów odgrywanych w danym momencie, za wyjątkiem następujących wartości:
$8F |
SHIFT S |
STOP - zatrzymanie odgrywania muzyki z kontynuacją wybrzmiewania dźwięku. |
$9F |
SHIFT J |
JUMP - skok do linii określonej bajtem z drugiej ścieżki. |
$AF |
SHIFT U |
UP - skok w górę o liczbę linii pobraną z drugiej ścieżki. |
$BF |
SHIFT D |
DOWN - skok w dół tak, jak przy skoku w górę. |
$CF |
SHIFT T |
TEMPO - ustalenie nowego tempa według wartości pobranej z drugiej ścieżki. |
$DF |
SHIFT R |
REPLAY - pętla wykonywana n razy na m liniach, n pobierane jest z trzeciej, a m - z drugiej ścieżki. |
$EF |
SHIFT B |
BREAK - przerwanie odtwarzania muzyki i skok w górę do napotkania takiego samego znaku lub do pierwszej linii w oknie SONG. |
Wyjaśnienia wymaga również sposób zapisu patternów. I tu
również posłużę się tabelą:
$00 - $19 |
Numer instrumentu użytego do odgrywania następnych dźwięków. |
$40 - $7E |
Numer dźwięku liczony w półtonach (od C1 do D6) zwiększony o $40. |
$80 - $BD |
Ilość pustych linii zwiększona o $7F. |
$FF |
Koniec patternu. |
Myślę, że przedstawione tu informacje przyczynią się do powstania wielu programów współpracujących z CMC. Przykładów jest wiele: przenoszenie muzyki z SOUND TRACKERÓW
napisanych dla komputera AMIGA, obsługa lnterface'u MIDI
czy choćby program odtwarzający muzykę z CMC za pomocą
sampli.
Może na dobry początek zaczniemy od programu zapisującego muzykę w formie pliku tekstowego?
Dariusz Żołna
|