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.4m 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
      last edited by Folly

      Update :

      The database and the add-mamedev-systems.sh are updated to match mame0252.

      I also added a W.I.P. version called mamedev.sh.
      This version differs from the add-mamedev-systems.sh.
      Rather then generating and installing the generated module-scripts like add-mamedev-systems.sh does,
      mamedev.sh will install systems directly without generating and installing module-scripts.
      This script is also cleaned up a bit and installing a system works faster.
      However, since this version doesn't generated module-scripts,
      systems can't be removed by selecting the module-script from the experimental packages.
      That's why it's a W.I.P. (Work In Progress) version.
      So keep in mind, removing a system has to be done manually.

      Without interfering each-other both versions can be added in :
      /home/pi/RetroPie-Setup/ext/RetroPie-Share/scriptmodules/supplementary

      For the mamedev.sh script you can use the same install procedure as mentioned in post 1.
      Just used the name mamedev.sh instead.

      1 Reply Last reply Reply Quote 1
      • F Folly referenced this topic on
      • F
        Folly @DTEAM
        last edited by Folly

        Hi @DTEAM,

        How is it going, everything ok ?

        Today I installed channelf and noticed that there is no media when downloading the gamelist for channelf.

        Is it gone or has it never been added ?

        I also found that the games are not properly sorted in emulationstation.
        I would like to change the range Videocart-1 - Videocart-9 to :
        Videocart-01 - Videocart-09
        Adding the zero makes sure that the games are properly sorted in the list of emulationstation.

        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, lr-mame and mame standalone:

          Today I installed channelf and noticed that there is no media when downloading the gamelist for channelf.
          Is it gone or has it never been added ?

          I deleted it because it's now available on Screenscraper and the result is better with that site. Sorry, I forgot to mention it.

          New Edit: Maybe I added some missing videos. If it's the case, I'll put those media on the drive

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

            @DTEAM

            I tested channelf with retroscraper and the result was very good.
            So I agree, we don't need the predefined gamelist anymore.

            I suggest removing the whole directory channelf so there is no misunderstanding about whether there is or isn't a full gamelist+media set.

            Do you agree ?

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

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

              Do you agree ?

              Yes

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

                @Folly

                MAME 0.253 is released

                https://www.mamedev.org/?p=523

                No tsimquest and tmegaman3

                New classich = Bandai Race Time
                text alternatif

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

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

                  No tsimquest and tmegaman3

                  Very strange that they are still not added.

                  New classich = Bandai Race Time

                  I will update the database when https://www.progettosnaps.net/ is updated. Curious if "Bandai Race Time" is added when I do an update on the classich.ini.

                  Btw did you try the nabupc of 0.252.
                  I did, but you have to run a server program locally.

                  DTEAMD 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 did you try the nabupc of 0.252.

                    Not yet

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

                      @DTEAM

                      Is it something for making a thread ?

                      DTEAMD 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:

                        Is it something for making a thread ?

                        Yes or on Old Computer Appreciation Thread

                        1 Reply Last reply Reply Quote 0
                        • AshpoolA Ashpool referenced this topic on
                        • F
                          Folly
                          last edited by Folly

                          Update to mame0253.00 :

                          • racetime manually added in classic.ini and good.ini
                          • database mame0253_systems_sorted_info added
                          • update scripts add-mamedev-systems.sh and mamedev.sh
                          DTEAMD 1 Reply Last reply Reply Quote 1
                          • F Folly referenced this topic on
                          • DTEAMD
                            DTEAM @Folly
                            last edited by

                            @Folly

                            Race Time is now on the gamelist.xml
                            https://drive.google.com/drive/folders/1R01U_4xjpBLMYn1FjdhFWFCJnGxHCac6

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

                              @DTEAM

                              Did you also find some artwork ?

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

                                @Folly
                                I created a video and put a picture of the original box, Nothing fancy.

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

                                  @Folly

                                  MAME 0.254 released

                                  For now I see 2 new classich games:

                                  Galaxian (Bandai)
                                  Bandai Gunfighter

                                  F 2 Replies Last reply Reply Quote 1
                                  • F Folly referenced this topic on
                                  • F Folly referenced this topic on
                                  • F
                                    Folly
                                    last edited by Folly

                                    253.03 :
                                    Change the way the retroscraper-remote dependencies are checked and installed :

                                    • checking and installing is done when the retroscraper line is selected (so no check, in the beginning anymore, when starting the mamedev.sh modulescript)
                                    • except for pip, all others python modules are checked and installed with fixed versions (which makes it faster and easier)
                                    • speed is improved by sending "pip list" to a variable which is used in the for loop
                                    • using the variable increases the speed about 10 seconds on a pi4 (from about 18 seconds to about 8 seconds)
                                    • update all retroscraper python module dependencies to the latest versions

                                    253.04 :

                                    • add proper detection for system astrocde (Bally Professional Arcade)
                                    1 Reply Last reply Reply Quote 0
                                    • F
                                      Folly @DTEAM
                                      last edited by Folly

                                      @DTEAM

                                      Hi,
                                      I decided to wait with updating the script to 0254.
                                      This because it takes quite a lot of time and I also noticed that the binaries of lr-mame and lr-mess are still on 0.251.
                                      I think updating is better when also lr-mame and lr-mess more in sync or at least more up to date.
                                      For now I want to use the time to improve some stuff if I can.

                                      Nevertheless if someone already runs standalone mame 0.254 the Galaxian (Bandai) and Bandai Gunfighter can be added in the proper folder and can be played.

                                      Discussions of moving lr-mame and lr-mess to 0254 :

                                      • https://github.com/libretro/mame/issues/349
                                      • https://github.com/libretro/mame/issues/352
                                      1 Reply Last reply Reply Quote 1
                                      • DTEAMD DTEAM referenced this topic on
                                      • F
                                        Folly @DTEAM
                                        last edited by Folly

                                        EDIT :
                                        The scripts can be found here.

                                        • first issue has been fixed in this commit
                                        • change test versions to 253.07
                                          • test versions can now update itself using 00-workdir-00
                                          • moved TEST scripts to 00-workdir-00/supplementary/
                                          • fix github download function for ubuntu 22.04 using a different string variable which fixes downloading retroarch joypad autoconfigs
                                          • Mark them as TEST versions
                                        • change test versions to 253.08
                                          • add sha1sum of updated runcommand.sh which improves adding %SOFTLIST% variable in runcommand
                                        • for more improvements see here

                                        @DTEAM

                                        I have been busy for 3 days now and I am about ready to share a major update.
                                        I made quite some changes in the runcommand loaders, adding new replace tokens to improve many things.
                                        The standard %ROM$ and %BASENAME% are such replace tokens.

                                        I added :

                                        • %ROMDIR%
                                          The "%ROMDIR% token" that can be used to add the rompath in a runcommand.
                                          When using a runcommand using %BASENAME$, the rom can always be found, even in a sub-directory. This also makes it possible to categorise roms in different folders within a roms directory.

                                        • %DQUOTE% :
                                          Though the "%ROMDIR% token" does not have double quoting.
                                          Why? Because lr-mame and lr-mess can't cope with it.
                                          For this reason the "%DQUOTE% token" is added.
                                          The "%DQUOTE% token" can be placed in other places to get the runcommand working especially when using subdirectories that have spaces in them.
                                          For MAME standalone this will work :
                                          -rompath /home/pi/RetroPie/BIOS/mame;%DQUOTE%%ROMDIR%%DQUOTE%
                                          For lr-mame and lr-mess this will work :
                                          -rompath %DQUOTE%/home/pi/RetroPie/BIOS/mame;%ROMDIR%/%DQUOTE%
                                          All other attempts to add double quotes to runcommands in a different way failed so using the "%DQUOTE% token" seems to only way to go.

                                        • %CLEANBASENAME% :
                                          The "%CLEANBASENAME% token" is needed for creating a proper per game config directory so mame system configs can be created per game.
                                          For MAME standalone this would not be necessary but lr-mame and lr-mess can't cope with spaces and double quotes in the wrong places.
                                          Therefor the "%CLEANBASENAME% token" can be used which removes all spaces and special characters and is without any double quotes.
                                          The "%CLEANBASENAME% token" could also be used to make a clean savestate file.

                                        • %SOFTLIST% :
                                          The "%SOFTLIST% token" is needed to force proper softlist loading.
                                          For example pacmania is in msx1_cass and in msx2_cart.
                                          If one loads a game with a basename loader, for example pacmania, which comes from msx2_cart, then normally the the soflist msx1_cass has priority over msx2_cart.
                                          So mame thinks it's pacmania from msx1_cass but it is actually pacmania from msx2_cart.
                                          To fix this issue we need to force the correct softlist before the "%BASENAME% token".
                                          The %SOFTLIST% token is the last folder name where the rom is in plus an extra => :.
                                          For pacmania we will have to place it in the folder "msx2_cart".
                                          In the loader you will see it as %SOFTLIST%%BASENAME%, eventually for pacmania it will look like this "msx2_cart:pacmania".
                                          If the rom is in a rompath without => _ then the "%SOFTLIST% token" will be empty and mame will guess the correct softlist.
                                          If "%SOFTLIST% token" gets a value for some reason, because a _ char is in the path, then mame will refuse to load the game.
                                          A check in the runcommand.log will reveal the issue.
                                          ( although it's an improvement, for example, msx1_bee_card softlist will not benefit from it, as it needs the beepack inserted as a slot. So softlists that need slot options will still not work with the regular basename loaders )

                                        To be able to use these tokens they have to be in the runcommand.sh script.
                                        My new scripts are able to add that runcommand.sh.

                                        My both scripts start now with a clean mamedev_csv array now.
                                        Now both scripts work fine when switching from one to the other.

                                        I also made a minor change to the run_mess.sh script to accommodate spaces in the rompath.

                                        Perhaps I forgot something will look at that later.

                                        I would like to discuss the new stuff before I commit because it's quite a change and testing needs to be done.

                                        What do you think about the changes and the testing ?

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

                                          @Ashpool

                                          You are welcome to join in and test the new scripts.

                                          AshpoolA 1 Reply Last reply Reply Quote 0
                                          • F Folly referenced this topic on
                                          • AshpoolA
                                            Ashpool @Folly
                                            last edited by Ashpool

                                            @Folly Well, I am just creating a fresh ubuntu vm to get a "fresh" base... on the raspi install I tried it on (manual retropie install over raspberry legacy os), 1st thing i noticed/came into trouble was the Game and Watch Setup. The Script (still) lists mame/lr-mess/lr-gw, and this post of yours sounded that mame/lr-mess are still usable, but the es_systems.cfg just lists .mgw|.MGW as extensions and only lr.gw is available as an emulator from within the runcommand menu.
                                            But that OS "install" has become a mess in recent time and i am just waiting for an excuse to dump it in favour of bullseye 64bit (as that install wasn't really meant to incorporate retropie at 1st, retropie not supporting that ain't really a drawback here), so it may be a "just on my system"-case and not a fault from your script.

                                            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.