RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Development of module-script generator for lr-mess, lr-mame and mame standalone

    Scheduled Pinned Locked Moved Ideas and Development
    developmentlr-messmamelr-mamescripts
    2.2k Posts 36 Posters 6.3m Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • DTEAMD
      DTEAM @Folly
      last edited by

      @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.

      D H 2 Replies Last reply Reply Quote 0
      • H
        hhtien1408 @Folly
        last edited by

        @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!

        1 Reply Last reply Reply Quote 0
        • D
          dmmarti @DTEAM
          last edited by dmmarti

          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

          H 1 Reply Last reply Reply Quote 1
          • H
            hhtien1408 @Folly
            last edited by

            @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.

            1 Reply Last reply Reply Quote 0
            • H
              hhtien1408 @DTEAM
              last edited by

              @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.

              1 Reply Last reply Reply Quote 0
              • H
                hhtien1408 @dmmarti
                last edited by hhtien1408

                @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.

                D 1 Reply Last reply Reply Quote 0
                • D
                  dmmarti @hhtien1408
                  last edited by

                  @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

                  H 1 Reply Last reply Reply Quote 1
                  • H
                    hhtien1408 @dmmarti
                    last edited by hhtien1408

                    @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.

                    1 Reply Last reply Reply Quote 0
                    • DTEAMD
                      DTEAM @Folly
                      last edited by DTEAM

                      @folly @hhtien1408

                      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

                      F H 2 Replies Last reply Reply Quote 1
                      • F
                        Folly @DTEAM
                        last edited by Folly

                        @dteam

                        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.

                        DTEAMD H 2 Replies Last reply Reply Quote 0
                        • DTEAMD
                          DTEAM @Folly
                          last edited by DTEAM

                          @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

                          F 1 Reply Last reply Reply Quote 0
                          • F
                            Folly @DTEAM
                            last edited by

                            @dteam

                            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

                            DTEAMD 1 Reply Last reply Reply Quote 0
                            • DTEAMD
                              DTEAM @Folly
                              last edited by DTEAM

                              @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/mame

                              new edit:
                              I added the location in my comment above

                              F 1 Reply Last reply Reply Quote 1
                              • F
                                Folly @DTEAM
                                last edited by Folly

                                @dteam

                                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.

                                DTEAMD 1 Reply Last reply Reply Quote 0
                                • DTEAMD
                                  DTEAM @Folly
                                  last edited by

                                  @folly

                                  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

                                  H 1 Reply Last reply Reply Quote 0
                                  • H
                                    hhtien1408 @DTEAM
                                    last edited by

                                    @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.

                                    1 Reply Last reply Reply Quote 0
                                    • H
                                      hhtien1408 @Folly
                                      last edited by hhtien1408

                                      @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.

                                      F 1 Reply Last reply Reply Quote 0
                                      • H
                                        hhtien1408 @DTEAM
                                        last edited by hhtien1408

                                        @dteam said in Development of module-script generator for lr-mess and mame standalone:

                                        @folly

                                        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.

                                        H 1 Reply Last reply Reply Quote 0
                                        • H
                                          hhtien1408 @hhtien1408
                                          last edited by hhtien1408

                                          @Folly @DTEAM @dmmarti
                                          Here are some pictures for my Retropie.
                                          ![Pictures](https://ibb.co/k3rgyzQ
                                          https://ibb.co/xSLPgTG
                                          https://ibb.co/9vjVTPn
                                          https://ibb.co/ZGL714N
                                          https://ibb.co/bgcVyK6
                                          https://ibb.co/bWczbyM
                                          https://ibb.co/2WW0yMf
                                          https://ibb.co/XZjcjbk
                                          https://ibb.co/tY7kSpJ
                                          https://ibb.co/phXKtQH)

                                          1 Reply Last reply Reply Quote 1
                                          • F
                                            Folly @hhtien1408
                                            last edited by Folly

                                            @hhtien1408 said in Development of module-script generator for lr-mess and mame standalone:

                                            @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.

                                            I tried as you suggested, but it seems i am missing something here.
                                            Not sure what though.

                                            Don't have that much time to try every time, I will try again later.

                                            Btw. how good are you games running ?

                                            H 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            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.