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.1m 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 @DTEAM
      last edited by Folly

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

      @Folly @valerino
      In the hash folder. We can found 5 .hsi files including two for MSX and MSX2. Do you know if they use It to integrate all computers related to MSX in one system, such as MSX2 or MSX?

      I opened it with a text editor.

      It contains the <extrainfo> parameter which are the cartridge mapper types for some games to help the emulation.

      I think the MSX2 type will also use the msx.hsi because I didn't find double games in both msx.hsi and msx2.hsi.

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

        @DTEAM

        But this will require a very smart part in the script.
        And I have to take 2 things into account :

        • remember all entry's of 1 system until the last entry and then inject them in the script
        • join the media and cmd parts

        I haven't had an idea on how to change this.

        Perhaps I have a better idea.
        Maybe I can create an empty dummy file for a system that comes along for the first time and then inject all commands one by one later in that dummy file, sort of speak, while checking if the file already exists or not.

        I will check this solution later when I am in the flow of programming.

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

          @DTEAM

          I had a look again at the mame-basename lines from the generated-cmd module scripts.
          I have doubts about it, can't see exactly what I am missing here,
          but we should have a deeper look into this.

          Perhaps we don't have to keep them in there.

          1 Reply Last reply Reply Quote 0
          • V
            valerino
            last edited by valerino

            hi guys!
            here i am :)
            i will look better later (i have first to improve further the crt/hdmi option in my fork).

            2 things for now :

            1. as far as i see, @Folly script can be surely included as something like a menu option in retropie configuration. something like "add mame/mess systems", selecting it will show the systems it may add, you select the ones you want, it will generate the needed lr-scripts.

            2. i'm understanding you are supporting both mame and lr-mess. why not supporting mame only at this point, which is the 'main' project (afaik mess is discontinued) ? the command line interface anyway should be the same.

            regards!
            v.

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

              @valerino

              Welcome to our thread.

              You are correct, it would be nice to have a menu part from within the Retropie-setup.
              Do you have an idea on how to construct this ?
              Though, I think we face a problem, how do we select the ones we want out of more that 7000 systems ?

              For the mess part, perhaps you know more about that.
              But as far as I know lr-mess is still alive within the mamedev source.
              For example -cas support has been added for Philips P2000T which will also work if lr-mess is used.
              Or is it also possible to load Philips P2000T in lr-mame ?
              As far as I know it is still splitted :

              • lr-mame for arcade/console computers
              • lr-mess for regular computers

              It would be nice if we can still use a libretro-core which have an advantage with joystick support and retroarch functions.

              V 1 Reply Last reply Reply Quote 0
              • V
                valerino @Folly
                last edited by

                @folly i'm looking just now in the retropie sources if there's some readymade api to make something like a menu with sort-of-checkboxes (i would need it also for my hdmi/crt thing). that would be the ideal solution for your script too. anyway, if it's not there, we can make it.

                about mame/mess.... afaik mess is discontinued and all is merged into mame (beware, i refer to mame/mess, without considering the retroarch core). so if mess have it, mame should too in the first place. maybe im wrong ?

                v.

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

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

                  @folly i'm looking just now in the retropie sources if there's some readymade api to make something like a menu with sort-of-checkboxes (i would need it also for my hdmi/crt thing). that would be the ideal solution for your script too. anyway, if it's not there, we can make it.

                  Nice, keep me posted.

                  about mame/mess.... afaik mess is discontinued and all is merged into mame (beware, i refer to mame/mess, without considering the retroarch core). so if mess have it, mame should too in the first place. maybe im wrong ?

                  I know it can be confusing, but I think it is still :

                  • standalone mame does both arcade/console and regular
                  • arcade/console and regular are splitted into lr-mame and lr-mess

                  We can do a test.
                  If lr-mame will do what lr-mess does, then we can drop lr-mess.
                  Edit :
                  How do we load, for example, a -cartfor Atari Jaguar with lr-mame, if we want to test ?

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

                    @folly never used mame/lr-mame for anything else than arcades, sincerely (since the non-arcade drivers are not comparable to standalone dedicated emulator or lr-cores). anyway, since mame and mess should be essentially the same thing, nothing should change in the command line interface, should be exactly the same.

                    F George SpiggottG 2 Replies Last reply Reply Quote 1
                    • F
                      Folly @valerino
                      last edited by Folly

                      @valerino

                      Ok, I did the test.
                      Normally I use your run_mess.sh script for running lr-mess and I have a cmd line that runs directly for, for example handhelds.

                      So I installed lr-mame from the exp packages.
                      Renamed it like lr-mess and placed it in that directory.
                      Tried it just like lr-mess but that didn't work.
                      Also tried with one of the handhelds directly, it said it can't find the driver.

                      So I presume lr-mame has only arcade drivers.

                      V 1 Reply Last reply Reply Quote 0
                      • V
                        valerino @Folly
                        last edited by

                        @folly so you're right. weird. but i'm pretty sure for the standalone version is like i said, only mame is mantained.

                        F 1 Reply Last reply Reply Quote 0
                        • George SpiggottG
                          George Spiggott @valerino
                          last edited by

                          It would be a boon to Jaguar gamers to only have to install lr-mame to act as an additional emulator choice and also to use the same core for arcade.

                          Currently running:
                          Retropie 4.8.9 on a Pi Zero 2W (Overclock Settings: CPU 1400Mhz)
                          ES-DE on a GMKtec K6 (Windows 11, 32GB RAM)

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

                            @valerino

                            Sure you are correct about that.

                            Edit:
                            I Looked it up in the scripts :
                            The main branch in github is : https://github.com/mamedev/mame .
                            Above branch is forked in the libretro github : https://github.com/libretro/mame
                            Both branches are mainained.

                            lr-mame and lr-mess maintained in the libretro/mame source and mame from the mamedev source.

                            So these three are maintained

                            • standalone mame ( containing basically mame / mess , compiled from mamedev)
                            • lr-mame ( containing basically mame(arcade) , compiled from libretro/mame)
                            • lr-mess ( containing basically mess(non-arcade) , compiled from libretro/mame)
                            1 Reply Last reply Reply Quote 0
                            • F
                              Folly @George Spiggott
                              last edited by

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

                              It would be a boon to Jaguar gamers to only have to install lr-mame to act as an additional emulator choice and also to use the same core for arcade.

                              Yes, it would be.
                              But I think there is a reason that these packages are still splitted.

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

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

                                I know it can be confusing, but I think it is still :

                                standalone mame does both arcade/console and regular
                                arcade/console and regular are splitted into lr-mame and lr-mess

                                Exactly what It is. MAME standalone is the most « up to date » one.... suppose to be ...

                                We should keep both. Separately or not in the official Retropie package menu?.. I don’t know. If you do It separately, the user could install only one of those 2 emulators. It could be interesting.

                                F 1 Reply Last reply Reply Quote 0
                                • V
                                  valerino
                                  last edited by valerino

                                  ok, the menu thing can be implemented using the dialog api (its builtin in the shell, used throughout retropie menu but not with the checkboxes afaik).

                                  dialog --title "title" \
                                  --checklist "choose options" 0 0 4 \
                                  1 option1 off \
                                  2 option2 on \
                                  3 option3 off \
                                  4 option4 off

                                  2e481df0-4dad-452d-ae37-cdb5d9d2fd53-image.png

                                  then after clicking a button you have the result in $INPUT.

                                  i imagine the checklist could be populated with an array from built from mame output.

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

                                    @valerino

                                    Very nice!

                                    Maybe it could be something like this :
                                    imageedit_0_6642732918.jpg

                                    I forgot + systems from my tutorial 😉

                                    Or we could do 3 categories, Handheld, keyboardless (consoles) and computer? With a,b,c, d, ... classification?

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

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

                                      I know it can be confusing, but I think it is still :

                                      standalone mame does both arcade/console and regular
                                      arcade/console and regular are splitted into lr-mame and lr-mess

                                      Exactly what It is. MAME standalone is the most « up to date » one.... suppose to be ...

                                      We should keep both. Separately or not in the official Retropie package menu?.. I don’t know. If you do It separately, the user could install only one of those 2 emulators. It could be interesting.

                                      I want to keep them both in, I assume they both will be maintained.
                                      If something isn't maintained anymore in the future, we can just rename or remove easily.
                                      If I split it up, more scripts can be generated, I think, that is not what we want.
                                      Also, you have to go through the menu twice to install mame and lr-mess for 1 system, don't know if that is ideal.

                                      Agree ?

                                      An other solution can be, for example.
                                      Select mame and/or lr-mess first and then select the system we want to install.
                                      Perhaps we can use this idea.

                                      BTW, Nice drawing 👍

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

                                        I forgot + systems from my tutorial 😉

                                        Or we could do 3 categories, Handheld, keyboardless (consoles) and computer? With a,b,c, d, ... classification?

                                        If we want this, we have to extract more information somewhere.
                                        At the moment we have only 1 row(array) to use for the menu.
                                        I suggest we try that first.

                                        Agree ?

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

                                          I have updated the first post.
                                          Adding also the menu idea and adding some more points :
                                          👉 open : By @valerino / participants @DTEAM , @folly :
                                          Create a front-end module-script in RetroPie-setup for our scripts.

                                          • structure/plan ?
                                          • dependencies check
                                          • download the repository in /home/pi/RetroPie-Setup/ext/RetroPie-Share or try to run the scripts online ?
                                          • add a menu in RetroPie-setup using the dialog api 120
                                          • try to keep multiple emulator/lr-cores in 1 generated script module 125
                                          • try to use 1 existing array for the menu 125
                                          • push the generated scripts in /home/pi/RetroPie-Setup/ext/RetroPie-Share/scriptmodules/ ?

                                          I have tried to structure the information.
                                          We should decide/discuss if we want to add/change things.

                                          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:

                                            I want to keep them both in, I assume they both will be maintained.
                                            If something isn't maintained anymore in the future, we can just rename or remove easily.
                                            If I split it up, more scripts can be generated, I think, that is not what we want.
                                            Also, you have to go through the menu twice to install mame and lr-mess for 1 system, don't know if that is ideal.
                                            Agree ?

                                            Good point. I agree with you

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

                                            I forgot + systems from my tutorial 😉

                                            Or we could do 3 categories, Handheld, keyboardless (consoles) and computer? With >a,b,c, d, ... classification?

                                            If we want this, we have to extract more information somewhere.
                                            At the moment we have only 1 row(array) to use for the menu.
                                            I suggest we try that first.

                                            Agree ?

                                            I also agree

                                            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.