1,226

(14 odpowiedzi, napisanych Bałagan)

Pomijając to przykre wydarzenie... jak przeczytałem nagłówek to myślałem że jakiś Atari Falcon wybuchł, parzę na link i widzę rmf24, i zastanawiam się... "ale żeby od razu o tym na portalach informacyjnych informowali?" ;-)

1,227

(5 odpowiedzi, napisanych Sprawy atari.area)

dzięki Azbest! Mam nadzieję że obyło się bez strat w sprzęcie.

1,228

(5 odpowiedzi, napisanych Sprawy atari.area)

z tego co pisał VOY na AoL, to skończyło się miejsce na serwerze, Atari Area i Atariki padły (z powodu braku miejsca, i uszkodzenia baz danych).

Ale ktoś już naprawił również Atariki :) Jeszcze tylko pigwa leży, ale Azbest chyba jest na urlopie.

1,229

(3 odpowiedzi, napisanych Software, Gry - 8bit)

Fajnie że Bluki wydobywa takie historie z czeluści internetu. Dzięki wielkie za to że chce Ci się o tym napisać i jeszcze podać jak na tacy wszystkie pliki łącznie z wersją PL :)

exp(3.214)

1,231

(57 odpowiedzi, napisanych Emulacja - 8bit)

Cześć,

Waldow napisał/a:

Powyższe dotyczy tylko wersji 3.0 atari800 w wersji 3.1 turbo działa.

Niestety nie ;/ Turbo działa mniej więcej przez 0,5sek (prędkość ~350%) po czym prędkość spada do 100%, tak jakby "turbo mode" zostało wyłączone, ponowne wciskanie F12 lub włączenie turbo mode w opcjach emulatora nic nie zmienia.

EDIT:

Przełączyłem na tryb 1080p @ 60Hz ... no i niestety przy PAL scroll-e szarpią widocznie, wszystkie efekty które normalnie wykonują się "in one frame" (żargonowo "wchodzą w ramkę") wyglądają paskudnie. Ale za "turbo mode" działa... od ~450% do ponad 800% w zależności od tego co się dzieje na ekranie.

Co ciekawe w trybie 1080p @ 60Hz, po przełączeniu emu na NTSC, Turbo Mode również działa...

http://seban.pigwa.net/aa/a800_trb.png

1,232

(57 odpowiedzi, napisanych Emulacja - 8bit)

gdy mam odświeżanie ustawione na 60Hz i emulator na PAL to w przypadku platformy Windows i emulatora Atari800Win-Plus czy Altirra to efekt jest równie straszny, szarpanie scroll-ami, tryby interlace zamiast wyglądać jakby miały więcej jasności/kolorów z lekkim migotaniem, wyglądają okropnie, drżąc i wyświetlając nierównomiernie dwie klatki obrazu składającego się na cały obrazek w interlace, wygląda to okropnie, w przypadku RaspPI / SDL gdzie nie było Vsync, wyglądało to równie okropnie.

Dziś sprawdzę Ci jak wygląda różnica gdy przestawię RPI2 na 60Hz i odpalę emulację w trybie PAL. Wydaje mi się że będzie ciekawie bowiem emu wydaje sie być zatrzymywany do czasu wystąpienia V-Sync (stwierdzam to po fakcie że nie działa Turbo Mode / F12) gdy go włączę nadal mam 100% wydajności emulatora, tylko dźwięk zostaje wyłączony, a render-pipeline i tak uwiązany jest do V-Synca.

1,233

(57 odpowiedzi, napisanych Emulacja - 8bit)

no człowiek uczy się całe życie... dzięki za oświecenie... 'make -j4' działa i zasówa jak trzeba :)

real    0m47.898s
user    2m23.970s
sys    0m4.950s

normalna kompilacja (one-core):

real    2m21.126s
user    1m54.630s
sys    0m3.830s

@Montezuma: a jak taki display podłączasz? Masz jakąś przejściówkę HDMI->VGA? W życiu nie podłączałęm pod RPI nic innego niż monitor FullHD przez HDMI lub po prostu TV do wyjścia TV w RPI1.

@Sim_Piko: A dlaczego się nie poleczasz? Pomogłeś i to bardzo :) dzięki za cierpliwość i wyrozumiałość :)

ps) do tej pory nie miałem pojęcia o opcji -j bo korzystałem z gotowców, tzn. serwer i środowisko do kompilacji (cross-compiler) przygotowane miałem przez ludzi którzy się na tym znają i nie wnikałem, jak widać to był poważny błąd. Dostawałem gotowego skonfigurowanego LTIB-a czy Yocto do pracy i nie musiałem martwić się o konfigurację tego wszystkiego. Dzięki wam nadrabiam zaległości :)

1,234

(57 odpowiedzi, napisanych Emulacja - 8bit)

Wszystko się skompilowało, trochę faktycznie dziwne scieżki ma domyślnie wpisane (/opt/vc/) dla gcc, ale nie przeszkadza to w kompilacji. Skompilowało się na RaspPI2 i działa :) Dzięki WIELKIE za pomoc! :)

ps) RP2 ma niby 4 jajka, a kompiluje używając jednego :)

1,235

(57 odpowiedzi, napisanych Emulacja - 8bit)

Hej!

Dzięki wielkie za pomoc... małymi krokami do przodu, czyli:

1) pobrałem archiwum (tarball)
2) odpaliłem autoconf (nie było pliku 'configure')
3) autoconf wygenerował sobie cośtam, po czym odpaliłem configure --target --host...
4) miłąchał, miąchał .... i mu nie wyszło...

...
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... 64
checking for _LARGEFILE_SOURCE value needed for large files... no
checking for library containing tgetent... no
configure: creating ./config.status
config.status: creating Makefile
config.status: error: cannot find input file: `config.h.in'

pewnie coś nie tak robię z autoconf-em?

EDIT: pomogło 'autoreconf -i', teraz zapuszczam make... zobaczymy :)

1,236

(57 odpowiedzi, napisanych Emulacja - 8bit)

A widzisz... i tu jest "przysłowiowy" pies pogrzebany :)  na początek porównałem pliki "configure", są inne... masz świeższą wersję, ze sporą ilością zmian.

1,237

(57 odpowiedzi, napisanych Emulacja - 8bit)

@Sim_Piko: zadam głupie pytanie... skąd brałeś źródła Atari800-3.1.0? Bo spróbowałem skompilować źródła z tego co podesłałeś i wychodzi na to że ./configure --target=rpi --host=arm-linux poszło bez najmniejszego problemu. Właśnie poleciał make, również bez problemu.

Ja źródła pobrałem z tej lokalizacji:

http://sourceforge.net/projects/atari80 … 800/3.1.0/

Właśnie sprawdziłem MD5 i wszystko się zgadza:

pi@raspberrypi ~/Downloads $ md5sum atari800-3.1.0.tar.gz 
354f8756a7f33cf5b7a56377d1759e41  atari800-3.1.0.tar.gz

Tyle że 'src' od Ciebie się kompiluje bez problemu, a pliki z sf.net tak jak to widać powyżej ;/

1,238

(57 odpowiedzi, napisanych Emulacja - 8bit)

Hej!

Kompiluje na RPI2:

pi@raspberrypi ~/atari800/src $ uname -a
Linux raspberrypi 3.18.11-v7+ #781 SMP PREEMPT Tue Apr 21 18:07:59 BST 2015 armv7l GNU/Linux
pi@raspberrypi ~/atari800/src $ gcc --version
gcc (Debian 4.6.3-14+rpi1) 4.6.3
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

oczywiście Twoja binarka działa bez problemu, tylko pierwsze uruchomienie było lekkim zaskoczeniem, bo jakieś obłędne ustawienia palety były :) i miałem ze 4 razy jaśniejszy obraz o mega kontraście :)

pi@raspberrypi ~/atari800/src $ sudo apt-get install build-essential
Czytanie list pakietów... Gotowe
Budowanie drzewa zależności       
Odczyt informacji o stanie... Gotowe
build-essential jest już w najnowszej wersji.
0 aktualizowanych, 0 nowo instalowanych, 0 usuwanych i 0 nieaktualizowanych.

1,239

(57 odpowiedzi, napisanych Emulacja - 8bit)

coś jeszcze mam nie tak...

pi@raspberrypi ~/atari800-3.1.0/src $ ./configure --target=rpi --host=arm-linux
configure: WARNING: if you wanted to set the --build type, don't use --host.
    If a cross compiler is detected then cross compile mode will be used
checking build system type... armv7l-unknown-linux-gnu
checking host system type... arm-unknown-linux-gnu
checking for arm-linux-gcc... /bin/arm-linux-gnueabihf-gcc
checking whether we are cross compiling... yes
checking for suffix of object files... configure: error: in `/home/pi/atari800-3.1.0/src':
configure: error: cannot compute suffix of object files: cannot compile
See `config.log' for more details

1,240

(57 odpowiedzi, napisanych Emulacja - 8bit)

@moonsoft: już pisałem kilka razy wcześniej... dlaczego upieram się przy --target...

seban napisał/a:

Gdy kompilujesz bez --target=rpi to kompilujesz wersję które również blittuje i skaluje za pomocą SDL, również brak V-Sync, skalowanie wygląda koszmarnie i w dodatku mocno to wszystko obciąża CPU.

użycie --target=rpi włącza renderowanie poprzez Open GLES. W dodatku gdy ustawisz sobie odpowiedni tryb config.txt masz super płynność i idealny V-Sync, taki jak przypadku PAL (jak sobie ustawisz 50Hz mode), lub jak ktoś woli NTSC (60Hz) też nie ma z tym problemu. Dla mnie PAL refresh rate i pełen sync to "konieczna konieczność", inaczej mam mdłości gdy widzę przycinające się srcolle i inne uboczne efekty :)

./configure bez --target=rpi przechodziło, potem jednak umierał przy 'make', a efekt po 'make' we wcześniejszym poście.

1,241

(57 odpowiedzi, napisanych Emulacja - 8bit)

Sim_Piko napisał/a:

Świeża binarka (wraz z źródłem) prosto z najnowszych źródeł, jeszcze ciepła. ...też na niej występuje ten błąd :/ https://www.dropbox.com/s/qtbdhpa0weunf … ar.gz?dl=0 Skompilowane na Raspbianie na RPi 2 z konfigiem "./configure --target=rpi --host=arm-linux" oraz tą wersją SDLa 1.2 z ciut lepszym  hardware'owym renderowaniem na RPi

Dzięki Wielkie! Jak dotrę do domu to sprawdzę! :)

Nie jestem specem w C/C++, ale z tego, co przejrzałem źródła emulca, na raspberrym SDL jest wykorzystywany do dźwięku, obsługi klawiatury, afaik także dżojstików.
Grafika też jest generowana przez SDL, tyle że wygenerowany obraz zamiast być od razu wyświetlony na ekranie przez SDL-a, idzie przez EGL prosto na hardware'owo akcelerowaną warstwę z procka graficznego RPi, gdzie jest m.in. skalowany na całą możliwą do wyświetlenia rozdzielczość.

Jest dokładnie tak jak piszesz, z tym że Open GLES oprócz sprzętowego skalowania i blittowania, idealną synchronizację z V-Sync.

Gdy kompilujesz bez --target=rpi to kompilujesz wersję które również blittuje i skaluje za pomocą SDL, również brak V-Sync, skalowanie wygląda koszmarnie i w dodatku mocno to wszystko obciąża CPU.

Strzelam, że gdzieś przy wyświetlaniu tej warstwy, cuś się chrzani i widać ww. błąd. (pewnie gdzieś w pliku "atari_rpi.c") Może (nie wiem, nie znam się aż tak) to przez fakt, że rpi nie potrafi obsłużyć więcej niż 16bpp kolorów.
EDIT: Pogrzebałbym coś więcej, ale na razie jestem bez pc-ta, ... a na raspberrym jakoś nie umiem za nic konkretnego się zabrać :V

Patrzyłem trochę na kod renderujący widok dla Open GLES, i mogę się jedynie domyślać gdzie jest problem, chciałem to poprawić... tyle że nie potrafiłem ogarnąć kompilacji na Raspberry PI. Jeszcze raz dzięki za naprowadzenie na właściwą drogę :)

A, i jedno pytanie - po kiego grzyba(bez urazy) trzeba zmieniać "/boot/config.txt" jak i bez tego mogę wesoło popykiwać sobie w River Raida czy Boulder Dasha?

Aby włączyć tryb 1080p z refresh rate na poziomie 50Hz (PAL), a co za tym idzie aby osiągnąć płynność i idealną synchronizację z V-Sync. Wszystko jest idealnie płynne, nic się nie przycina, nie skacze, nie szarpie scrolling-ów. Dopiero to wersja (Open GLES / Rasp-Pi) daje ten efekt. Na domowym PC mam również monitor w trybie 50Hz @ 1080p, i gdy odpalam Altirra z V-Sync + "speed match to broadcast"... to też jest "prawie" dobrze. Sęk w tym że Windows zawsze znajdzie sobie coś ważniejszego do robienia i widać czasami wkurzające przycięcia obrazu i inne artefakty, które to nie występują gdy emu jest uruchomiony na Raspberry Pi.

1,242

(57 odpowiedzi, napisanych Emulacja - 8bit)

To ja spróbuję z maszyną wirtualną i na tym Debian Linux, ale to wieczorem. FreeBSD mam "produkcyjne" nie będę próbował sobie go psuć, a mam talent do tego :)

1,243

(57 odpowiedzi, napisanych Emulacja - 8bit)

to może nie walcz, bo szkoda Twojego czasu, spróbuję cross-compile uskutecznić, jak się uda to wystawię obraz maszyny wirtualnej (Virtual BOX), może komuś się przyda.

1,244

(57 odpowiedzi, napisanych Emulacja - 8bit)

@willy: done... plik znajduje się tutaj.

1,245

(57 odpowiedzi, napisanych Emulacja - 8bit)

@willy: już się kompresuje, upload pewnie pójdzie szybciej :)

@Montezuma: nawet pisałem o tym że mam tak ustawione w pierwszym poście (1080p @ 50Hz), a co do wątku do którego linkujesz nawet napisałem w tym wątku, (obecnie ostatni post) opisując problem który napotkałem, być może autor poprawi opisany przeze mnie błąd. Atari800-3.0.0 mam zassane z sf.net (tam leży skompilowana i gotowa binarka dla RaspPi) i działa prawie dobrze (z wyjątkiem błędu który dokładnie opisałem wyżej).

Chciałbym skompilować wersję 3.1.0 i jeżeli to się uda to zacznę wnikać w kod renderujący być może uda mi się to poprawić jeżeli wcześniej autor tego nie uczyni wcześniej, chyba wiem gdzie jest problem, ale aby to sprawdzić muszę mieć działającą wersję.

1,246

(57 odpowiedzi, napisanych Emulacja - 8bit)

Hej!

Wybacz głupie pytanie, mało zorientowanego człowieka, ale ten skrypt to gdzie powinien być?

1,247

(57 odpowiedzi, napisanych Emulacja - 8bit)

no bez "--target=rpi" to masz wcześniejszego log-a, o którym pisałeś że brakuje być może plików.

Do kompletu na forach i w doc-ach piszą że jak budujesz bez target (co zresztą też nie działa), to budujesz wersję SDL, bez Open GLES... które to SDL na Raspberry PI niedomaga ;/ brak wsparcia sprzętowego, brak double-buffer, brak v-sync, software blits only, etc. czyli ogólnie rzecz biorąc "el masakra".

Zależy mi na wersji 3.1.0 ze wsparciem Open GLES, i napisałem post na forum raspberry pi, do autora tego kodu, ale się okazuje że forum jest ultra moderowane, mojego posta nie widać i nie będzie widać do czasu aż jakiś moderator nie zechce zatwierdzić moich wypocin.

1,248

(57 odpowiedzi, napisanych Emulacja - 8bit)

ja nie twierdzę że tak nie jest, tylko nie wiem gdzie mam się zaczepić aby coś więcej się dowiedzieć, nawet jeżeli doszedłbym czego mi brakuje, to według tego co napisali tutaj: http://sourceforge.net/p/atari800/mailm … /30753436/ ... to i tak zbudowałbym wersję SDL, która na Rasppi nie nadaje się do użytku...

Without cross-compiling you can build regular SDL without OpenGL at all (like on other linux'es).
But it's looks ugly on raspberry pi. I dont know how to detect build for raspberry without additional command line options.
Now it's configured for cross build (with --target==rpi).

a próby kompilacji z '--target=rpi' natwynie również nie udają się bo:

Hi)

--target=rpi is configured for cross compiling. You can read build
instructions how to setup it. Building on raspberry is tooooo slow.
22.04.2013 0:01 пользователь "Jan Krupka" <krupkaj@...> написал:

i u mnie kończy się to tak:

pi@raspberrypi ~/atari800-3.1.0/src $ ./configure --target=rpi
checking build system type... armv7l-unknown-linux-gnu
checking host system type... armv7l-unknown-linux-gnu
checking for gcc... /bin/arm-linux-gnueabihf-gcc
checking whether we are cross compiling... yes
checking for suffix of object files... configure: error: in `/home/pi/atari800-3.1.0/src':
configure: error: cannot compute suffix of object files: cannot compile
See `config.log' for more details

jest jeszcze jeden wątek, i to jest jakaś nadzieja na przyszłość, ale to pewnie potrwa zanim ujrzy światło dzienne:

http://sourceforge.net/p/atari800/mailm … /33673846/

w chwili obecnej build atari800-3.0.0 ze wsparciem Open GLES zawsze się synchronizuje z v-blank, tzn. nie działa Turbo Mode (F12), prędkość jest ograniczona przez v-sync i pomimo włączenia Turbo i tak emulator nie osiągnie prędkości większej niż 100%. Ale to niewielki koszt za ultra płynne scrolle, działający poprawnie interlace i pozostałe wszystkie niuanse, które powodują że całość bardzo zbliża się do oryginału :)

1,249

(57 odpowiedzi, napisanych Emulacja - 8bit)

Cześć,

Dokładnie tak próbowałem zrobić ale chyba czegoś brakuje, albo coś źle robię, bo 'make' po configure kończy się u mnie tak:

pi@raspberrypi ~/atari800-3.1.0/src $ make
gcc -c -o afile.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  afile.c
gcc -c -o antic.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  antic.c
gcc -c -o atari.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  atari.c
gcc -c -o binload.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  binload.c
gcc -c -o cartridge.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  cartridge.c
gcc -c -o cassette.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  cassette.c
gcc -c -o compfile.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  compfile.c
gcc -c -o cfg.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  cfg.c
gcc -c -o cpu.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  cpu.c
gcc -c -o crc32.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  crc32.c
gcc -c -o devices.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  devices.c
gcc -c -o emuos.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  emuos.c
gcc -c -o esc.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  esc.c
gcc -c -o gtia.o -DHAVE_CONFIG_H -I. -O2 -Wall -ansi -pedantic -Waggregate-return -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Winline -Wredundant-decls  gtia.c
gtia.c: In function ‘GTIA_GetByte’:
gtia.c:532:16: error: ‘INPUT_CONSOL_OPTION’ undeclared (first use in this function)
gtia.c:532:16: note: each undeclared identifier is reported only once for each function it appears in
gtia.c:535:16: error: ‘INPUT_CONSOL_START’ undeclared (first use in this function)
Makefile:82: polecenia dla obiektu 'gtia.o' nie powiodły się
make: *** [gtia.o] Błąd 1

chyba nie tylko ja mam problem...  http://sourceforge.net/p/atari800/mailm … /30753436/

i dodam że nie chcę budować wersji SDL tylko taką renderującą przez Open GL ES. Wersja 3.0.0 działa prawie doskonale (z wyjątkiem tego co pokazałem wyżej), szybko i bardzo bardzo dobrze radzi sobie z synchronizacją, trybami interlace, płynne scrollingi, etc.

a z tego co widać wyżej również wersja SDL się nie chce kompilować, a ./configure --target=rpi nie działa u mnie również.

To chyba zostaje mi tylko próba z cross-compile ;/ Chociaż patrząc w źródła kod dla OpenGL jest podobny i pewnie efekt będzie ten sam. Spróbuję napisać do autora wersji OpenGL/RPI.

1,250

(57 odpowiedzi, napisanych Emulacja - 8bit)

UPDATE:

Wiem jakiego rodzaju jest błąd, na początek prosty testowy program w Atari BASIC:

10 GRAPHICS 9
20 FOR I=0 TO 15:COLOR I
21 PLOT I,0:DRAWTO I,191
22 PLOT 31-I,0:DRAWTO 31-I,191
25 NEXT I
30 CLOSE #1:OPEN #1,4,0,"K:"
31 FOR I=0 TO 15
32 POKE 712,I*16
33 GET #1,K:IF K=27 THEN 40
34 NEXT I
35 GOTO 31
40 CLOSE #1
99 END 

poprawny obraz wygląda np. tak:

http://seban.pigwa.net/aa/a800_ex1.jpg

natomiast problemy zaczynają się gdy manipulujemy kolorem tła, wartość koloru $8x-$Fx wpisane do ColBack, powodują że najwyższy stopień jasności ($0F, czyli COLOR 15 w Atari BASIC) staje się kolorem czarnym, co widać na zdjęciu poniżej: (COLBACK=$80)

http://seban.pigwa.net/aa/a800_ex2.jpg

ps) nie umiem poprawnie skompilować Atari800-3.1.0 bezpośrednio na Raspberry PI, na cross-compilację zgodnie z informacjami w 'build-rpi' nie miałem jeszcze czasu. Czy ktoś ma może skompilowane Atari800-3.1.0 na Raspberry PI?