Development of module-script generator for lr-mess, lr-mame and mame standalone
-
@folly said in Development of module-script generator for lr-mess and mame standalone:
I found a duplicate in the wrong directory, you can remove it if you want to :
./gamate/media/emulationstation/gamelist.xmldeleted. done
-
I updated the old download script (get-cheats-artwork-overlays.sh) to our new location.
So when someone finds it in the thread, it will work also.I choose not to change the names of the handheld systems.
It can be done easily, because I tested this, but also other things have to be changed as well and we already had these names from the beginning.So, for now, I prefer to add an extra condition to detect whether it's a mamedev system name or an own created retropie name.
So when generating for the mamedev tigerh name, lines will be added,
and when generating for the own created retropie tigerh name, lines will not be added.
This should be a fix for now. -
@folly said in Development of module-script generator for lr-mess and mame standalone:
Thanks !
Seems you made a good description.If I have some energy left, I will look into it some more.
I will add the idea of implementing into post 1.You have to keep in mind that if I could implement it, the config structure has to be somewhat the same as we are using now with using lr-mess and mame.
So I have to look at that too then.Right now there are other things that have more priority.
So can't really tell when I am going to try this.I have already added the method for adding NES Datach. Tested and worked perfectly under Ubuntu.
-
@folly Nice work for lr-mess. Please check my post for NES Datach.
-
@dteam said in Development of module-script generator for lr-mess and mame standalone:
@folly
For supracan, I remember that only the first game worked. Has it changed? I never had issues to load that emulator.Read my reply above. All supracan games should work.
-
@folly said in Development of module-script generator for lr-mess and mame standalone:
Great to hear you have found the solution !
I will test your line.
(edit : no luck on trying this oob, using mamearcade_libretro.so on pi4)
Perhaps something to implement for the future if it can be "cracked".Using mamearcade_libretro.so on pi4 does not work for sure because it is just for arcade, not including software list (the same with the one built from source as I told in the post at the beginning)
For example, I am using Linux Debian, I will download this build:
https://buildbot.libretro.com/nightly/linux/x86_64/latest/mame_libretro.so.zip
In your case, you should choose the suitable build for arm here
https://buildbot.libretro.com/nightly/linux/
Noted that mame_libretro.so: arcade + non-arcade (softlist)
mamearcade_libretro.so: arcade only)
I have faced your situation before. I have added to my guide above. -
@hhtien1408 said in Development of module-script generator for lr-mess and mame standalone:
@dteam said in Development of module-script generator for lr-mess and mame standalone:
@folly
For supracan, I remember that only the first game worked. Has it changed? I never had issues to load that emulator.Read my reply above. All supracan games should work.
Same problem with your line. Only one game works, Boom Zoo.
-
@dteam All of supracan games works well under lr-mame with my scripts atm. Tested on Ubuntu Debian 21.04. I am playing dtc_dbz (Datach Dragon Ball). I don't know why you cannot make it work.
-
@hhtien1408 said in Development of module-script generator for lr-mess and mame standalone:
@dteam All of supracan games works well under lr-mame with my scripts atm. Tested on Ubuntu Debian 21.04. I am playing dtc_dbz (Datach Dragon Ball). I don't know why you cannot make it work.
That is really great to hear that it can work !
If we can we will try again for ourselves.
But forgive me for saying, the solution you gave isn't really portable yet to the development of our generation script.
Perhaps nobody sees it, but everything it's quite structured.
The structure is there because it has to work with the most/if not all systems that are in the mamedev source.So we are looking for a solution within our structure and it has to work on the pi4 and if it can work other systems that would be nice too.
Knowing now that you can get it working.
My question is, can you try for us and get it working on the pi4, if you have one ? -
@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
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.