NextPVR Forums

Full Version: FBA support?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I've noticed that FBA just won't run... I think it's because FBA requires just the rom name when using the commandline.

I wrote up a quick app that uses shellexecute to start fba and it runs fine normally, but GameZone won't run it either.

Is there some way to make the GameZone shell pause so we can do debugging?
FBA?? would you like to enlighten me as to what this is

I can take it from there

Thanks

[EDIT] I believe you are referring to an arcade emulator called Final Burn Alpha, this will need an enchancement to use the display namer and not the actual path/filename like other emulators. I will add this to v2.9 please confirm or correct me.

Thanks
http://fba.emuunlim.com/

edit: my bad, the original fba website seems to have been orphaned some months back. Current releases are here:

http://www.barryharris.me.uk/
That would be FBA. Smile

Here is some quick code to start fba.exe ( in the same directory as the app ) and strip the pathname & extension from the rom filename.

Code:
#include "stdafx.h"
#include <windows.h>

int _tmain(int argc, _TCHAR* argv[])
{
    TCHAR tdrive[255];
    TCHAR tdir[255];
    TCHAR tfile[255];
    TCHAR text[255];
    TCHAR sText[255];
    TCHAR sFba[255];

    if (argc < 2 ) {
        return 0;
    }
    _wsplitpath(
        argv[0],
        tdrive,
        tdir,
        tfile,
        text);
    
    int npos=0;
    
    for(int x=0;x<255;x++) {
        if ( tdir[x] == 0 ) {
            text[npos]=0;
            break;
        } else if ( tdir[x] == '\\' ) {
            text[npos]='\\';
            npos++;
            text[npos]='\\';
            npos++;
        } else {
            text[npos] = tdir[x];
            npos++;
        }
    }

    wsprintf(tdir,L"%s",text);

    wsprintf(sText,L"%s\\%s",
        tdrive,
        tdir);

//    MessageBox(NULL,sText,L"info",MB_OK);

    wsprintf(sFba,L"%s\\fba.exe",
        sText);

    _wsplitpath(
        argv[1],
        tdrive,
        tdir,
        tfile,
        text);

    ShellExecute(
        NULL,
        L"open",
        sFba,
        tfile,
        sText,
        SW_SHOW);

    return 0;
}
not sure why you would post that code? interestingly all it should need is to copy the name that is diplayed instead of using the actual filename, a few lines including user option checking is all that is needed.
That's the code for the fba launcher that I use for front-ends. Smile

wsplitpath parses the full filename into:
Drive, Path, Filename, Extension.

argv[0] is the full filename of the launcher program, ie: c:\fba\startfba.exe
argv[1] is the full filename of the rom, ie: c:\fba\roms\aof2.zip

sFba = c:\fba\fba.exe
Path = c:\fba
rom = aof2

Just thought it'd help.
I have added support for using the displayname which works for FBA in v2.9 of GZ which should be out soon
just curious, do you mean to say that FBA is a new supported emulator (with it's own tab like MAME, ePSXe, etc.), or simply that you've added support that will allow it to work with the XtraEmulators section?

Either way is fine of course...
I have added support to Xtra Emulators which will allow FBA to work with its relatively unique requirement of having the rom name passed as just the filename without a path or an extension.

Thanks
you da man!