Wydarzyła się ostatnio rzecz niebywała. Otworzono nowy sklep rybny? Michael Jackson przyznał się w końcu,
że w rzeczywistości jest owadem? Nie. Pojawił się program, na który amigowi muzycy czekali od dawna, a który służy do
konwertowania modułów z formatu DigiBoosteraPro na format FastTrackera2.
I oczywiście stworzył go nikt inny, jak amigowy muzyk - znany wszystkim MaXyM/Pic Saint Loup. To kolejny dowód na to,
że na amigowym rynku software'owym każdy jest praktycznie zdany na siebie. Może to i dobrze, bo powstał produkt naprawdę
potrzebny, a nie kolejny bzdurny encoder MP3 czy głupi player.
DZIAŁANIE
Do programu dołączona jest instrukcja w HTMLu, a także polskie locale. Pierwszy duży plus. Wymagania sprzętowe też
są niewielkie - system 2.0 lub wyższy, zainstalowany pakiet MUI i około 600 kilo RAMu.
Po wczytaniu modułu do pamięci program analizuje go i podaje listę efektów, które nie mogą być skonwertowane,
bo w FT2 ich nie ma. Jakie to komendy, wszyscy muzycy doskonale wiedzą. Jest to istotne novum w stosunku do DBPro,
który wprawdzie pozwala zgrywać moduły jako *.xm, ale czyni to bez żadnego komentarza. A wiadomo, co robi na przykład
małe dziecko, kiedy nic nie mówi? No właśnie...
W menu Prefs możemy wybrać między amigową i linearną tablicą częstotliwości. Ma to znaczenie w przypadku komend takich,
jak 4xy (wibrato). Przy tablicach amigowych wibrato w naszym XMie może brzmieć przesadnie wyraźnie z kolei tablice
linearne osłabiają działanie efektów 1xy, 2xy, 3xy, czy EAx i EBx. Zatem bez późniejszej obróbki modka pod FastTrackerem
raczej się nie obędzie. Kolejna rzecz - program FT2 pozwala wprawdzie używać dwóch komend w jednej linii, z tym że pierwsza
z nich musi się odnosić do głośności. W DBPro nie ma takich ograniczeń. Co zatem robi DBM2XM, gdy znajdzie w naszym module
np. komendy 4xy i 9xy w jednej linii? Otóż daje nam możliwość:
a) wyrzucenia z patternów wszystkich komend niekompatybilnych z FT2,
b) zamiany efektów miejscami tylko wtedy, gdy jest to konieczne (np. gdy w swoim module mamy 942 C28, opcja zamieni to
na C2S 942),
c) optymalizacji, która polega na tym, że kiedy mamy np. 000 C20 program zamieni komendy miejscami, zyskując tym samym
1 bajt, przez co mod się oczywiście skróci,
d) zmuszenia programu do konwertowania nawet tych komend, które nie mają swoich dokładnych odpowiedników w FT2
(np. zapis typu 856 zostanie zamieniony na 850, a często stosowana przez użytkowników DB kombinacja komend Fxy, np. F05 F82
zostanie rozdzielona i druga komenda trafi na pierwsze wolne miejsce np. na sąsiedniej ścieżce).
Nie wiem tylko dlaczego ta opcja działa błędnie, kiedy obok komendy 8xy jest Cxy.
Innym mankamentem FT2 jest fakt, że najwyższym dźwiękiem, jaki możemy uzyskać, jest B-7. Gdy więc nasz program natrafi
na nuty z ósmej oktawy, mamy problem. Autor jednak przewidział taką ewentualność i znowu daje nam wybór:
a) można te nuty obniżyć o oktawę,
b) usunąć je pozostawiając tylko komendy,
c) usunąć nutę wraz z komendami,
d) stworzyć zupełnie nowy, podniesiony o oktawę sampel i wstawić go tam, gdzie trzeba, co jest rozwiązaniem rewelacyjnym.
Nie muszę chyba dodawać, że tak powstały sampel zachowuje wszystkie parametry pierwowzoru: głośność, strój,
obwiednie volume i panning, a nawet zapętlenie i to z uwzględnieniem jego rodzaju!
Szkoda, że nie ma możliwości usunięcia z modułu całej partii instrumentu. Jednak przy usuwaniu nuty, czy to z komendami
czy bez, program rozrzuca po ścieżkach dziwne "brzydy". Nie mają one wpływu na dźwięk, ale są dosyć nieestetyczne.
Inną wadą programu jest to, że komendę E3x traktuje jakby była zaimplementowana w FT2. A przecież nie jest. Ponieważ odtwarza ona sampla od tyłu, można by to obejść
stwarzając nowy, odwrócony sampel. Nie przypuszczam jednak, żeby autor nie mógł sobie z tym poradzić - raczej w ferworze programowania po prostu to przeoczył.
PO CO TO KOMU?
Ktoś może zapytać, na co komu ten program. Otóż wiele dobrego można powiedzieć o naszym AHI, ale nikt nie zaprzeczy, ze słynne klikanie bardzo utrudnia życie.
Na czym to polega? W uproszczeniu chodzi o to, że przy inicjacji cichych, wolno narastających brzmień typu string, słychać wyraźny irytujący trzask. Pal sześć, gdyby było go
słychać przy odtwarzaniu modułów w realtimie, ale jak na złość występuje on właśnie tylko w trybach filesave. I nic tu nie pomoże żadna karta dźwiękowa. Ba! Dopiero na karcie
tak naprawdę to słychać. Podobno istnieje już wersja rozwojowa AHI oparta na AHI PPC, która rzekomo nie ma tej denerwującej usterki, ale jest za to jak zarost Michaela Jacksona,
bo nikt jej jeszcze nie widział. Dlatego też wszyscy ci, którzy chcieliby zgrać swój moduł np. na płytę, teraz mogą to zrobić, konwertując go najpierw na *.xm, a potem miksując
na FastTrackerze.
Inne zastosowanie to chociażby zachodnie music compos. Jak wiadomo, zawistni Zachodniacy nie mogąc pogodzić się z faktem, że najlepszy amogowy tracker powstał w Polsce,
programowo nie dopuszczają formatu *.dbm do konkursów muzycznych. Ja osobiście nawołuję do bojkotu *.xm na amigowych
parties, ale niektórzy nie widzą w nich niczego niestosownego i to właśnie oni będą mieć z DBM2XM dodatkowy pożytek.
CO Z TROLLAMI?
Autor pisze, żeby nie niszczyć cudzej pracy, konwerując utwór nie będąc pewnym, jaki będzie wynik. Oznacza to,
że konwersji modułu może dokonać tylko muzyk, a najlepiej sam autor kompozycji. Wiem jednak, że wielu czytelników
potraktuje to nie jako przestrogę, a zachętę. I dla takich właśnie wrednych trolli przygotowałem niespodziankę - zabezpieczenie.
Po tym zabiegu moduł da się skonwertować, ale nie odtworzyć. I nie naprawi tego nawet Adam Słodowy. Tymbardziej że ostatnio
projektuje podobno nowe amigowe obudowy tower, oczywiście z płyt pilśniowych. Spójrzcie na taki zapis:
Track A Track B
000 B00 B01 F05
Co my tu mamy? Po pierwsze - jest to pattern 0. Otóż na tracku A każemy mu skoczyć do... patternu 0, natomiast na
tracku B do patternu o pozycji 1 i dodatkowo ustawiamy prędkość. Pozornie jest to bez sensu. DBPro w każdym razie
otrzymując te dwa sprzeczne rozkazy głupieje i skacze do patternu o pozycji 1. Natomiast DBM2XM, niezależnie od tego,
którą z czterech możliwości konwersji komend wybierzemy, po prostu usuwa z pierwszej kolumny tracku B komendę B01,
bo przecież FT2 pozawala używać w tym miejscu tylko komend związanych z głośnością. No więc gdy wywali naszą B01,
cóż pozostanie? B00! Rozumiecie? Moduł po prostu utkwi w patternie o pozycji 0! Oczywiście zabezpieczenie trzeba
zastosować w całym module przynajmniej kilka razy. W tym celu na tracku A w drugiej kolumnie podajemy pozycję patternu,
na którym ma moduł zawisnąć, a na tracku B w pierwszej kolumnie wpisujemy po prostu numer o 1 większy od pozycji, na której
się aktualnie znajdujemy. Trzeba to zrobić w ostatniej linii patternu. Dlaczego? Żeby ogłupić DBPro, który grzecznie
przeskoczy sobie do następnego patternu; Innymi słowy zachowa się tak, jakby żadnego wpisu wogóle nie było, a o to nam
przecież chodzi. Efekt zabezpieczenia jest taki, że nawet jeśli ktoś poleci WinAmpowi grać pattern następny, to po dojściu
do jego końca mod i tak przeskoczy tam, gdzie chcemy.
Program testowałem na różnych Amigach w różnych konfiguracjach i nie sprawiał żadnych problemów.
JazzCat/Pic Saint Loup
Artykuł pochodzi z magazynu Amiga Computer Studio 1/2001 |