RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    new scriptmodules (lr-vice-xvic, gsplus, proper lr-mess integration!)

    Scheduled Pinned Locked Moved Ideas and Development
    githubscriptmodulesdevelopment
    545 Posts 42 Posters 268.1k 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,

      Yes , for MAME standalone
      Here is my output
      1.jpg
      2.PNG

      It works !!!!!!! I see It in my experimental packages and I installed It.
      Thank you !! Great work

      Fine tuning comment: For Retropie existing systems, sometime Retropie names don't match MESS names.
      Ex.: gameboy (MESS) gb (retropie)
      jaguar (MESS) atarijaguar (retropie)
      I fixed those by myself, but It could be interesting to match Retropie names.

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

        @dteam said in new scriptmodules (lr-vice-xvic, gsplus, proper lr-mess integration!):

        @folly

        It works !!!!!!! I see It in my experimental packages and I installed It.
        Thank you !! Great work

        Nice to hear it works. Do you have games already running ?

        Fine tuning comment: For Retropie existing systems, sometime Retropie names don't match MESS names.
        Ex.: gameboy (MESS) gb (retropie)
        jaguar (MESS) atarijaguar (retropie)
        I fixed those by myself, but It could be interesting to match Retropie names.

        Indeed, I have been thinking of this.
        The script has been basically made to generate everything automatically.
        This depends fully on the MAME database.
        That is why mame/mess names are used. Perhaps for MSX or partly matching names this is possible. But for other systems ?
        If RetroPie names can't be extracted from mame or elsewhere, you have to create a renaming database manually. With over 2700 systems, thats quite challange.
        There are also systems that use a mouse. I was hoping that I could extract that information but, up till now, I didn't find this information within mame. It would be nice to implement that also, but if we can't extract it, then this information has to be manual added to a database also.
        Up till now, I don't have a good idea about this.

        EDIT : Perhaps I got it wrong, re-thinking this. Well there aren't that many systems in RetroPie after all. Perhaps we only have to do 50 max. What do you think ?

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

          @folly said in new scriptmodules (lr-vice-xvic, gsplus, proper lr-mess integration!):

          Do you have games already running ?

          Yes, gameboy games like Disney Aladdin, Mario Land etc.
          It works great.

          I switched gameboy for gb

          lr-mess-gameboy-cart = "/home/pi/RetroPie-Setup/scriptmodules/run_mess.sh /opt/retropie/emulators/retroarch/bin/retroarch /opt/retropie/libretrocores/lr-mess/mess_libretro.so /opt/retropie/configs/gb/retroarch.cfg gameboy /home/pi/RetroPie/BIOS -cart %ROM%"
          

          and move config files (excepted retroarch.cfg) from gameboy to gb and everything work perfectly.

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

            @folly said in new scriptmodules (lr-vice-xvic, gsplus, proper lr-mess integration!):

            Perhaps we only have to do 50 max. What do you think ?

            Yes, I agree. Maybe less, because MAME/MESS not support all those systems. I think.

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

              @dteam said in new scriptmodules (lr-vice-xvic, gsplus, proper lr-mess integration!):

              @folly said in new scriptmodules (lr-vice-xvic, gsplus, proper lr-mess integration!):

              Perhaps we only have to do 50 max. What do you think ?

              Yes, I agree. Maybe less, because MAME/MESS not support all those systems. I think.

              Perhaps I can combine this in the "batch" file generate-desired-systems.sh .
              At first this file was made for testing. But I think it can do both functionalities :

              • work as a batch script
              • work as a database for renaming, extra configs or other usefull information.

              If I have the time, perhaps I will look at this solution.

              Note that I have made a similar script (not on github yet)
              This script makes scripts that hold media independant rom-directory's.
              This works actually better because every type of media can have it's own directory, so you don't have to switch startups.
              But with this solution you can't use RetroPie names anymore.
              Second drawback is that you have multiple romdirectory's for 1 system.

              ps. Nice to hear it is working great. I really think it's unlocking potential ;-)

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

                @DTEAM

                It looks like I have made some progress in matching names.
                I have made a working "for/for/if function" that can compare /home/pi/RetroPie-Setup/platforms.cfg against the data extracted from standalone MAME.

                I have already got 2 exact matches in the systemdescriptions :

                • "Vectrex"
                • "Game Boy"

                Altough for "Vectrex" the system/romdir is the same.
                This is not the case with "Game Boy".
                I have not yet added this, but when I have a match, I can use the RetroPie system/romdir name instead.
                So this looks a bit promising.

                I also looked into global matches, so if a mess systemdescription contains "MSX" or "Amiga"
                Tested this with a manual (not extrated) test array. This also works, but I don't have a solution yet on extracting and matching parts for that mather.

                A total solution could be something like this (but I don't know for sure) :

                • First do the global matches with a manual array with, for example, "MSX" "Amiga" "Apple".
                • Then do the exact matches.
                • With no matches, stick with mess names.

                Trouble is though :
                You have to check 5699 files against 86 system platforms.
                With exact and global matches you have to do this 2 times.
                So you have to do a million checks if you want to check all.
                I don't know how much time this process will take.
                But for one system this is doable.
                EDIT: I did the first exact matching test, this took 4 minutes.
                That is remarkable faster than thougt it would be.
                (I think roughly 500000 checks)
                Looks really promising.

                Example global match "MSX"(for now this is a manual one) :

                no match - mess - HB-F700P (MSX2) -- mess - Sega Master System
                no match - mess - HB-F700P (MSX2) -- mess - Sega Mega Drive
                match - mess - HB-F700P (MSX2) -- rp - MSX (hbf700p can be changed into msx)
                no match - mess - HB-F700P (MSX2) -- mess - Thomson MO/TO
                

                or also a global match (Atari 2600)(this could be an extracted one):

                no match - mess - Atari 2600 (NTSC) -- mess - MSX
                no match - mess - Atari 2600 (NTSC) -- mess - Vectrex
                match - mess - Atari 2600 (NTSC) -- rp - Atari 2600 (a2600 can be changed into atari2600) 
                

                An exact match (Game Boy) :

                no match - mess - Game Boy -- mess - Sega Gamegear
                no match - mess - Game Boy -- mess - Game Boy Advance
                match - mess - Game Boy -- rp - Game Boy  (gameboy can be changed into gb) 
                no match - mess - Game Boy -- mess - Game Boy Color
                no match - mess - Game Boy -- mess - Nintendo Gamecube
                

                EDIT: I added lines in my testscript, this will now output exact matches (doubles are compatible with different media types) :

                101 a5200 -- atari5200
                1973 gameboy -- gb
                1984 gbcolor -- gbc
                2556 intv -- intellivision
                2759 kaypropc -- pc
                2760 kaypropc -- pc
                3735 oric1 -- oric
                3736 oric1 -- oric
                3936 pce -- pcengine
                3937 pce -- pcengine
                4711 spectrum -- zxspectrum
                4712 spectrum -- zxspectrum
                4713 spectrum -- zxspectrum
                5293 vboy -- virtualboy
                
                DTEAMD 1 Reply Last reply Reply Quote 1
                • DTEAMD
                  DTEAM @Folly
                  last edited by DTEAM

                  @folly

                  Nice work you did !!!
                  I have use generate-desired-systems.sh for lr-mess handheld systems and It works like a charm.

                  You should find a way to put that on the official Retropie setup. It’s the best way I ever seen to have an easy access to lr-mess systems.

                  On my side, I'm working on MAME artwork for lr-Mess handheld console. A lot already exist but somes are missing like Gamate, GameMaster, Pocket Station, SVMU and GP32. I did Gamate and GameMaster. I'll do Pocket Station, SVMU and GP32 this week.

                  I'll share those when It will be finished.

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

                    @dteam said in new scriptmodules (lr-vice-xvic, gsplus, proper lr-mess integration!):

                    @folly

                    Nice work you did !!!

                    Thank you for the compliment.

                    I have use generate-desired-systems.sh for lr-mess handheld systems and It works like a charm.

                    I astounded myself too.
                    It works even better than I ever could imagine.

                    You should find a way to put that on the official Retropie setup. It’s the best way I ever seen to have an easy access to lr-mess systems.

                    Well, for the future I it could be a possibility, but before that, there can be added much more functionality.
                    You have to know that, for now, my script is just automating the @valerino stuff.
                    So basically we don't have to make the seperate system scripts anymore.
                    But for the basic idea, the credits go to @valerino . It all depends on his run_mess.sh script.
                    There has already been some discussion about intergrading Valerino's scripts into the official RetroPie-Setup here :
                    https://retropie.org.uk/forum/topic/27837/integrating-lr-mess-quasi-cores-into-retropie-setup

                    So I think, before that happens, there is still a lot to be done to make it approved somehow.

                    On my side, I'm working on MAME artwork for lr-Mess handheld console. A lot already exist but somes are missing like Gamate, GameMaster, Pocket Station, SVMU and GP32. I did Gamate and GameMaster. I'll do Pocket Station, SVMU and GP32 this week.

                    I'll share those when It will be finished.

                    Nice ! , I am looking forward to that.
                    Then I have to install a bunch more. I hope I have the time for that.

                    ps. updated the script : now the .zip extension is always added in the generated script. So .zip files will appear in emulationstation.

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

                      I have work on MAME artwork for lr-Mess handheld consoles. A lot already exist but somes was missing like Gamate, GameMaster, Pocket Station, SVMU and GP32. I did those and I combined them with existing ones in a folder (click this link)

                      Those Artworks have multiple view. Here is a small tutorial to use the lr-mess artworks on Retropie and be able to switch quickly from one view to another.

                      1 - Copy files from here to /home/pi/RetroPie/BIOS/mame/artwork You will have to create the artwork folder.

                      2-Install a handheld system with Folly script (above method)

                      HANDHELD SYSTEMS LIST
                      advision
                      gamate
                      gameboy
                      gamecom
                      gamegear
                      gamepock
                      gba
                      gbcolor
                      gbpocket
                      gmaster
                      gp32
                      lynx
                      megaduck
                      microvsn --------> No handheld systems artwork found - to found or to do
                      ngp
                      ngpc
                      pockstat
                      pokemini
                      svision
                      svmu --------> some issues with artwork, It works on a 5inch screen but not on a regular TV issue solved
                      vectrex
                      wscolor
                      wswan

                      3- Choose a system and select the good Mess system/emulator line when your game load.

                      4- Connect a keyboard (only the first time). In the game, press Tab and go in (Input (general)) and User Interface.
                      6.jpg

                      5.jpg

                      5 - Set Right Thumb as (Config Menu) and Left Thumb as (UI Cancel). With that, you will be able to go quickly in and out the menu. To select It’s B or A Button but It’s already set . Maybe you will have to set up-down-left-right. Because It's lr-Mess, you can't config some buttons. Do It, with right and left thumb or Left trigger and Right Trigger only.
                      controller.png
                      4.jpg

                      6 - Now, you can go back to video options and select the view you want. Don't forget to set Input (this Machine) to set your game controller if It's not done properly.
                      3.jpg
                      10.jpg
                      9.jpg
                      11.jpg
                      7.jpg
                      8.jpg

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

                        @dteam

                        I hope I can install your artwork soon. :-)

                        Here an update on my script :

                        I keep my stable version online.

                        Today I finished my test version.
                        It took me about 14 hours to take it this far and I am quite happy about it.
                        If all goes to plan, I will put it on github this evening.
                        I will call it :
                        generate-lr-mess-systems-1v3-alpha.sh

                        I think I have made a quite unique function to match MESS/MAME names to RetroPie names.
                        I am quite impressed on how this works. ;-)
                        I have only tested this with single system creations,
                        but I think it will do most with no problem.
                        (or at least I hope so)

                        Only the system name "PC" is a problem and perhaps I forgot some system.
                        That is why it's in an alha testing state.
                        Perhaps more problems arise.

                        It will output names (a bit shorter, for now I keep "gen" in it, to distingquish between original valerino and my generated versions):
                        gen-lr-mess-<RetroPiename>-<MESSname><-media>.sh

                        Can you test this version a bit for me ?

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

                          @folly said in new scriptmodules (lr-vice-xvic, gsplus, proper lr-mess integration!):

                          Can you test this version a bit for me ?

                          Yes, no problem. I will test regular Retropie systems like:
                          bash generate-lr-mess-systems-1v3-alpha.sh nes
                          bash generate-lr-mess-systems-1v3-alpha.sh a2600
                          bash generate-lr-mess-systems-1v3-alpha.sh a5200
                          bash generate-lr-mess-systems-1v3-alpha.sh n64
                          bash generate-lr-mess-systems-1v3-alpha.sh pce
                          bash generate-lr-mess-systems-1v3-alpha.sh pcecd
                          bash generate-lr-mess-systems-1v3-alpha.sh neogeo
                          bash generate-lr-mess-systems-1v3-alpha.sh neocd
                          bash generate-lr-mess-systems-1v3-alpha.sh snes
                          bash generate-lr-mess-systems-1v3-alpha.sh 3do
                          bash generate-lr-mess-systems-1v3-alpha.sh 32x

                          with generate-desired-systems.sh

                          I had an issue with SVMU artwork. I'll try to fix It. It works on a 5inch screen but not on a regular TV

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

                            @dteam

                            Did a fix on neogeo :
                            Added memc media in the filter for detecting neogeo.

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

                              @folly said in new scriptmodules (lr-vice-xvic, gsplus, proper lr-mess integration!):

                              ps. updated the script : now the .zip extension is always added in the generated script. So .zip files will appear in emulationstation.

                              .7z extension could be also add to es_systems.cfg.

                              It works. The names are doubled like:

                              • lr-mess-snes-snes-cart or
                              • lr-mess-a5200-a5200-cart

                              Not the purpose, but just to know:

                              Nes (good performance)
                              SNES won't load (BIOS issue)
                              a2600 (good performance)
                              a5200 (screen view to set)
                              N64 run at 25 FPS (really slow)
                              32x (won't load , probably bad romset)
                              3DO (stop on 3DO screen, but not freeze)

                              I confirm, the names are matching between Retropie and MAME. It works!

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

                                @dteam said in new scriptmodules (lr-vice-xvic, gsplus, proper lr-mess integration!):

                                @folly said in new scriptmodules (lr-vice-xvic, gsplus, proper lr-mess integration!):

                                ps. updated the script : now the .zip extension is always added in the generated script. So .zip files will appear in emulationstation.

                                7z. ext. could be also add.

                                Indeed, was thinking about that. I can implement this.
                                EDIT : .7z is added in the scripts now.

                                It works. The names are doubled like:

                                • lr-mess-snes-snes-cart or
                                • lr-mess-a5200-a5200-cart

                                EDIT : I see now Atari 5200 does not have the right name, will try to fix this
                                (EDIT: checked it, I have a good file (no issue): gen-lr-mess-atari5200-a5200-cart.sh)

                                Yes that is correct. Both names are in the filemame :
                                gen-lr-mess-<RetroPiename>-<MESSname><-media>.sh
                                Perhaps there is a better way of naming.
                                We can discuss that.
                                For now I did this to check The RetroPie names against the MESS name.
                                (EDIT: now it was already usefull to detect an issue with a5200)
                                (EDIT: checked it, I have a good file (no issue): gen-lr-mess-atari5200-a5200-cart.sh)
                                In these examples they are both the same.
                                But with others they aren't.
                                With msx you get something like this :
                                msx-hbf700p-flop1 quite usefull, I think.

                                Not the purpose, but just to know:

                                Nes (good performance)
                                SNES won't load (BIOS issue)
                                a2600 (good performance)
                                a5200 (screen view to set)
                                N64 run at 25 FPS (really slow)
                                32x (won't load , probably bad romset)
                                3DO (stop on 3DO screen, but not freeze)

                                I confirm, the names are matching between Retropie and MAME.

                                Thanks for already testing a bit !

                                I downloaded the artwork and tested it on gameboy.
                                The artwork works oob. Nice job.
                                2020-12-08-210454_800x600_scrot-resized.png 2020-12-08-210443_800x600_scrot-resized.png

                                Only my space ship was toooo fast, Game over ^^

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

                                  @dteam said in new scriptmodules (lr-vice-xvic, gsplus, proper lr-mess integration!):

                                  bash generate-lr-mess-systems-1v3-alpha.sh nes
                                  bash generate-lr-mess-systems-1v3-alpha.sh a2600
                                  bash generate-lr-mess-systems-1v3-alpha.sh a5200
                                  ....

                                  Perhaps you know. Perhaps others don't.
                                  But this is also nice in the terminal.

                                  Just copy and past the multiple lines will do the job also.
                                  Isn't that great. ;-)

                                  1 Reply Last reply Reply Quote 1
                                  • TPRT
                                    TPR
                                    last edited by

                                    I'm trying to install GSPlus but I'm running into the following error. Any ideas? Thank you.
                                    GSplus error.jpg

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

                                      @tpr said in new scriptmodules (lr-vice-xvic, gsplus, proper lr-mess integration!):

                                      I'm trying to install GSPlus but I'm running into the following error. Any ideas? Thank you.

                                      You did not add much info to your problem.
                                      But it seems like you are installing the standalone gsplus from source (original valerino)

                                      Tried this for you now, I have the same error (using Raspberry Pi OS Buster on pi4)
                                      You have to read your specific/latest log in to find out more :
                                      /home/pi/RetroPie-Setup/logs
                                      In my log => fatal error: readline/readline.h file does not exist.
                                      So it seems to be a fault in the source code.
                                      So the compilation is terminated and thats why the binary isn't found.

                                      The script gets his sourcode from :
                                      https://github.com/digarok/gsplus

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

                                        @DTEAM

                                        I want to discuss the BIOS directory for my generated scripts.

                                        For my script I was thinking to change the BIOS directory so all lr-mess bios files go in there. Just to seperate them from the others. What do you think of that idea ?

                                        So the lr-mess-bios directory is going to be something like :
                                        /home/pi/RetroPie/BIOS/lr-mess
                                        (perhaps there is a better way)

                                        I think it's also possible to separate them on mess names, so we get a be view on what is where. Like this :
                                        /home/pi/RetroPie/BIOS/lr-mess/<MESSsystem>

                                        I don't know if I change it in the script, if this will work directly.
                                        But if it works, what do you think of this idea ?

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

                                          @folly I have added that file from the source but I'm still getting errors. This is what my log currently tells me:

                                          [ 16%] Building C object bin/atbridge/CMakeFiles/atbridge.dir/port.c.o
                                          [ 18%] Linking C static library libatbridge.a
                                          [ 18%] Built target atbridge
                                          [ 20%] Linking C executable to_pro
                                          [ 20%] Built target to_pro
                                          make: *** [Makefile:84: all] Error 2
                                          /home/pi
                                          Could not successfully build gsplus - Apple II/GS emulator (/home/pi/RetroPie-Setup/tmp/build/gsplus/bin/GSplus not found).

                                          Any further help would be appreciated. Thank you.

                                          1 Reply Last reply Reply Quote 0
                                          • TPRT
                                            TPR @roslof
                                            last edited by

                                            @roslof I've been trying to get GSplus up and running and have everything you've mentioned in this post except for this: GSOS6.0.1.img

                                            I can't seem to find any reference to this or videos on how to make one by Googling it. Any help would be appreciated. Thank you.

                                            I'm trying to run something like "Thexder" and I have the gsp and the 2mg files in the correct place according to the gsp file but I don't have that .img file that you mention.

                                            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.