1

Mam taki dziwaczny problem.
Otóż po reinstalacji Linuksa (teraz mam Ubuntu 10.04) zaczął mi się kaszanić dźwięk w emulatorze Atari800. Polega to na tym, że kanały jakby się "rozjeżdżają" - grają z różną prędkością, a przynajmniej tak to dla moich dębowych uszu brzmi. Efekt dobrze słychać np. w grze Hans Kloss, gdzie na główny motyw nakłada się piszczenie, brzęczenie i inne dźwięki.
Problem pojawił się, kiedy po reinstalacji systemu zainstalowałem Atari800 2.1.0. Próbowałem uruchomić starszą wersję - 2.0.3 - która bez problemu działała u mnie wcześniej, no i ten sam problem. Pliki konfiguracyjne przerabiałem linijka po linijce, wypróbowywałem wszystkie możliwe ustawienia, również te z poprzedniej wersji. Dalej nic.
Myślałem, że to może być problem z biblioteką SDL, ale w okienku jest dokładnie taka sama kaszana.
Będę bardzo wdzięczny za jakąkolwiek pomoc :)

800 XE + CA 2001; Portfolio; 1040 STfm; Lynx II
Psion Organiser II XP, LZ64; Series 3a, 3c, 5mx; Siena; Workabout; HP 95LX, 200LX, 620LX; Amiga 1200; Amstrad NC100, NC200; Game Boy Color
http://palmtop.cosi.com.pl -- nie tylko o Atari Portfolio

2

A "w okienku" to nie SDL ?
Wypróbuj też inny soft używający SDL.

https://www.youtube.com/watch?v=jofNR_WkoCE

3

Dźwięk w grach pod Dosboksem (np. Duke Nukem 3D) działa bez problemów. Co ciekawe, w Atari800 (2.0.3) pod DB również jest dobry dźwięk - obydwa emulatory używają tych samych ROM-ów.
Myślałem, że program odpalany w okienku używa libx11... :)

800 XE + CA 2001; Portfolio; 1040 STfm; Lynx II
Psion Organiser II XP, LZ64; Series 3a, 3c, 5mx; Siena; Workabout; HP 95LX, 200LX, 620LX; Amiga 1200; Amstrad NC100, NC200; Game Boy Color
http://palmtop.cosi.com.pl -- nie tylko o Atari Portfolio

Cosi: SDL używa Xów więc na to samo wychodzi. Zresztą Xy nie mają nic do dźwięku.

Atari: FireBee, (Falcon030 CT60e SuperVidel SvEthlana CTPCI), TT, (520ST Pak030 Frak PuPla Panther), (520ST 4MB ST RAM 8MB TT RAM CosmosEx SC1435), (1040STFM UltraSatan SM124), (1040STE 4MB ST RAM 8MB TT RAM CosmosEx NetUSBee SM144 SC1224), 260ST, 520 ST+, (MEGA ST SM125), (65XE Rapidus U1MB VBXE SIDE2 SIO2PC), (Jaguar SkunkBoard), Lynx II, 2x Portfolio

5

Duke gra midi, więc nie jestem pewien, czy to adekwatny test.

https://www.youtube.com/watch?v=jofNR_WkoCE

6

Ale MIDI (Adlib/SoundBlaster, nie mówię o General MIDI) jest w DB emulowane i przechodzi przez podsystem dźwięku SDL. Poza tym DN3D sampli też używa. Więc wskazówka jednak adekwatna.

Cosi, ja bym sugerował ściągnięcie i kompilację najnowszej wersji Atari800 z CVS-a (pytaj o pomoc bez krępacji) i sprawdzenie czy tam jest wszystko dobrze. Od czasu wydania wersji 2.1.0 system dźwięku został poważnie zmodyfikowany, poprawiono sporo błędów (np. poprawnie działa odgrywanie sampli :) ), więc pewnie i Twój błąd nie będzie już występował.

A8CAS - narzędzie do 100% archiwizacji kaset Atari

7

Krótki napisał/a:

Cosi, ja bym sugerował ściągnięcie i kompilację najnowszej wersji Atari800 z CVS-a

Nie to, żeby mi się nie chciało (chociaż mi się nie chce ;)), ale - tak jak pisałem - problem powtarza się również w wersji 2.0.3, która przed reinstalacją działała prawidłowo. Na dodatek ta sama wersja 2.0.3 w wersji dosowej (pod Dosboksem) działa bez problemów. Dlatego właśnie wydawało mi się, że może coś jest nie tak z SDL, ale jeżeli tak, to dziwi mnie cisza na ten temat w Internecie - nie znalazłem ani jednego posta na temat jakichkolwiek problemów podobnych do moich.
Tak czy inaczej, może w wolnej chwili spróbuję skompilować najświeższą wersję. Będę do tego niestety potrzebował paru browarów, bo make ma na mnie uczulenie i jeszcze nigdy nie zdarzyło mi się nim niczego skompilować bez niespodzianek. Pisałem już zresztą kiedyś o tym.

(pytaj o pomoc bez krępacji)

Dzięki :)

800 XE + CA 2001; Portfolio; 1040 STfm; Lynx II
Psion Organiser II XP, LZ64; Series 3a, 3c, 5mx; Siena; Workabout; HP 95LX, 200LX, 620LX; Amiga 1200; Amstrad NC100, NC200; Game Boy Color
http://palmtop.cosi.com.pl -- nie tylko o Atari Portfolio

8

Podczas kompilacji z ubunciorem przydaje się to: https://wiki.ubuntu.com/CompilerFlags .

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

9

O, dzięki, dobrze wiedzieć :)

800 XE + CA 2001; Portfolio; 1040 STfm; Lynx II
Psion Organiser II XP, LZ64; Series 3a, 3c, 5mx; Siena; Workabout; HP 95LX, 200LX, 620LX; Amiga 1200; Amstrad NC100, NC200; Game Boy Color
http://palmtop.cosi.com.pl -- nie tylko o Atari Portfolio

10

Cosi napisał/a:

(...) tak jak pisałem - problem powtarza się również w wersji 2.0.3, która przed reinstalacją działała prawidłowo.

Rozumiem. Przyczyny moga być różne - ja podejrzewam że zaszła jakaś zmiana w sterownikach dźwięku ALSA, która spowodowała "zmniejszenie" tolerancji na błędy w Atari800. Miałem taką sytuację na swoim SoundBlasterze 128PCI jakieś 2-3 lata temu - po aktualizacji jądra dźwięk w A800 zaczął się sypać.

BTW jaką masz kartę dźwiękową?

Cosi napisał/a:

Na dodatek ta sama wersja 2.0.3 w wersji dosowej (pod Dosboksem) działa bez problemów.

W każdej wersji emulatora (SDL, DOS, X11) podystemy dźwięku dzielą stosunkowo mało kodu - więc akurat takie testy niewiele mówią, niestety.

Cosi napisał/a:

Dlatego właśnie wydawało mi się, że może coś jest nie tak z SDL, ale jeżeli tak, to dziwi mnie cisza na ten temat w Internecie - nie znalazłem ani jednego posta na temat jakichkolwiek problemów podobnych do moich.

Atari800 w ogóle mało kto używa.

Cosi napisał/a:

Tak czy inaczej, może w wolnej chwili spróbuję skompilować najświeższą wersję. Będę do tego niestety potrzebował paru browarów, bo make ma na mnie uczulenie i jeszcze nigdy nie zdarzyło mi się nim niczego skompilować bez niespodzianek.

Zainstaluj pakiety autoconf, libsdl1.2-dev, no i oczywiście gcc i libc6-dev (chyba o niczym nie zapomniałem) i powinno być OK.
Potem:
cd atari800/src
./autogen.sh
./configure --target=sdl --enable-seriosound
make
i możesz uruchamiać emulator:
./atari800

A8CAS - narzędzie do 100% archiwizacji kaset Atari

11

Wielkie dzięki za pomoc, Krótki. Zainstalowałem najświeższą wersję (2.2.0) i teraz wszystko elegancko hula :) Nawet zauważyłem, że w programie pojawiło się parę miłych zmian...

Kartę mam taką dziadowską, wbudowanego laptopowego Intela.

800 XE + CA 2001; Portfolio; 1040 STfm; Lynx II
Psion Organiser II XP, LZ64; Series 3a, 3c, 5mx; Siena; Workabout; HP 95LX, 200LX, 620LX; Amiga 1200; Amstrad NC100, NC200; Game Boy Color
http://palmtop.cosi.com.pl -- nie tylko o Atari Portfolio

12

No to w ramach podziękowań mógłbyś przetestować działanie akceleracji OpenGL w emulatorze :) i dać znać czy coś się sypie.

1. Jeśli w menu brakuje opcji "Display settings -> Video mode settings -> Hardware acceleration", to znaczy że podczas configuracji/kompilacji nie było zainstalowanych plików nagłówkowych OpenGL. Pakiet nazywa się libgl-mesa-dev czy jakoś tak (jak używasz non-free sterowników graficznych, to należy zainstalować odpowiednio inny pakiet).
2. Ustaw ww. "Hardware acceleration" na "On" i pobaw się dostępnymi opcjami w menu "Video mode settings", przede wszystkim:
a) "Fullscreen resolution"
b) "Fulscreen: Yes/No" (Alt+F)
c) spróbuj też poprzełączać "Hardware acceleration" kilka razy - doszły mnie słuchy że się sypie na niektórych kartach graficznych.
3. W trybie nie-fullscreen pobaw się zmianą rozmiaru okna.
4. Włącz "Display settings -> Show percents of Atari speed" a następnie włącz Turbo (F12) i zobacz ile procent prędkości wyciąga emulator. (Uwaga: w zależności od karty graficznej na wynik może mieć wpływ włączenie/wyłączenie synchronizacji pionowej w xorg.conf.)

A8CAS - narzędzie do 100% archiwizacji kaset Atari

13

No to ja podziękuję :) Masa nowych opcji, aspect ratio, no i sample + gtia!
HP Compaq 8710p, Ubuntu 10.04 x86_64 (nvidia driver version 195.36.24):
1. Zainstalowana mesa 7.7.1-1ubuntu3.
2. FS Resolution ładnie zmienia rozmiary ekranu Atari (yes/no przełącza dobrze). Hardware acceleration czasami przełącza kilka razy ekran, ale imho nic się nie sypie.
3. Rozmiar okna dostosowuje się płynnie.
4. Na SELF-TESTcie 1500% (974x743x32), 6200% (314x233x32), 1300% (fullscreen fit both) - nie zauważyłem różnicy z czy bez sync; xorg.conf standardowy:

Section "Monitor"
        Identifier      "Configured Monitor"
EndSection

Section "Screen"
        Identifier      "Default Screen"
        Monitor         "Configured Monitor"
        Device          "Configured Video Device"
        DefaultDepth    24
EndSection

Section "Module"
        Load    "glx"
EndSection

Section "Device"
        Identifier      "Configured Video Device"
        Driver  "nvidia"
        Option  "NoLogo"        "True"
EndSection

.
Kernel mam przekompilowany z timerem 1000Hz.

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

14 Ostatnio edytowany przez Cosi (2011-02-24 20:06:49)

A u mnie tak to wygląda:
Acer Aspire 4315, stary dziad z Celeronem 1,73 MHz, Ubuntu 10.04
Karta graficzna "Mobile GM965/GL960 Integrated Graphics Controller" (info wg lshw)
1. mesa 7.7.1-1ubuntu2
2. a) bez problemu się zmienia; przy okazji zauważyłem, że tryb 1280x800 to nie jest 1280x800, tylko coś mniejszego (pewnie dlatego, że mam "maintain aspect ratio 4:3"), ale ten tryb najbardziej mi pasuje; największy to 1024x768 (oryginalna rozdziałka mojego LCD to 1280x800)
b) bez problemu
c) przełączałem wiele razy, w różnych kombinacjach; wszystko gra
3. rozdzielczość zmienia się skokowo; przy powiększaniu okna są problemy z przejściem do trybu 1280x800 (czasem nie wskakuje); po zmaksymalizowaniu zawartość okna cyklicznie mruga
4. w oknie Basica - w trybie turbo 360% (nie działa dźwięk), bez turbo 66-80%, zauważalne opóźnienie kliku klawiszy; w tle chodził Firefox; przełączanie akceleracji nie zmienia tych wartości
Self Test - w trybie turbo 360%, bez turbo 44-51%

Tak przy okazji - fajnie by było, gdyby w menu można było używać Home i End, albo chociaż żeby były skróty literowe :)

POPRAWKA:
Nie wiem, czym było spowodowane to ślimaczenie się emulatora. Po restarcie nawet przy uruchomionym FF wyniki są takie (testy na grze Hans Kloss :D):
bez akceleracji:
normal - 102%, turbo - 340%
z akceleracją:
normal - 102%, turbo - 120%

No i cofam tą uwagę o Home i End, przez przypadek nacisnąłem strzałkę w prawo... ;)

800 XE + CA 2001; Portfolio; 1040 STfm; Lynx II
Psion Organiser II XP, LZ64; Series 3a, 3c, 5mx; Siena; Workabout; HP 95LX, 200LX, 620LX; Amiga 1200; Amstrad NC100, NC200; Game Boy Color
http://palmtop.cosi.com.pl -- nie tylko o Atari Portfolio

15 Ostatnio edytowany przez jury (2011-02-24 21:01:03)

Krótki napisał/a:

Zainstaluj pakiety autoconf, libsdl1.2-dev, no i oczywiście gcc i libc6-dev (chyba o niczym nie zapomniałem) i powinno być OK.
Potem:
cd atari800/src
./autogen.sh
./configure --target=sdl --enable-seriosound
make
i możesz uruchamiać emulator:
./atari800

Dotarłem do punktu: ./autogen.sh ale krzyknęło że nie zna takiego pliku. Jako że komplenie nie znam się na tym, w google'u wyczytałem że ten autogen to cośtam :) związane z autoconf'em. Ogólnie przy próbie zainstalowania autoconf'a dostałem komunikat że już go mam w najnowszej wersji. Da się to jakoś prosto i powoli wytłumaczyć o co mu chodzi i co mam zrobić? :D

16 Ostatnio edytowany przez mono (2011-02-24 21:12:19)

No a masz tam atrybut x ustawiony?

$ ls -la ./autogen.sh
hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

17

Plik autogen.sh powinieneś mieć w paczuszce z Atari800. Wiem, że to może idiotycznie zabrzmieć, ale może sprawdź, czy na pewno jesteś we właściwym katalogu :) Po rozpakowaniu pliku z instalką, np. do katalogu "instalka", musisz wejść do tego katalogu, a potem jeszcze do atari800 i src. Polecenie ls powinno Ci wyświetlić m.in. ten plik. Warto też sprawdzić, czy plik autogen.sh ma uprawnienia do wykonywania.
Wybacz te lamerskie podpowiedzi, ale czasem tak bywa, że przeoczy się najbardziej oczywistą rzecz ;)

PS. Do listy poleceń, którą podał Krótki, trzeba jeszcze - na samym końcu - dodać sudo make install, żeby pliki emulatora wskoczyły do odpowiednich katalogów.

800 XE + CA 2001; Portfolio; 1040 STfm; Lynx II
Psion Organiser II XP, LZ64; Series 3a, 3c, 5mx; Siena; Workabout; HP 95LX, 200LX, 620LX; Amiga 1200; Amstrad NC100, NC200; Game Boy Color
http://palmtop.cosi.com.pl -- nie tylko o Atari Portfolio

18 Ostatnio edytowany przez jury (2011-02-24 21:38:46)

Atrybutu x nie mam ustawionego bo w ogóle nie mam tego pliku w katalogu src, i w ogóle na całym dysku ( bo też już przeszukałem :) ) Co do sudo make install to dzięki za info, bo na moją absolutną nieznajomość kompilacji w linuksie to jakoś tak mi wydawało się że na forach linuksa, piszących o kompilacji zawsze to widziałem :) A tu nie było, lecz nie wzbudziło to moich podejrzeń, bo z moją znajomością stwierdziłem że  jak piszą że nie trzeba to pewnie nie bez powodu, hehe :)

Hmm, w takim razie coś zwaliłem może tak że nie pobrałem prawidłowej wersji z sourceforge'a :P
Za chwilę to obadam.

19

Wejdź w link Development i tam szukaj CVS. Powinieneś się znaleźć tutaj. Jest tam opis jak ściągać atari800 z CVSa jako anonymous.

hex, code and ror'n'rol
niewiedza buduje, wiedza rujnuje

20 Ostatnio edytowany przez jury (2011-02-25 08:16:27)

Tak jak myślałem, brałem nie te źródła :) jak sobie pobrałem te z CSV to wszystko się pięknie skompilowało.
To jeszcze pomęczę :D Chciałbym sobie wersję 2.1.0 skompilować pod TOSa na MC68060. Czy jest to na tyle proste do zrobienia, czy bardziej odeślecie mnie do "Kompilacja z gcc dla opornych"? :) W readme zainstalowanej wersji z CSV znalazłem niby coś odnośnie kompilacji na Falcona:

The following script might be used for rebuilding the fastest possible
version:
============================== make.sh ====================================
#!/bin/sh
CFLAGS="-m68020-60 -O3 -fomit-frame-pointer -Wall" ./configure --disable-newcycleexact --disable-sound --enable-veryslow --disable-monitorbreak --target=falcon
make clean
time make
fixstk 256k atari800
===========================================================================

Co to oznacza, jakoś mi tak "brzęczy" żeby to "puścić" zamiast ./configure?

21

paczka pod debiana sie nie buduje jak trzeba (ze wzgledu na to ze x11 i curses nie buduja sie, ze wzgledu na brak wsrod linkowanych plikow funkcji obslugujacych sound)...
inna sprawa ze control file tez dosc mocno zaniedbany ;)

The UNIX Guru`s view of Sex:
unzip; strip; touch; finger; mount; fsck; more; yes; umount; sleep

22 Ostatnio edytowany przez Krótki (2011-02-25 21:37:11)

Mono, Cosi, dziękuję.

Cosi napisał/a:

2. a) bez problemu się zmienia; przy okazji zauważyłem, że tryb 1280x800 to nie jest 1280x800, tylko coś mniejszego (pewnie dlatego, że mam "maintain aspect ratio 4:3"), ale ten tryb najbardziej mi pasuje; największy to 1024x768 (oryginalna rozdziałka mojego LCD to 1280x800)

Czyli masz monitor o proporcjach 15:10? Jeśli tak to powinieneś na taką wartość ustawić opcję "Host display aspect ratio". Wtedy opcja "Keep aspect ratio=authentic" (polecam) będzie działać poprawnie. W tej chwili zapewne masz "Keep aspect ratio" ustawione na "1:1" czyli kwadratowe piksele.

Cosi napisał/a:

3. rozdzielczość zmienia się skokowo; przy powiększaniu okna są problemy z przejściem do trybu 1280x800 (czasem nie wskakuje); po zmaksymalizowaniu zawartość okna cyklicznie mruga

Skokowe powiększanie wynika z tego, że opcja "Stretch" jest ustawiona na "fit screen - integer". Oznacza ona, że wysokość okna jest zawsze równa wielokrotności 240 pikseli. Spróbuj przestawić na "fit screen - full".
Co do tego mrugania: czy podczas mrugania pojawia się coś na standardowym wyjściu?

Cosi napisał/a:

4. w oknie Basica - w trybie turbo 360% (nie działa dźwięk), bez turbo 66-80%, zauważalne opóźnienie kliku klawiszy; w tle chodził Firefox; przełączanie akceleracji nie zmienia tych wartości
Self Test - w trybie turbo 360%, bez turbo 44-51%
(...)
POPRAWKA:
Nie wiem, czym było spowodowane to ślimaczenie się emulatora. Po restarcie nawet przy uruchomionym FF wyniki są takie (testy na grze Hans Kloss :D):
bez akceleracji:
normal - 102%, turbo - 340%
z akceleracją:
normal - 102%, turbo - 120%

Ciekawe. Zupełnie jakby emulacja dźwięku spowalniała emulator. Może przyczyną była inna aplikacja odtwarzająca dźwięk?

jury napisał/a:

Chciałbym sobie wersję 2.1.0 skompilować pod TOSa na MC68060. (...) Co to oznacza, jakoś mi tak "brzęczy" żeby to "puścić" zamiast ./configure?

Tak, zamiast ./configure i make. Ale do wersji falconowej to chyba nikt dawno nie zaglądał, nie wiem nawet czy to się skompiluje. A poza tym, i tak nie będzie dźwięku.

jellonek napisał/a:

paczka pod debiana sie nie buduje jak trzeba (ze wzgledu na to ze x11 i curses nie buduja sie, ze wzgledu na brak wsrod linkowanych plikow funkcji obslugujacych sound)...
inna sprawa ze control file tez dosc mocno zaniedbany ;)

Oj przydałyby się ręce do roboty :) Target X11 dawno już powinien być deprecated.

A8CAS - narzędzie do 100% archiwizacji kaset Atari

23 Ostatnio edytowany przez jury (2011-02-25 22:15:24)

Krótki napisał/a:
jury napisał/a:

Chciałbym sobie wersję 2.1.0 skompilować pod TOSa na MC68060. (...) Co to oznacza, jakoś mi tak "brzęczy" żeby to "puścić" zamiast ./configure?

Tak, zamiast ./configure i make. Ale do wersji falconowej to chyba nikt dawno nie zaglądał, nie wiem nawet czy to się skompiluje. A poza tym, i tak nie będzie dźwięku.

Ja mam 2 wersje skompilowane dla Falcona: 1.3.7 ( bodaj ) która ma dzwięk tyle że jedynie około 30% gier które odpalałem działa i 2.1.0 który póki co uruchomił mi wszystkie gry jakie próbowałem ( jedynie Henrys House coś się nie chciał dać :) ) i nawet numen działa z około 85/90% oryginału ( z wyjątkiem 2 efektów ). Tyle że tą wersję 2.1.0 dostałem od Stehlika rok temu i ona właśnie nie ma dzwięku. Nie udało mi się go namówić ( a uparty byłem :) ) na skompilowanie z dziękiem, więc jak zobaczyłem ten wątek to ujrzałem światełko w tunelu :)
Dzięki za info, w takim razie w przyszłym tygodniu trochę popróbuję się tym pobawić, a, i dlaczego uważasz że nie będzie dzwięku? nie wystarczy wywalić --disable - sound z tamtej linijki? :D

24

Krótki napisał/a:

Oj przydałyby się ręce do roboty :) Target X11 dawno już powinien być deprecated.

no jakis czas temu wypadlem z listy (serwer na ktorym odbieralem maillisty padl na pol roku) ale moze ponownie sie dopisze i przynajmniej pod debiana poprawki zapodam

The UNIX Guru`s view of Sex:
unzip; strip; touch; finger; mount; fsck; more; yes; umount; sleep

25

Krótki napisał/a:

Czyli masz monitor o proporcjach 15:10? Jeśli tak to powinieneś na taką wartość ustawić opcję "Host display aspect ratio". Wtedy opcja "Keep aspect ratio=authentic" (polecam) będzie działać poprawnie. W tej chwili zapewne masz "Keep aspect ratio" ustawione na "1:1" czyli kwadratowe piksele.

O, dzięki :)
Ale i tak najważniejsze, że w rozdziałce 1280x800 obraz jest ostry - monitory LCD niestety mają taki urok, że każda rozdzielczość inna niż tzw. "natywna" daje nieostry obraz, który może bardzo łatwo załatwić użytkownikowi wzrok.

Co do tego mrugania: czy podczas mrugania pojawia się coś na standardowym wyjściu?

Tak, "Video Mode: 1117x720x32 windowed" przy każdym "mrugu".

Ciekawe. Zupełnie jakby emulacja dźwięku spowalniała emulator. Może przyczyną była inna aplikacja odtwarzająca dźwięk?

Teraz to już nieistotne, od tamtego czasu nie zdarzyło mi się takie spowolnienie :) Obstawiam, że wina leży po stronie mojego Linuksa, a nie emulatora - w odróżnieniu od Windows, komputera z Linuchem nie resetuje się co godzinę, tylko włącza się rano, a wyłącza wieczorem ;) Przypuszczam, że wcześniej uruchomiłem/zainstalowałem coś, czego nie pokazał top, a co mogło wpłynąć na działanie Atari800.

800 XE + CA 2001; Portfolio; 1040 STfm; Lynx II
Psion Organiser II XP, LZ64; Series 3a, 3c, 5mx; Siena; Workabout; HP 95LX, 200LX, 620LX; Amiga 1200; Amstrad NC100, NC200; Game Boy Color
http://palmtop.cosi.com.pl -- nie tylko o Atari Portfolio