Downsampling option with Kronos (Saturn)

I don’t know why but Downsampling option (v2.1.3) doesn’t do a thing. I expected it to work as Beetle PSX HW, which forces original resolution with AA effect on edges, to get wonderful result with CRT Shaders.

Is there anyone here who managed to make it work?


1 Like

Also encountering this issue. In Parallel N64 and Beetle PSX HW the downsampling options give me 240p at the end and my CRT shader displays scanlines unless the game is actually displaying hi-res content then shaders correctly enable interlace effects, all is well. In Kronos, output to original resolution does not give me 240p at the end like it should. CRT shaders show interlacing in non-interlaced games/screens. Please help

I directly asked the dev on Discord, they told me it’s not meant to work like this, unfortunately for Parallel, Beetle PSX and even DuckStation users

Huh. That’s strange. Because I’ve had this problem for years, I’m pretty sure I even was the person to request the feature in the first place. It never worked, but in all my correspondence with the devs I’ve been assured that nobody knows why it isn’t working, not that it’s working as intended…

You have to wonder what the point is.

Indeed, i have no idea why it doesn’t work, i assumed i could send the upscaled display while asking retroarch to reduce it to original size when i implemented this (i believe that’s what downsampling is about ?), but that’s obviously not working as expected. I’ll probably remove this option someday.


Always have appreciated your sensitivity to user feedback. Hopefully one day we’ll have a working solution. I contacted @alphanu about it a good while back, but I’m not sure he came to any conclusions.

1 Like

Hi all,

Just a quick update on this to get a better understanding.

CRT SwitchRes with RA use the cores native resolution, so if the core outputs this wrong. The issue is core related. Video output is done before any RA scaling occurs using the returned core native resolution. if the core is setup to update the core native resolution then other options would be possible.

I hope this helps.


Yes removing it would be better than it listed but not functioning at all. It would still be a killer feature though, so it working would be neat if possible, lol

Is there a fundamental difference between the downsampling options and just using a stock shader pass to downscale? I’ve done this to get rid of linedoubling in some cores.

shaders = "1"
feedback_pass = "0"
shader0 = "shaders_slang/stock.slang"
wrap_mode0 = "clamp_to_border"
mipmap_input0 = "false"
alias0 = ""
float_framebuffer0 = "false"
srgb_framebuffer0 = "false"
scale_type_x0 = source
scale_type_y0 = source
scale_y0 = 0.5

This works at least for getting scanlines.
1 Like

The problem is very similar to not getting any supersampling aa when using large resolutions and downsampling with stock shader.

I guess downsampling can be tested a bit with the swanstation core, where in a regular situation a box filter is used, but there could be better solutions.



Box with xBR: