Yeah, I been studying it for the past week or so, looks like I should be able to use the nice little framework notaz wrote for execl to not only get some more games running but hopefully have it automagically use the best fenix runtime (and possibly bennugd if I can get it going) and disable the splashscreen so that no script modification is needed by users
Also managed to minimize some issues I was having by taking the busybox static binary and place it in the bin dir in ginge.notaz and rename it to grep or any other function, optimally symlinks inside something like a cramfs image would be more optimal, but for the second it'll do...
Also started adding other libraries that were missing like libsmpeg, made another few games run
*added so I have a place to hunt it back down later...*
Main issues left:
-Python and X11 (conflicts with Pandora's own libs and binaries in both cases)
-BennuGD (doesn't setup environment right for them, still working on it...)
-GLBasic issues (pretty sure I narrowed this one down, GLBasic reads the path to the executable from exepath via /proc/ which returns ginge_sloader's path...)
-touchscreen (tslib calls rpl_malloc for some reason, might just need to recompile it but might just need to configure properly...) and really need to add support for the GP2X's independent diagonal ordinals (only affects a few games though)
-Certain Wiz specifics (anything using libopengles_lite, their SDL with SetLCDMode() and missing other libs/binaries I'm forgetting about... dunno what to do here, but might try and write hooks that will capture certain function calls and use the Pandora 3D instead... definitely a long shot and beyond my capabilities no doubt, but now I have the header files to reference
)
-Continue to weed out stuff already ported to Pandora (already eliminated 69+ working titles that we don't need GINGE for due to ports or enhanced versions) and locate GINGE prepacks that could be minimized/redone.
-Polish up the stuff for using GINGE like a runtime PND and making smaller GINGE prepacks (save space on Pandora, make specific packs of things like Alex's games or Ruckages games or even all the game and watch style games, easier to deal with than 350+ unique PND's)
-Choose the more solid version of a game/app (GP2X or Wiz) incase both versions are working but one is newer or more stable!
-missing libs, I intend to modify ginge_prep to use ldd to print out what libs are linking to what to ensure nothing is still hitting the pandora firmware libs! Then find or build the proper/substitute ones.
-look at using gmenu2x as the launcher, always felt it was the better option when I had a true GP2X setup and feel that a homebrew menu for running homebrew games is always a nice touch (nevermind the time saved by not having to use gp2xmenu and slow scrolling through the list)
-Games with odd resolutions (320x200 wind up with junk on bottom of screen, resize, center and cover up junk) and games that are 640x480 wind up only showing top left corner.
-Do we bother with looking @ loading up a copy of the I2C from an original GP2X for the serial number (might be useful for commercial game support...
http://wiki.gp2x.org/articles/i/2/c/I2C.html)
-Try and somehow either "symlink" /mnt/sd/ back to maybe the appdata folder for GINGE and then "symlink" the GP2X program we're executing there (I said symlink in brackets cause we're dealing with fat here, it's slightly different...) Using a UnionFS as RO and overlay the appdata folder ~ see here:
http://unix.stackexchange.com/questions/27449/mount-a-filesystem-read-only-and-redirect-writes-to-ram is a step towards this, just gotta figure out if I can create and chown /mnt/sd safely (one time thing requiring root access only once hopefully, but this is only if I fail @ finding a way to do it all legit-like without root privledges)
-Binary detection (Is it GP2X or Wiz, sure there's some barriers to this, but there should also be a few tell-tail signs too...)
-(Never gonna happen, but added for posterity...) Simulate/Emulate second core, probably not worth it for the 2-3 games and handful of demos it'll benefit... for example, just porting Egoboo to Pandora would be simpler
(but I could try and do something similar to how notaz wrapped up the mmuhack and tie it to Pandora's GLES drivers...)
-Check how much memory is being allocated, Wiz might need the full 64MB, whereas GP2X typically only had access to the first 32MB... (*facepalm* that explains some of the segfaults I've been getting with GP2X stuffs too! Paeryn's HW SDL uses a 15MB chunk of the higher memory area!)
-Wiz has a large amount of games where audio isn't being output...