Release Final Burn Alpha ported to Pandora (FAQ in first post)


oh well we could have collaborated or something ... probably you haven't followed the thread but i've picked it up a few days ago ... -_-


*edit*


just to complete it ... i've attached my binary (fba-pnd) and picorestore. the sources are also included. launch with --samplerate=44100...


if anyone wants to pick it up - seems too many people working on the same thing right now. better off to paperwars again.

fba-pnd-beta.zip
 

Attachments

  • fba-pnd-beta.zip
    4.7 MB · Views: 836
Last edited by a moderator:
@crow_riot


Just read the whole thread and really sorry, wasn't trying to cause problems or try to undermine your effort. I started this as a learning project and my port really doesn't run well. I've been working on moving it to sdl for future portability but if we could work together to get performance and sound working then that would be great.


Dave
 
Don't chuck it in yet crow_riot! You're very close to that bounty.


Dave18: Depending on the rom I'm either getting segfaults, or it locks up on the 'loading zip' screen (at 0% in progress bar)


Crow_riot: Appears to be loading roms fine; it gets through the zip loading screen but then I get a blank display.


In both cases (unless there is an exit button combo I don't know about) a hard reset is required. Because of this I can't give you a pnd_out. Roms are from my GP2X collection - they should be ok. But I don't remember if my collection was 100% compatible.
 
Just wanted to say a big thanks to you guys currently working on this, definitely at the top of my most wanted list.. can't wait to fire me up some shmups..
 
Don't chuck it in yet crow_riot! You're very close to that bounty.


Dave18: Depending on the rom I'm either getting segfaults, or it locks up on the 'loading zip' screen (at 0% in progress bar)


Crow_riot: Appears to be loading roms fine; it gets through the zip loading screen but then I get a blank display.


In both cases (unless there is an exit button combo I don't know about) a hard reset is required. Because of this I can't give you a pnd_out. Roms are from my GP2X collection - they should be ok. But I don't remember if my collection was 100% compatible.
itl depend what version of fba this is based on some gp2x roms worked on the psp port some didnt even though they all worked on the gp2x
 
Strange. If I try an invalid rom it justs exits with an error message. Try running it from shell using fba rather than fba.sh as even if you can't close the sdl window you should be able to read to message behind it.


Once the roms starts either (Left shoulder + right shoulder + start) or q will quit.


I have noticed that if I disable sound it hangs but it's never crashed on me with sound enabled.


Dave
 
Last edited by a moderator:
^ No problems that I can see, false positive I guess?


Dave: Tried your suggestion, here's my output from a couple of attempts:

gruso-openpandora:/media/mmcblk0p1/q_fba$ ./fba ./19xx.zip


About to init BurnLib


Finished init BurnLib


Attempt to initialise '19XX - the war against destiny (951207 USA)'


before drawstring


past drawstring


past pop videobuffer


video init complete


Segmentation fault


gruso-openpandora:/media/mmcblk0p1/q_fba$ ./fba ./mslug.zip


About to init BurnLib


Finished init BurnLib


Attempt to initialise 'Metal Slug - super vehicle-001'


before drawstring


past drawstring


past pop videobuffer


video init complete


There was an error starting 'mslug'.


Driver initialisation failed! Likely causes are:


- Corrupt/Missing ROM(s)


- I/O Error


- Memory error


---- Shutdown Finalburn Alpha plus ----


(The latter may be the rom's fault)


Crow_riot: No progress here. For science, I tried launching without specifying a game. I got a 4:3 black overlay stuck on the screen, but I was able to operate the OS beneath it. I opened a terminal to do an fbgrab, but it only grabbed the terminal.
 
hey sorry i forgot to mention the shortcuts - was already late...


esc: exit the game


f: toggle frame display


select: insert coins


start: start button


space: enter test mode


enter: p1+p2 start (needed to get out of test mode again)


played with dpad and a/b/x/y and shoulder buttons.


to start a game you need to add the path to the rom as an argument like on dave's version.


if it crashes and you are stuck on a black screen, picorestore is needed. so a script that launches


./fba-pnd <path/to/rom>


./picorestore


should do it
 
I think all the games I tested were toaplan ones. Sounds like there are driver issues to solve. There are some strange looking memory allocation routines floating about that might also be causing problems.
 
Oh, that's what picorestore is for. I can give you some output now: (@crow_riot)

gruso-openpandora:/media/mmcblk0p1/q_fba_crow$ ./mslug.sh


enter - platform_initialize


xenv: X vendor: The X.Org Foundation, rel: 10704000, display: :0.0, protocol ver: 11.0


xenv: display is 800x480


switching to 320x240@16


/dev/fb1: 320x240@16


fbdev initialized.


writing fir:


Simple pixel doubling (no filter)


leave - platform_initialize


---- Shutdown Finalburn Alpha plus ----


KDSETMODE KD_TEXT: Invalid argument


gruso-openpandora:/media/mmcblk0p1/q_fba_crow$


Same for all roms I tried (194x games, mslug, avp).
 
Last edited by a moderator:
crow_riot


Here my sound src, you should be able to use it as is, just need to link to -lsdl


Dave


snd.zip
 

Attachments

  • snd.zip
    3.8 KB · Views: 201
I think I've fixed the drivers, I've tested


1941


hellfire


vfive


mslug


donpachi


and they all work. They all run silky smooth with the --no-sound option but for some reason the sound makes them choppy. The fps shows as around 15-25 but rather than run slowly huge chunks of frames seem to go missing.


I thought it was the extra sound code I added but it runs just as badly with the original sound code.


Anyway, another test version attached.


fba.zip
 

Attachments

  • fba.zip
    1.7 MB · Views: 246
(some guesswork here)


hey dave i've gone through your sound code:


the problem is that you change the number of samples to something around 512 - the old code calculated the number of samples using the sample rate and the required fps:



Code:
nBurnSoundLen = ((nBurnSoundRate * 100  ) / nBurnFPS );


that should be the number of samples per frame - and then if everything is fine you should get correct frame rates, otherwise the emulator fills too much sound into the buffer - which causes your framerate to drop
 
crow_riot


Thanks, that has helped. I was working with the gp2x source which did have a complicated game loop and I think you're right in saying was being affected by my number of samples. I looked at the Cannoo source and it has been simplified at some point so I've copied that routine across along with the slightly different routine in the snd.cpp file and things are working much better.


It's not quite fullspeed though and I don't know if using SDL for everything is adding too much of an overhead or if I've done something inefficient.


Dave
 
ok, i've also continued working a bit on my port; have tried dave's sound routines, also tried my own sdl sound version, but both with not much luck to get the sound working better.


then reverted "everything" back and made it simple/stupid with oss again and now it works ok for me, including a frame limiter.


attached another beta to test, now with super-cool zenity file chooser (thanks to the one who's written pnd_cookbook about that!)


launching fba.sh should be enough now...


i've tested several roms, some work, some crash - but i didnt spend much time on debugging those problems yet, so bare with me.

fba-pnd-beta2.zip
 

Attachments

  • fba-pnd-beta2.zip
    988.6 KB · Views: 229
We should definitely be able to get it all working between us.


Here's my latest, sound is much better but not full speed on mslug.


Tried adding capex front end but having problems launch an sdl program from another sdl one.


fba.zip
 

Attachments

  • fba.zip
    1.8 MB · Views: 238
Back
Top