RetroPie forum home
    • 최근
    • 태그
    • 인기
    • Home
    • Docs
    • 등록
    • 로그인

    Development of module-script generator for lr-mess, lr-mame and mame standalone

    예약됨 고정됨 잠김 이동됨 Ideas and Development
    developmentlr-messmamelr-mamescripts
    2.3k 게시물 37 작성자 7.8m 조회수
    게시물 더 불러오는 중
    • 오래된 순
    • 최신 순
    • 가장 많은 투표
    답글
    • 토픽으로 답글
    로그인 후 답글 작성
    이 토픽은 삭제되었습니다. 토픽 관리 권한이 있는 사용자만 볼 수 있습니다.
    • DTEAMD
      DTEAM @Folly
      마지막 수정자: DTEAM

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

      Also found something that could improve the gamelists.
      In the gamelists I found this directory :
      /home/pi/.emulationstation/downloaded_images/
      This is a link to :
      /opt/retropie/configs/all/emulationstation/downloaded_images
      So we can better use the opt directory, I think.
      That way other users of RetroPie, that aren't called "pi", can also use the gamelists.

      Another option could be to put the gamelist.xml and the medias in the rom/system folders.

      All my new "scrapes" are in my roms folders

      Or perhaps there are double files on your google drive.
      Can you check that ?

      Yes, I'll do

      FollyF 1 답글 마지막 답글 답글 인용 1
      • FollyF
        Folly @DTEAM
        마지막 수정자: Folly

        @dteam

        I have done some extra research on the gamelists regarding a user independent approach.
        I did try some things but it seems not working using ~/ for all the entry's.
        Don't know why.
        I get back to you, when i found something better.

        DTEAMD 1 답글 마지막 답글 답글 인용 0
        • DTEAMD
          DTEAM @Folly
          마지막 수정자: DTEAM

          @folly
          I'll do It next week, but It will look like this

          <?xml version="1.0"?>
          <gameList>
          	<game id="41424" source="ScreenScraper">
          		<path>/home/pi/RetroPie/roms/all_in1/bittboy.7z</path>
          		<name>BittBoy Mini FC 300 in 1</name>
          		<desc>nes_vt369_vtunknown.cpp
          </desc>
          		<image>./media/bittboy.png</image>
          		<marquee />
          		<video />
          		<thumbnail />
          		<rating>0.8</rating>
          		<releasedate>20170101T000000</releasedate>
          		<developer>BittBoy</developer>
          		<publisher>BittBoy</publisher>
          		<genre>All in one Handheld console</genre>
          		<players>1</players>
          	</game>
          

          The gamelist.xml must be in the system room folder like this e.g./home/pi/RetroPie/roms/all_in1/gamelist.xml and all medias (videos, marquees and images) will be in a media folder inside the rom system folder like this : /home/pi/RetroPie/roms/all_in1/media

          I'll not separate videos, marquees and images in individual folders. It's to much work for nothing.

          the path is for a .7z file. Did you do something to include .zip. I don't remember.

          Some themes use <thumbnail> instead of <marquee>. The user will need to make an adjustment if this is the case.

          Are you agree with that?

          FollyF 1 답글 마지막 답글 답글 인용 0
          • FollyF
            Folly @DTEAM
            마지막 수정자: Folly

            @dteam

            I have found that changing this :

            <path>/home/pi/RetroPie/roms/all_in1/bittboy.7z</path>
            

            into this :

            <path>./bittboy.7z</path>
            

            Will also work and then it's user independent.
            We should change that too

            About the media part :
            Why do you want it in ./media ?
            I have some doubts about placing the media into the rom directory's.
            That way users will always see the directory media in EmulationStation.
            As an alternative we can also link to some directory's for those who want that.
            Linking them to ./media if they want or not.

            Edit : I tested your approach, seems better than I expected.
            Indeed, the media directory isn't seen in emulationstation.
            Downloading can be a possible problem with the structure still on google drive.
            What do you think are the benefits from your perspective ?
            The ones I can think of are (do you have the same reasons ?):

            • backup all in on go (roms,media and gamelist)
            • quick and easy to find in the rom directory for easy access and changing
            • not mixing with gamelists in /opt/retropie/configs/all/emulationstation/gamelists

            Btw.
            It should be quite easy using sed in a cmd line to change them in minutes.

            DTEAMD 1 답글 마지막 답글 답글 인용 0
            • DTEAMD
              DTEAM @Folly
              마지막 수정자: DTEAM

              @folly
              Ok, I'm back

              The reason why I put those files in the rom directory is for the backup . It's faster to manage but at the end it doesn't matter. I got that from Skraper . They manage "scraping" in the rom folder. What's the easiest way for managing files with your script? I'll do It like you prefer.

              <?xml version="1.0"?>
              <gameList>
              	<game id="41424" source="ScreenScraper">
              		<path>./bittboy.7z</path>
              		<name>BittBoy Mini FC 300 in 1</name>
              		<desc>nes_vt369_vtunknown.cpp
              </desc>
              		<image>./media/bittboy.png</image>
              		<marquee />
              		<video />
              		<thumbnail />
              		<rating>0.8</rating>
              		<releasedate>20170101T000000</releasedate>
              		<developer>BittBoy</developer>
              		<publisher>BittBoy</publisher>
              		<genre>All in one Handheld console</genre>
              		<players>1</players>
              	</game>
              
              FollyF 1 답글 마지막 답글 답글 인용 1
              • FollyF
                Folly @DTEAM
                마지막 수정자: Folly

                @dteam

                I have been thinking about it.
                I had some doubts but I think it's a good idea.

                Do you keep this also in ? :
                <game id="41424" source="ScreenScraper">
                There are more of these lines, we could make these just :
                <game>

                I think you know, but for easy downloading the ES-media, I think you have to add a media directory in every system directory where the media goes.
                We should do a test first.
                But I think it has to like this (as example for all systems) :
                konamih/media/kgradius.png
                So it's downloads directly in the correct place when I put the path in.

                DTEAMD 2 답글 마지막 답글 답글 인용 1
                • DTEAMD
                  DTEAM @Folly
                  마지막 수정자:

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

                  Do you keep this also in ? :
                  <game id="41424" source="ScreenScraper">

                  It's from an old "scrape" it should be <game > I agree

                  1 답글 마지막 답글 답글 인용 1
                  • DTEAMD
                    DTEAM @Folly
                    마지막 수정자:

                    @folly

                    On Retropie we go with the rom folder, but on Google Drive, can I keep the same structure/folder or I change also that?

                    FollyF 2 답글 마지막 답글 답글 인용 0
                    • FollyF
                      Folly @DTEAM
                      마지막 수정자:

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

                      @folly

                      On Retropie we go with the rom folder, but on Google Drive, can I keep the same structure/folder or I change also that?

                      The structure of the gamelists on google-drive can stay the same.
                      Only changing the destination path in our script will do the trick.
                      If I do the same with the media then this will not work.
                      I will have a second look, if I can do it with the original structure.
                      I'll be back with the results.

                      1 답글 마지막 답글 답글 인용 0
                      • FollyF
                        Folly @DTEAM
                        마지막 수정자: Folly

                        @dteam

                        I had a second look.

                        For the game-lists, I have no issues with changing the path to the rom directory.
                        If I do this with the downloaded_images, it puts all .png files inside all the systems directory's.
                        I don't want to move those files after downloading, so we should change the google-drive folder structure.
                        Moving the files would also conflict with the lr-mess atwork_overlay .png's that can already be in the same directory.

                        I think we have to bind both folders on google-drive,
                        just like we want in our rom directory adding the gamelist.xml and media folder in all system directory's.
                        Then we can simply use 1 download line in the front-end script.
                        And if all goes well everything goes to the rom directory in one go.
                        So we can do a test here.
                        Can you add the media of konamih into the gamelist folder ?
                        So you will have a media directory containing the .png's inside this link :
                        https://drive.google.com/drive/folders/1-HxU0y61KE3d30RUXBki0vwP2tVQh6uo

                        If you put it there, I will run the script and see if all goes well.
                        Good idea ?

                        Edit :
                        I realized that we can also make the directory structure like this (taking konamih as example) :
                        -roms
                        __-konamih (containing the gamelist)
                        ____-media
                        _______-emulationstation (containing the theme png's)
                        _______-overlays_lr-mess (containing the overlay png's)

                        That way we are far more flexible for the future.
                        Adding things later on and just have 1 media folder inside the rom directory.
                        Good idea ?

                        DTEAMD 1 답글 마지막 답글 답글 인용 0
                        • DTEAMD
                          DTEAM @Folly
                          마지막 수정자: DTEAM

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

                          Can you add the media of konamih into the gamelist folder ?

                          Yes

                          Good idea ?

                          Yes, good idea. I'll do that

                          <?xml version="1.0"?>
                          <gameList>
                          	<game>
                          		<path>./bittboy.7z</path>
                          		<name>BittBoy Mini FC 300 in 1</name>
                          		<desc>nes_vt369_vtunknown.cpp</desc>
                          		<image>./media/emulationstation/bittboy.png</image>
                          		<marquee />
                          		<video />
                          		<thumbnail />
                          		<rating>0.8</rating>
                          		<releasedate>20170101T000000</releasedate>
                          		<developer>BittBoy</developer>
                          		<publisher>BittBoy</publisher>
                          		<genre>All in one Handheld console</genre>
                          		<players>1</players>
                          	</game>
                          
                          DTEAMD 1 답글 마지막 답글 답글 인용 1
                          • DTEAMD
                            DTEAM @DTEAM
                            마지막 수정자: DTEAM

                            @folly

                            I did It for konamih and all_in1

                            You can test It now with those two. I'll try to find time to do the others.

                            FollyF 1 답글 마지막 답글 답글 인용 0
                            • FollyF
                              Folly @DTEAM
                              마지막 수정자:

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

                              @folly

                              I did It for konamih and all_in1

                              You can test It now with those two. I'll try to find time to do the others.

                              I did a test, but I saw all files are in the same directory.
                              Is it possible to make the sub-directory's inside all_in1 and konamih so it will look like this ? :
                              gamelist.xml
                              media/emulationstation/*.png

                              DTEAMD 1 답글 마지막 답글 답글 인용 0
                              • DTEAMD
                                DTEAM @Folly
                                마지막 수정자:

                                @folly
                                Done. Told me if It's like you wanted.

                                FollyF 2 답글 마지막 답글 답글 인용 0
                                • FollyF
                                  Folly @DTEAM
                                  마지막 수정자: Folly

                                  @dteam

                                  Perfect.
                                  All files are downloaded in the correct path.
                                  Looks all good !

                                  Can you add .zip also in the gamelist of all_in1, it seems to be missing.
                                  The gamelist of konamih didn't work because of the old entry's, but I think you know that it still has to be edited.

                                  1 답글 마지막 답글 답글 인용 0
                                  • FollyF
                                    Folly @DTEAM
                                    마지막 수정자: Folly

                                    @dteam

                                    To ease your workload I have changed all gamelists in about 15 minutes.
                                    I hope/think they are all good.
                                    Perhaps you can do some checks too.
                                    I have put them on github.
                                    You can check the diffs here :
                                    https://github.com/FollyMaddy/RetroPie-Share/commit/a542b7399c66b1d9a9e8e1dc6b77048d5b9efb2b

                                    I added the new location in the scripts :
                                    https://github.com/FollyMaddy/RetroPie-Share/commit/bff28b1d898dd254a27c11478b5c6bef99b7979e

                                    1 답글 마지막 답글 답글 인용 1
                                    • FollyF
                                      Folly
                                      마지막 수정자: Folly

                                      (Moved this reply from an other thread, seems to be more relevant to this thread)

                                      @hhtien1408 said in Request for artists working on themes - needs for (lr-mess/MAME) additions:

                                      @folly @DTEAM
                                      Hi, could you share me how to use lr-mess/MAME Standalone in retropie step by step for

                                      • Supracan
                                      • NES-Datach

                                      How to build runcommand in emulator.cfg with software list enable? (How to enable?)

                                      I knew how to add system but cannot make it work like official mame 0.231 (in mame supracan -cart <rom>

                                      Noted that I am using lastest lr-mame/mess (default) built from source on Ubuntu 21.04 Gnome40.

                                      Hope to here from you asap!
                                      Thanks for million times!

                                      Hi,

                                      I will try to answer your question.

                                      I dug into this a bit.
                                      Also we have sometimes trouble with using the software lists.
                                      Basically "using the software list" and how this has to be structured is not always clear.
                                      We have actually 3 different types of computers in mame:

                                      • bios system games
                                      • arcade systems with media
                                      • regular computer systems with media

                                      All these systems do not always work the same way, I think, so one solution for one system isn't always one for the other.
                                      That's why, I think, it's sometimes so hard to make a solution for every system.
                                      That is why we run it most of the times without using the software list.
                                      In post 1 of this thread this issue is still open, seems the same problem :
                                      👉 open : Discovered by @DTEAM :
                                      C64 and Atari Jaguar not working with basename
                                      ........

                                      That is why I did have a look, because I also want to have lines working in my generated scripts that will work for more systems "using the software list".

                                      For "supracan" you can use my script to generate the module scripts in the ext directory :

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

                                      Then install them from the experimental packages (scroll to the end, and you will find them(the "cmd" and the "-cart" one).

                                      This is the line for using the softwarelist with mame that I created and tested :

                                      mame-basename = "/opt/retropie/emulators/mame/mame -rompath /home/pi/RetroPie/roms/supracan -v -c supracan %BASENAME%"
                                      
                                      

                                      The one installed by the generated module-script is different.

                                      For now you can change it manually in :
                                      /opt/retropie/configs/supracan/emulators.cfg

                                      Try this first.

                                      For lr-mess I don't have a solution yet.
                                      With the "-cart" line it boots to the info but then stops working.
                                      Not on my priority list now, but if I have some time I will look at it.

                                      BTW.
                                      Do you have a system name for : NES-Datach
                                      I can't find it.

                                      H 2 답글 마지막 답글 답글 인용 0
                                      • H
                                        hhtien1408 @Folly
                                        마지막 수정자: hhtien1408

                                        @folly I will try your solution for MAME standalone.

                                        With Super Acan, no need to put bios (no bios) into bios/MAME?
                                        Where to put ROM? Bios? Hash xmls?
                                        Does your script setup all?

                                        I asked more for confirmation:

                                        1. Should I build MAME from source (Retropie-setup script)? Or your script do this step?
                                        2. Run your script
                                        3. Put roms into folder (but which folder)
                                        4. Do you need to create config mame.ini?
                                        5. Without libretro, could I use overlays and shaders?
                                          Or use fallback artwork like I use in mame 0.231?

                                        About NES Datach info, if I would to play Datach Dragon ball, I will load Datach rom in NES system and use Datach to insert game Dragon Ball
                                        Command line in MAME to run on my laptop with mame 0.231 seperately

                                        ./mame64 nes -cart datach -cart2 /Users/H2T/Games/mame/roms/nes_datach/dtc_dbz.zip
                                        

                                        Please check link below for Datach
                                        Datach - Scan bar code for MESS
                                        Could you generate script for nes-datach? Just a subsystem nes-datach.

                                        Both supracan and nes_datach run well on official MAME

                                        Hope to hear from you asap.

                                        FollyF 1 답글 마지막 답글 답글 인용 0
                                        • FollyF
                                          Folly @hhtien1408
                                          마지막 수정자: Folly

                                          @hhtien1408 It's not allowed to share rom links!
                                          You should remove them, asap !

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

                                          @folly I will try your solution for MAME standalone.

                                          With Super Acan, no need to put bios (no bios) into bios/MAME?
                                          You can check with :

                                          /opt/retropie/emulators/mame/mame -listroms supracan
                                          
                                          

                                          It will output : No ROMs required for driver "supracan".

                                          Where to put ROM? Bios?

                                          Game roms for <system> :
                                          /home/pi/RetroPie/roms/<system> (<system> is here supracan)
                                          BIOS roms :
                                          If needed, BIOS files, depending on what has to be used, go to :
                                          /home/pi/RetroPie/BIOS/mame/<system>.zip

                                          Hash xmls?:
                                          Hash tables are in :
                                          /opt/retropie/emulators/mame/hash/<system>.xml

                                          Does your script setup all?

                                          Indeed, the generated module-script does.
                                          Read the first post of this thread and learn how it's done !

                                          I asked more for confirmation:

                                          1. Should I Build MAME from source (Retropie-setup script)? Or your script do this step?

                                          You have to install from source in the RetroPie-Setup, if you are on an x86/x86-64 computer.
                                          edit : If you are able to use the binary then I recommend you use that.
                                          You also need to install lr-mess to be able to install the module-scripts.

                                          The module-scripts that are generated with my "curl line" does will only do the configurations when installed in the RetroPie-Setup.

                                          1. Run your script

                                          Go into the terminal and paste the "curl line" into the command prompt.
                                          This will generate module-scripts that have to be installed in the RetroPie-Setup.

                                          • install-supracan-cmd
                                          • install-supracan-from-mamedev-system-supracan-cart
                                          1. Put roms into folder (but which folder)

                                          /home/pi/RetroPie/roms/supracan/<game>.zip

                                          1. Do you need to create config mame.ini?

                                          Not needed.

                                          1. Without libretro, could I use overlays and shaders?

                                          Not my expertise but, you can use Artwork, no shaders, I think.

                                          Or use fallback artwork like I use in mame 0.231?

                                          Could work I think.

                                          About NES Datach info, if I would to play Datach Dragon ball, I will load Datach rom in NES system and use Datach to insert game Dragon Ball

                                          Will look at this later

                                          1 답글 마지막 답글 답글 인용 0
                                          • H
                                            hhtien1408 @Folly
                                            마지막 수정자: hhtien1408

                                            @folly
                                            You mean your method for lr-mame or MAME standalone? Or work for both?

                                            I would like to ask about this (I changed the path for myself to suitable for Retropie on Ubuntu)

                                            mame-basename = "/opt/retropie/emulators/mame/mame -rompath /home/RetroPie/roms/supracan -v -c supracan %BASENAME%"
                                            

                                            It means I will put this line in my /opt/retropie/configs/supracan/emulators.cfg
                                            exactly as the same code above and make it default emulator? Right?

                                            Should I need change a little bit in script before executing for my suitable locations (remove "/pi/)? My current default location is "/home/RetroPie" on Ubuntu.

                                            For normal neogeo roms, Running with lr-mame (mamearcade-libretro.so show the “initializing” and freeze. Wrong bios or romset? Do you face this error yet?

                                            FollyF 1 답글 마지막 답글 답글 인용 0
                                            • 첫 게시물
                                              마지막 게시물

                                            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.