Development of module-script generator for lr-mess, lr-mame and mame standalone
-
@hhtien1408
I confirm ! It works. The first time, I didn't copy your mame_libretro.so properly
Quick question, what is your best bsnes emulator in your list? -
Now that you can get it working also....
Does it also work if you use the lr-mame source install ?
I know it will take some time to compile, but can you try that too ? -
@folly
From precompile they only use mamearcade_libretro.so and not mame_libretro.so. My last update is 2 weeks ago. If nothing change, It will be the same result. I'll try from source today. -
@folly I sold rpi3 last year so I cannot test for you. If my command lines do not work for you and others, the problem may be the difference in OS (just a guess). Make sure you download the lr-mame suitable for your rpi4 arm from buildbot RA as I reminded you.
If I have time, I will upload pictures and videos later.
On my thought, rpi4 should work due to the linux similarity btw rpi4 and Linux Debian Gnome40.
So my solution is only confirmed works well under Ubuntu Debian! -
I still use the original Valerino version of the additional launcher script (run_mess.sh)....but here's how I got the NES Datach roms to launch.
I didn't spend time breaking it out into it's own system as I was just experimenting on getting it working (so I just added it to the existing nes config).
This is the line I added to my /opt/retropie/configs/nes/emulators.cfg file:
lr-mess-nes-datach = "/home/pi/RetroPie-Setup/scriptmodules/run_mess.sh /opt/retropie/emulators/retroarch/bin/retroarch /opt/retropie/libretrocores/lr-mess/mess_libretro.so /opt/retropie/configs/nes/retroarch.cfg nes /home/pi/RetroPie/BIOS -cart1 datach -cart2 %ROM%"
You have to add the "-cart1 datach -cart2" values into the emulator's line in order for it to pass it all correctly for run_mess.sh and Retroarch to use it.
Tested and working on my Pi 4 RetroPie build.
Hope that helps,
David
-
@folly lr-mame buit from source should not be worked with softlist (just for arcade only). The buildbot I suggested is for both arcade and softlists. Please read my guide again.
-
@dteam That’s why I should use the binary from buildbot (mame_libretro.so including both arcade and non-arcade - softlists). Please read my guide above again. All your problems are my problems I used to face.
-
@dmmarti Great to make it work under lr-mame with Datach. Can you write you runcommand again? Right?
I used to make it the same under lr-mame but it just bring me to NES system, I should choose Datach and insert cart 2 manually.lr-mame-nes-datach = "/opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-mame/mame_libretro.so /opt/retropie/configs/nes/retroarch.cfg nes /home/RetroPie/BIOS -cart1 datach -cart2 %ROM%"
I don’t know run_mess.sh is for?
Hope you could help me. In fact, I make Datach work under mame standalone (not lr-mame) even though lr-mame works well with Msupracan games. -
@hhtien1408 .. the work that @Folly and @DTEAM have been doing is a further continuation of the original script/idea from @valerino (see his other post for it and the run_mess.sh script information).
The way we are making it work with Retroarch and the lr-mess core on a RetroPie build is by sending an additional MESS *.cmd launcher file to the core (much like you used to do with standalone MESS in the past).
This way we do not use software list conformity (don't have to use MESS's special rom filename, etc)...and we can pass additional parameters (like different -cart assignments, BIOS assignments, and RAM configurations).
This makes is pretty easy to get any MESS based system up and running with Retroarch/MESS core in Retropie. Although, like this NES Datach system, sometimes we have to play around a bit with the passed parameters in order to get it to work. TI-99 I think was another one that had some special tweaks to it (can't remember exactly what).
So, in this way, passing "-cart1 datach" and then "-cart2 %ROM%" ... let's us use the MESS *.cmd launcher script to get it working.
I'm sure there's other ways, but in my testing this morning, that's how I got it working. These Datach roms are special somehow. I downloaded the official stand alone MAME today and verified it does not have a system called "nes_datach" but was also able to launch these roms using the "cart1 datach -cart2 romfile" method.
Hope that makes sense,
David
-
@dmmarti
It just bring me to NES system, I should choose Datach and insert cart 2 manually. If I paste the command line (nes datach -cart2) into official mame, it should work.
Maybe enabling the softlist of lr-mame/mess does not allow my code line to pass to assign cart 1 (datach) and cart 2 (game like dtc_dbz). Your method does not use softlists, so no hash folder located at /BIOS/mame is not needed? Right?
Could you explain step by step to use your method if I am using lr-mame (opt/retropie/libretrocores/lr-mame/mame-libretro.so)? Thanks.
P.S. Success with mame standalone as I told in my guide above but no RA. -
All supracan games work wells also with (emulators.cfg):
mame-basename = "/opt/retropie/emulators/mame/mame -v -c supracan %BASENAME%" mame-basename-autoframeskip = "/opt/retropie/emulators/mame/mame -v -c -autoframeskip supracan %BASENAME%" lr-mess-cmd = "/opt/retropie/emulators/retroarch/bin/retroarch --config /opt/retropie/configs/supracan/retroarch.cfg -v -L /opt/retropie/libretrocores/lr-mess/mess_libretro.so %ROM%" mame-system-supracan-cart = "/opt/retropie/emulators/mame/mame -v -c supracan -cart %ROM%" mame-system-supracan-cart-autoframeskip = "/opt/retropie/emulators/mame/mame -v -c -autoframeskip supracan -cart %ROM%"
for Basename you need to add this rom path in opt/retropie/configs/mame/ mame.ini (for people who want to use the hashfiles (gamelist))
/home/pi/RetroPie/roms/supracan
I deleted my supracan folder and regenerated it with the script. Everything is fine now. I don't know why only the first game loaded before reinstalling everything.
The non-working options are :
lr-mess-basename = "/opt/retropie/emulators/retroarch/bin/retroarch --config /opt/retropie/configs/supracan/retroarch.cfg -v -L /opt/retropie/libretrocores/lr-mess/mess_libretro.so %BASENAME%" lr-mess-system-supracan-cart = "/home/pi/RetroPie-Setup/scriptmodules/run_mess.sh /opt/retropie/emulators/retroarch/bin/retroarch /opt/retropie/libretrocores/lr-mess/mess_libretro.so /opt/retropie/configs/supracan/retroarch.cfg \supracan /home/pi/RetroPie/BIOS/mame -autoframeskip -cart %ROM%" mame-cmd = "/opt/retropie/emulators/mame/mame -rompath /home/pi/RetroPie/roms/supracan -v -c %BASENAME%" mame-cmd-autoframeskip = "/opt/retropie/emulators/mame/mame -rompath /home/pi/RetroPie/roms/supracan -v -c -autoframeskip %BASENAME%"
sometime, with those last options, the emulator load but not the game
-
Confusing, but yes indeed, with the normal -cart lines they do load properly.
I have had that working too, earlier on.
But some games don't work as they should and sound is missing too.
Do you have that same problem ?
I was thinking the lr-mame_libretro.so way booted them better.
Btw. I also tried with the mame-basename without succes, and yes I added /home/pi/RetroPie/roms/supracan in mame.ini .
It seems it is not loading the rompath from the mame.ini.
Forcing it in the commandline is working now using this :/opt/retropie/emulators/mame/mame -hash /opt/retropie/emulators/mame/hash -rompath /home/pi/RetroPie/roms/supracan -v -c supracan sangofgt
I will test this part again on where it is going wrong.
I did have a go again with with the lr-mame_libretro.so.
No luck with the lr-mame_libretro.so nightly on pi4, it seems a 64bit one, and I run 32bit OS.
So tried on my x86_64 ubuntu 20.04.
Well boomzoo loaded, but others, no. -
@folly said in Development of module-script generator for lr-mess and mame standalone:
No luck with the lmame_libretro.so nightly on pi4, it seems a 64bit one, and I run 32bit OS.
So tried on my x86_64 ubuntu 20.04.
Well boomzoo loaded, but others, no.Like you, It doesn't work on my side for all games. I played with UI parameters and everything stopped working ! The 5 options above are the best ones for me.
For
mame-basename = "/opt/retropie/emulators/mame/mame -v -c supracan %BASENAME%"
It works well for me. It's strange if it doesn't work on your side
Seems to be a picky emulator.I'll retry hhtien1408 solution
-
Seems the mame basename line doesn't work on both x86_64 and the pi4.
But it works if I force the rompath.Where is your mame.ini located ?
Mine is in :
/home/pi/RetroPie/roms/mame/mame.ini -
@folly said in Development of module-script generator for lr-mess and mame standalone:
Seems the mame basename line doesn't work on both x86_64 and the pi4.
It works on my Pi4
Where is your mame.ini located ?
in
opt/retropie/configs/mamenew edit:
I added the location in my comment above -
Perfect !
That works !Just tried the lr-mame_libretro.so nightly on my x86_64 renaming it as /opt/retropie/libretrocores/lr-mess/mess_libretro.so
It just runs trough the runmess.sh script just like mess_libretro.so does.
The file-size is a bit different but other than that it's looks the same package but just the name is different. -
Just tried the lr-mame_libretro.so nightly on my x86_64 renaming it as /opt/retropie/libretrocores/lr-mess/mess_libretro.so
It just runs trough the runmess.sh script just like mess_libretro.so does.
The file-size is a bit different but other than that it's looks the same package but just the name is different.Good to know
-
@dteam Ok. Because I use softlists and cart type so I do not need -cart. All roads lead to Roma in the end. Different methods, same result. All supracan games should work as they are.
-
@folly Sound weird. Do you download the suggested lr-mame nightly I gave you download link? Do you use the same method with me via softlist and cart type chosen? I do not use automatic script just do manually. It should work under Ubuntu. Maybe you miss some points on the road.
-
@dteam said in Development of module-script generator for lr-mess and mame standalone:
Just tried the lr-mame_libretro.so nightly on my x86_64 renaming it as /opt/retropie/libretrocores/lr-mess/mess_libretro.so
It just runs trough the runmess.sh script just like mess_libretro.so does.
The file-size is a bit different but other than that it's looks the same package but just the name is different.Good to know
Thanks for letting me know. I will try run_mess.sh when I have free time later.
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.