sarah-walker-pcem / arculator

Arculator
http://b-em.bbcmicro.com/arculator
GNU General Public License v2.0
56 stars 23 forks source link

Incorrect scaling for VGA modes with "fixed borders" #36

Closed pdjstone closed 1 year ago

pdjstone commented 1 year ago

To reproduce, configure Arculator to run an A5000, then select Video > Border size > Fixed (standard monitor) borders. Any VGA mode (e.g. 27, 31) will be scaled incorrectly, like this:

image

The "native borders" setting works fine in these modes. Looking at the code in vidc.c, I can see the three different branches of code that do scaling differently depending on the border size setting (stored in the display_mode variable). However I'm not too familiar with the various VIDC control registers and how different modes work under the hood, so I'm unsure of the correct behaviour here.

sarah-walker-pcem commented 1 year ago

Fixed (standard monitor) borders are for monitor type 0 only. This is stated in the readme.