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.4k 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
      fomt
      last edited by

      Hello again. Last time I used these configs for my 1080p I didnt really know how to use them, i had ”core privided” to every game so I guess these configs never worked. 😵
      Now i’m want to use them on a new install, and I have put them in the desire folders, and the shaders are working. If I change from ”core privided” to ”custum” in retroarch then I think the aspect ratio works to. Am I doing it correct? Should I have it on custom only or should I also have ”integer scale” on?
      If yes, how do I set ”custom” as default? As now I have to change in every game. Should I edit retroarch.cfg?

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

        Think I must change:
        aspect_ratio_index = "22"
        to
        aspect_ratio_index = "23"

        EDIT:
        Yep, 23 works, custom must have been changed from 22 to 23

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

          should I add "video_scale_integer =true" in /opt/retropie/configs/arcade/retroarch.cfg ?
          @dankcushions

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

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

            should I add "video_scale_integer =true" in /opt/retropie/configs/arcade/retroarch.cfg ?
            @dankcushions

            no :)

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

              @dankcushions No? What should I do then?
              So then I guess integer scale should be OFF?

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

                @fomt integer scaling is off by default in retropie, so you shouldn't have to do anything in that regard. i think you should scroll up a bit to see the recent discussions about retroarch's config changes. specifically: https://retropie.org.uk/forum/post/183831

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

                  @dankcushions ok, shall read. Red on another forum that they added a new aspect ratio to the index. so the custom 22 has moved to 23 instead.
                  So I just run in powershell:

                  Get-ChildItem 'f:\cfg\*.cfg' -Recurse | ForEach {
                  (Get-Content $_ | ForEach { $_ -replace 'aspect_ratio_index = "22"', 'aspect_ratio_index = "23"' }) |
                  Set-Content $_
                  }
                  

                  then added them do the dirs in retropie, works great..

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

                    @fomt - Integer scaling would interfere and takes priority over the custom viewports so you would want to leave it off. As @dankcushions pointed out it's probably off unless you turned it on.

                    You already found the index change but also make sure you're in .cfg files are in the correct directory /opt/retropie/configs/all/retroarch/config/MAME (0.78) or /opt/retropie/configs/all/retroarch/config/MAME 2003-Plus. That was a change that happened at some point too.

                    If they are in the correct directory and you're using the correct index it will automatically show Custom due to every .cfg files basically is a custom viewport with a shader.

                    If you it doesn't show Custom but the shader or an incorrect shader is working then it's probably been enabled on another level like the global, system or ROM. It shouldn't be set in core as these custom configs are core level.

                    I guess also it might show Custom but be incorrect due to integer scaling. Basically in certain scenarios the video options don't display accurately depending on combinations of options set or also some backdrops will force resolution changes too.

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

                      @Riverstorm Thank for the info
                      @dankcushions On another TV the screenmode is 1360x768. Tried to create cfg's with the script but I only got this in the config files,

                      # Auto-generated crt-pi.glslp .cfg
                      # Place in /opt/retropie/configs/all/retroarch/config/mame2003/
                      video_shader_enable = "false"
                      

                      Do I have to change something in the script?
                      Or if you have time to create a zip with 1360x768 I would be thankfull

                      EDIT:
                      It appears that my TV can handle 1366x768 resolution, so I will download those configs instead.

                      1 Reply Last reply Reply Quote 0
                      • O
                        omitrix02 @Riverstorm
                        last edited by

                        @Riverstorm Could you please upload those modified scripts for the zfast shader, it'd be a real help.

                        1 Reply Last reply Reply Quote 0
                        • DarksaviorD
                          Darksavior
                          last edited by

                          This post is deleted!
                          1 Reply Last reply Reply Quote 0
                          • RiverstormR
                            Riverstorm
                            last edited by Riverstorm

                            @omitrix02 - Here's a download link to the script files. It's been quite a while since I used them but they should still be valid. There's 8 files in the zip.

                            1. crt-pi - mame2003
                            2. crt-pi - mame2003-plus
                            3. zfast - mame2003
                            4. zfast - mame2003-plus

                            I modified the scripts so they could also be used for mame2003-plus. They are identical cores except for a few hundred games. Mostly mame2003-plus exclusives but there's also around a dozen or so that are 2003 only.

                            If a game is not in one of the resolution_db files (as they are getting older now) you can add an entry fairly easy by looking at what information is needed. It's a flat text file, one game entry per line and most of the fields are unused.

                            Another option is to find a clone or parent ROM .cfg file that has already been generated for the core and just copy/rename it. For example you can easily use the Donkey Kong .cfg file for Donkey Kong Remix, etc.

                            The other 4 files in the archive are just batch files to create both a 720 and 1080 set of cfgs at the same time. You can modify the batch file and add/remove the resolutions you would like to use for your setup. They aren't needed though if you prefer to just run python script from the command line.

                            Also I haven't updated FBA in a while (still running lr-fbalpha) so I don't know the exact path changes for new FBNeo core rename or I would modify it.

                            O ectoE 2 Replies Last reply Reply Quote 0
                            • O
                              omitrix02 @Riverstorm
                              last edited by

                              @Riverstorm Thanks for the scripts, as well as the detailed explanation, but I'm getting the same issue when I was editing the script myself: when using the zfast shader alongside curvature, the resulting configs will have completely empty lines. This only occurs with the zfast shader and curvature, as crt-pi works perfectly in all cases and zfast works when using 1920x1080.

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

                                @omitrix02 - Ok, I am getting the same issue using the curvature parameter.

                                From what I can tell something in the last commit (c89aee3) that was meant to correct a curvature issue broke it. Maybe @dankcushions can take a look.

                                1 Reply Last reply Reply Quote 0
                                • ectoE
                                  ecto @Riverstorm
                                  last edited by

                                  @Riverstorm Hi, Can I use your script to mass-change the shader and resolution settings of my already installed Bezelproject game cfg files?

                                  I couldn't look into the script because the download link has expired...

                                  Thanks!

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

                                    @ecto - I don't think it's possible or at least not easy. You can generate a new set and it shouldn't be to hard doing a compare of old and new folders to pull a new set of cfgs named the same. If you're using custom resolutions on a per game basis for bezels I don't see any easy way.

                                    Here's a new download link to the files for you to take a look though. I made a few more modifications.

                                    One set for the crt-pi shaders and one for the zfast shaders. Also in the zip is the resolution_db files. You only need to install Python and they should work.

                                    crt_pi_configs.bat
                                    crt_pi_configs.py
                                    zfast_configs.bat
                                    zfast_configs.py

                                    I modified the scripts so they could also be used for mame2003 or mame2003-plus. They are identical cores except for a few hundred games. Mainly mame2003-plus additions but there's also around a dozen or so that are mame2003 only.

                                    I also added FBNeo but left FB Alpha for those still using the older core.

                                    If a game is not in one of the resolution_db files (as they are getting older now) you can add an entry fairly easy by looking at what information is needed. It's a flat text file, one game entry per line and most of the fields are unused.

                                    Another option is to find a clone or parent ROM .cfg file that has already been generated for the core and just copy/rename it. For example you can easily use the Donkey Kong (dkong.cfg) and modify it for Donkey Kong 3 (dkong3.cfg), etc.

                                    The other 2 files in the archive are just batch files to create both a 1280x720, 1920x1080 and curvature set of cfgs, for all the cores at the same time and then zip them up. You can modify the batch file and add/remove specific cores and resolutions you're targeting for your setup.

                                    The batch files aren't needed though. If you prefer to just run the python scripts from the command line similar to below which would not be zipped up but in a folder only.

                                    python crt_pi_configs.py mame2003 1920 1080

                                    For the other cores you can replace mame2003 with the specific core you want. For the x (horizontal resolution) replace 1920 for y (vertical resolution) replace 1080.

                                    For curvature just remove the resolution values and add curvature 0 like so:

                                    python crt_pi_configs.py mame2003 curvature 0.

                                    Core Names:
                                    MAME 2003 = mame2003
                                    MAME-2003 Plus = 2003plus
                                    FinalBurn Alpha = fbalpha
                                    FinalBurn Neo = fbneo
                                    Consoles = consoles

                                    ectoE 1 Reply Last reply Reply Quote 2
                                    • I
                                      iainjh
                                      last edited by

                                      Hi

                                      Riverstorm would you mind checking that download location, as it timesout :( TIA!

                                      also could someone please re confirm the correct folder names in retropie/configs/all/retroarch/config for mame2003plus and for fbneo.

                                      thank you so much, I'm running 1280 x 1024 and these scanline improvements have been so appreciated

                                      iain

                                      1 Reply Last reply Reply Quote 0
                                      • ectoE
                                        ecto @Riverstorm
                                        last edited by

                                        @Riverstorm Thanks for uploading the scripts and explaining them once again!

                                        Regarding my provious question, I think I may have come to a solution:
                                        The Bezelproject just downloads cfg files for each game containing a path to the bezel (like here dondonpachi):

                                        input_overlay = "/opt/retropie/configs/all/retroarch/overlay/ArcadeBezels/ddonpach.cfg"
                                        

                                        I will now just take your generated zfast_curvature cfg files and merge them into one file with something like

                                        #!/bin/bash
                                        
                                        cd 'bezelproject_cfgs'
                                        for bezel_file in *.cfg; do
                                          zfast_file="zfast_curvature_cfgs/$bezel_file"
                                          cat "$bezel_file" "$zfast_file" > "merged_cfgs/$bezel_file"
                                        done
                                        

                                        (Mind, I haven't tested the script, just googled away and found a solution to merge two textfiles!) Use at your own risk and only with backed up data!

                                        Last thing worth noting is, that probably my Rpi3b+ isn't fast enough for handling bezels and a shader... That's at least what I learned reading through this thread. But that doesn't matter: It's alway fun to have new project going! Also, this paves the way for a future Rpi4! ;)

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

                                          the scripts are all broken (again, but this time in a new way) with the latest version of retroarch :|

                                          ectoE 1 Reply Last reply Reply Quote 0
                                          • ectoE
                                            ecto @dankcushions
                                            last edited by

                                            @dankcushions What happend?

                                            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.