Post#3 » Thu Mar 30, 2023 6:16 pm
I've done testing with modifying the video timing on the DC. Just yesterday, I was testing a new CRT I got to try out 120 hz at 640x240 (adds true scanlines) and 320x480 (my other CRT maxxed out at around 102 Hz). I can change video timing on the VMU screen while the monitor displays a test image.
It is possible to use the PAL timings in VGA, and get a 640x576 at 50hz (and 640x600 is also possible). (I've thought about using that to enable a PAL VGA mode for Gens4All.) There could be multiple reasons why the image was squashed.
The pixel clock is fixed at 27 MHz, which severally limits what can be done. The only "standard" alternate resolution the DC supports at full detail is 640x400x70hz. When the DC runs at 320x240x60hz (or 640x240 or 320x480) it actually has the same timing, but doubles each pixel. It's also possible to add borders, like using 640x480x60hz timing and displaying a 640x448 frame buffer or something.
It's not possible to increase the horizontal pixel density/resolution without running into problems on most monitors (but it extending the framebuffer into the border a bit works fine). By reducing the horizontal and/or vertical resolution, you can increase the framerate (e.g. 640x400x70hz or 512x384x88hz). Increasing vertical without reducing horizontal results in a lower framerate (640x768x43hz, monitor thinks it's 1024x768x43hz. This only works on my smaller CRT). It's possible to increase the vertical resolution without sacrificing framerate, but you have to reduce the horizontal resolution (424x768x60hz, monitor thinks it's 1024x768x60hz).
The 3D hardware doesn't fully support rendering at a resolution higher than 1280x480, so high resolution modes are more complicated to use with the 3D hardware (but not impossible).