Custom Video Modes Test Thread

Discussion about displays and related hardware including MiSTer filters and video settings.
Insert Disk Two
Posts: 192
Joined: Sun May 24, 2020 7:59 pm
Has thanked: 10 times
Been thanked: 23 times

Re: Custom Video Modes Test Thread

Unread post by Insert Disk Two »

I have a monitor which has 1600 x 900 resolution, but I cannot find MiSTer settings for this anywhere. Does anyone have them please?

Thanks!
ash2fpga
Posts: 237
Joined: Tue May 26, 2020 6:20 pm
Has thanked: 62 times
Been thanked: 28 times

Re: Custom Video Modes Test Thread

Unread post by ash2fpga »

Insert Disk Two wrote: Tue Jan 05, 2021 4:38 pm I have a monitor which has 1600 x 900 resolution, but I cannot find MiSTer settings for this anywhere. Does anyone have them please?
I found a site, that will parse the timings from a Xorg modeline. I found several (varying) modelines when running an internet search for modeline 1600x900. You could try some of those and plug the numbers into the video_mode parameters.
calle81
Posts: 11
Joined: Sun May 24, 2020 9:35 pm
Has thanked: 3 times

Re: Custom Video Modes Test Thread

Unread post by calle81 »

Hi, is there a resolution between this and 320x240 that could look good on a SD CRT?:

[Menu]
video_mode=512,42,62,64,224,11,21,6,10689
vga_scaler=1


My picture gets distorted at the top in 512 and 320 is a bit too low for my liking. The default resolution you get when not using the vga scaler looks great but I would love to have background images.
calle81
Posts: 11
Joined: Sun May 24, 2020 9:35 pm
Has thanked: 3 times

Re: Custom Video Modes Test Thread

Unread post by calle81 »

calle81 wrote: Thu Jan 07, 2021 6:51 pm Hi, is there a resolution between this and 320x240 that could look good on a SD CRT?:

[Menu]
video_mode=512,42,62,64,224,11,21,6,10689
vga_scaler=1


My picture gets distorted at the top in 512 and 320 is a bit too low for my liking. The default resolution you get when not using the vga scaler looks great but I would love to have background images.
This mode looks pretty good. Found it on reddit
video_mode=640,6,56,66,224,14,8,18,12000
ash2fpga
Posts: 237
Joined: Tue May 26, 2020 6:20 pm
Has thanked: 62 times
Been thanked: 28 times

Re: Custom Video Modes Test Thread

Unread post by ash2fpga »

calle81 wrote: Thu Jan 07, 2021 6:51 pm My picture gets distorted at the top in 512 and 320 is a bit too low for my liking. The default resolution you get when not using the vga scaler looks great but I would love to have background images.
You could try something a bit different with an "ultra-wide" resolution. I have heard of doing this from people using raspberry pi for some time now, but I have not tried it on mister yet.

A couple links where this concept is talked about:
https://forums.libretro.com/t/the-holy- ... ision/4945
http://filthypants.blogspot.com/2014/11 ... nitor.html
calle81
Posts: 11
Joined: Sun May 24, 2020 9:35 pm
Has thanked: 3 times

Re: Custom Video Modes Test Thread

Unread post by calle81 »

ash2fpga wrote: Thu Jan 07, 2021 9:06 pm
calle81 wrote: Thu Jan 07, 2021 6:51 pm My picture gets distorted at the top in 512 and 320 is a bit too low for my liking. The default resolution you get when not using the vga scaler looks great but I would love to have background images.
You could try something a bit different with an "ultra-wide" resolution. I have heard of doing this from people using raspberry pi for some time now, but I have not tried it on mister yet.

A couple links where this concept is talked about:
https://forums.libretro.com/t/the-holy- ... ision/4945
http://filthypants.blogspot.com/2014/11 ... nitor.html
Interesting, can you or anyone else help me convert this to a mister videomode?:
Modeline "1920x240@60" 31.96 1920 1952 2072 2104 240 245 248 253 -HSync -VSync
ash2fpga
Posts: 237
Joined: Tue May 26, 2020 6:20 pm
Has thanked: 62 times
Been thanked: 28 times

Re: Custom Video Modes Test Thread

Unread post by ash2fpga »

calle81 wrote: Thu Jan 07, 2021 11:02 pm Interesting, can you or anyone else help me convert this to a mister videomode?:
Modeline "1920x240@60" 31.96 1920 1952 2072 2104 240 245 248 253 -HSync -VSync
This site has a modeline parser: https://www.epanorama.net/faq/vga2rgb/calc.html

Paste the modeline into the textbox in §1 and click the import button. Values will show up in §2. Caveat: I have not actually tried video_mode settings in mister with timings from that calculator.
User avatar
jrronimo
Posts: 79
Joined: Sat Jul 04, 2020 6:03 pm
Has thanked: 31 times
Been thanked: 11 times

Re: Custom Video Modes Test Thread

Unread post by jrronimo »

calle81 wrote: Thu Jan 07, 2021 11:02 pmInteresting, can you or anyone else help me convert this to a mister videomode?:
Modeline "1920x240@60" 31.96 1920 1952 2072 2104 240 245 248 253 -HSync -VSync
There's a 'formula' for it here: Post from Atari-Forum:
-Modelines
The popular Xorg "Modeline" format can be converted to MiSTer video_mode strings :

Modeline "Name" Pixel_Clock HDISP HSYNCSTART HSYNCEND HTOTAL VDISP VSYNCSTART VSYNCEND VTOTAL
Becomes:
video_mode=HDISP,HSYNCSTART-HDISP,HSYNCEND-HSYNCSTART,HTOTAL-HSYNCEND,VDISP,VSYNCSTART-VDISP,VSYNCEND-VSYNCSTART,VTOTAL-VSYNCEND,Pixel_Clock*1000

Hence :

Code: Select all

ModeLine "1920x1200@60" 154.0 1920 1968 2000 2080 1200 1203 1209 1235 +hsync -vsync
Becomes :

Code: Select all

video_mode=1920,48,32,80,1200,3,6,26,154000
The vertical frequency is Pixel_Clock / HTOTAL/ VTOTAL

[BTW it would be great to autodetect and support the Modeline numbers format (raising H/V numbers). Any volunteer for a patch?]

-Frequencies
* 20MHz : Minimal frequency set by the MiSTer software
* 150MHz : This is the designed frequency target for the scaler, to support 1920x1080. The scaler was optimised to get [almost] no timing errors at that frequency.
* 165MHz : This is the maximum frequency supported by the ADV7513 HDMI encoder.
* 200MHz : This is the limit set by the MiSTer software.

Frequencies far beyond 150MHz are not guaranteed to work, may not work on all cores, or when the FPGA or HDMI encoder is too warm.
It is sometimes possible to lower pixel frequency by reducing blanking and synchro times.
I keep meaning to code that into a website, but usually just do it by hand, haha.

In your case, it should be:

Code: Select all

video_mode=1920,32,120,32,240,5,3,5,31960
User avatar
morf77
Posts: 63
Joined: Fri Aug 28, 2020 1:42 pm
Has thanked: 12 times
Been thanked: 24 times

Re: Custom Video Modes Test Thread

Unread post by morf77 »

For those getting fed up with doing this conversion manually, I quickly wrote this python script that does that conversion for you:

Code: Select all

print("Convert modeline to video_mode script")
print("Expected format: PIXEL_CLOCK HDISP HSYNCSTART HSYNCEND HTOTAL VDISP VSYNCSTART VSYNCEND VTOTAL")
try:
  pixel_clock, hdisp, hsyncstart, hsyncend, htotal, vdisp, vsyncstart, vsyncend, vtotal = map(float,input("Please enter modeline values: ").split())
  pixel_clock=float(pixel_clock)
  hdisp = int(hdisp)
  hsyncstart = int(hsyncstart)
  hsyncend = int(hsyncend)
  htotal = int(htotal)
  vdisp = int(vdisp)
  vsyncstart = int(vsyncstart)
  vsyncend=int(vsyncend)
  vtotal=int(vtotal)
  clock=pixel_clock*1000
  print("video_mode="+str(hdisp)+","+str(hsyncstart-hdisp)+","+str(hsyncend-hsyncstart)+","+str(htotal-hsyncend)+","+str(vdisp)+","+str(vsyncstart-vdisp)+","+str(vsyncend-vsyncstart)+","+str(vtotal-vsyncend)+","+str(int(clock)))
except:
  print("Invalid input check expected format.")
Example of usage:
Convert modeline to video_mode script
Expected input: PIXEL_CLOCK HDISP HSYNCSTART HSYNCEND HTOTAL VDISP VSYNCSTART VSYNCEND VTOTAL
Please enter modeline values: 154.0 1920 1968 2000 2080 1200 1203 1209 1235
video_mode=1920,48,32,80,1200,3,6,26,154000
Edit: now available as an online calculator https://morf77.pythonanywhere.com/
User avatar
morf77
Posts: 63
Joined: Fri Aug 28, 2020 1:42 pm
Has thanked: 12 times
Been thanked: 24 times

Re: Custom Video Modes Test Thread

Unread post by morf77 »

One for the Genesis and MegaCD core fans 640x448

Code: Select all

video_mode=640,16,96,48,448,26,2,49,25200
Working on a Sony GDM-400PS
aitotat
Posts: 29
Joined: Wed Sep 09, 2020 6:17 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Custom Video Modes Test Thread

Unread post by aitotat »

I noticed something wrong with the 512x448 mode (video_mode=512,16,48,32,448,0,3,49,18240). Left and right edges are "compressed" meaning the pixel width is not the same across the picture. It can be noticed easily on some side scrolling games. I've used this mode on NES and SNES cores and the problem is the same. I've tested the graphics mode on two monitors (Dell P992 and Nokia 920C non-trinitron model) and both show the problem. Well, perhaps it can be more easily seen with the Dell but maybe because that is what I've used so far and only did a quick test with the Nokia.
ash2fpga
Posts: 237
Joined: Tue May 26, 2020 6:20 pm
Has thanked: 62 times
Been thanked: 28 times

Re: Custom Video Modes Test Thread

Unread post by ash2fpga »

The 64:49 aspect ratio at 448p will give you 585x448.
User avatar
morf77
Posts: 63
Joined: Fri Aug 28, 2020 1:42 pm
Has thanked: 12 times
Been thanked: 24 times

Re: Custom Video Modes Test Thread

Unread post by morf77 »

aitotat wrote: Fri Jan 15, 2021 9:49 am I noticed something wrong with the 512x448 mode (video_mode=512,16,48,32,448,0,3,49,18240). Left and right edges are "compressed" meaning the pixel width is not the same across the picture. It can be noticed easily on some side scrolling games. I've used this mode on NES and SNES cores and the problem is the same. I've tested the graphics mode on two monitors (Dell P992 and Nokia 920C non-trinitron model) and both show the problem. Well, perhaps it can be more easily seen with the Dell but maybe because that is what I've used so far and only did a quick test with the Nokia.
The modeline I use on the NES core (since it uses 256x240 orginally):

Code: Select all

video_mode=512,16,48,64,480,1,3,13,19080
I haven't noticed the pixel compression issue on the SNES core with 512x448 video_mode. Is there a game I can easily detect this on (didn't notice it in UN Squadron but maybe I'm not seeing it)?
aitotat
Posts: 29
Joined: Wed Sep 09, 2020 6:17 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Custom Video Modes Test Thread

Unread post by aitotat »

morf77 wrote: Fri Jan 15, 2021 4:58 pm Is there a game I can easily detect this on
It is very easy to test it with NES game Ducktales. Start Amazon stage and move so you see first two chests. Move to a position where the second chest is at the right side of the screen. The first one is then close to a screen center. On 512 modes i can easily see that the chest on the right edge is thinner than the one on the center.

I took three photos to show this:
This is from the 512x448 mode, next is the 512x480 mode and last with vga_scaler disabled where everything looks correct. I forgot to disable hq2x when i took those photos. It doesn't effect on the problem.
User avatar
morf77
Posts: 63
Joined: Fri Aug 28, 2020 1:42 pm
Has thanked: 12 times
Been thanked: 24 times

Re: Custom Video Modes Test Thread

Unread post by morf77 »

I'm seeing the same issue using the vga_scaler. I disable it on my NES core. Is there a reason why you would use the vga_scaler? vga_scaler off with custom video_mode seems to give correct pixels (using 512x480)

ps: I was for a long time confused by this vga_scaler setting, I assumed it was necessary to enable to allow custom video modes but it seems this is not the case. custom video_modes seem to work fine using just scandoubler. I think this should be made more clear on the wiki.
aitotat
Posts: 29
Joined: Wed Sep 09, 2020 6:17 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Custom Video Modes Test Thread

Unread post by aitotat »

morf77 wrote: Sat Jan 16, 2021 1:54 pm I'm seeing the same issue using the vga_scaler. I disable it on my NES core. Is there a reason why you would use the vga_scaler? vga_scaler off with custom video_mode seems to give correct pixels (using 512x480)
No, the scaler is required for custom resolutions. If i disable scaler the core outputs the default resolution instead of custom one. My monitor settings defaults to 640x480 for NES and SNES cores and that is exactly what i'm trying to avoid so i wouldn't have to adjust screen settings every time i use cores displaying at actual 640x480 resolution.

I believe there is something wrong with those 512 mode parameters. I found a working one for 512x448. It is video_mode=512,36,51,84,448,24,6,47,21550. Unfortunately it isn't any better than the core default since this mode too uses 640x480 settings on my monitor.

But i did found something else. This is 512x512 mode and can be used with NES and SNES: video_mode=512,8,48,64,512,1,6,31,20544. This mode uses it's own settings on my monitor. I need to adjust screen height to maximum. This mode gives thin but nice natural scanlines and is definetly the best compromise so far.
calle81
Posts: 11
Joined: Sun May 24, 2020 9:35 pm
Has thanked: 3 times

Re: Custom Video Modes Test Thread

Unread post by calle81 »

Hi, is there a video mode that can be used to flip tate games so one doesn't have to lay the a crt down in order to play DoDonPachi as an example?

I tried with:

[ddonpach]
vga_scaler=1
video_mode=320,48,32,80,240,3,6,26,154128

but that will only show a small part of the image.
calle81
Posts: 11
Joined: Sun May 24, 2020 9:35 pm
Has thanked: 3 times

Re: Custom Video Modes Test Thread

Unread post by calle81 »

Stretched to 16:9 in the core settings that looks a lot better for some reason wit DoDonPachi. However there's a lot of horizontal lines. (screen tearing?)
aitotat
Posts: 29
Joined: Wed Sep 09, 2020 6:17 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Custom Video Modes Test Thread

Unread post by aitotat »

Two new modes for NES and SNES. First one is 1024x960:

Code: Select all

video_mode=1024,30,100,190,960,1,3,30,80284
This mode has one problem. Is uses same settings as 1280x960 mode on my monitor. I'd rather save 1280x960 as an alternative to 320x240/640x480.

So again 1024 scanline mode comes to rescure:

Code: Select all

video_mode=1024,32,78,210,1024,1,3,38,86100
This mode is a good alternative to the 512x512 mode i posted earlier. 1024x1024 is very good if you don't want scanlines or if you prefer MiSTer scanlines instead.

Just in case here is how I've configured mister ini:

Code: Select all

vga_scaler=1
vscale_mode=1
vsync_adjust=2
Aspect ratio must be set to full from core settings. I also noticed that video filter must be set to no interpolation. With core default there will be some horizontal scaling artifacts for some reason.

Edit: Latest SNES core fixed the artifacts but i think there is still some scaling with scale filter - internal. Custom - No interpolation seems to give cleaner output.
aitotat
Posts: 29
Joined: Wed Sep 09, 2020 6:17 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Custom Video Modes Test Thread

Unread post by aitotat »

I've been trying to figure out the scaling problem i have with the custom resolutions. I took some photos to show the problem. One of the photos is taken with scaler disabled and everything is correct. The rest are taken with video mode 4 (1280x1024@60Hz). Custom resolutions have exactly the same problem so i tried with one of the predefined modes just to make sure the problem is not with custom video mode parameters.

There are two jpg photos taken with video mode 4. The other has scale filter - internal. It is this one that shows the problems. The other video mode 4 photo has scale filter - no interpolation set. It doesn't have the problem. There is also one png picture where i marked some of the problems. They are basically shadows that always appear at the right side of those black text borders. This problem is not related to the SNES core. NES core has the same problem. I have not tested with other cores.

Are these "shadows" normal behavior of the scaler or what is wrong? I'm using Dell p992 monitor and Mister IO board v6.1.
FoxbatStargazer
Top Contributor
Posts: 995
Joined: Thu Dec 10, 2020 5:44 pm
Has thanked: 309 times
Been thanked: 228 times

Re: Custom Video Modes Test Thread

Unread post by FoxbatStargazer »

Its normal, that's interpolation between the black letter and blue sky because you aren't running an integer scale on the horizontal axis. The fourth picture is nearest neighbor so you will see zero blurring, instead distortion or shimmer will be apparent when scrolling.
aitotat
Posts: 29
Joined: Wed Sep 09, 2020 6:17 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Custom Video Modes Test Thread

Unread post by aitotat »

FoxbatStargazer wrote: Tue Jan 26, 2021 4:27 pm Its normal, that's interpolation between the black letter and blue sky because you aren't running an integer scale on the horizontal axis.
But that also happens when i'm using custom 512 or 1024 pixel wide video modes (with vscale_mode=1). This is what confuses me. If that is still correct, then everything is ok and i just need to use the the no interpolation filter for custom resolutions meant for VGA CRT.
ash2fpga
Posts: 237
Joined: Tue May 26, 2020 6:20 pm
Has thanked: 62 times
Been thanked: 28 times

Re: Custom Video Modes Test Thread

Unread post by ash2fpga »

aitotat wrote: Tue Jan 26, 2021 4:59 pm
FoxbatStargazer wrote: Tue Jan 26, 2021 4:27 pm Its normal, that's interpolation between the black letter and blue sky because you aren't running an integer scale on the horizontal axis.
But that also happens when i'm using custom 512 or 1024 pixel wide video modes (with vscale_mode=1). This is what confuses me. If that is still correct, then everything is ok and i just need to use the the no interpolation filter for custom resolutions meant for VGA CRT.
I think this is because of the aspect ratio being used.

For example, using resolution of 256x224, and aspect ratio of 64:49, you would not get integer scale on the horizontal axis. You would have to set custom aspect ratio of 56:49 (same as 8:7).

What you see with those settings could be display-dependent. You could need geometry controls to restore the correct aspect ratio.
FoxbatStargazer
Top Contributor
Posts: 995
Joined: Thu Dec 10, 2020 5:44 pm
Has thanked: 309 times
Been thanked: 228 times

Re: Custom Video Modes Test Thread

Unread post by FoxbatStargazer »

Integer scaler settings only apply to the vertical axis. Setting your horizontal resolution to an integer multiple does not guarantee horizontal integer scaling. By default the NES core pushing 4:3 aspect ratio is still trying to map wide pixels to what it assumes is a square pixel resolution, and they don't align perfectly. The trick mentioned above is to set a custom aspect ratio that mathematically results in the NES output becoming square pixels. Its also possible to go for non-square integer scales like 5x4 using the custom aspect ratio (10/7 I think? in the case of NES)

Some kind of easy 1:1 Pixel Aspect Ratio scaling mode to use in all cores would be great, but we don't have anything like that at the moment.
aitotat
Posts: 29
Joined: Wed Sep 09, 2020 6:17 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Custom Video Modes Test Thread

Unread post by aitotat »

No luck with custom aspect ratios on SNES core. It seems the 56:49 or 8:7 is the same as full screen and 64:49 is the same as original that are selectable from aspect ratio menu. I did test with many different custom aspect ratios on 1024x1024 and 1280x1024 graphics modes but never did the "shadows" go away.

Eventually i did find something that effects them. I had forced_scandoubler=1 but when i tried to set it to 0, things got better. The "shadows" were certainly less noticable. In fact i don't think i would have noticed them if scandoubler would have been disabled when i started testing custom resolutions. The shadows are still there. It can be easily tested by quickly switching between internal and no interpolation filter.

Edit:
Same problem with NES core except scandoubler has no effect. I retested scandoubler on SNES core and it does have effect and i think it is because with scandoubler disabled it outputs 512x224 and with scandoubler enabled it outputs 256x448. The difference in horizontal resolution surely has some effect on the scaler. But shouldn't the core output 512x448 when scandoubler is enabled?
ash2fpga
Posts: 237
Joined: Tue May 26, 2020 6:20 pm
Has thanked: 62 times
Been thanked: 28 times

Re: Custom Video Modes Test Thread

Unread post by ash2fpga »

aitotat wrote: Wed Jan 27, 2021 8:51 am Edit:
Same problem with NES core except scandoubler has no effect. I retested scandoubler on SNES core and it does have effect and i think it is because with scandoubler disabled it outputs 512x224 and with scandoubler enabled it outputs 256x448. The difference in horizontal resolution surely has some effect on the scaler. But shouldn't the core output 512x448 when scandoubler is enabled?
My findings with forced_scandoubler:
viewtopic.php?p=14619#p14619
aitotat
Posts: 29
Joined: Wed Sep 09, 2020 6:17 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Custom Video Modes Test Thread

Unread post by aitotat »

I'm more convinced that the scaler applies some sort of horizontal filtering no matter what. I calculated custom resolutions for GBA core since the default just flickers few seconds and goes out of sync on my monitor. Here they are:

Code: Select all

video_mode=1440,90,140,250,1080,1,3,38,128208 ; 4:3
video_mode=960,22,148,150,720,3,5,28,57797 ; 4:3
video_mode=1440,48,32,80,960,1,3,30,113988 ; 3:2 (shares monitor settings with 1280x960 mode)
video_mode=960,50,146,110,640,1,4,25,50662 ; 3:2
It is very easy to do comparisons since there is Super Mario World also on GBA. And it happens to have the exact "shadow" scaling problem with all those modes, even with 3:2 aspect ratio modes that are native to GBA. I even tried to set 1:1 and 3:2 custom aspect ratios but no help from there. One setting does matter. Setting 2xresolution to anything else than off does help. Maybe because horizontal resolution changes like on SNES core with scandoubler. Scandoubler works with GBA core but i didn't notice any difference with or without.

But about those custom GBA resolutions. Use those hi-res versions if LCD effects are needed.
ash2fpga
Posts: 237
Joined: Tue May 26, 2020 6:20 pm
Has thanked: 62 times
Been thanked: 28 times

Re: Custom Video Modes Test Thread

Unread post by ash2fpga »

aitotat wrote: Thu Jan 28, 2021 7:54 am I'm more convinced that the scaler applies some sort of horizontal filtering no matter what.
That seems possible. See this example: viewtopic.php?p=8182#p8182
FoxbatStargazer
Top Contributor
Posts: 995
Joined: Thu Dec 10, 2020 5:44 pm
Has thanked: 309 times
Been thanked: 228 times

Re: Custom Video Modes Test Thread

Unread post by FoxbatStargazer »

So I'm still pretty sure that the letter shadows are interpolation artifacts, and if you align the core output to the perfect resolution, they will vanish while using "interpolation (sharp)". However I am finding that the GBA core is treating aspect ratio very wierdly, given that it should be spitting out perfectly square pixels. So far the only resolution that eliminates letter shadows in "interpolation (sharp)" filter is 480x480. Everything else I've tried so far is showing clear scaling artifacts, and anything other than "no interpolation" shows letter shadows (i.e. sign of interpolation.) I might try later to see if I can find any other working resolutions so we can figure out what is going on with the GBA core.

"No interpolation" also seems to eliminate letter shadows in all resolutions, however you will have distortion/shimmering if the resolution isn't perfectly aligned. Internal scaler is some kind of interpolation and I would ignore it for now, interpolation (sharp) should yield the best results if you do have to interpolate, and should be 100% clean (i.e. identical to "no interpolation") if the resolution is perfectly aligned with the core output.

It should be expected that 2x resolution cuts the letter shadows to half size in most cases because you've effectively doubled the core's output resolution that the scaler gets to work with. I.e. it has more data to deliver a more accurate interpolation if it has to interpolate.
FoxbatStargazer
Top Contributor
Posts: 995
Joined: Thu Dec 10, 2020 5:44 pm
Has thanked: 309 times
Been thanked: 228 times

Re: Custom Video Modes Test Thread

Unread post by FoxbatStargazer »

OK I think I figured it out?

The GBA core doesn't seem to respect integer scaling. Your horizontal resolution must be a multiple of the GBA's 240 horizontal resolution (480 if you want to use 2x resolution) because its going to fully fill it out, and this is the only way to avoid scaling artifacts. It does assume that your target is square pixels so you can make your vertical resolution basically whatever you want. (i.e. probably 4:3 to please a CRT monitor.) The framedoubler does effect scaling so I would turn that off when using vga_scaler.

Also note that interpolation (sharp) isn't as sharp as can be. It seems to merely do an integer upscale to 2x and then apply some amount of bilinear smoothing. So at high resolutions you may get some slight blur or artifacts, and I could see a bit of the letter shadow this way. If you're confident you got things lined up then using the no interpolation filter should avoid any shadow stuff and no distortion. Although it also seemed like 2x resolution at 960 wide also showed no difference between sharp interpolation and no interpolation. (I'm assuming because the 2x resolution bumps it up to 480 wide and then the sharp interpolation does a clean 2x integer scale to 960)

Also remember that CRTs (especially my crappy one) have masks/grilles to deal with. As you raise the resolution and look closely, you may spot a different kind of mild artifacts as the pixels do not line up perfectly with the mask/grille. Don't know of any fix for this besides move to an LCD, get a better CRT, or keep the resolution lower.
Post Reply