• Recent
  • Tags
  • Popular
  • Home
  • Docs
  • Register
  • Login
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 35 Posters 6.0m 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 31 Mar 2021, 17:57

    @dteam

    I can refer to it.
    It's always fun to do your own thing.

    If I have some time, I will make some photo's of my projects.

    1 Reply Last reply Reply Quote 1
    • F
      Folly
      last edited by Folly 31 Mar 2021, 19:23

      @DTEAM @valerino

      Today I had a look a config module-scripts (docsview.sh) containing the dialog api.
      It took me quite some time but I changed it a bit to get the systems into the dialog menu.
      I was also able to generate some scripts.

      It's nowhere near how we want it.
      But it's a start of finding out how we can do this.
      I takes about 15 seconds to extract the systems from mame and display them in the menu.
      Basically I got this :
      2021-03-31-210848_1600x900_scrot.png

      With the RetroPie-Setup we are root user.
      So the generator-script, which contains the $HOME string wants to do all in the root directory.
      So we have to come up with something to fix this.

      This is the log selecting a system and generate some module-scripts :

      = = = = = = = = = = = = = = = = = = = = =
      Running action 'gui' for 'add' : RetroPie-Setup Docs Viewer
      = = = = = = = = = = = = = = = = = = = = =
      
        % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                       Dload  Upload   Total   Spent    Left  Speed
      
        0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
        2 29333    2   863    0     0   1913      0  0:00:15 --:--:--  0:00:15  1909
      100 29333  100 29333    0     0  64326      0 --:--:-- --:--:-- --:--:-- 64185
      
      install @valerino run_mess.sh script
      /root/RetroPie-Setup/scriptmodules/run_mess.sh: No such file or directory
      read all available extensions per system
      read compatible extension(s) for the individual media
      read computer description(s)
      read and match RetroPie names with mamedev names
      cat: /root/RetroPie-Setup/platforms.cfg: No such file or directory
      generate and write the install-<RPname>-from-mamedev-system-<MESSname><-media>.sh script file(s)
      generate and write the install-<RPname>-cmd.sh command script file(s)
      grep: /root/RetroPie-Setup/platforms.cfg: No such file or directory
      
      Log ended at: Wed Mar 31 21:03:49 CEST 2021
      Total running time: 0 hours, 0 mins, 52 secs
      
      D V 2 Replies Last reply 31 Mar 2021, 19:59 Reply Quote 2
      • D
        DTEAM @Folly
        last edited by DTEAM 31 Mar 2021, 19:59

        @folly

        In your list, Zupapa is an arcade game. I'll try to found a list without arcade game and without mechanical machine.

        In category.ini (0.229) from https://www.progettosnaps.net/renameset/
        we can found filtered list with drivers. Can it be usefull?

        F 1 Reply Last reply 31 Mar 2021, 20:28 Reply Quote 0
        • V
          valerino @Folly
          last edited by 31 Mar 2021, 20:19

          @folly this is almost what i meant yes :) sorry but i hadn't time to look at the code myself. anyway, seems you're on the right track.

          tell me more about the problem with the env vars, should be easy to fix.

          F 1 Reply Last reply 31 Mar 2021, 20:36 Reply Quote 0
          • F
            Folly @DTEAM
            last edited by 31 Mar 2021, 20:28

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

            @folly

            In your list, Zupapa is an arcade game. I'll try to found a list without arcade game and without mechanical machine.

            In category.ini (0.229) from https://www.progettosnaps.net/renameset/
            we can found filtered list with drivers. Can it be usefull?

            Indeed, we should use a filter.
            Perhaps we can implement it on the way.

            D 1 Reply Last reply 31 Mar 2021, 20:36 Reply Quote 0
            • F
              Folly @valerino
              last edited by 31 Mar 2021, 20:36

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

              @folly this is almost what i meant yes :) sorry but i hadn't time to look at the code myself. anyway, seems you're on the right track.

              tell me more about the problem with the env vars, should be easy to fix.

              Basically I use the $HOME string in my script, because we want to place the files also in the correct place if the user isn't pi.
              But now we are root with sudo.
              Perhaps we can extract the normal user and run the script with that user instead. (sudo -u pi, or something like that)
              And perhaps we have to correct the ownership of the files.
              Well, we can discuss some of that.

              1 Reply Last reply Reply Quote 0
              • D
                DTEAM @Folly
                last edited by DTEAM 31 Mar 2021, 20:36

                @folly

                In the MESS 0.151 hash folder, we can found 609 .xml files associated to the systems.
                we could add kgradius and the others for MAME systems (Jakks, KonamiH, etc.) + 7

                Normally, I think we should found roughly 616 systems in the list. Am I correct?

                New edit: some systems doesn’t have hash file like svmu. Probably a little bit more than 616 systems

                F 1 Reply Last reply 31 Mar 2021, 20:39 Reply Quote 0
                • F
                  Folly @DTEAM
                  last edited by Folly 31 Mar 2021, 20:39

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

                  @folly

                  In the MESS 0.151 hash folder, we can found 609 .xml files associated to the systems.
                  we could add kgradius and the others for MAME systems (Jakks, KonamiH, etc.) + 7

                  Normally, we should found roughly 616 systems in the list.

                  Basically you say, not all handheld games, we have working, are in the mame hash lists.
                  And someone should add them trough github.
                  Am I correct ?

                  (you mean find ?)

                  D 1 Reply Last reply 31 Mar 2021, 20:43 Reply Quote 0
                  • D
                    DTEAM @Folly
                    last edited by 31 Mar 2021, 20:43

                    @folly
                    Ideally we should add the real name (like Jakks) but behind it it could be the name of a game as your script handles. I imagine it will depend on how you handle it in your script.

                    F 1 Reply Last reply 31 Mar 2021, 20:47 Reply Quote 0
                    • F
                      Folly @DTEAM
                      last edited by Folly 31 Mar 2021, 20:47

                      @dteam

                      You would like to categorize all Jakks games as a cartridge of the jakks system, for example.
                      Do I conclude correctly ?

                      Well I think they separated them as standalone systems because not all hardware is identical.
                      I read that MAME wants to do the most perfect hardware emulation, so that is why they seperated them.
                      So I don't think there is any change they will change that, sorry.

                      I get your point though.

                      D 1 Reply Last reply 31 Mar 2021, 20:58 Reply Quote 0
                      • D
                        DTEAM @Folly
                        last edited by DTEAM 4 Jan 2021, 00:52 31 Mar 2021, 20:58

                        @folly
                        Yes, and you have a good point. To avoid the problem for driver, do we have to create 7 systems in mame.ini (rompath) like I did in the tutorial? Is it a solution. We could manage It like the arcade folder.

                        The idea is to select and install one time (from Mess/Mame selection list) for all games from a games family (only the systems from my tutorial - 7 systems)

                        Other option, Could we create an override for.ini in the system folder (jakks, konamih, etc.)

                        F 1 Reply Last reply 1 Apr 2021, 07:55 Reply Quote 0
                        • F
                          Folly @DTEAM
                          last edited by 1 Apr 2021, 07:55

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

                          @folly
                          Yes, and you have a good point. To avoid the problem for driver, do we have to create 7 systems in mame.ini (rompath) like I did in the tutorial? Is it a solution. We could manage It like the arcade folder.

                          The idea is to select and install one time (from Mess/Mame selection list) for all games from a games family (only the systems from my tutorial - 7 systems)

                          Other option, Could we create an override for.ini in the system folder (jakks, konamih, etc.)

                          I have a hard time understanding what you want here.
                          At the moment we do nothing in the .ini file, it's all in the command-lines.

                          Do you mean this ?
                          I think you are addressing the install that we have to pick a game to install, for example konamih.
                          Am I correct ?
                          You want to be able to install on, for example, konamih instead of a game.

                          Can you give an example on a game and how it should be installed then ?
                          Perhaps I will understand it better.

                          D 1 Reply Last reply 1 Apr 2021, 10:33 Reply Quote 0
                          • D
                            DTEAM @Folly
                            last edited by DTEAM 4 Jan 2021, 11:42 1 Apr 2021, 10:33

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

                            You want to be able to install on, for example, konamih instead of a game.

                            Exactly, but on my side, I don't understand why you said It could be an issue to do that.

                            Well I think they separated them as standalone systems because not all hardware is identical.
                            I read that MAME wants to do the most perfect hardware emulation, so that is why they seperated them..

                            That’s why I said we could manage theme like the « arcade » folder does for arcade games

                            F 1 Reply Last reply 1 Apr 2021, 10:51 Reply Quote 0
                            • F
                              Folly @DTEAM
                              last edited by Folly 4 Jan 2021, 11:52 1 Apr 2021, 10:51

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

                              You want to be able to install on, for example, konamih instead of a game.

                              Exactly, but on my side, I don't understand why you said It could be an issue to do that.

                              In our script we can make that work, I think.
                              I think we just can add the "family systems (konamih, etc )" in the array and join them to 1 game of that family.
                              So we can do this (red because it's not possible at the moment) :

                              -curl "https://raw.githubusercontent.com/FollyMaddy/RetroPie-Share/main/00-scripts-00/generate-systems-lr-mess_mame-2v0-alpha.sh" | bash -s konamih
                              

                              instead of this :

                              curl "https://raw.githubusercontent.com/FollyMaddy/RetroPie-Share/main/00-scripts-00/generate-systems-lr-mess_mame-2v0-alpha.sh" | bash -s kgradius
                              

                              Makes this any sense ?

                              The "issue" I was referring to is, that it's probably not an option to ask the mamedev people to change the hashtables, because they have an other mindset of how the database is established. I think also the source code depends largely on it, so it would be a major task for them to convert it all.

                              D 1 Reply Last reply 1 Apr 2021, 12:04 Reply Quote 0
                              • D
                                DTEAM @Folly
                                last edited by DTEAM 4 Jan 2021, 14:43 1 Apr 2021, 12:04

                                @folly
                                we weren't talking about the same thing, that's why we didn't understand each other.

                                For the hash file, could it be possible to generate a .doc list from the hash folder without the .xml extension and restart from that list to generate the list in retropie? The problem with this is that sometimes the name of an .xml does not match the name of the system.

                                I will try to find a solution. In the mame software, they can use filters.

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

                                instead of this :
                                curl "https://raw.githubusercontent.com/FollyMaddy/RetroPie-Share/main/00-scripts-00/generate-systems-lr-mess_mame-2v0-alpha.sh" | bash -s kgradius

                                Makes this any sense ?

                                Yes 👍🏻

                                F 1 Reply Last reply 1 Apr 2021, 14:05 Reply Quote 0
                                • F
                                  Folly @DTEAM
                                  last edited by Folly 4 Jan 2021, 15:07 1 Apr 2021, 14:05

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

                                  @folly
                                  we weren't talking about the same thing, that's why we didn't understand each other.

                                  Indeed, that seems to be the case here.

                                  For the hash file, could it be possible to generate a .doc list from the hash without the .xml extension and restart from that list to generate the list in retropie?

                                  Basically it should be possible to generate a text file from a hash table and display this in the RetroPie-Setup within the module-script.
                                  Here I am getting confused already because we don't use the hash tables to generate our module-scripts.

                                  Sometimes the potential problem is that the name.xml does not match the system.

                                  Ok, I can imagine that. Because, as said in the renameSET described, names change all the time.
                                  So if one hasn't changed in the hash-table with a source update, you will have a mismatch.

                                  I think, we can't use use things from the renameSET 0.229* because we are still in using mame 0.227in RetroPie, so then we would definitely have mismatches.

                                  I will try to find a solution. In the mame software, they can use filters.

                                  You should convert it to a schematic approach, because I still don't get it all. (sorry)

                                  --

                                  I did something more to understand :
                                  I reread everything again to get the aha of it all.
                                  I opened the category.inifrom the renameSET 0.229 that you were referring to.
                                  I see that the systems are categorized as :

                                  • [Arcade / Pinball]
                                  • [Ball & Paddle / Breakout]
                                  • .
                                  • [Handheld / Electronic Game]
                                  • .
                                  • etc.

                                  And that is very much the same as what you/we did with the handhelds :

                                  • konamih
                                  • tigerh
                                  • etc.

                                  But our handheld-names are actually a subsections of [Handheld / Electronic Game].
                                  Wouldn't you agree ?

                                  I can imagine using it to categorize it to make a better menu.
                                  But this file is quite difficult to extract the info and it's, I think, based upon mame 0.229. Then we have a mismatch again with 0.227.

                                  --

                                  Can you tell me, is there something in above reply that makes any sense referring to your conversation ?
                                  If that is not the case, perhaps we have to leaf this part for a while, otherwise it's going to get too difficult, I think.

                                  D 1 Reply Last reply 1 Apr 2021, 14:15 Reply Quote 0
                                  • D
                                    DTEAM @Folly
                                    last edited by DTEAM 4 Jan 2021, 15:44 1 Apr 2021, 14:15

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

                                    But our handheld-names are actually a subsections of [Handheld / Electronic Game].
                                    Wouldn't you agree ?

                                    Yes, excepted for all_in1 system. I'm not sure if they categorized those games/systems properly. When I did my list, I looked for drivers and I did't paid attention if it was in Handheld or not. Same thing for Jakks, but for Jakks, they use only 2 drivers. It should be easy to isolated.

                                    The way they play with the names are crazy. Did you see the renameSET.dat. It makes me dizzy

                                    F D 2 Replies Last reply 1 Apr 2021, 14:54 Reply Quote 0
                                    • F
                                      Folly @DTEAM
                                      last edited by Folly 4 Jan 2021, 16:00 1 Apr 2021, 14:54

                                      @dteam

                                      Ok, now we are getting somewhere.
                                      You want a good categorization.

                                      We should look for clues and use the mame command and filter things out if possible.
                                      Then we can make our own filter which is version independent.
                                      Otherwise we have to do the sorting every time again when a new version comes.

                                      I think that should be the approach.

                                      But we have to keep in mind that we can only use these filters on systems that are without (-media) and use the bios as the game, sort of speek.

                                      Are we spot on ?

                                      D 1 Reply Last reply 1 Apr 2021, 15:10 Reply Quote 0
                                      • D
                                        DTEAM @DTEAM
                                        last edited by DTEAM 4 Jan 2021, 16:04 1 Apr 2021, 15:01

                                        @dteam

                                        Two imperfect method :

                                        1- Bash kgradius, bmsoccer, jak_dbz , etc. like you said to generate the system folder with the system name (like Jakks) and use mess.ini list in Retropie menu even if it's 0.229 and not 0.227. In the Retropie menu, It could be interesting to substitute kgradius by konamih like we said before.

                                        2 - Start with your massive list and soustract stuff from (arcade.ini and Mechanical Arcade.ini)

                                        If doable, isolate handheld systems is great idea you had.

                                        F 1 Reply Last reply 1 Apr 2021, 15:09 Reply Quote 0
                                        • F
                                          Folly @DTEAM
                                          last edited by Folly 4 Jan 2021, 16:22 1 Apr 2021, 15:09

                                          @dteam

                                          Point 1 shouldn't be that difficult.
                                          I think we should do it in the dialog module-script.
                                          Just joining for example konamih to one game, like I did in the desired script.

                                          Point 2, I will have a look at that. I can't tell for sure how we can manage this, at this point. I we could it would reduce the list to useful systems, that is what you mean.

                                          D 1 Reply Last reply 1 Apr 2021, 15:20 Reply Quote 0
                                          198 out of 2234
                                          • First post
                                            198/2234
                                            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.

                                            This community forum collects and processes your personal information.
                                            consent.not_received