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.2m 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
      I'm setting up a new SD card on a old Pi3 b+(not that old !!). I'll do tests on a Pi3.

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

        @dteam
        In the new 4.7.8, they install Lr-mess for all systems by default if you install lr-mess. It's the setup for Hash files. Am I right?

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

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

          @dteam
          In the new 4.7.8, they install Lr-mess for all systems by default if you install lr-mess. It's the setup for Hash files. Am I right?

          I checked some logs, the hash files are installed with mame and not with lr-mess.
          But I think lr-mess uses the hash files when mame is installed.

          In the install log of lr-mess I found this error :
          cp: cannot stat '/home/pi/RetroPie-Setup/tmp/build/lr-mess/hash': No such file or directory
          Here it tries to copy the hash files but there are no files to copy.

          I checked the module-script lr-mess.
          It will only add for these systems (adding a similar command just like the lr-mess-cmd) :
          nes gb coleco arcadia crvision

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

            @folly
            I agree, I saw the same thing. It's for some systems only. It's a step forward !

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

              @folly
              This is what I gonna try today

              bash $version vectrex
              bash $version nes
              bash $version coleco
              bash $version jaguar
              bash $version gamate
              bash $version cdimono1
              bash $version fmtmarty
              bash $version scv
              bash $version c64_cart c64

              bash $version ablmini # creates cmd script for all_in1 # bootable
              bash $version alnattck # creates cmd script for classich # bootable
              bash $version gnw_ball # creates cmd script for gameandwatch # bootable
              bash $version jak_batm # creates cmd script for jakks # bootable
              bash $version kgradius # creates cmd script for konamih # bootable
              bash $version taddams # creates cmd script for tigerh # bootable
              bash $version rzbatfor # creates cmd script for tigerrz # bootable

              bash $version hbf700p # bootable # HB-F700P / Sony (MSX2)

              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:

                I used my script generate-overlay-configs.sh to generate overlay config files and placed the background.png as kgradius.png in /home/pi/RetroPie/overlays/konamih/

                Have you created a subfolder per games? Did you unzip the mame artwork file to extract the backgroud? For me, the easiest way to manage Artwork is with MAME UI (Select+Y), but It's great to have both options, especialy with your overlay configs generator. Good way to convert MAME artworks to retroarch.

                Every systems working fine excepted C64. For system like FM Marty, you have 15 choices. It's realy nice to see all that.

                The MAME Basename option never worked for me as it currently is.

                It works if I replace (ex.: gamate) :

                mame-basename = "/opt/retropie/emulators/mame/mame -rompath /home/pi/RetroPie/roms/gamate -v -c %BASENAME%"
                

                By

                mame-basename = "/opt/retropie/emulators/mame/mame -v -c gamate %BASENAME%"
                

                The hash file folder for the lr-mess should be the same as the one for MAME, but I don't know if you can do that.

                /opt/retropie/emulators/mame/hash
                

                It's because MAME generates it automatically during installation and updates. I am aware that if the user is only using lr-mess then there might be some issues but it avoids file duplication and the Hash files will be always updated.

                Some MAME Basenames will never worked (like Jaguar), because we are using the names from Retropie (atarijaguar) , but I think It's a good choice to keep Retropie naming .... nothing is perfect!

                Great job !!

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

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

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

                  I used my script generate-overlay-configs.sh to generate overlay config files and placed the background.png as kgradius.png in /home/pi/RetroPie/overlays/konamih/

                  Have you created a subfolder per games?

                  The script creates the overlays directory and subfolders in ovelays directory (konamih, tigerh, etc).
                  There are no subfolders per game created in, for example, directory konamih.

                  Did you unzip the mame artwork file to extract the backgroud?

                  Yes I did, this background is then renamed and used as retroarch overlay with lr-mess.
                  For MAME standalone I left the artwork zipped in /home/pi/RetroPie/roms/mame/artwork/<artwork>.zip.

                  For me, the easiest way to manage Artwork is with MAME UI (Select+Y)

                  What do you manage ?, In this way artwork is automatically loaded with MAME standalone.

                  but It's great to have both options, especialy with your overlay configs generator. Good way to convert MAME artworks to retroarch.

                  Indeed, I think so too, but it can have some improvement.
                  And it would be nice if the picture were automatically installed too.
                  I have to think about that.

                  Every systems working fine excepted C64. For system like FM Marty, you have 15 choices. It's realy nice to see all that.

                  The MAME Basename option never worked for me as it currently is.

                  It works if I replace (ex.: gamate) :

                  mame-basename = "/opt/retropie/emulators/mame/mame -rompath /home/pi/RetroPie/roms/gamate -v -c %BASENAME%"
                  

                  By

                  mame-basename = "/opt/retropie/emulators/mame/mame -v -c gamate %BASENAME%"
                  

                  We can try to change that to improve, agree ?

                  The hash file folder for the lr-mess should be the same as the one for MAME, but I don't know if you can do that.

                  /opt/retropie/emulators/mame/hash
                  

                  It's because MAME generates it automatically during installation and updates. I am aware that if the user is only using lr-mess then there might be some issues but it avoids file duplication and the Hash files will be always updated.

                  I am not sure yet how the hash tables are used by lr-mess.
                  On my old install there was a mess.ini somewhere.
                  On my new install I couldn't find one.
                  So it will have to wait until we discover how this works.

                  Some MAME Basenames will never worked (like Jaguar), because we are using the names from Retropie (atarijaguar) , but I think It's a good choice to keep Retropie naming .... nothing is perfect!

                  Can you try adding a subdirectory jaguar inside atarijaguar like this :
                  /home/pi/RetroPie/roms/atarijaguar/ jaguar

                  Great job !!

                  Thanks !

                  BTW. Did you try cheats ?
                  Don't know if it works.

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

                    @folly

                    I'm not able to run lr-mess-basename (doesn't work with coleco and gamate). But with coleco, lr-mess from Retropie works with BIOS in
                    /home/pi/RetroPie/roms

                    and hash files in /home/pi/RetroPie/BIOS/mame/hash

                    working

                    lr-mess = "/opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-mess/mess_libretro.so --config /opt/retropie/configs/coleco/retroarch.cfg %ROM%"
                    

                    not working

                    lr-mess-basename = "/opt/retropie/emulators/retroarch/bin/retroarch --config /opt/retropie/configs/coleco/retroarch.cfg -v -L /opt/retropie/libretrocores/lr-mess/mess_libretro.so %BASENAME%"
                    

                    For MAME cheat code, you need to run the games with the Hash files and follow the procedure here: (SOLVED) MAME "standalone" Cheats for systems like Coleco, Arcade and more.

                    Re-edit

                    In Retroarch (lr-mess), cheatcodes from retroarch load but not working for now
                    /opt/retropie/configs/all/retroarch/cheats

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

                      @DTEAM

                      I added your suggestion about :

                      mame-basename = "/opt/retropie/emulators/mame/mame -v -c gamate %BASENAME%"
                      

                      I have updated the script so this can/will be generated.
                      Kept the old commands also in for testing, perhaps they have to be deleted.

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

                        @DTEAM

                        So I understand it works oob in lr-mess if you add the cheats in :
                        /opt/retropie/configs/all/retroarch/cheats

                        About the cheats in MAME standalone.
                        I was aware of the thread and that it can work.
                        But does it work out of the box with my module-script or do we still have to add something in the mame.ini ?

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

                          @folly
                          Not for now, cheats from retroarch load but not working for now. I'm gonna do some tests. For your script with MAME, I have to do some test for cheatcodes before.

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

                            @DTEAM

                            For the lr-mess-basename command.
                            I don't have an idea about this yet.
                            Future work I presume.

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

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

                              By @DTEAM, C64 and Atari Jaguar not working ( https://retropie.org.uk/forum/topic/29682/development-of-module-script-generator-for-lr-mess-and-mame-standalone/12 )

                              Only for basename (Hash file)

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

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

                                Every systems working fine excepted C64. For system like FM Marty, you have 15 choices. It's realy nice to see all that.
                                The MAME Basename option never worked for me as it currently is.
                                It works if I replace (ex.: gamate) :
                                mame-basename = "/opt/retropie/emulators/mame/mame -rompath /home/pi/RetroPie/roms/gamate -v -c %BASENAME%"

                                By
                                mame-basename = "/opt/retropie/emulators/mame/mame -v -c gamate %BASENAME%"

                                We can try to change that to improve, agree ?

                                yes

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

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

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

                                  Every systems working fine excepted C64. For system like FM Marty, you have 15 choices. It's realy nice to see all that.
                                  The MAME Basename option never worked for me as it currently is.
                                  It works if I replace (ex.: gamate) :
                                  mame-basename = "/opt/retropie/emulators/mame/mame -rompath /home/pi/RetroPie/roms/gamate -v -c %BASENAME%"

                                  By
                                  mame-basename = "/opt/retropie/emulators/mame/mame -v -c gamate %BASENAME%"

                                  We can try to change that to improve, agree ?

                                  yes

                                  Did a second fix, because I didn't remove the old ones.
                                  I had to change the names of the old ones to *-test otherwise we had double commands with the same loader name.

                                  So now you can test gamate.

                                  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:

                                    BTW. Did you try cheats ?

                                    for lr-mess in MAME UI (with hash files)

                                    put cheat.7z in /home/pi/RetroPie/BIOS/mame/cheat

                                    in custom-core-options.cfg

                                    /opt/retropie/configs/""system"" (ex: coleco)

                                    do

                                    mame_cheats_enable = "enabled"
                                    

                                    also in retroarch-core-options.cfg

                                    /opt/retropie/configs/all

                                    You must have the real MESS/MAME romset to do that
                                    1.jpg
                                    Boulder Dash - ColecoVision (lr-Mess)

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

                                      @dteam

                                      I need some more information to translate this to a proper solution.
                                      I hope I can think of a way to make a good implementation ;-)

                                      Did you run Boulderdash with the loader lr-mess-cmd or lr-mess-basename ?

                                      The custom-core-options.cfg isn't added as config running the above loaders, but is added using, for ex., lr-mess-system-coleco-cart .
                                      Does it work when you use (hash file names) with this loader, for example ?

                                      The retroarch-core-options.cfg should always be loaded, perhaps an idea to add it only in this config.
                                      Can you test, if this works, if you only use mame_cheats_enable = "enabled" in retroarch-core-options.cfg ?

                                      Edit :
                                      I have updated the script so the `install-<system>-cmd module-script will add mame_cheats_enable = "enabled" in retroarch-core-options.cfg.
                                      I hope this is a good solution and that it's not conflicting with something else.

                                      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:

                                        Did you run Boulderdash with the loader lr-mess-cmd or lr-mess-basename ?

                                        lr-mess-cmd + MESS romset
                                        and
                                        lr-mess + MESS romset

                                        lr-mess = "/opt/retropie/emulators/retroarch/bin/retroarch -L /opt/retropie/libretrocores/lr-mess/mess_libretro.so --config /opt/retropie/configs/coleco/retroarch.cfg %ROM%"
                                        

                                        I think you don't need Hash file to run cheat finally. You just need the good game rom

                                        For retroarch cheat codes, I'm not able to use those. They load, but nothing happens.

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

                                          @dteam

                                          Perhaps we want too much and coleco seems difficult on my end.
                                          Reading your reply the cheats addon won't do much, perhaps I have to remove it again.

                                          Can you check your /dev/shm/runcommand.log if you can find something about how cheats are being loaded ?

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

                                            @folly

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

                                            Reading your reply the cheats addon won't do much, perhaps I have to remove it again.

                                            No, cheats for Coleco roms from Mess romset run well with your lr-mess-cmd. It runs in MAME UI.

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