I recommend setting a custom resolution of 3840x480 (or 1920x480 if the other one doesn’t work) and then use the interlacing shader from the ‘misc’ directory running at 2x scale with integer scaling and custom aspect ratio with whatever width fills the screen.
The ultra-wide aspect lets you run (almost) any horizontal (that is, not TATE) game without any horizontal “shimmering”, and the interlacing shader draws black masks over half of the lines on non-interlaced content and alternates between fields on interlaced (480i) content.
If you don’t care about interlaced content, you can actually drive the monitor at 240p by doubling the refresh rate and using the “black frame insertion” option to effectively drop it back down to 60 Hz and use no shaders at all.
Both options look almost identical, so I prefer the first one because it 1.) handles interlaced content properly and 2.) is easier to create the custom resolutions, since it’s already 31 kHz (i.e., no need to mess with the refresh rate).
Here’s what the result looks like:
If you want things like pseudo-transparency to work, you can add the ‘tvout-tweaks’ shader from the crt directory (put it before the interlacing shader), and/or if you want a grungier, more nostalgic look, you can run one of the NTSC shaders first.
Monroe88 made a lot of presets that apply many of these shaders. You can also use the sgb and gba player shaders to run gameboy and GBA games at native res with borders.