CM2: Różnice pomiędzy wersjami

Z Atariki
Przejdź do nawigacji Przejdź do wyszukiwania
Mono (dyskusja | edycje)
Mono (dyskusja | edycje)
m →Dane instrumentów: formatowanie
Linia 61: Linia 61:
Zawiera 26 bloków po 32 bajty definujące instrument.
Zawiera 26 bloków po 32 bajty definujące instrument.


                  AB
                    AB
                  CD
                    CD
                  EF
                    EF
  vvvvvvvvvvvvvvvv GH
  vvvvvvvvvvvvvvvv   GH
  dddddddddddddddd IJKL
  dddddddddddddddd IJKL
  ffffffffffffffff MNOP
  ffffffffffffffff MNOP

Wersja z 18 cze 2015, 20:48

Format pliku używany przez program Stereo Double Chaos Music Composer 2000 v1.02 copyright 6.11.1999 by datri.

Plik CM2 jest zmodyfikowanym plikiem binarnym DOSu i jest pochodną formatu CMC rozszerzoną o dane tracków przeznaczonych dla drugiego POKEYa.

Zmodyfikowany nagłówek binarny DOS

Offset Rozmiar Opis
$00 $02 Znacznik $0000
$02 $02 Adres początku danych
$04 $02 Adres końca danych

Dane pliku

Offset Rozmiar Opis
$000 $013 Sygnatura "<Chaos2000 v1.00>" w kodach ekranowych
$013 $001 Tempo (globalne)
$014 $040 Tablica adresów Patternów - młodsze bajty
$054 $040 Tablica adresów Patternów - starsze bajty
$094 $340 Tablica definicji instrumentów
$3d4 $01a Tablica oktaw dla instrumentów
$3ee $012 Tytuł utworu w kodach ekranowych
$400 $055 1 ścieżka w SONG (1 kanał pierwszego POKEYa)
$455 $055 2 ścieżka w SONG (2 kanał pierwszego POKEYa)
$4aa $055 3 scieżka w SONG (3 kanał pierwszego POKEYa)
$4ff $001 Zarezerwowany
$500 $055 4 ścieżka w SONG (1 kanał drugiego POKEYa)
$555 $055 5 ścieżka w SONG (2 kanał drugiego POKEYa)
$5aa $055 6 scieżka w SONG (3 kanał drugiego POKEYa)
$5ff $001 Zarezerwowany
$600 - Dane patternów

Dane patternów

Identyczne, jak w CMC.

Dane instrumentów

Zawiera 26 bloków po 32 bajty definujące instrument.

                   AB
                   CD
                   EF
vvvvvvvvvvvvvvvv   GH
dddddddddddddddd IJKL
ffffffffffffffff MNOP
  • 8 bajtów definicji obwiedni (v) w kolejności najpierw młodszy nibble, potem starszy
  • 8 bajtów definicji zniekształceń obwiedni (d) w kolejności najpierw młodszy nibble, potem starszy
  • 8 bajtów odchylenia częstotliwości (f) w kolejności najpierw młodszy nibble, potem starszy
  • 4 bajty atrybutów w kolejności JI LK NM PO
  • 4 bajty atrybutów w kolejności AB CD EF GH

Dane oktaw instrumentów

Zawiera 26 bajtów oznaczających numery oktawy bazowej dla instrumentu. Wartości pary bitów 0 i 1 oznaczają:

  • 0 - oktawy 1-2
  • 1 - oktawy 2-3
  • 2 - oktawy 3-4
  • 3 - oktawy 4-5

Bity 2..7 są zarezerwowane.

Dane tracków

Rozszerzone o rozkazy:

  • $87 V: volume (w kolejnej linii na każdej ścieżce definiuje się głośność kanału)
  • $97 P: pause (na tracku 2 ilość ramek, na tracku 3 ilość sekund - sumarycznie pauza wynosi więc 50*yy+xx ramek)
  • $A7 M: mode (na tracku 2: $00 = normal - player gra 1x na ramkę, $01 = double - player gra 2x na ramkę)
  • $B7 I: transpozycja (w kolejnej linii definiuje się transpozycje każdego kanału)

Uwagi

1. Sygnatura pliku CM2 zawiera bajty: $9c $a3 $e8 $e1 $ef $f3 $92 $90 $90 $90 $80 $80 $80 $f6 $91 $8e $90 $90 $9e. Jest to napis "<Chaos2000 v1.00>" w inwersie. Napis ten jest zakodowany przy użyciu kodów ekranowych, a nie jak w przypadku CMC za pomocą kodów ATASCII.

2. Znacznik nagłówka binarnego w pliku demonstracyjnym GRAVE.CM2 ma wartości $88 $42.

Linki