Na nową wersję UADE, użytkownicy MorphOS-a musieli czekać aż siedem lat. Ostatni port tego genialnego odtwarzacza modułów muzycznych dla tego systemu popełnił Piru w 2005 roku. W międzyczasie Fredrik Wikstrom przeportował UADE w wersji 2.13 dla AmigaOS 4 (tworząc ponadto wtyczkę do TuneNet). Nie trzeba było długo czekać na odpowiedź „niebieskich” i tych z kocim pazurem. Pewien młody Węgier, legitymujący się pseudonimem BSzili (w rzeczywistości to Szilárd Biró), postanowił zmierzyć się z tematem i po kilku tygodniach wytężonej pracy przeportował nowe UADE na MorphOS-a i AROS-a. Pojawienie się nowej wersji programu było doskonałą okazją do nawiązania kontaktu z autorem i wypytania go o to, jakie męki przechodził w trakcie portowania tego zacnego „playerka”.
Na wstępie, dzięki, że zgodziłeś się na ten mini wywiad. A teraz przedstaw się i napisz parę słów o sobie.
Nazywam się Szilárd Biró, mam 23 lata i mieszkam na Węgrzech. Jestem zwykłym, początkującym programistą (śmiech), który nie posiadał Amigi w czasie jej największej świetności. Swoją pierwszą, skromną Amigę 500 kupiłem dopiero w 2005 roku i od razu zwariowałem na jej punkcie. Moje odkrycie „nowożytnej” sceny amigowej miało miejsce raptem kilka lat temu. W 2011 roku zainteresowałem się AROS-em, a w czerwcu 2012 kupiłem Maka Mini i licencję na MorphOS-a.
Czyli w odróżnieniu od większości z nas, jesteś świeżym nabytkiem w amigowym środowisku. Kiedy tak naprawdę zacząłeś programować pod systemy amigowe?
W 2011 roku wystartowałem z portowaniem różnego rodzaju oprogramowania na AROS-a (przede wszystkim gier), a odkąd mam już zarejestrowanego MorphOS-a, staram się portować je także na ten system.
Czemu zdecydowałeś się przeportować UADE 2.13 na MorphOS-a/AROS-a?
Bo na żadnym z tych systemów nie było aktualnej wersji UADE. Szczerze mówiąc pod AROS-em, nie było jej wcale.
Długo pracowałeś nad portem dla obu systemów?
Portowanie samego rdzenia aplikacji nie trwało długo - bazowałem na porcie UADE 2.13 z AmigaOS 4, autorstwa Fredrika Wikstroma. Schody zaczęły się, gdy rozpocząłem pracę nad linią komend odtwarzacza. Wszystko zajęło mi mniej więcej dwa tygodnie – zacząłem z końcem sierpnia 2012.
Jakie są główne zmiany pomiędzy nową wersją UADE a poprzednią (1.03), przeportowaną przez Piru?
Przeczytaj listę zmian! ;) Generalnie, UADE 2 oferuje znacznie większą kompatybilność w temacie odtwarzania modułów muzycznych, ich wierności odtwarzania, jakości. Zawiera też mniej błędów.
Co było największym wyzwaniem w trakcie portowania nowego UADE?
Dzięki temu, że korzystałem z portu UADE pochodzącego z AmigaOS 4, problem z uniksowymi ścieżkami miałem z głowy. Tak czy owak, zostało mnóstwo pracy, głównie nad tym, aby program działał poprawnie na obu wspieranych przeze mnie systemach (AROS/MorphOS). Na potrzeby wersji AROS-owej napisałem alternatywną warstwę komunikacyjną, opartą o message-porty. Z kolei wersja MorphOS-owa musiała zostać wzbogacona o obsługę AHI (bo nie mogłem znaleźć działającej biblioteki libao). Linia komend odtwarzacza też wymagała dodatkowej pracy (obsługa wejścia/wyjścia, amigowych wzorców nazw plików itp.).
Dodałeś jakieś nowe funkcjonalności do swojego portu UADE?
Niespecjalnie, linia komend UADE (uade123) musi być zgodny z wersją uniksową.
A czy jest jakaś funkcjonalność, z której jesteś wyjątkowo zadowolony?
Komunikacja międzyprocesowa (którą napisałem dla AROS-a) jest moim faworytem. Co prawda, jest to komunikacja synchroniczna, a przez to nieco wolniejsza niż w przy użyciu strumieni. Jednak dla zwykłego użytkownika różnica jest niezauważalna, a to już coś.
Z drugiej strony co Cię najbardziej wkurza w UADE?
To oczywiście moja osobista opinia, ale naprawdę nie lubię mechanizmu komunikacji międzyprocesowej w oryginalnym kodzie UADE. Z technicznego punktu widzenia jest całkiem ciekawa, ja jednak wolę bardziej konwencjonalne rozwiązania (np. wnętrzności UADE w formie amigowej biblioteki).
Jakich modków słuchałeś w trakcie testowania swojego portu?
Do testów używałem załączonego do źródeł UADE modułu AHX.Cruisin, który zresztą bardzo mi się podoba. Miałem „przyjemność” odsłuchiwać go w całości setki razy (przy każdorazowym odpaleniu UADE), co trochę spowalniało proces testowania. Poza tym uwielbiam moduły tytułowe z "Turricana II" i "Turricana III". One tez przydawały się w trakcie testów.
Czy zostało coś jeszcze do zrobienia (jakieś błędy, niedokończone „ficzery”)?
Linia komend odtwarzacza pod MorphOS-em wymaga jeszcze dopracowania. Czasami UADE się zawiesza albo wywołuje wyjątek procesora tuż przed odtworzeniem modułu. Myślę, że namieszałem coś w trakcie implementacji podwójnego buforowania dźwięku w AHI. Poza tym pracuję jeszcze nad wtyczką UADE dla AmiNetRadio.
A właśnie, jakie masz plany odnośnie tej wtyczki?
Na początek chcę napisać prosty plugin, który odpalałby UADE z domyślnymi ustawieniami. Kiedy to będzie gotowe, zacznę dodawać pozostałe funkcjonalności znane z UADE (filtry, normalizacja itp.).
Zacząłeś już pracę nad wtyczką?
Praca nad wtyczką jest jeszcze w bardzo wczesnej fazie rozwoju. Jednak już na dzień dzisiejszy mogę zdradzić, że obsługa UADE z jej poziomu jest prawie skończona.
Co może być największym wyzwaniem przy pracy nad wtyczką?
Jej współpraca z samym UADE może być trochę skomplikowana. Źródła istniejących wtyczek są bardzo pomocne, ale nie ma tam za dużo kodu, który mógłbym tak po prostu przekleić do swojego pluginu. Napisanie odtwarzacza, który w pełni poprawnie współpracujące z API AmiNetRadio wymaga naprawdę bardzo starannego przygotowania.
Zmieniając trochę temat, napisz parę słów o społeczności amigowej na Węgrzech?
Za dużo na ten temat nie mogę powiedzieć, bo nie jestem zbyt aktywnym jej uczestnikiem. Jednak z tego co widzę, to amigowanie na Węgrzech kręci się głównie wokół Amigi klasycznej, chociaż jest też wielu użytkowników MorphOS-a oraz AmigaOS 4. My też mamy amigowe portale (http://www.amiga.hu i http://www.amigaspirit.hu). Warty uwagi jest też portal stricte poświęcony systemowi MorphOS - http://www.pegasos.hu. Jeśli chodzi o amigowe spotkania, to portal Amiga Spirit ma swój klub w Budapeszcie. Słyszałem też o kilku mniejszych meetingach, w różnych rejonach kraju.
Na koniec, czy chciałbyś powiedzieć coś użytkownikom Amigi w Polsce?
Amigowa społeczność w Polsce jest ogromna, miażdżycie! (śmiech).
Artykuł oryginalnie pojawił się w dziewiątym numerze Polskiego Pisma Amigowego.