GBA Spiele umconverten?


Elektranox

Well-Known Member
Joined
Dec 3, 2005
Messages
1,805
Age
34
Location
Oldenburg, Germany, Earth
Website
elektranox.dyndns.org
Tach,
ich hab da sone Idee, die mir nicht mehr ausm Kopf will ^_^, also der GBA und die GP2X benutzen ja beide einen ARM. Das heißt das Problem sind Sound und Grafik?! Könnte man dann nicht "einfach" diese Teile des Roms mit einem Converter von GBA zu GP2X umconventieren, so dass sie direkt auf der Hardware laufen?!
mfG,
Elektranox

P.S.: Erstmal gehts nur um die Theorie... ;)
 
Man wird IMMER ein Programm benötigen, was die vom Spiel erwartete Hardware emuliert. Das Spiel spricht eine HW an und erwartet eine gewisse Antwort. Wenn die dann nicht kommt... Gute Nacht schöne Welt. CPU Befehle kann man zu gewissem Maße 1:1 an die des GP2X schicken, aber sonst muss immernoch alles emuliert werden. Aber um dich doch noch zu erfreuen: Da die CPU Core größtenteils nicht emuliert werden muss, sind Vorraussetzungen, wie am PC Emulator nicht nötig. Es WIRD eines Tages gehen und zwar PERFEKT.
 
Emu&Co said:
Man wird IMMER ein Programm benötigen, was die vom Spiel erwartete Hardware emuliert. Das Spiel spricht eine HW an und erwartet eine gewisse Antwort. Wenn die dann nicht kommt... Gute Nacht schöne Welt. CPU Befehle kann man zu gewissem Maße 1:1 an die des GP2X schicken, aber sonst muss immernoch alles emuliert werden. Aber um dich doch noch zu erfreuen: Da die CPU Core größtenteils nicht emuliert werden muss, sind Vorraussetzungen, wie am PC Emulator nicht nötig. Es WIRD eines Tages gehen und zwar PERFEKT.

Der Emu macht doch nichts anderes, als zu kuggen was das Programm/Spiel will, es an die "echte" Hardware weiterzugeben und eine dementsprechende Antwort zu geben, oder? Dann könnte man den Emu doch einfach ins Spiel intrgrieren?! Also man läßt vorher ein Programm über die *.gba Datei laufen, das kuggt was das Spiel in echt will und generiert eine alternative für die GP2X...
 
Hmm, man taket die CPUs von Gp2x genauso wie bei GBA runter und 2te CPU übernimmt die Emulation des Sound und Grafik.


Ich denke das ist einfach machbar oder?
 
Wenn du den Grafik und Sound Emulator auf 8 kB bekommst, klar. Um die 2te CPU EFFEKTIV verwenden zu können, muss das Programm in den Cache der CPU passen. Dann jagt man nurnoch die unemulierten Daten an die 2te CPU und der macht das emuliern und schickts zurück.

Elektranox: Ääääh, nein. Man kann nicht einfach eine GBA Rom nehmen und "kuggt was das Spiel in echt will und generiert eine alternative für die GP2X". Die Daten sind fragmentweise im Spiel vorhanden. Texturen blablabla. Sie werden während des Spieles in Echtzeit von einer Spieleigenen Engine zuzsammengesetzt. Um das, was du da versuchst machen zu können, müsste man erstmal das ganze Spiel im Quellcode haben. Das ist schwer zu machn. Man kann es zwar deassemblieren, aber dann müsste man sich für jedes Spiel einzeln durch Quelltexte kämpfen, die ganze Lexikas füllen würden. Willst du das machen? Ich wage es zu bezweifeln. 8) Automatisieren ginge nur zu einem gewissem Grad. Jedes Spiel ist nunmal anders. Also, is nich...
 
Emu&Co said:
Wenn du den Grafik und Sound Emulator auf 8 kB bekommst, klar. Um die 2te CPU EFFEKTIV verwenden zu können, muss das Programm in den Cache der CPU passen. Dann jagt man nurnoch die unemulierten Daten an die 2te CPU und der macht das emuliern und schickts zurück.

Elektranox: Ääääh, nein. Man kann nicht einfach eine GBA Rom nehmen und "kuggt was das Spiel in echt will und generiert eine alternative für die GP2X". Die Daten sind fragmentweise im Spiel vorhanden. Texturen blablabla. Sie werden während des Spieles in Echtzeit von einer Spieleigenen Engine zuzsammengesetzt. Um das, was du da versuchst machen zu können, müsste man erstmal das ganze Spiel im Quellcode haben. Das ist schwer zu machn. Man kann es zwar deassemblieren, aber dann müsste man sich für jedes Spiel einzeln durch Quelltexte kämpfen, die ganze Lexikas füllen würden. Willst du das machen? Ich wage es zu bezweifeln. 8) Automatisieren ginge nur zu einem gewissem Grad. Jedes Spiel ist nunmal anders. Also, is nich...

Mh, ich dachte man muss ihm nur erklären, wie die "neuen" Display Werte heißen und die Engine läuft auch mit dem :S Also nen Emu macht das doch Ähnlich, oder? Er schaut, wo der GBA hinzeichnen will und macht es auf dem GP2X Display nach?! Dann könnte man doch versuchen die Adressen die das Rom anspricht gegen die des GP2Xs auszuwechseln. Da sie sich nicht ändern auch per Skript ^_^

P.S.: Mir ist schon klar, dass das nicht das gelbe vom Ei ist, aber ich will einfach wissen, ob es in der Theorie möglich ist :p
 
In der Theorie ist das sicher machbar, aber man müsste ewig suchen, um die Teile, die zu verändern sind, zu finden. Also dann doch lieber in Echtzeit. 8)
 
den 940 direckt an den gba weiter zu reichen war schon mehrmals thema, allerdings gibt es da 2 größere probleme.
1. mmu, der 940 hat keine.
2. man kann nicht auf 16mhz runter, bei 30mhz rum ist schluss.

Und auch die mmu vom 920 kann man unter linux nicht ansprechen, auch da müsste man erst auf einen raw hardware modus warten (sdk2x oder hh wie squidge es nennt) allerdings wird das alles noch einige zeit dauern.

Außerdem ist dieses mappen ziemlich komplex vonwegen timeing und abfangen von aufrufen, da müsste sich wirklich jemand extrem viel zeit nehmen, ich würde nicht drauf wetten das dies jemals geschieht.

Derzeit auf gba emulation zu hoffen ist ziemliches wunschdenken und wird mit ziemlicher sicherheit nicht passieren.
 
Back
Top