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.5m 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 DTEAM

      @folly
      Hi Folly,
      I'm back to help with the project today. I have reinstalled the handheld systems with your new script and it works fine. I am impressed every time I do this. I couldn't find your help menu. Where is it ?

      Another question, which machines are running MSX2.

      For help buttons, what kind of infos you want. Handheld description. How to use "basename lines" with MAME.ini. Systems who needs auto-frameskip, etc.

      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
        Hi Folly,
        I'm back to help with the project today.
        I have reinstalled the handheld systems with your new script and it works fine. I am impressed every time I do this.

        Very pleased about that !!!

        I couldn't find your help menu. Where is it ?

        There isn't a help menu.
        But in many lines I added some sort of help.
        You just have to go to a line and press the help-button beneath.
        If the help button doesn't work then there is no "help page" yet.

        Another question, which machines are running MSX2.
        Sony hbf700p for example.
        Added it in the systems with extras.

        For help buttons, what kind of infos you want. Handheld description. How to use "basename lines" with MAME.ini. Systems who needs auto-frameskip, etc.

        Yes, something like that.
        I think that would be a good start ;-)

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

          @folly
          Quick question, when we use your script for Handheld. Does it generate a rompath like / home / pi / RetroPie / roms / tigerh in mame.ini or do we have to do it manually to be able to use the basename option. This is for the help menu.

          .. configs/mame/mame.ini

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

            @dteam

            Good question, actually I can't remember if the script automatically adds it.

            I think it was something that still had to be looked after.
            Because for other systems the basename option isn't perfect for many systems.
            So I think we still have to do it manually.

            When I can I will have a look.

            Edit:
            I deleted the tiger rompath in my mame.ini.
            After installing tiger again it's not added.
            So it still has to be added manually.

            I think I did some tests to add the rompath into the runcommand line.
            But I never added these lines because some systems needed an other solution, like the apfm1000.
            It should be somewhat a universal solution but never had clever idea for that.

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

              Maybe you should add a line like this in your first post.

              " EXTRA OPTION: To use basename options for a specific system, you have to add the rompath in .. configs/mame/mame.ini like this:

              rompath  /home/pi/RetroPie/roms/tigerh; /home/pi/RetroPie/roms/konamih
              

              This way, if you have a ROM with the appropriate MAME naming system, you will be able to use hash files with preset from MAMEdev.org and also cheat codes.

              Basename option doesn't work for some systems like apfm1000

              IMPORTANT: It is not necessary to use the basename option to play games with MAME or lr-MESS. "

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

                @dteam

                Indeed, for now it's a good option to add it in the first post.

                When I have some time I will try to look for a solution again.

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

                  @dteam

                  I think we overlooked another issue.
                  With the mame basename option for, for example tigerh, it adds the systemname tigerh to the runcommand which doesn't work obviously.
                  It looked like this (not OK) :
                  mame-basename = "/opt/retropie/emulators/mame/mame -v -c tigerh %BASENAME%"

                  I have fixed this now over here. (not on github yet as I have to do more)
                  So systems with media get the system-name before the %BASENAME% and systems that don't have "media" the system name isn't added.

                  Examples for tigerh and apfm1000 as they should be (see the difference) :
                  tigerh:
                  mame-basename = "/opt/retropie/emulators/mame/mame -v -c %BASENAME%"
                  apfm1000:
                  mame-basename = "/opt/retropie/emulators/mame/mame -v -c apfm1000 %BASENAME%"

                  With the last line I tried apfm1000 again, adding the rompath to the mame.ini.
                  Now it works ;-)

                  I asked myself the question why didn't it work with the line described in post 748.
                  Well, I think, when we add a rompath in the runcommand line the rompaths in the mame.ini are overruled so then it uses only the rompath that is added to the runcommand line.
                  Adding more rompaths to a runcommand line isn't possible I think.
                  So for lr-mess getting a solution for the same problem will be more difficult.

                  So now I have to figure out how I can append the rompaths in the mame.ini automatically.

                  To be continued ......

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

                    @folly
                    I agree , on my side, i'm using something like that for Handheld

                    mame-autoframeskip = "/opt/retropie/emulators/mame/mame -autoframeskip %BASENAME%"
                    

                    For "real" system

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

                    I didn't mention that before. Good call!!! We already talked about that a long time ago ;-)
                    https://retropie.org.uk/forum/topic/28462/tutorial-handheld-and-plug-play-systems-with-mame/22
                    https://retropie.org.uk/forum/topic/29682/development-of-module-script-generator-for-lr-mess-and-mame-standalone/15?_=1638892175522

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

                      @dteam

                      Indeed we somewhat talked about that, seems we didn't realize back then.

                      Of-course, If I add a line with framekip or autoframeskip, the idea is the same.

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

                        @dteam

                        Seems I just found a way to add multiple rompaths to a command, by backslash escaping \;( good to know) .
                        Works :

                        /opt/retropie/emulators/mame/mame -v -c  -rompath /home/pi/RetroPie/roms/apfm1000\;/home/pi/RetroPie/BIOS/mame apfm1000 "spacedst"
                        

                        Doesn't work :

                        /opt/retropie/emulators/mame/mame -v -c  -rompath /home/pi/RetroPie/roms/apfm1000;/home/pi/RetroPie/BIOS/mame apfm1000 "spacedst"
                        

                        Doesn't work (altough /home/pi/RetroPie/BIOS/mame apfm1000 is in mame.ini) :

                        /opt/retropie/emulators/mame/mame -v -c  -rompath /home/pi/RetroPie/roms/apfm1000 "spacedst"
                        
                        1 Reply Last reply Reply Quote 1
                        • F
                          Folly @DTEAM
                          last edited by Folly

                          @dteam

                          I did some investigation on how the rompaths are added in the module-script for mame.
                          It's added in a plain way, so I can't use that method, because we have to append.

                          I think it's simpler to just add both rompaths in the runcommand line.
                          Benefit will be that the mame.ini doesn't get overflowed with rompaths.
                          Also, when we de-install a module-script the emulator.cfg will be wiped.
                          But if we add rompaths to the mame.ini they aren't removed with a de-install.

                          I have added the rompaths to the runcommand lines.
                          I have removed the mame-cmd lines as the are no longer needed.
                          (The name isn't good either because they will not load .cmd files)
                          Instead I will replace them with equal basename lines.

                          Edit :
                          It's working I will put it on github soon !

                          https://github.com/FollyMaddy/RetroPie-Share/commit/d7fe855ca321a5a007d963a87d213f37cae1d7d6

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

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

                            I have added the rompaths to the runcommand lines.

                            This is a good idea!

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

                              @dteam

                              I think you know how to get rid of the old lines in the emulators.cfg.

                              Can you test for me if cheats are working with these lines ?
                              If that works then I think it's a very good improvement.

                              Then we can probably take it to the next step and make more retropie names adding for example :

                              • pinball
                              • shooter
                              • calculator
                              • climbing
                                etc

                              For that I want to be able to get these matching arrays in the generator-script part from the database .

                              At the moment I am busy with a script that will automatically build the new data-base from the new files from progettosnaps.net.
                              Seems I can get all data now from progettosnaps.net also the categories.
                              So probably no need to use adb.arcadeitalia.net.
                              Hopefully I can get it to work, that way it will save a lot of time each time a new mame version comes.

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

                                @folly

                                These lines work to load a game without Rompath in mame.ini but doesn't work for Cheat codes and I can't explain why.

                                Basename_link = /opt/retropie/emulators/mame/mame -v -c  -rompath /home/pi/RetroPie/roms/coleco\;/home/pi/RetroPie/BIOS/mame coleco "spacedst"
                                Basename_link2 = /opt/retropie/emulators/mame/mame -v -c  -rompath /home/pi/RetroPie/roms/coleco\;/home/pi/RetroPie/BIOS/mame coleco %BASENAME%"
                                

                                For cheat codes we need for now (for coleco) :
                                in mame.ini

                                rompath /home/pi/RetroPie/roms/coleco
                                

                                in emulator.cfg

                                mame-coleco-cheat= "/opt/retropie/emulators/mame/mame -c -autoframeskip coleco %BASENAME%"
                                
                                F 1 Reply Last reply Reply Quote 1
                                • F
                                  Folly @DTEAM
                                  last edited by

                                  @dteam

                                  Seems we don't always are that lucky with this.

                                  Reading your post I presume all systems aren't working with cheats, am I right ?
                                  Or is it only coleco ?

                                  When I can will have second look at this problem

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

                                    @folly
                                    I did a test with Coleco. I presume it's the same things for the others.

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

                                      @dteam

                                      The cheat issue should be fixed now.
                                      It should also work with the new basename options too. (I tested myself)

                                      There was a mismatch between where the cheats were downloaded and the cheatpath in mame.ini.

                                      Can you test it again.
                                      Before testing, you have to download the cheats again in the script.

                                      https://github.com/FollyMaddy/RetroPie-Share/commit/5e094182dc9b6d5e7c537175bd7a18ccc0687aa0

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

                                        @folly

                                        For help menu. where you want my text?
                                        English is not my mother tongue, so feel free to modify if you see mistakes.

                                        BTW, seach tool in your script works very well!

                                        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:

                                          Can you test it again.
                                          Before testing, you have to download the cheats again in the script.
                                          https://github.com/FollyMaddy/RetroPie-Share/commit/5e094182dc9b6d5e7c537175bd7a18ccc0687aa0

                                          You have hit the bullseye !!! It works

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

                                            @dteam

                                            Indeed, at last a good solution for the mame basename part, nice, isn't it ;-)
                                            Though we have to take into account that the roms have to be in the root directory structure of : /roms/<system>/<basename_rom_file> .
                                            The solution will not work with this directory structure :/roms/<system>/<subdirectory>/<basename_rom_file>.
                                            (perhaps I can find a solution for this in the future, but honestly I have no clue now)

                                            Making a solution for lr-mess basename still has to be done, but that's for the future..... (no clue either)

                                            The help can be attached to almost every line that can be executed.
                                            This is the comma separate line of selecting the submenu of the handhelds (help part is bold :
                                            ",Handheld / plug&play and downloads > Submenu,,subgui_add-mamedev-systems_forum,,,,,dialog_message "install handheld / plug&play and the required downloads","

                                            So we can add more in above line.

                                            We can also add help text to, for example :
                                            ",Konami Handheld,,run_generator_script kbilly,,,,,dialog_message "HELP","

                                            The dialog_message part is executed when we press the help_button.

                                            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.