diff --git a/changelog.txt b/changelog.txt index 9a414c8b..4a8b6c0a 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,3 +1,4 @@ +12-may-2010 - ugetab - Win32 - With special scaler in window mode, it's possible to resize to anything above the minimum. 12-may-2010 - adelikat - Movies now have a "finished" option. If a playback stops the movie isn't cleared from memory, and can be replayed or a state loaded. Similar functionality as DeSmuME and GENS rerecording 11-may-2010 - adelikat - Loadstate updates input display 11-may-2010 - ugetab - Win32 - Added Ram Search hotkeys for the first 6 search types in the list. diff --git a/src/drivers/win/window.cpp b/src/drivers/win/window.cpp index 90963470..21ea39fe 100644 --- a/src/drivers/win/window.cpp +++ b/src/drivers/win/window.cpp @@ -2255,18 +2255,26 @@ void FixWXY(int pref) { if(eoptions&EO_FORCEASPECT) winsizemuly *= mult / winsizemulx; - winsizemulx = mult; + + if (winsizemulx < mult) + winsizemulx = mult; } if(winsizemuly < mult && mult < 3) //11/14/2008, adelikat: added && mult < 3 and extra code to meet mult >=3 conditions { if(eoptions&EO_FORCEASPECT) winsizemulx *= mult / winsizemuly; - winsizemuly = mult; + + if (winsizemuly < mult) + winsizemuly = mult; + } - else if (winsizemuly < mult&& mult >= 3) //11/14/2008, adelikat: This was probably a hacky solution. But when special scalar = 3 and aspect correction is on, + else if (winsizemuly < mult&& mult >= 3) { //11/14/2008, adelikat: This was probably a hacky solution. But when special scalar = 3 and aspect correction is on, if(eoptions&EO_FORCEASPECT) //then x is corrected to a wider ratio (.5 of what this code seems to expect) so I added a special circumstance for these 2 situations winsizemulx *= (mult+0.5) / winsizemuly; //And adjusted the special scaling by .5 - winsizemuly = mult; + + if (winsizemuly < mult) + winsizemuly = mult; + } } if(winsizemulx<0.1)