emulacja konsolki

0

witam wszystkich. Mam troszke trudny problem bo nietypowy. Chodzi o to ze chcialbym napisac emulator gameboya odpalany w javie na komorce. Wiem ze brzmi to troszke skomplikowanie ale jestem dobrej mysli. GBC ma 8 bitowy procesor i dosyc prosta architekture wiec uznalem ze bedzie to dosyc ciekawe wyzwanie. Chcialbym tez pograc na telefonie w gierki z dawnych lat. Emulator mialby byc dla gb/gbc tylko.

mam pare pytan bo w tego typu zagadnieniach nie bardzo mam doswiadczenie. Chodzi tylko o to zeby gierke z gc odpalic na komorce. Mam spore doswiadczenie w programowaniu i siedzialem 2 lata w ASM wiec w tym sie odnajduje dobrze.

1 czy lepsza bylaby emulacja czy kompilacja gierek na *.jar ?
2 potrzebuje podpowiedzi na temat sposobu w jaki mialbym to stworzyc.

w javie pisac bedzie glownie moj kumpel ja sie zajmowac bede specyfikacja techniczna i architektura bo mam wiecej w tym doswiadczenia. Wydaje mi sie ze szybsza bylaby kompilacja calego kodu gierki do odpowiedniego pliku i stworzenia pseudobiosu ktory bedzie to obslugiwal.

ogolnie mam pomysl jak do tego podejsc ale wydaje mi sie ze jest on... troszke malo profesjonalny jak na takie zagadnienie. Wazna jest szybkosc i kompatybilnosc bo widzialem juz jeden "emulator" ale strasznie wolno gry dzialaly na nim.

prosze o jakies wskazowki i ewentualnie nakierowanie na strony gdzie mialbym szukac .Ne potrzebuje tych z opisem sprzetu tylko mowiacych ogolnie o emulacji. Najlepiej jesli wypowiedzialby sie ktos z pewnym doswiadczeniem w tym zagadnieniu.

POZDRO

0

Lepszym i tańszym rozwiązaniem jest przepisać gry na javę. Takie emulatory zazwyczaj są dość tępe i powolne ponieważ komórki mają bardzo małe zasoby.

0

czyli wedlug ciebie dobrze byloby zrobic "kompilator" ktory bedzie przerabial pliki gbc na jar... tak zrozumialem. Fakt ze nie bede recznie przepisywal gierek bo to mija sie z celem w ogóle. Potrafilbym bez wiekszych problemow stworzyc wirtualna mape pamieci GB na kompie i po prostu przerzucac dane pomiedzy komorkami pamieci ale nie wiem na ile pozwolilaby java... Wiadomo ze ASM bylby do tego idealny ale czy jest mozliwosc grzebania w komorce w pamieci na takim poziomie? wydaje mi sie ze nie (moge sie myilc) dlatego myslalem nad jakims prostym interpreterem/kompilatorem tych gier.

Mimo wszystko dzieki za przeczytanie tematu w ogóle ;)

0

Oczywiście, że kompilator. Komórka ma za małą moc by uciągnąć emulator, a kompilator, a w zasadzie translator, można spokojnie odpalić na stacjonarnym. Co do metody tłumaczenia skupiłbym się na próbie dekompilacji kodu (koniec końców w GB jest procek z ZX Spectrum) i powtórnej kompilacji na Javę. Nawet jako kodu nieobiektowego, a proceduralnego. Można wtedy w razie czego przeprowadzić mały refaktoring i uobiektowić kod.

0
Koziołek napisał(a)

Komórka ma za małą moc by uciągnąć emulator

No, no, wychodzi jednak na to, że wszystkie Nokie z S60v3 potrafią udźwignąć emulator GBA. Może nie jest to pisane w Javie pod te przeciętne komórki, ale pewnej firmie (http://www.vampent.com/emu.htm) pisanie emulatorów pod Symbiana idzie bardzo dobrze (wcześniejsze próby napisania emulatora GBA pod Symbiana kończyły się wiele razy wielkimi niepowodzeniami - głównie wydajnościowymi.. rzędu 5 fpsów).

0

GBC ma przy maksymalnym obciazeniu niecale 9MHz wiec bardzo malo jak na nowe telefony. teraz modele maja ponad 100 chyba wszystkie wiec mocy chyba im nie brakuje tylko kwestia tego czy uda sie przerobic kod na tyle zeby byl dobrze zoptymalizowany. Jest cos takiego jak MeBoy i nawet kody zrodlowe ma udostepnione i musze powiedziec ze chlopaki z tego projektu niezle sie napracowali. Zamierzam wszystko od nowa zrobic ale taki wglad do aplikacji zawsze sie przydaje ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1