Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
07213 Graphics Minor Always Jan 26, 2019, 11:34 Apr 16, 2021, 23:13
Tester ICEknight View Status Public Platform MAME (Official Binary)
Assigned To Resolution Open OS Windows 10 (64-bit)
Status [?] Acknowledged Driver
Version 0.205 Fixed in Version Build 64-bit
Fixed in Git Commit Github Pull Request #
Summary 07213: All: keepaspect is ignored when Non-Integer Scaling X/Y is enabled
Description When "Maintain Aspect Ratio" is "On" and "Non-Integer Scaling" is other than "On" or "Off", the correct aspect ratio seems to be calculated properly only under certain display dimensions, otherwise the screen will stretch improperly either vertically or horizontally, instead of shrinking within the display boundaries with a correct aspect.
Steps To Reproduce As of 2021, you can just go to the Video options, turn "Maintain Aspect Ratio" on and cycle through the different "Non-Integer Scaling" options while the game is running.

-Running sms on a 16:9 monitor with "Non-Integer scaling: Y only" and "Maintain Aspect Ratio: On" will give a taller Y size than the correct aspect.
-Running shinobi on a 5:4 monitor with "Non-Integer Scaling: X only" and "Maintain Aspect Ratio: On" will show a wider X size than the correct aspect (if you don't have a 5:4 monitor at hand, you can resize the window and see how the screen behaves).
Additional Information The Sonic screens show an example of the aspect ratio being ignored and a mockup of what would be the intended behavior.

The MSX screenshots show the aspect being initially correct, then incorrect once you change the vertical dimensions of the window a little, then correct again when they're changed a little further.

The aspect ratio will be ignored in different ways depending on which "Non-Integer Scaling" option is enabled and the current window's vertical and horizontal sizes.
Github Commit
Flags
Regression Version
Affected Sets / Systems All
Attached Files
png file icon keepaspect unevenstretchy.png (16,906 bytes) Jan 26, 2019, 11:34 Uploaded by ICEknight
Current results
ICEknight
png file icon keepaspect unevenstretchy (intended).png (18,965 bytes) Jan 26, 2019, 11:34 Uploaded by ICEknight
Intended behavior
ICEknight
png file icon mame aspect window size test 1.png (53,213 bytes) Mar 13, 2021, 02:04 Uploaded by ICEknight
Correct aspect ratio
ICEknight
png file icon mame aspect window size test 2.png (48,369 bytes) Mar 13, 2021, 02:04 Uploaded by ICEknight
Aspect ratio ignored
ICEknight
png file icon mame aspect window size test 3.png (43,991 bytes) Mar 13, 2021, 02:04 Uploaded by ICEknight
Correct aspect ratio
ICEknight
Relationships
There are no relationship linked to this issue.
Notes
5
User avatar
No.16075
Tafoid
Administrator
Jan 26, 2019, 11:55
Insure that you are showing as "Standard (4:3)" in video and not in "Pixel Aspect (67:56)" in your video. The latter one will show a 'tall' screen regardless of what other options are used.
User avatar
No.16076
ICEknight
Tester
Jan 26, 2019, 12:35
edited on: Jan 26, 2019, 12:40
I've just checked and both the Standard and Pixel Aspect options in the Video menu show the same aspect in this case.
User avatar
No.16592
ICEknight
Tester
Jun 25, 2019, 09:19
edited on: Jun 25, 2019, 09:54
I've been doing some additional testing using a non-widescreen (5:4) monitor and it seems like there may be more to this, as I'm getting different aspect ratios than on the widescreen one (always using the keepaspect option).
Added some screenshots for both monitors, with the options used mentioned in their filenames.
User avatar
No.18533
ICEknight
Tester
Mar 13, 2021, 02:16
edited on: Mar 13, 2021, 02:23
Added some clearer examples, now that the "Non-Integer Scaling" and "Maintain Aspect Ratio" options have been integrated into the Video menu and are easier to test.

The window dimensions indeed seem to sometimes interfere with the correct calculation of the aspect ratio, for some reason.
User avatar
No.18534
Tafoid
Administrator
Mar 13, 2021, 03:00
No need to change the reporting version. It is still happening and we are only curious when it was first reported.