barbudreadmon / fbalpha-backup-dontuse-ty

Deprecated port of Final Burn Alpha to Libretro (v0.2.97.43).
61 stars 43 forks source link

Need help with subsystems #213

Closed barbudreadmon closed 5 years ago

barbudreadmon commented 6 years ago

@fr500 @twinaphex So i was trying to implement a better way to load md/sms/gg/cv/sgx/sg1k/pce/tg16 roms.

The current method is to prefix the name of the rom and remove the extension, let's say we want to load the sms rom "zool.zip", the command line would look like this : retroarch -L fbalpha_libretro.so sms_zool

What i would like to do is being able to also load it this way : retroarch -L fbalpha_libretro.so zool.zip --somearg=sms

I tried the RETRO_ENVIRONMENT_SET_SUBSYSTEM_INFO call by using something like this : static const struct retro_subsystem_info subsystems[] = { { "Arcade", "arcade", NULL, 0, 0x101 | 0x1000 }, { "Master System", "sms", NULL, 0, 0x102 | 0x1000 }, { NULL }, }; but it doesn't seem to work this way.

Any lead on how to implement this ?

barbudreadmon commented 6 years ago

Ok, i think i figured it out, basically i was calling RETRO_ENVIRONMENT_SET_SUBSYSTEM_INFO too late.

barbudreadmon commented 6 years ago

It seems to work, if someone more familiar with this feature could take a look and tell me if i'm not overlooking something, it would be nice.

andres-asm commented 6 years ago

ahh cool!!! the only one remotely familiar with it would be me I guess :)

Gonna take a look now

andres-asm commented 6 years ago

looks alright, the only thing missing would be to try to start describing save data for the subsystems so saves would save in the correct places with the correct names and extensions.

andres-asm commented 6 years ago

@barbudreadmon need any help or is this solved?

barbudreadmon commented 6 years ago

@fr500 i'm not exactly sure what you meant by this actually, so yes any help would be really kind.

andres-asm commented 6 years ago

I'm sure it was working for you from CLI but from the GUI it wasn't https://github.com/libretro/RetroArch/pull/6883

Sent a PR so it works from the GUI.

Got samurai spirits RPG to "load" image

But all I got afterwards was a blank screen. Log:

[WARN] [WGL]: wglSwapInterval() failed.
[libretro WARN]     reading track  1 - W:\roms\Emulated\Console\SNK Neo-Geo CD/Shinsetsu Samurai Spirits - Bushidohretsuden (1997)(SNK)(Jp)(Track 01 of 32)[!].iso
[libretro WARN]     playing track  1 - W:\roms\Emulated\Console\SNK Neo-Geo CD/Shinsetsu Samurai Spirits - Bushidohretsuden (1997)(SNK)(Jp)(Track 01 of 32)[!].iso
[INFO] [GL]: VSync => off
[INFO] [WGL]: wglSwapInterval(0)
[libretro ERROR]   - Z80 port 0x0080 -> 0x00.
[libretro ERROR]   - Z80 port 0x0080 -> 0x00.
[libretro ERROR]   - Z80 port 0x0080 -> 0x00.
[libretro ERROR]   - Z80 port 0x0080 -> 0x00.
[libretro ERROR] *** Switching CD mode to audio while in CD-ROM mode!(PC: 0xC0BAC4)
[libretro WARN]     playing track 28 - W:\roms\Emulated\Console\SNK Neo-Geo CD/Shinsetsu Samurai Spirits - Bushidohretsuden (1997)(SNK)(Jp)(Track 28 of 32)[!].wav
[libretro WARN]     reading track  1 - W:\roms\Emulated\Console\SNK Neo-Geo CD/Shinsetsu Samurai Spirits - Bushidohretsuden (1997)(SNK)(Jp)(Track 01 of 32)[!].iso
[INFO] [GL]: VSync => on
[INFO] [WGL]: wglSwapInterval(1)

Also after resetting the CD is no longer "loaded" for some reason

andres-asm commented 6 years ago

I tried loading MD roms and I couldn't, are the FBA megadrive roms different from regular roms?

barbudreadmon commented 6 years ago

@fr500 I didn't try samsho rpg yet actually, so perhaps there is an issue with it. Is that the fan translated iso or an unpatched iso ?

Yeah, for other consoles it needs specific romsets, most of them come from an old version of MESS (they don't update those), some from No-Intro, there is also quite a few hacks, fan translations and homebrews i patched myself directly from romhacking.net. Actually i have been thinking about syncing the romsets with No-Intro, but i don't think upstream would be ok with forcing end users to download new romsets for consoles.

Edit: ok, i just tried samsho rpg and it doesn't work for me either, it could be an upstream bug, i'll investigate.

barbudreadmon commented 5 years ago

Closing, subsystems work properly.