Gba Emulator That You Can Adjust The Screen Size


Maybe a port of the maemo version would be better, as the n900 has the same hardware as Pandora and some Problems should be solved already.
http://talk.maemo.org/showthread.php?t=67038
 
mcobit said:
Maybe a port of the maemo version would be better, as the n900 has the same hardware as Pandora and some Problems should be solved already.
http://talk.maemo.org/showthread.php?t=67038

no it's actually all the same recompiler. noone has really changed a thing but implementing some different rendering functions.

i've put my hopes to the gpsphone port, but it's even older than notaz wiz port (it's the gp2x version being used there).
the guy doing the maemo port also had the same problem we're experiencing, and only noticed in some makefile comments that some magic -fno-<whatever> flag made the games launching. but i've also tried the compiler flags he was using without success.
 
Last edited by a moderator:
mcobit said:
I am sorry, made you type this again...

no deal, nothing to be sorry about. you're just trying to help :)
 
Last edited by a moderator:
One more idea:
Could it help to compile it for armv6, as all the other devices are armv6 and Pandora is 7?
 
Lol, you're almost too impressive! :)

Edit: oh and this is wonderful news by the way...
 
notaz said:
ok it works for me, I guess I'll polish it a bit and release.

awesome!

now i wonder:

-) what was the problem all others including me experienced - if there was such a thing
-) how did you find it
-) what was the solution to it
 
Last edited by a moderator:
The main problem is obvious: We are not as awesome as notaz. :p
 
crow_riot said:
-) what was the problem all others including me experienced - if there was such a thing
-) how did you find it
-) what was the solution to it

Like planned, I started from the Wiz version, and as that has custom framebuffer code, I've ifdefed that out and put code from PCSX instead. With that done, menu started fine, but the game would hang shortly after starting. To figure out what's going on, I've disabled optimization add added debug information (-g) to compiler options. Starting such version under gdb and interrupting it (ctrl-c) after it hangs, I could see there are 2 threads and both of them wait on cond variable in sound.c .
After reviewing the code and printing out some variables with gdb, I found out that main thread produced some sound and started waiting for sound thread to play it, but sound thread did not start playing as SDL asked for more data on it's first call then the main thread ever produced. After some more code review it turned out gpSP did not check buffer size after setting it, was assuming it set smaller buffer that SDL really accepted, causing it not to produce enough sound data in it's main thread. To fix that, I've made it to read buffer size back from SDL_AudioSpec that SDL_OpenAudio() returns, and the hang was gone.

There is still another problem though - sound only works properly if you compile without optimization, to fix it, I'll need to:
- turn on all compiler warnings - gpSP has them off for some reason
- find out the c file responsible by disabling optimization selectively on source files
- find the exact optimization causing the problem by disabling optimizations selectively (-f-no-whatever-optimization) to get more clues about the problem
- review code, perhaps move portions to separate .c file temporary to find out what's responsible

Don't know about all those cache/bad jump problems, it just worked for me. Maybe only GP2X-SDL version suffers from it or something.
 
Last edited by a moderator:
thanks for explaining your steps, i really appreciate that!


... wonder what happens if i fix the SDL_audio stuff of my version ...
 
Done at last:
http://repo.openpandora.org/includes/download.php?app=package.gpsp.notaz

I've done a fair bit of tuning so it runs nicely on pandora, and am quite happy with it. It was supposed to be a weekend project but ended up as hack-every-night-for-almost-a-week project, ohwell I must be getting old and inefficient.

I've uploaded the source as a git repo:
http://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=gpsp.git;a=summary
 
notaz said:
Done at last:
http://repo.openpandora.org/includes/download.php?app=package.gpsp.notaz

I've done a fair bit of tuning so it runs nicely on pandora, and am quite happy with it. It was supposed to be a weekend project but ended up as hack-every-night-for-almost-a-week project, ohwell I must be getting old and inefficient.

I've uploaded the source as a git repo:
http://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=gpsp.git;a=summary

wow, great! the fixes in arm code are way beyond nd my knowledge, so i couldn't have done the port. thanks a lot for doing it!
 
Last edited by a moderator:
Wow!! I'm looking forward to testing it! Thank you for making the Pandora even more awesome!

Edit: just tested, amazing work. Everything is silky smooth, and emulation is great. Thank you Exophase and Notaz for this!
 
Back
Top