Z tego co kojarzę, autor Xformera pozyskał u schyłku życia Atari licencję od nich na dystrybucję ROMów wraz ze swoim (wtedy komercyjnym) emulatorem; po pewnym czasie zdecydował wydać tę wersję emulatora - z ROMami, na których dystrybucję wraz z emulatorem miał licencję - nieodpłatnie.

2

(38 odpowiedzi, napisanych Emulacja - 8bit)

Dawno tu nie pisałem! W skrócie: port na DSi się mniej więcej udał (jest w innym wątku), a port na 3DSa dostał dziś aktualizację!

Największą zmianą jest automatycznie przestawienie częstotliwości odświeżania panelu konsoli w trybie PAL do ok. 49.9395Hz - co jest dużo bliżej założonemu przez atari800 ok. 49.86Hz, niż domyślnie wyświetlane przez 3DSa ~60Hz. Oznacza to tyle, że demka i gry chodzą płynniej - szczególnie jest to widoczne przy trybach graficznych "mrugających"/interlaced!

Wersję 0.3.4 z tą funkcjonalnością możecie znaleźć w pierwszym poście.

Notka - pomimo, iż emulator ZXDS robi to już od dłuższego czasu, i u mnie też działa bez zarzutu, nie udzielam gwarancji na to, że zadziała u wszystkich. Opcję można wyłączyć (Display settings -> Video mode settings -> Vertical synchronization).

3

(0 odpowiedzi, napisanych Emulacja - 8bit)

Dawno temu zapostowałem na forum atari.area port atari800 na 3DSa. Ale co z jego starszym braciszkiem, DSem (i zapomnianym nieco krewnym DSi)?

No, więc. Był sobie port atari800 - PokeyDS autorstwa alekmaula. Nie był jednak idealny, więc odkopałem stare eksperymenty i zabrałem się do roboty...

https://img.asie.pl/EOmY.jpg

Względem PokeyDS, atari800-nds:

  • ma dostępny pełny kod źródłowy

  • nie redystrybuuje ROMów Atari - domyślnie używa ROMów Altirry, tak jak nowe wersje atari800

  • jest około 25% szybszy na NDSie, osiągając 65-100% wydajności antywnej (na DSi jest to stałe 100%)

  • udostępnia pełne menu emulatora atari800

  • czerpie z 12 lat poprawek do emulatora oraz do bibliotek DSowych, w tym m.in. faktycznie działającego dźwięku

  • faktycznie działa w tzw. "trybie DSi", z pełnym dodatkiem do wydajności z tego płynącym

Pobrać emulator można tutaj.

4

(38 odpowiedzi, napisanych Emulacja - 8bit)

Zlew napisał/a:

:O bedzie port na DSi, bedzie mozna trzaskac muze w MPTku bez potrzeby targania calego sprzetu

Wątpię; prototyp wersji na DSi zdaje się mieć problemy natury wydajnościowej...

5

(38 odpowiedzi, napisanych Emulacja - 8bit)

A dałbyś radę sprawdzić w 0.3.2? Wątpię, aby była różnica, ale chciałbym się upewnić.

6

(38 odpowiedzi, napisanych Emulacja - 8bit)

atari800-3ds 0.3.2: https://asie.pl/files/homebrew/atari800-3ds-0.3.2.zip

Ostatnia dodana wersja była oparta o drzewo kodu atari800 z czerwca 2018 (chwilę po 4.0.0); to jest oparte o drzewo kodu atari800 z maja 2019 (chwilę po 4.1.0), tyczą się więc wszystkie zmiany w atari800 dodane w 4.1.0, a w szczególności dołączenie ROMów Altirry jako alternatywa dla oficjalnych ROMów Atari. Zostały też zaktualizowane użyte biblioteki homebrew (libctru i devkitARM).

Spoiler: Nie do końca.

Po dopracowaniu i doszlifowaniu (a nawet w trakcie) emulatora ośmiobitowego Atari na 3DSa przyszła kolej na przyjrzenie się kwestii szesnastobitowców. Tu, niestety, sytuacja jest bardziej złożona: po pierwsze, "stary" 3DS po prostu nie ma wystarczającej mocy obliczeniowej (ze względu na to, iż jego moduł graficzny nie obsługuje jakichkolwiek trybów paletowanych dla tekstur, trzeba je zamieniać programowo, co pożera zaskakująco spory procent czasu procesora w emulatorze atari800 - sprawiając, że nie wyciąga nawet 2x czasu rzeczywistego w trybie "turbo" na Oldzie). Co również istotne, nie ma "dobrego" wyboru - o ile w przypadku ośmiobitowego Atari w roku 2016 portowanie atari800 było wyborem oczywistym, o tyle tu projektów emulacji jest trochę więcej.

Na pierwszą próbę, jeszcze w roku 2016, wziąłem emulator Hatari. Niestety, ma on dwie zasadnicze wady które przeszkadzają w dostosowaniu go na 3DSa:

  • Kod Hatari jest bardzo mocno zespojony z SDLem, a że porty SDLa na 3DSa są dość... toporne, to przeszkadza w lepszym dostosowaniu emulatora do "dziwactw" architektury (chociażby fakt posiadania dwóch ekranów).

  • Hatari jest po prostu zbyt dokładne. Nawet przy największym znośnym frameskipie widać, że nawet w zwykłym TOSie nie jest w stanie "wyciągnąć" emulacji w czasie rzeczywistym.

Nie oznacza to jednak, że nie działa. Działa - po prostu nie działa satysfakcjonująco.

https://img.asie.pl/6b6F

Na drugi ogień poszedł emulator, a raczej zbiór emulatorów PCE. Wybrałem go z innych powodów:

  • PCE oferuje rdzenie do emulacji Atari ST, IBM PC i starych Macintoshów w jednym emulatorze, co oznacza, że raz napisany kod pozwala uruchomić mi trzy różne architektury! Promocja!

  • PCE jest napisany w sposób dość przyjazny względem dostosowywania go do innych architektur i systemów.

Działa... dobrze. Nie jest to może szczyt dokładności, ale potrafi uruchomić sporo rzeczy bez większych problemów. Ten emulator po doszlifowaniu (nie ma tak dobrze jak w atari800 i menu muszę sobie naklepać samodzielnie) byłbym w stanie opublikować.

https://img.asie.pl/cuOG

I teraz pytanie: czy powinienem iść dalej w tę stronę, czy może jakiś emulator pominąłem? (Ostatnio zwróciłem uwagę na to, że emulacja Atari ST na PSP używa emulatora CaSTaway - może tędy droga?) Mógłbym też napisać własny, choćby dla rozrywki, ale to dopiero w dalszej perspektywie...

8

(38 odpowiedzi, napisanych Emulacja - 8bit)

DS Lite. Niestety, nie działa - DS Lite to nie 3DS i jest to dużo starsza konsolka. Istnieje PokeyDS, ale jest to stara wersja atari800 i nie jest już rozwijany - do tego jego wydajność jest mizerna. Mam wstępny port nowego atari800 na DS Lite, ale nawet przy zbiciu częstotliwości odświeżania do 30Hz i zbiciu jakości POKEYa do 22KHz 8-bit nie osiąga więcej niż 70-80% realtime. Przykro mi.

Istnieje szansa na ruszenie tego na DSie - należałoby napisać w ASMie ARMowym emulator CPU 6502 który w pełni wykorzystuje optymalizacje specyficzne dla Nintendo DSa. Jeśli będzie wystarczający popyt, rozważę to - właściciele NDSów, odezwijcie się!

9

(38 odpowiedzi, napisanych Emulacja - 8bit)

Dawno mnie tu nie było. Po około roku ciszy wydałem aktualizację atari800-3ds do wersji 0.3.0, która koreluje z wersją atari800 z Git-a z połowy czerwca 2018. Zmieniłem też pierwszy post w wątku tak, aby zawierał informacje o zmianach i miejscu, gdzie można pobrać emulator.

W ramach raczej ciekawostki dodam, że opracowałem wstępny port atari800 na Nintendo DS/DSi (istnieje wprawdzie PokeyDS, ale nie jest on rozwijany od ponad pięciu lat), lecz niestety konsola jest zbyt słaba, aby uciągnąć małe Atari bez przepisania emulacji CPU na coś bliższego ARM-owemu assemblerowi. Dostępny jest on w branchu "port-nds"; brak dotykowej klawiatury, lecz działają przyciski, obraz i dźwięk.

EDIT: Miało być tak pięknie, a tu jednak 0.3.1 - z drobną poprawką.

10

(323 odpowiedzi, napisanych Zloty)

Moim zdaniem ataki personalne na grupę fanów C=64 nic tu nie wniosą, a tylko zaszkodzą...

Widzę tu natomiast kwestię bardziej praktyczną. Polska społeczność Spectrumowa wokół speccy.pl ciągle wysyła swoje prace na zagraniczne party i naprawdę uważam, że warto byłoby znaleźć dla nich miejsce w Polsce. Nie mam nic przeciwko C=64, ale warto byłoby moim zdaniem zwrócić uwagę na tą grupę, która swojego party nie ma. Ogólnie za innymi platformami jestem za.

Co do "compo blocków" i rozbiciem compo z sześciogodzinnego ciągu na parę bardziej znośnych segmentów - tak, błagam! Na przykład dla dwudniowego party można byłoby zrobić dzień poświęcony Atari oraz dzień, w którym prezentowane są prace z innych platform + wildy.

11

(20 odpowiedzi, napisanych Fabryka - 8bit)

@willy: VHDL was created for ASICs, but they can be just as well used for FPGAs. Effectively, barring strange electrical corner cases, the same VHDL data should give the same logic on an ASIC and on an FPGA, perhaps with different maximum clock rates.

Also, you're wrong about WDC not selling FPGA forms of their IPs, see http://www.westerndesigncenter.com/wdc/ :

With 200MHz+ 8-bit W65C02S and 100MHz+ 8/16-bit W65C816S processors coming on line in ASIC and FPGA forms, we see these annual volumes continuing for a long, long time.

12

(28 odpowiedzi, napisanych Fabryka - 8bit)

skrzyp napisał/a:

Zaraz w Atari będę miał tyle czipów FPGA, że ich łączna moc będzie przekraczała możliwości Amigi 1200. [...]

Spokojnie, teraz złotym standardem wydajności jest Wampir. </3

13

(20 odpowiedzi, napisanych Fabryka - 8bit)

willy napisał/a:

Whatever in FPGA is no longer Whatever ... sorry.

That's not true, because even WDC themselves sell FPGA forms of their CPUs based on the original designs - these can be clocked at up to 200 (!) MHz, but is probably out of our reach. (Is it no longer Whatever if it comes from the creators of Whatever?)

Anyhow, this is a nice idea, but I fear the costs of it being prohibitive...

14

(45 odpowiedzi, napisanych Zloty)

Dzięki jeszcze raz za wspaniałe party - żałuję wprawdzie, że jednak nie kupiłem worka prezentów przedświątecznych u Lotharka (jak ja teraz napiszę lepsze demo?), ale i tak było fajnie. Mam nadzieję, że strata/zniszczenie nie zaważy na ciepłych wspomnieniach z SV.

15

(529 odpowiedzi, napisanych Zloty)

Plakaty były, ale tylko jedne drzwi były otwarte.

Wracając - dzięki za świetne party i dzięki za świetne prace na compo!

Sprawa wygląda następująco:

Znajomy koder z Nowej Zelandii (tak!) poprosił mnie, bym w jakiś sposób zdobył mu STE (tudzież ewentualnie Mega STE?), gdyż dostanie takiego sprzętu tam jest dość trudne (pojawiają się sprzedawcy, lecz zazwyczaj daleko od niego i nie oferują wysyłki). Poszukuję więc osoby, która takowe STE byłaby w stanie mu wysłać lub sprzedać mi jako pośrednikowi.

Nie jest ważny stan fizyczny (tj. pożółknięcia itd.) ani wersja TOSu, ważne, by było (a) w pełni sprawne oraz (b) w miarę możliwości rozbudowane do 4MB RAMu. Opcjonalnie mile widziane też rozszerzenia, aczkolwiek nie gwarantuję, że wszystkie będzie chciał.

PS. Będę obecny na Sillyventure 2016.

17

(38 odpowiedzi, napisanych Emulacja - 8bit)

Dziękuję za feedback - strona została poprawiona.

Próbuję wydać 0.1.2 z drobnymi optymalizacjami, które zrobiłem, póki jeszcze miałem 3DSa, ale z nowymi bibliotekami emulator nie chce wstać... nowa wersja powinna mimo to wyjść za parę dni.

PS. Powinienem być na SillyVenture, gdyż to niedaleko.

18

(38 odpowiedzi, napisanych Emulacja - 8bit)

Jesli wszystko zrobilem dobrze, mozesz sprobowac nacisnac L i recznie wskazac sciezki do ROMow. Ale powinny one byc po prostu w folderze /3ds/atari800, luzem pliczki .ROM bez zmienionych nazw.

19

(38 odpowiedzi, napisanych Emulacja - 8bit)

Powiedz coś więcej. Mam nadzieję, że nie kompilujesz do .CIA? Bo nie zadziała. Testowane tylko na CFW 11.0.0 i Homebrew Launcherze.

20

(38 odpowiedzi, napisanych Emulacja - 8bit)

Wyszła wersja 0.1.1 pod powyższym linkiem - znacznie poprawiona została emulacja audio.

21

(38 odpowiedzi, napisanych Emulacja - 8bit)

Wyszła wersja 0.1.0, dostępna tutaj.

Kończąc argument o "homebrew vs. Nintendo", rzucę tym - jest to aplikacja do rysowania wydana oficjalnie na Nintendo eShopie, będąca kontynuacją wersji homebrew (więc nielicencjonowanej) na NDSa tego samego twórcy.

22

(38 odpowiedzi, napisanych Emulacja - 8bit)

nosty napisał/a:

choć jak wyjaśnił skrzyp, być może tylko w przypadku używania pirackich gier.

Tak, i to tylko na niektóre sposoby - te, które Nintendo jest w stanie obecnie wykryć. Teoretycznie mogą wykryć wszystkie - mają dostęp do danych, która konsola/konto ma jakie kupione legalnie gry, ale ich nie wykorzystują (jeszcze?).

nosty napisał/a:

Akapit o "nie krzywdzeniu Nintendo" jest mało wiarygodny. Gdyby było tak jak piszesz, to N. by po prostu otworzyła swoje konsole na gry niezależne, pozwalając odpalać dowolny kod z karty. Tymczasem proces uzyskania devkitu i certyfikacji jest u nich podobno dość trudny (znam osobę będącą oficjalnym developerem).

Co naraża ich na problemy z uruchamianiem potencjalnie szkodliwego kodu, spadkiem jakości na eShopie, itd. Łatwo wyobrazić sobie wkurzonego rodzica po tym, jak syn przypadkiem zainstalował wirusa na konsolę za 900zł. Dzięki temu, że nie jest to od nich, nie muszą się przejmować problemami, gdyż cała scena homebrew jest poza ich odpowiedzialnością i jurysdykcją. Dokładnie to samo widać np. w społeczności Minecrafta - API do modów nie jest oficjalnie wspieraneprzez firmę, aczkolwiek obie strony starają się nie wchodzić sobie w drogę, gdyż obu stronom przynosi to korzyść (firma nie musi martwić się zapewnianiem gwarancji na API i mody które mocno modyfikuje wewnętrznie działanie gry oraz uruchamiają dowolny kod po stronie klienta i serwera, użytkownicy mogą tworzyć i grać z modyfikacjami). Póki homebrew nie jest sprzedawane z pominięciem marż Nintendo, nie krzywdzi ich to w żaden sposób - a czasami nawet pomaga (istnieje loader region-free, który pozwala co prawda uruchamiać gry z innych regionów, ale tylko z legalnego kartridża - dzięki czemu bardziej uzdolnieni technicznie użytkownicy są w stanie kupić i korzystać np. z gier wydanych tylko w Japonii, a tych na Nintendo sporo).

Co do procesu, jest on coraz prostszy - stąd coraz więcej indie na eShopie. Nintendo wychodzi do developerów, gdyż w dobie "otwartych" platform gier (komputery PC, smartfony, tablety) oraz programów konkurencji (zwłaszcza Microsoftu) muszą pozostać konkurencyjni. Oferowane jest np. Unity czy HTML5 na 3DSa, ceny devkitów też spadają - bodajże trzy głowne wymagania obencie to posiadanie zarejestrowanej firmy, portfolio chociaż jednej dobrej gry i pieniądze na narzędzia developerskie... oraz podpisanie Non-Disclosure Agreement, a zwłaszcza to ostatnie może nie wszystkim być po drodze.

nosty napisał/a:

W międzyczasie zorientowałem się, że możliwości wgrania gier homebrew do 3DS/2DS są obecnie bardzo skromne. Trzeba posiadać albo odpowiednią (starszą) wersję systemu, albo jedną z kilku, bardzo kosztownych gier na które są exploity.

Nowe wersje w sklepach mają nadal wersję 10.3. Do 10.5 wystarczy przeglądarka i trochę cierpliwości. Co do gier - Cubic Ninja jest droga, lecz prosta; Ocarina of Time 3D jest łatwo dostępna, lecz trzeba drugiego, zmodyfikowanego 3DSa, by zainstalować savegame exploit na kartridż. Można też użyć kartridżowej wersji Super Smash Bros i karty WiFi pod Linuxem, lecz podobno działa to tylko na New 3DSie. Warto też pamiętać, że WebKit jest, jaki jest, i znalezienie kolejnego browser exploita to tylko kwestia czasu, zwłaszcza że Nintendo powoli zwalnia z aktualizacjami, prawdopodobnie skupiając się na NXie.

23

(38 odpowiedzi, napisanych Emulacja - 8bit)

nosty napisał/a:

Tylko trochę strach, że konsola po wykryciu takiej ingerencji zostanie zablokowana zdalnie przez Nintendo.

Zablokowana zdalnie? To byłaby dobra podstawa pod pozew zbiorowy - pamiętacie burzę po tym, jak Sony usunęło Linuxa z PS3? Co najwyżej zablokowanie gry online, ale to bardziej z obaw przed cheaterami niż czymkolwiek innym.

Jeśli ktoś nie krzywdzi Nintendo (a sam homebrew nie krzywdzi - Nintendo zarabia na sprzedanych konsolach, w przeciwieństwie do Sony i Microsoftu które nadrabiają marżami z gier), to raczej nie banują - do tego stopnia, że savegame exploity na 3DSa nie są blokowane jeśli gra nie jest łatwo usuwalna lub patchowalna.

24

(38 odpowiedzi, napisanych Emulacja - 8bit)

Dev-kity za drogie, no i trzeba podpisywać NDA. Istnieje jednak homebrew, którego scena od dobrych 1.5-2 lat się rozwija - obecnie są już całkiem znośne biblioteki i duża ilość metod uruchomienia go na konsoli (trzy exploity w trzech różnych grach, do 10.3 można przez przeglądarkę, a potem można nawet wgrać zmodyfikowane oprogramowanie i mieć homebrew channel na stałe).

Oczywiście, scena ta nijak się ma do homebrew na oryginalnego NDSa, ale to wynika raczej z popularności platform mobilnych.

PS. Co do postępu - jest wszystko prócz obsługi klawiatury (oraz problemy z dokładnością dźwięku POKEYa, nie wiem jeszcze czy wina leży w moim config.h czy w moim kodzie od dźwięku, ciężko mi przesłuchać i zobaczyć o co chodzi bez real HW).

skrzyp napisał/a:

No i to jest prawdziwy rozwój, porządny projekt, promowanie małego Atari na innych platformach

Mój znajomy, który XE pamięta głównie z dzieciństwa, prawdopodobnie właśnie siedzi i gra w Boulder Dasha na 3DSie. :)

25

(38 odpowiedzi, napisanych Emulacja - 8bit)

Przedstawiam port emulatora atari800 na konsolę Nintendo 3DS! Działa zarówno na Old 3DS/2DS jak i na New 2DS/New 3DS, gdzie na tym drugim można sobie pozwolić na takie udogodnienia jak accurate PAL blending czy high-fidelity POKEY.

https://img.asie.pl/azf2

Do pobrania:

Zmiany (w skrócie):

atari800-3ds 0.3.4

  • Aktualizacja atari800 do najnowszej wersji z Git na dzień 18.11.2020 (m.in. nowsza wersja wbudowanego Altirra OS)

  • Wsparcie dla synchronizacji pionowej - sprowadzanie panelu LCD do częstotliwości odświeżania ~49.9395Hz w trybie PAL

  • Drobne poprawki do jakości kodu

atari800-3ds 0.3.1

  • Poprawiono przechodzenie do katalogu głównego w przypadku uruchomienia ze ścieżką "sdmc:/..." (np. hbmenu)

  • Poprawiono wyświetlaną wersję

atari800-3ds 0.3.0

  • Aktualizacja do najnowszej wersji atari800 z Git-a (na połowę czerwca 2018) - głównie z racji tego, iż ma ona wbudowane ROM-y z Altirry, co pozwala na używanie emulatora bez oficjalnych ROM-ów Atari

  • Aktualizacja bibliotek homebrew do wersji dołączanych wraz z devkitARM r49