Raster Music Tracker
From Atariki
Program działający w środowisku MS Windows umożliwiający tworzenie muzyki dla ośmiobitowego Atari przy wykorzystaniu bibliotek emulujących układy 6502 i POKEY.
Autorem jest Raster/C.P.U..
Spis treści | 
Opis
Program pozwala na tworzenie dosyć zaawansowanych instrumentów, które użyć można następnie w muzyce lub efektach specjalnych.
Podstawowe cechy to:
- tworzenie 4- jak i 8-kanałowych (Stereo) modułów,
 - odtwarzanie modułu do 4 × na ramkę,
 - użycie do 64 instrumentów,
 - użycie do 254 patternów,
 - regulację długości patternu,
 - song może mieć do 256 pozycji.
 
Przy komponowaniu można też korzystać z instrumentu podłączanego do komputera za pośrednictwem interfejsu MIDI.
W pakiecie znajdziemy również gotowe procedury odtwarzające, wraz ze źródłami.
Ostatnią wersją programu udostępnioną przez autora jest RMT 1.28.
Najbardziej rozpowszechniony na scenie.
Emulacja
Tracker odtwarza dźwięk emulując działanie CPU 6502 i POKEY-a za pomocą bibliotek:
- sa_c6502.dll
 - sa_pokey.dll
 - apokey.dll
 
Modyfikacje
Na forum AtariAge rozwijały się dyskusje których skutkiem były kolejne modyfikacje procedury odtwarzającej i "łatane" wersje Trackera. Odpowiedzialny za te modyfikacje był Analmux i Miker, choć zmiany inspirowało więcej osób.
Z racji na to, że kod trackera nie był otwarty, każda "łatka" bazowała wyłącznie na:
- zmianach typu zniekształcenia,
 - modyfikacjach tablic częstotliwości,
 - ewentualnym usunięciu 16-bitowego basu na rzecz dodatkowych tablic dla brzmień 8-bitowych,
 - zmianach kodu procedury odtwarzającej.
 
UWAGA! Nie zmieniał się natomiast nigdy format pliku RMT! Z tego powodu nie można automatycznie rozpoznać jakiego patcha wymaga dany utwór (chyba, że dysponujemy plikiem wykonywalnym XEX).
Raster Music Tracker definiuje 8 rodzajów brzmień (wytłuszczenie oznacza brzmienie 16-bitowe, jego brak zaś 8-bitowe):
| nr | tablica | AUDC | 
| 0 | puretone | $0v | 
| 1 | puretone | $2v | 
| 2 | puretone | $4v | 
| 3 | bass16bit | $Cv | 
| 4 | puretone | $8v | 
| 5 | puretone | $Av | 
| 6 | bass1 | $Cv | 
| 7 | bass2 | $Cv | 
oraz 5 tablic po 64 tony każda:
| nr | offset | tablica | 
| 0 | - | bass16bit LSB | 
| 1 | $00 | bass1 | 
| 2 | $40 | bass2 | 
| 3 | $80 | puretone | 
| 4 | - | bass16bit MSB | 
Tablica 0 i 4 składają się na kompletną 16-bitową wartość wpisywaną do połączonych kanałów 1+2 lub 3+4. Pozostałe tablice definiują tony 8-bitowe.
Patch BRK
Patch na RMT 1.25 przygotowany przez Analmuxa pod pseudonimem BRK.
Zmieniono:
- rodzaj zniekształcenia w brzmieniu 2
 - przypisane tablice w brzmieniach 1 i 2
 
| nr | tablica | AUDC | 
| 0 | puretone | $0v | 
| 1 | bass1 | $2v | 
| 2 | bass2 | $Av | 
| 3 | bass16bit | $Cv | 
| 4 | puretone | $8v | 
| 5 | puretone | $Av | 
| 6 | bass1 | $Cv | 
| 7 | bass2 | $Cv | 
i zmodyfikowano tablice bass1 i bass2.
| nr | offset | tablica | 
| 0 | - | bass16bit LSB | 
| 1 | $00 | bass1 | 
| 2 | $40 | bass2 | 
| 3 | $80 | puretone | 
| 4 | - | bass16bit MSB | 
co sumarycznie zmienia brzmienia 1, 2 i 6, 7.
Patch BRK zmodyfikowany przez Mikera
https://forums.atariage.com/topic/234400-rmt-128-patch-8-theory/page/2/#findComment-3168725
Patch na RMT 1.25 przygotowany przez Mikera.
Zmieniono:
- rodzaj zniekształcenia w brzmieniu 2
 - przypisane tablice w brzmieniach 1 i 2
 
| nr | tablica | AUDC | 
| 0 | puretone | $0v | 
| 1 | bass1 | $2v | 
| 2 | bass2 | $Av | 
| 3 | bass16bit | $Cv | 
| 4 | puretone | $8v | 
| 5 | puretone | $Av | 
| 6 | bass1 | $Cv | 
| 7 | bass2 | $Cv | 
oraz:
- tablicę bass2 przesunięto na miejsce bass1
 - zmodyfikowano tablicę bass2
 
| nr | offset | tablica | 
| 0 | - | bass16bit LSB | 
| 1 | $00 | bass1 | 
| 2 | $40 | bass2 | 
| 3 | $80 | puretone | 
| 4 | - | bass16bit MSB | 
co sumarycznie zmienia brzmienia 1, 2 i 6, 7 (przy czym oryginalne brzmienie 7 jest teraz brzmieniem 6).
Patch 2
https://forums.atariage.com/topic/142394-running-out-of
Patch na RMT 1.25 wypuszczony 13 IV 2009 przez Analmuxa pod pseudonimem BRK.
Zmodyfikowano zniekształcenie brzmień 6 i 7:
| nr | tablica | AUDC | 
| 0 | puretone | $0v | 
| 1 | puretone | $2v | 
| 2 | puretone | $4v | 
| 3 | bass1 | $Cv | 
| 4 | puretone | $8v | 
| 5 | puretone | $Av | 
| 6 | bass2 | $2v | 
| 7 | bass2 | $Av | 
oraz tablice bass1 i bass2:
| nr | offset | tablica | 
| 0 | - | bass16bit LSB | 
| 1 | $00 | bass1 | 
| 2 | $40 | bass2 | 
| 3 | $80 | puretone | 
| 4 | - | bass16bit MSB | 
sumarycznie więc zmieniono brzmienia 3, 6 i 7.
Brzmienie 3 nie jest już 16-bitowe i używa 8-bitowej tablicy bass1, a dla brzmienia 6 włączany jest zegar 1.77 MHz i tablica bass2.
Patch 3
https://forums.atariage.com/topic/228757-instrumentarium-final-release-links-summary
Patch na RMT 1.25 wypuszczony 21 VIII 2009 przez Analmuxa.
Wyjątkowo, jako jedyna spośród znanych, ta łatka modyfikuje zawartość rejestru SKCTL włączając synchronizację okresu kanału 1 kontrolowaną przez ustawienie okresu kanału 2. Odbywa się to na pozycjach $18 i $19 songu, ale może być zrealizowane w dowolnym miejscu songu przez modyfikację procedury znajdującej się pod adresem $2000 w wyeksportowanym pliku XEX.
Zmodyfikowano zniekształcenia w brzmieniach 2 i 3, oraz przypisano inne tablice brzmieniom 1 i 2:
| nr | tablica | AUDC | 
| 0 | puretone | $0v | 
| 1 | bass1 | $2v | 
| 2 | bass2 | $Av | 
| 3 | bass16bit | $8v | 
| 4 | puretone | $8v | 
| 5 | puretone | $Av | 
| 6 | bass1 | $Cv | 
| 7 | bass2 | $Cv | 
zmodyfikowane zostały wszystkie tablice basów:
| nr | offset | tablica | 
| 0 | - | bass16bit LSB | 
| 1 | $00 | bass1 | 
| 2 | $40 | bass2 | 
| 3 | $80 | puretone | 
| 4 | - | bass16bit MSB | 
więc finalnie zmieniono brzmienia 1, 2, 3 i 6, 7.
Brzmienie 3 ma dodatkowo włączony 9-bitowy licznik POLY (zamiast 17-bitowego).
Patch 4
https://forums.atariage.com/topic/150001-rmt-patch-4
Patch na RMT 1.27 wypuszczony 3 IX 2009 przez Analmuxa.
Zmodyfikowano zniekształcenia, oraz przypisano inne tablice brzmieniom 2 i 3:
| nr | tablica | AUDC | 
| 0 | puretone | $0v | 
| 1 | puretone | $2v | 
| 2 | bass16bit MSB | $Av | 
| 3 | bass16bit LSB | $2v | 
| 4 | puretone | $8v | 
| 5 | puretone | $Av | 
| 6 | bass1 | $Cv | 
| 7 | bass2 | $Cv | 
zmodyfikowano tablice 0 i 4 odpowiadające za 16-bitowy bas:
| nr | offset | tablica | 
| 0 | - | bass16bit LSB | 
| 1 | $00 | bass1 | 
| 2 | $40 | bass2 | 
| 3 | $80 | puretone | 
| 4 | - | bass16bit MSB | 
a więc zmieniono brzmienia 2 i 3.
Nie ma 16-bitowego basu, a tablice 0 i 4 wykorzystane są jako 8-bitowe. Brzmienie 3 jest taktowane zegarem 1.77 MHz.
Patch 5
https://forums.atariage.com/topic/150205-rmt-patch-5
Patch na RMT 1.27 wypuszczony 7 IX 2009 przez Analmuxa.
Patch 6
https://forums.atariage.com/topic/175878-rmt-patch-6
Patch na RMT 1.27 wypuszczony 22 I 2011 przez Analmuxa.
Patch 7
https://forums.atariage.com/topic/175883-rmt-patch-7
Patch na RMT 1.27 wypuszczony 22 I 2011 przez Analmuxa.
Patch 8
https://forums.atariage.com/topic/234769-rmt-patch-8
Patch na RMT 1.28 wypuszczony 7 II 2015 przez Analmuxa.
Patch 0a
https://forums.atariage.com/topic/246784-rmt-128_0a-a-type-16-bit-bass-patch
Patch na RMT 1.28 wypuszczony 15 XII 2015 przez Mikera.
Dalsze losy
Po śmierci autora RMT, program nie został zapomniany, ale kilka osób ulepsza/poprawia jego funkcje, m.in. VinsCool. Ostatnia wersja programu to 1.34 i od tej wersji program stał się 'open source'.

