[#7]
Re: Programowanie w asemblerze
@szuler,
post #5
@Szuler
@AmiChris
Dziękuję za wyczerpujące wyjaśnienie problemu. Teraz rozumiem, że przyczyna tkwi w samym SDLu i stylu pisania gier pod tą bibliotekę, a nie w amigowej implementacji tej biblioteki. Filozofia SDLu zatem moim zdaniem troszkę nie wpasowuje się w filozofię programowania na AmigaOS, gdzie liczy się wydajność.
Z ciekawości wdrożyłem się troszkę w SDL i przestudiowałem dokumentację na libsdl.org. Widzę, że ta biblioteka jest jednak dość wysokopoziomowa, niektóre procedury są niemalże tym czym komendy w AMOSie (muszę z prerażeniem stwierdzić, że jest to biblioteka jeszcze wyższego poziomu). Ja inaczej sobie wyobrażam taką bibliotekę dla AmigaOS. Ja rozumiem, że to musi być portowalne, ale nie można aż tak ułatwiać programiście zadania, by ten kompletnie zapomniał o implementacji własnych algorytmów i wręcz zabrać mu możliwość ingerencji w wiele mechanizmów swojego programu.
Portowanie gier pod SDL zapewne sprowadza się tylko do kompilacji programów korzystających tylko i wyłącznie z tej biblioteki pod AmigaOS (sławetne Configure & Make). Czy nie warto jednak przysiąść nad jednym projektem, który się portuje i go przyspieszyć niż zabierać się za portowanie kolejnego programu (no bo obecnie tak wygląda portowanie gier dla AmigaOS).
Dla mnie ta biblioteka w obecnej postaci jest po prostu dla kogoś kto lubi już gotowe rozwiązania (ja rozumiem że trzeba korzystać z gotowych rozwiązań, ale ma to swoje granice). Czyli dla kogoś kto jednak preferuje Basic od C/C++. Ja wiem, że programy korzystające z tej biblioteki pisze się w C++ (choć teraz nawet w Pythonie), ale trudno nie zauważyć analogii. Taka jest moja opinia na ten temat. Według mnie za dużo się portuje, a za mało poświęca czas na samo portowanie.
Konkluzja jest taka - powinna powstać biblioteka powiedzmy, że nazywałaby się Amiga MultiMedia Layer, która korzystałaby ze specyfiki AmigaOS. Wiele razy udowodniono, że korzystanie przy projektowaniu programów ze specyfiki danego systemu, procesora, danych, daje dużo dobrych rozwiązań. Np. MPEG Layer III to kodowanie dźwięku, inne dane tą metodą są źle kompresowane, metod sortowań jest całe mnóstwo, ale każde nadaje się do specyficznego rodzaju danych itd. Mam nadzieję, że mój apel spotka się z jakąś pozytywną reakcją środowiska developerów AmigaOS. Przygotujcie się proszę na pisanie dla AmigaOS4.1 tak by już nikt nie narzekał, że wszystko jest tam ślamazarne (zważywszy, że AmigaOS4.1 ma się pojawić również dla klasyka).
Pozdrawiam i zapraszam chętnych do dysusji nt. pisania wydajnie dla AmigaOS. Sam jestem bardzo wdzięczny za informacje które tutaj mi przekazano i jestem gotów podzielić się też własnym doświadczeniem. Czy ktoś z Was też wyobraża sobie taką amigową bibliotekę?
Ostatnia modyfikacja: 30.10.2010 13:53:12