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.
    • F
      Folly @bbilford83
      last edited by Folly

      @bbilford83

      You should share your runcommand.log differently, use your gdrive .
      Or use pastebin.com and make sure you burn it after a while.
      (you can re-use your old post)

      Have you added this bios too ? :
      ef9365.zip

      B 1 Reply Last reply Reply Quote 0
      • B
        bbilford83 @Folly
        last edited by

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

        @bbilford83

        You should share your runcommand.log differently, use your gdrive .
        Or use pastebin.com and make sure you burn it after a while.
        (you can re-use your old post)

        Have you added this bios too ? :
        ef9365.zip

        I removed the screengrab since I think it wasn't showing anything relevant anyway.

        I just added that bios, didn't know it was needed, and you are right, now it is working in mame standalone! Thank you. Though it is super slow for some reason, even with autoframeskip - I think that is something weird about my system though, you have said before mame should run faster than lr-mame but for me it never does.

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

          @bbilford83

          Looks like we found the issues.
          Good to know it is working now although sad to hear your mame isn't running fast enough, really not sure why.

          I would suggest you play with removing and adding the bios file I mentioned.
          So you can see the difference in the runcommand.log.
          Look for NOT FOUND then you know in which bioses mame will search.
          If you use my option from the restricted you will notice that these bios names will be added in the form to get them from the list ultimately when proceeding.

          For this videoart system only it's not really worth patching or add an issue for lr-mess right now.
          I think we do need to check this in the future for both lr-mess and lr-mame if the new drivers are added thoroughly enough.

          B 1 Reply Last reply Reply Quote 0
          • B
            bbilford83 @Folly
            last edited by

            @Folly I should have been more clear, in the "games" standalone mame is always fast enough, but for Videoart and some other systems I've tested when I am in the in-mame menu it crawls, and has trouble even registering button presses. Not sure why. But the games are working, awful as they are :). I don't know if you would want it for the script but I did create a gamelist with images and descriptions... obviously there is nowhere to scrape it but I found the original manuals for each games and used the cover for an image and the little blurb on the back for a description.

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

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

              @Folly I should have been more clear, in the "games" standalone mame is always fast enough, but for Videoart and some other systems I've tested when I am in the in-mame menu it crawls, and has trouble even registering button presses. Not sure why.

              I have seen that issue before.
              On my 64 bit (aarch64) Manjaro Arch linux build I have the same issue using the binary of stickfreaks or mine build on my Apple M1.
              When I installed it from source on the pi4 the issue was gone.
              (at least if I remember correctly)
              Btw :
              Did you start with a fresh image for your pi4 ?
              If you used your pi3 image check your config.txt if it uses the correct video driver like this :

              # Enable DRM VC4 V3D driver
              dtoverlay=vc4-kms-v3d
              max_framebuffers=2
              

              How much memory does your pi4 have ?
              I would try to increase the gpu memory a bit in the config.txt when having a pi4 with less memory.
              Because if you have a pi4 with 1 or 2Gb by default the gpu memory will also be lower than having a 4Gb or a 8Gb.
              If this doesn't work then it could be that your pi4 just doesn't have enough memory.
              But that is guessing.

              But the games are working, awful as they are :).

              Aha, good.

              I don't know if you would want it for the script but I did create a gamelist with images and descriptions... obviously there is nowhere to scrape it but I found the original manuals for each games and used the cover for an image and the little blurb on the back for a description.

              Sure, why not, add it to your gdrive and use the relative paths and the /media/emualtionstation folder just like the others.

              B 1 Reply Last reply Reply Quote 0
              • B
                bbilford83 @Folly
                last edited by

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

                When I installed it from source on the pi4 the issue was gone.
                (at least if I remember correctly)
                Btw :
                Did you start with a fresh image for your pi4 ?
                If you used your pi3 image check your config.txt if it uses the correct video driver like this :

                I did start with the blank retropie image for pi4, never owned a pi 3.

                How much memory does your pi4 have ?
                I would try to increase the gpu memory a bit in the config.txt when having a pi4 with less memory.
                Because if you have a pi4 with 1 or 2Gb by default the gpu memory will also be lower than having a 4Gb or a 8Gb.

                4GB, so that probably isn't it. But maybe I will try installing from source if that helped you once, couldn't hurt to try. Thanks!

                Sure, why not, add it to your gdrive and use the relative paths and the /media/emulationstation folder just like the others.

                I again had done it my other way (with the images going where they scrape in retropie) but I think I fixed it properly, it should be there now with gamelist and art nested the way your script needs. Let me know if you see anything wrong, but otherwise feel free to use it however you'd like. FYI only there is no good similar picture for "activity cartridge" because it didn't come with a manual... it was basically a demo with "pages" from all the other 8 games.

                F 1 Reply Last reply Reply Quote 0
                • B
                  bbilford83
                  last edited by

                  And one other minor thing @Folly, by any chance did you ever figure out if there is a way to load a specific controller (or "unload" it) via the runcommand? It didn't end up that there were many msx games that needed it on the zemmix, but there are some on the Atari XEGS that you can't play without changing the controller to paddles. I can note in the gamelist entries that they require paddle controllers but obviously it would be nicer if it could be automated so you don't have to change it every time you play.

                  F 2 Replies Last reply Reply Quote 0
                  • F
                    Folly @bbilford83
                    last edited by

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

                    4GB, so that probably isn't it. But maybe I will try installing from source if that helped you once, couldn't hurt to try. Thanks!

                    Indeed, that is probably not the issue.
                    If you want to try to install from source then I would recommend to, at least, double the swap inside the mame.sh module-script otherwise it will probably fail.
                    Be warned it will take 5 hours or so.

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

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

                      And one other minor thing @Folly, by any chance did you ever figure out if there is a way to load a specific controller (or "unload" it) via the runcommand? It didn't end up that there were many msx games that needed it on the zemmix, but there are some on the Atari XEGS that you can't play without changing the controller to paddles. I can note in the gamelist entries that they require paddle controllers but obviously it would be nicer if it could be automated so you don't have to change it every time you play.

                      Unloading was possible but only using quotes.
                      However using them in runcommands for lr-mame and lr-mess breaks down the runcommand as that uses quotes too for the options applied.
                      So this means the runcommand gets cut in half and will not work anymore.
                      So no solution yet.
                      Perhaps patching the config file would be an option.

                      Creating an extra install to create a runcommand with paddles would be possible.
                      Then adding the games into the /opt/retropie/configs/all/emulators.cfg would be possible to load a few games with a different runcommand.
                      Read here how you can add stuff to the emulators.cfg.

                      Btw:
                      Thanks for making the gamelist for videoart, I will have a look.

                      -> Edit : Looks good ;-)

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

                        Now that we have a gamelist we also need a theme, right !

                        Added a PR for this one :
                        videoart-theme.png

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

                          @Folly
                          OMG, it will not be my favorite system to play 🤣 Pull request merged !!

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

                            @DTEAM

                            Indeed, but I had some fun making it.
                            Good exercise ;-)

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

                              @DTEAM

                              Btw. I am thinking of removing the forum.ini data from the database and from the script as it is of no extra value anymore, I think.
                              At least I don't use it.
                              What do you think ?

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

                                @bbilford83

                                I just tested 261 lr-mess on my aarch64 VM and indeed videtart is not working too.
                                So I am compiling a full lr-mame/lr-mess containing all drivers (arcade and non-arcade) to see if that works.
                                If it works I would you like you to ask and do that too for RPI4 and share that binary if you can.

                                Btw :
                                It's not just about videoart but there are probably many others that are not in the list.

                                Edit :
                                I added aarch64 lr-mame / lr-mess full_mame versions to the binary lists, which work now for videoart.
                                Btw. compiling it with a module-script needs adjustments of the module-script and renaming etc. But the .so file can be used for both lr-mame and lr-mess.

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

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

                                  Btw. I am thinking of removing the forum.ini data from the database and from the script as it is of no extra value anymore, I think.
                                  At least I don't use it.
                                  What do you think ?

                                  Yes sure

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

                                    @DTEAM

                                    Ok will probably will do in next version.

                                    1 Reply Last reply Reply Quote 0
                                    • DTEAMD DTEAM referenced this topic on
                                    • B
                                      bbilford83 @Folly
                                      last edited by

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

                                      @bbilford83

                                      I just tested 261 lr-mess on my aarch64 VM and indeed videtart is not working too.
                                      So I am compiling a full lr-mame/lr-mess containing all drivers (arcade and non-arcade) to see if that works.
                                      If it works I would you like you to ask and do that too for RPI4 and share that binary if you can.

                                      Btw :
                                      It's not just about videoart but there are probably many others that are not in the list.

                                      Edit :
                                      I added aarch64 lr-mame / lr-mess full_mame versions to the binary lists, which work now for videoart.
                                      Btw. compiling it with a module-script needs adjustments of the module-script and renaming etc. But the .so file can be used for both lr-mame and lr-mess.

                                      I don't have any idea how to do any of what you describe here (I am not even sure what some of those things mean), but I am happy to help however I can testing on the pi 4 :).

                                      1 Reply Last reply Reply Quote 0
                                      • B
                                        bbilford83 @Folly
                                        last edited by

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

                                        Creating an extra install to create a runcommand with paddles would be possible.
                                        Then adding the games into the /opt/retropie/configs/all/emulators.cfg would be possible to load a few games with a different runcommand.
                                        Read here how you can add stuff to the emulators.cfg.

                                        Can you remind me, isn't there one system you have already where the runcommand options include one that uses a particular controller? I think I remember seeing it in something you made when we were trying to get it to turn off one controller in zemmix. I definitely know how to add extra options in the emulator.cfg and assign it to games (you can just do it in the runcommand menu rather than add it into /configs/all/emulators.cfg), but I don't remember what the edit to the command line looks like to get it to use a particular controller.

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

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

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

                                          Creating an extra install to create a runcommand with paddles would be possible.
                                          Then adding the games into the /opt/retropie/configs/all/emulators.cfg would be possible to load a few games with a different runcommand.
                                          Read here how you can add stuff to the emulators.cfg.

                                          Can you remind me, isn't there one system you have already where the runcommand options include one that uses a particular controller? I think I remember seeing it in something you made when we were trying to get it to turn off one controller in zemmix. I definitely know how to add extra options in the emulator.cfg and assign it to games (you can just do it in the runcommand menu rather than add it into /configs/all/emulators.cfg), but I don't remember what the edit to the command line looks like to get it to use a particular controller.

                                          I have done that in the script with c64gs adding "-joy2 joybstr" to the default install.
                                          Can't do that with zemmix or xegs because then it will create all default runcommands with paddles.
                                          I can however add an extra line in the systems with extras installs but it will only produce media runcommands not basename.
                                          Sadly, That is the limit of my script right now.

                                          If you want to do it manually then you have to know the slot-options for the particular system, you can use this command (using a zemmix system here) :

                                          /opt/retropie/emulators/mame/mame -listslots cpg120
                                          

                                          You will see that you can add (-gen1 and/or -gen2):

                                          gen1                             hypershot        (Konami Hyper Shot (JE 502/JE 503, MSX))
                                                                           joystick         (MSX Digital Joystick)
                                                                           libbler          (Micomsoft Libble Rabble Joypad (XPD-1LR))
                                                                           martypad         (FM Towns Marty Pad)
                                                                           mouse            (MSX Mouse)
                                                                           sega             (X68000 Sega Controller Adapter)
                                                                           towns6b          (FM Towns 6-button Pad)
                                                                           townspad         (FM Towns 2-button Pad)
                                                                           vaus             (MSX Arkanoid Vaus)
                                                                           xe1ap            (Dempa Micom Soft Analog Controller (XE-1AP, PC))
                                          

                                          However can't find any paddles you have to pick one that suits and add it manually to newly created runcommands.
                                          You need the old runcommands too, you know, because that will run with the default joystick.

                                          Adding (MSX Arkanoid Vaus) to the runcommand would be like adding this :

                                          -gen1 vaus
                                          

                                          Hopefully it's not being saved when entering the mame gui, otherwise the main runcommands will load with that joystick too, as you know what I mean.

                                          B 1 Reply Last reply Reply Quote 1
                                          • B
                                            bbilford83 @Folly
                                            last edited by bbilford83

                                            @Folly thank you very much for the very clear explanation, I think I can figure out how to make it automatically load with paddles in the XEGS now too.

                                            BTW the XEGS went faster than I thought, I should be done by tonight or tomorrow at the latest. I'll convert to your nested folders and share when I am done.

                                            Edit: -ctrl1 pad worked perfectly to get XEGS to load with paddles in the first controller slot. I just added it as a new emulator ending in -paddles. I couldn't actually get the command you gave me to use to list them in the linux commandline to work, but I just looked at the options listed in the "slot devices" in the mame menu and it shows all the abbreviations there. Thanks again!

                                            F 1 Reply Last reply Reply Quote 1
                                            • 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.