alinebee / Boxer

The DOS game emulator that's fit for your Mac.
http://boxerapp.com/
770 stars 139 forks source link

4:3 ratio always enforced on higher-res? #36

Open RR7 opened 10 years ago

RR7 commented 10 years ago

i know this is a feature of DOSBOX thats being phased out, so you may be aware of this, but when un-ticking the 4:3 ratio option, i would expect the display to be stretched to fit my 16:9 desktop.

on the GOG standalone app for syndicate wars (version 1.0.0.5) this doesn't happen. the menu and game are locked at 4:3. the smooth and retro shader options are applied when selected)

i KNOW it will look stretched, but the option is there, i'd like ti to work, are there plans to remove this restriction? or has it already been done just not added to this particular app?

alinebee commented 10 years ago

The short version: yes, this restriction is still in place for all Boxer versions and yes, I plan to do something about it.

The long version: As you may have realized, the "Use 4:3 Aspect Ratio" option is really toggling between "Use 4:3 Aspect Ratio" and "Don't apply any aspect ratio correction": not between "Use 4:3 Aspect Ratio" and "Use my display's aspect ratio", as is your intention.

The most common DOS resolution is 320x200, a 16:10 ratio: at this resolution, toggling the option off makes it fill a macbook display (also 16:10) or mostly fill an iMac display (16:10 on older models, 16:9 on newer ones.) As a result of this happy coincidence, toggling the option off seems like it means "Use my display's aspect ratio".

Syndicate Wars runs in 640x480, which is already a 4:3 ratio: hence toggling the option appears to do nothing, because Boxer didn't have to apply any correction in the first place to make it 4:3. Despite being "correct", that clearly is contrary to the expected behaviour of the option.

However, there's a few reasons why it's not a good idea to simply change the meaning of the "off" state of the toggle:

My preferred solution, then, is to make the on/off aspect ratio toggle into a menu of three explicit aspect ratio options (names still to be decided): "Fit to 4:3" (the default), "Fit to display" (your preference) and "Square pixels" (disable aspect ratio correction).


For what it's worth, standalone Boxer apps actually have an option to hide the 4:3 aspect ratio menu option altogether for games where it won't do anything - like Syndicate Wars. In this case GOG forgot to toggle that option, or else left it in for use with Syndicate Wars's low-resolution mode.

RR7 commented 10 years ago

cheers Alun, for me its all about it just working and hiding or dealing with all the 'option' automagically. its the mac way, and you're doing a great job.

alinebee commented 10 years ago

For me too most of the time, but in cases like this there's clearly more than one right answer (and more than one set of expectations at work), so it's better to be a little more complex but explicit about the behaviour.