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

    crt-pi shader users - reduce scaling artifacts with these configs in lr-mame2003, lr-fbalpha, lr-nestopia (and more to come)

    Scheduled Pinned Locked Moved Ideas and Development
    crt-pi shadercrt-picrt-pi-verticalshaderslr-mame2003
    385 Posts 42 Posters 259.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.
    • RionR
      Rion
      last edited by Rion

      Thank you again @Riverstorm for explaning this to me.

      I got it working

      Here is the code

      fileName = "fba_neogeo_029739.txt"
      myFile = open(fileName, "r" )
      print('opened file', fileName)
      
      for gamename in myFile:
      	# strip line breaks
          gamename = gamename.rstrip()
          print('creating .cfg for', gamename)
      
          # create cfg file
          cfgFileName = gamename + '.zip.cfg'
          newCfgFile = open(cfgFileName, 'w')
          newCfgFile.write("# Auto-generated crt-pi-curvature .cfg for NeoGeo\n")
          newCfgFile.write("# /home/pi/RetroPie/roms/mame-libretro//\n")
          newCfgFile.write("video_shader_enable = \"true\"\n")
          newCfgFile.write("video_shader = \"/opt/retropie/emulators/retroarch/shader/crt-pi-curvature.glslp\"\n")
          newCfgFile.write("input_overlay = /home/pi/RetroPie/roms/neogeo/overlay/Final_Arcade_NeoGeo_Horizontal.cfg\n")
          newCfgFile.write("input_overlay_enable = true\n")
          newCfgFile.write("input_overlay_opacity = 0.800000\n")
          newCfgFile.write("input_overlay_scale = 1.000000\n")
          newCfgFile.write("aspect_ratio_index = \"0\"\n")
          newCfgFile.write("video_scale_integer = true\n")
      
      myFile.close()
      

      But i could not get
      newCfgFile.write("input_overlay = "/home/pi/RetroPie/roms/mame-libretro/overlays/$cfgFileName"\n")
      to work.

      Luckily because this was only NeoGeo games i could point them all to one cfg file in the overlay folder.

      But i would like to solve it when i start to look at adding a generic arcade-bezels to vertical games in lr-mame2003.

      Anyway here are the results for everyone to download.

      Just put them into you neogeo roms folder in "/home/pi/RetroPie/roms/neogeo"

      neogeo-crt-pi-curvature-Final_Arcade_NeoGeo_Horizontal-bezel-.zip.cfg

      Here is how its going to look when finished.
      SNK NeoGeo

      Thanks to:
      John.Merrit over at libretro forums for creating this in the first place.
      @dankcushions for the python script!
      @Floob for his work with rp-video-manager and making these work for the pi.
      @Riverstorm For explaining this to me in an easy way ;)

      RiverstormR 1 Reply Last reply Reply Quote 0
      • RiverstormR
        Riverstorm @Rion
        last edited by Riverstorm

        @Rion said in crt-pi shader users - automatic usage of crt-pi-vertical in vertical games in lr-mame2003:

        I got it working

        That's great! I know that variable is probably the issue. It's just my lack of knowledge of Python. You might try the line below. I think that will work. Basically you enclose in quotes before and after the cfgFileName variable concatenating it all as one string with the plus sign. It's a little more confusing with extra \ and " throughout the line but basically the same as before. Basically "string" + variable + "string" but we want double quotes to enclose the string after the = sign so there's two extra \" in the line. For example after +cfgFileName+ in the line if you remove the beginning and end quotes it's basically \" (double quote) and \n (new line).

        You probably know this :) but both the config file and overlay file are the same name: <game name>.cfg you would need to take that into account so they don't overwrite each other. You could run write it out to another directory or run it in a separate folder.

        newCfgFile.write("input_overlay  = \"/home/pi/RetroPie/roms/mame-libretro/overlays/"+cfgFileName+"\"\n")
        
        RionR 1 Reply Last reply Reply Quote 1
        • RionR
          Rion @Riverstorm
          last edited by

          @Riverstorm said in crt-pi shader users - automatic usage of crt-pi-vertical in vertical games in lr-mame2003:

          @Rion said in crt-pi shader users - automatic usage of crt-pi-vertical in vertical games in lr-mame2003:

          I got it working

          That's great! I know that variable is probably the issue. It's just my lack of knowledge of Python. You might try the line below. I think that will work. Basically you enclose in quotes before and after the cfgFileName variable concatenating it all as one string with the plus sign. It's a little more confusing with extra \ and " throughout the line but basically the same as before. Basically "string" + variable + "string" but we want double quotes to enclose the string after the = sign so there's two extra \" in the line. For example after +cfgFileName+ in the line if you remove the beginning and end quotes it's basically \" (double quote) and \n (new line).

          You probably know this :) but both the config file and overlay file are the same name: <game name>.cfg you would need to take that into account so they don't overwrite each other. You could run write it out to another directory or run it in a separate folder.

          newCfgFile.write("input_overlay  = \"/home/pi/RetroPie/roms/mame-libretro/overlays/"+cfgFileName+"\"\n")
          

          Well that did the trick!

          Thank you. Now lets start looking at the Generic Bezel for vertical games... :)

          1 Reply Last reply Reply Quote 0
          • T
            twd Banned @dankcushions
            last edited by

            This post is deleted!
            1 Reply Last reply Reply Quote 0
            • S
              Sharkus
              last edited by

              BTW, I found that I needed to put the override .cfg files here to get them to work with Retropie 4:

              /opt/retropie/configs/all/retroarch/config/MAME 2003

              D 1 Reply Last reply Reply Quote 0
              • D
                Dochartaigh @Sharkus
                last edited by

                I'm going to try this tonight! Thank you!

                I've done this manually twice recently! ...thankfully I only play around 100 MAME games total so there weren't too many vertical ones.

                1 Reply Last reply Reply Quote 0
                • RionR
                  Rion
                  last edited by Rion

                  This post is deleted!
                  dankcushionsD 1 Reply Last reply Reply Quote 1
                  • edmaul69E
                    edmaul69 @dankcushions
                    last edited by

                    @dankcushions so i created a folder called MAME 2003 in /opt/retropie/configs/mame-libretro added all the files and it didnt work. then today i updated rpie setup script then updated mame 2003 from binary and still doesnt work. still only sees the crt-pi.glsl i have tried many roms. i am on a pi 3 with retropie 4.01 but i updated retroarch yesterday and mame 2003 today

                    1 Reply Last reply Reply Quote 0
                    • edmaul69E
                      edmaul69 @dankcushions
                      last edited by edmaul69

                      This post is deleted!
                      1 Reply Last reply Reply Quote 0
                      • edmaul69E
                        edmaul69
                        last edited by

                        Since i have no special mame configs and since i couldnt get this to work so i just used bulk rename utility to add the .zip into the names.

                        RionR 1 Reply Last reply Reply Quote 0
                        • RionR
                          Rion @edmaul69
                          last edited by

                          @edmaul69 strange.. I'm using RetroPie 4.1.
                          Have you tried the ones i posted?

                          edmaul69E 1 Reply Last reply Reply Quote 0
                          • edmaul69E
                            edmaul69 @Rion
                            last edited by

                            @Rion i just put yours directly in my roms folder since you already had the .zip in the name. I dont know what the folder name was supposed to be where to put yours in the fba config folder.

                            RionR 1 Reply Last reply Reply Quote 0
                            • RionR
                              Rion @edmaul69
                              last edited by Rion

                              @edmaul69 The ones i posted are for mame not fba.

                              But if your looking for fba look here

                              edmaul69E 1 Reply Last reply Reply Quote 0
                              • edmaul69E
                                edmaul69 @Rion
                                last edited by edmaul69

                                @Rion i was talking about those fba ones. im sorry i didnt realise you had a mame set as well. do yours still go in a folder named MAME 2003? or do i keep them in the folder you get from the zip?

                                RionR 1 Reply Last reply Reply Quote 0
                                • RionR
                                  Rion @edmaul69
                                  last edited by

                                  @edmaul69 The ones i posted goes in to the rom folder not mame2003.

                                  1 Reply Last reply Reply Quote 0
                                  • dankcushionsD
                                    dankcushions Global Moderator @Rion
                                    last edited by

                                    @Rion said in crt-pi shader users - automatic usage of crt-pi-vertical in vertical games in lr-mame2003:

                                    @dankcushions @Sharkus @Dochartaigh

                                    Updated for RetroPie 4.1

                                    mame2003-crt-pi-vertical-overrides-.zip.cfg

                                    mame2003-crt-pi-curvature-vertical-overrides-.zip.cfg

                                    Place these in you mame-libretro or arcade folder.

                                    how are these 'updated' for 4.1? the mame gamelist hasn't changed.

                                    also, whilst i appreciate your effort i think your alternative versions are confusing this thread and unnecessary. the ones i uploaded in my original post should work for anyone using retropie 4.1. your .zip.cfg overrides in the rom folder are a retropie hack made before retroarch supported per-game cfg overrides. there's no need for that approach any more, and maybe it won't always be supported.

                                    i think we should use the properly supported retroarch way as it has advantages. for example, if you use a .zip.cfg rom override with config_save_on_exit = true in your main retroarch.cfg, your per-game shader override will migrate to your main retroarch.cfg. this doesn't happen with the supported approach.

                                    dankcushionsD 1 Reply Last reply Reply Quote 0
                                    • dankcushionsD
                                      dankcushions Global Moderator @dankcushions
                                      last edited by dankcushions

                                      i see, the shader location has changed in 4.1. i will update my .cfgs.

                                      still, unless someone can give me a good reason for keeping the .zip.cfg versions, i will be cleaning up this thread

                                      RionR FloobF 2 Replies Last reply Reply Quote 0
                                      • RionR
                                        Rion @dankcushions
                                        last edited by

                                        @dankcushions

                                        Sorry about that i should have been more clear about the .zip.cfg files i posted. Do you want me to remove these and add the cfg files only or post both for people to choose?

                                        I have also posted this

                                        Mame2003 (0.78u6) Generic Arcade Bezel for every game with crt-pi-curvate (vertical & horizontal)

                                        And this

                                        crt-pi shader users - automatic usage of crt-pi-vertical in vertical games in lr-fbalpha 029739 (formerly lr-fba-next)

                                        Same here with only .zip.cfg files. Do you want me to Change these to and only post the cfg files or both?

                                        dankcushionsD 1 Reply Last reply Reply Quote 0
                                        • dankcushionsD
                                          dankcushions Global Moderator @Rion
                                          last edited by

                                          @Rion thanks! yeah for me the cfg files only should be the ones we use. i don't see the reason for the .zip.cfg ones going forward. i will update my initial post once i've re-run my script with the new shader directory.

                                          RionR 2 Replies Last reply Reply Quote 0
                                          • RionR
                                            Rion @dankcushions
                                            last edited by

                                            @dankcushions Ok i will update my posts with the cfg files during the evening.

                                            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.