Hope lr-fbneo support kof 97 practice mode(kof97pm.zip)
-
Do you know what error is this ?
-
@ninja said in Hope lr-fbneo support kof 97 practice mode(kof97pm.zip):
@barbudreadmon Do you know what error is this ?
You mean the sdl errors ? I don't know, i don't use the sdl port, try with the libretro port instead ?
-
@barbudreadmon
Let me explain what I did in detail.I downloaded Fbneo and extracted all files in the .zip file.
After adding support information to kof97pm.zip in file:
FBNeo-master/src/burn/drv/neogeo/d_neogeo.cpp
I compiled fbneo under FBNeo-master with command
make pi
and got an executable
fbneo
I tryied to run it and encountered error above.
After checking the post Donkey Kong Spooky Remix in Retropie? and the directory structure of Retropie, I found what I need is actually
fbneo_libretro.so
Then I went to
FBNeo-master/src/burner/libretro
and recompiled with
make -j5 -f Makefile platform=rpi3 clean make -j5 -f Makefile platform=rpi3 generate-files make -j5 -f Makefile platform=rpi3
then I got
fbneo_libretro.so
I moved it to
/opt/retropie/libretrocores/lr-fbneo
and replaced the file of same name there.
Now what else do I need to do ?
-
This post is deleted! -
@ninja said in Hope lr-fbneo support kof 97 practice mode(kof97pm.zip):
Now what else do I need to do ?
Nothing, if you launch kof97pm with fbneo through emulationstation it should use your custom compiled core
-
But I have recompiled
fbneo_libretro.so
and placed it in
/opt/retropie/libretrocores/lr-fbneo
So now I can play kof97pm from the EmulationStation interface, just like any other roms in Retropie ?
-
@ninja yes
-
@barbudreadmon OK, I'll give it a try this evening.
BTW, can I submit my changes of FBNeo to it's master branch(also to RetroPie)?If so, future versions of FBNeo and RetroPie will support kof97pm by default, and all global users can play this game automatically in future.
-
@ninja said in Hope lr-fbneo support kof 97 practice mode(kof97pm.zip):
BTW, can I submit my changes of FBNeo to it's master branch(also to RetroPie)?
Sure, you can submit it to https://github.com/finalburnneo/FBNeo
-
Do you know how to set BIOS for kof97pm ?
Because If I want to play kof97pm in practice mode, I have to use UniBIOS(which is in neogeo.zip).But I don't know where and how to set a BIOS for kof97pm in RetroPie.
-
@ninja said in Hope lr-fbneo support kof 97 practice mode(kof97pm.zip):
Do you know how to set BIOS for kof97pm ?
Use the Core Options in RetroArch's quick menu to choose between BIOS versions.
-
@mitu Is it possible to specify a BIOS only for kof97pm ?
-
@ninja Yes, Core options can be saved per-game - there's a menu entry on top of the option list that does that. Just set the options you want for the game in question (opening the RGUI while in-game), save them, then set the options back to the values you want to be the default.
-
@barbudreadmon Thanks for your help. Now I can run kof97pm on my RetroPie.
But there are still some small problems. For example, I cannot see clearly the words on the screen when playing kof97pm.
I guess it's because the support codes added to d_neogeo.cpp might not be complete. So I attached these codes below:
// The King of Fighters '97 Practice Mode static struct BurnRomInfo kof97pmRomDesc[] = { { "232pm-p1.p1", 0x100000, 0x34ccabae, 1 | BRF_ESS | BRF_PRG }, // 0 68K code { "232-p2.sp2", 0x400000, 0x158b23f6, 1 | BRF_ESS | BRF_PRG }, // 1 { "232-s1.s1", 0x020000, 0x8514ecf5, 2 | BRF_GRA }, // 2 Text layer tiles { "232-c1.c1", 0x800000, 0x5f8bf0a1, 3 | BRF_GRA }, // 3 Sprite data { "232-c2.c2", 0x800000, 0xe4d45c81, 3 | BRF_GRA }, // 4 { "232-c3.c3", 0x800000, 0x581d6618, 3 | BRF_GRA }, // 5 { "232-c4.c4", 0x800000, 0x49bb1e68, 3 | BRF_GRA }, // 6 { "232-c5.c5", 0x400000, 0x34fc4e51, 3 | BRF_GRA }, // 7 { "232-c6.c6", 0x400000, 0x4ff4d47b, 3 | BRF_GRA }, // 8 { "232-m1.m1", 0x020000, 0x45348747, 4 | BRF_ESS | BRF_PRG }, // 9 Z80 code { "232-v1.v1", 0x400000, 0x22a2b5b5, 5 | BRF_SND }, // 10 Sound data { "232-v2.v2", 0x400000, 0x2304e744, 5 | BRF_SND }, // 11 { "232-v3.v3", 0x400000, 0x759eb954, 5 | BRF_SND }, // 12 }; STDROMPICKEXT(kof97pm, kof97pm, neogeo) STD_ROM_FN(kof97pm) static void kof97pmCallback() { lans2004_sx_decode(); } static INT32 kof97pmInit() { NeoCallbackActive->pInitialise = kof97pmCallback; return NeoInit(); } struct BurnDriver BurnDrvkof97pm = { "kof97pm", "kof97", "neogeo", NULL, "1997", "The King of Fighters '97 (Practice Mode)\0", NULL, "hack", "Neo Geo MVS", NULL, NULL, NULL, NULL, BDF_GAME_WORKING | BDF_CLONE | BDF_BOOTLEG, 2, HARDWARE_PREFIX_CARTRIDGE | HARDWARE_SNK_NEOGEO, GBF_VSFIGHT, FBF_KOF, NULL, kof97pmRomInfo, kof97pmRomName, NULL, NULL, NULL, NULL, neogeoInputInfo, neogeoDIPInfo, kof97pmInit, NeoExit, NeoFrame, NeoRender, NeoScan, &NeoRecalcPalette, 0x1000, 304, 224, 4, 3 };
Did I miss anything important ?
And what do these codes mean exactly? -
@ninja Are you running the game with
fbneo
directly or withlr-fbneo
? -
@mitu lr-fbneo recompiled by myself
-
@ninja is there a reason for using a custom init ? it doesn't work if you call NeoInit directly instead of your custom kof97pmInit ? HBMAME is using standard init for that hack.
-
@barbudreadmon
Well, I just copied the codes forkof97pla
fromd_neogeo.cpp
and modified them for mykof97pm
.Acutally, I even don't understand what they mean.
-
@ninja said in Hope lr-fbneo support kof 97 practice mode(kof97pm.zip):
Well, I just copied the codes for kof97pla from d_neogeo.cpp and modified them for my kof97pm.
This code is meant to decode sx rom before loading it, it seems to be required for
kof97pla
(seeinit_kof97pla
at the beginning of https://raw.githubusercontent.com/Robbbert/hbmame/master/src/hbmame/drivers/kof97.cpp), but it doesn't seem to be required forkof97pm
(or any other kof97 hack for that matter), see this code around the end of hbmame's kof97.cpp file :... HACK( 2003, kof97pla, kof97, neogeo_noslot, neogeo, neogeo_state,kof97pla, ROT0, "bootleg", "Kof'97 (Plus)(set 1)", MACHINE_SUPPORTS_SAVE ) HACK( 2003, kof97plc, kof97, neogeo_noslot, neogeo, neogeo_state, neogeo, ROT0, "ZKW", "Kof'97 Plus (Black Edition)", MACHINE_SUPPORTS_SAVE ) HACK( 2006, kof97plus, kof97, neogeo_noslot, neogeo, neogeo_state, neogeo, ROT0, "bootleg", "Kof'97 (Plus 2006)", MACHINE_SUPPORTS_SAVE ) HACK( 1997, kof97pm, kof97, neogeo_noslot, neogeo, neogeo_state, neogeo, ROT0, "Kof1996", "Kof'97 (Practice Mode)", MACHINE_SUPPORTS_SAVE ) ...
The 7th member is either
kof97pla
(will trigger the call to theinit_kof97pla
function at boot) orneogeo
(will call the standard neogeo init) -
@ninja also, if you look at this line in your code :
{ "232-s1.s1", 0x020000, 0x8514ecf5, 2 | BRF_GRA }, // 2 Text layer tiles
You can see it's about the text layer in the comment, the file is named
232-s1.s1
, the.s1
extension means it's one of the sx files you are decoding.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.