Build Your Own Arcade Controls Forum

Software Support => GroovyMAME => Topic started by: emubastard on December 30, 2015, 09:07:58 pm

Title: Possible bug with CRT Emudriver 2.0 for Windows 7/8/10
Post by: emubastard on December 30, 2015, 09:07:58 pm
I have a widescreen Sony BVM CRT...

I modified the monitors.ini to include

monitor "bvm_24d1wu", "Sony BVM-24D1WU", "16:9"
        crt_range0  15000.00-20400.00, 48.00-53.00, 10.133, 1.448, 18.819, 0.586, 0.130, 1.563, 0, 0, 224, 288, 0, 0
        crt_range1  14000.00-20400.00, 54.00-62.00, 0.835, 3.508, 5.345, 0.064, 0.064, 1.412, 0, 0, 224, 288, 0, 0
        crt_range2  30000.00-34000.00, 57.00-62.00, 0.698, 3.722, 1.008, 0.030, 0.363, 0.786, 0, 0, 480, 512, 0, 0
        crt_range3  39001.00-42000.00, 48.00-54.00, 1.516, 1.343, 4.375, 0.021, 0.021, 0.544, 0, 0, 640, 768, 0, 0
        crt_range4  42001.00-49000.00, 55.00-62.00, 0.614, 1.944, 2.199, 0.042, 0.211, 0.190, 0, 0, 640, 789, 0, 0

However VMMaker generated super resolutions of 3416xXXXX instead of 2560xXXXX Thereby breaking all super resolutions and mame

When I changed the aspect back to "4:3", it generated 2560xXXXX again, but I had to manually modify my mame.ini to switch it from 4:3 that vmmaker had inserted back to 16:9 so groovymame would scale horizonally properly.

So I don't know if there is something I'm doing wrong... but I don't think the ratio setting in the monitors.ini to "16:9" should be generating 3416 wide resolutions as they just don't work in groovymame.

Oh BTW, otherwise this is awesome.

-Bastard
Title: Re: Possible bug with CRT Emudriver 2.0 for Windows 7/8/10
Post by: Calamity on December 31, 2015, 05:57:06 am
Confirmed.

The thing is from VMMaker's logic it's doing the right thing because it's assuming all modes are from 4:3 sources (CRT standard aspect), so when generated for a 16:9 monitor it will add borders to preserve the right aspect. Unless I add a special case for 2560x, this behaviour is expected.

What you can do is replacing the modes in the user_mode.ini file by 1920x ones, so once it applies the 16:9 aspect they'll become 2560x. Not a great solution but it'll work.
Title: Re: Possible bug with CRT Emudriver 2.0 for Windows 7/8/10
Post by: emubastard on December 31, 2015, 06:15:07 pm
Well I was playing around with beta 2, and it looks like the 16:9 setting in the monitor.ini will muck up ALL resolutions, not just the super ones.  So I had put in a desktop resolution as 1366 x 768 and it got changed to 1816 x 768 (or something) when I generated the modelines.

I'm kind of under the impression that the aspect ratio in the monitor.ini shouldn't affect the horizontal resolution at all.  I think of people specify 1366 x768, or 1280x720 etc. in their user mode lines, they assume whatever aspect ratio comes with it.

So I guess my suggestion is, the aspect ratio should only update the mame.ini as groovymame/mame really does need this setting to display correctly.

-Bastard
Title: Re: Possible bug with CRT Emudriver 2.0 for Windows 7/8/10
Post by: Calamity on January 01, 2016, 01:58:27 pm
I see your point. I guess there should be a selectable option to either apply or nor the aspect correction.

Please understand that the program needs to deal with different situations, for instance when creating resolutions for vertical games, you can't ignore the aspect ratio of the target display or you'd get unpredictable results.
Title: Re: Possible bug with CRT Emudriver 2.0 for Windows 7/8/10
Post by: emubastard on January 01, 2016, 07:36:52 pm
Wether its horiziontal or vertical,  i assume the user mode resolutuon should stay fixed to the actual possible horizontal resolutions no?  I would want to flip my monitor on its side and then by way of the monitor.ini aspect ratio, have resolutions defined that I didnt ask for no?

I'm assuming mame is the only thing that really needs to know the aspect ratio in order to stretch accross 2560 with the right multiplier?

I make no assumptions however.  Maybe I dont understand that real arcade vertical monitors actually do have horizontal scanlines unlike a sideways monitor or aomething.
Title: Re: Possible bug with CRT Emudriver 2.0 for Windows 7/8/10
Post by: Calamity on January 02, 2016, 05:29:58 am
Quote
I'm assuming mame is the only thing that really needs to know the aspect ratio in order to stretch accross 2560 with the right multiplier?

VMMaker needs to know this too, it uses the exact same modeline routine as GroovyMAME. Think of this case:

1942 rus at 256x224. If you want to create a mode to run this game on a 4:3 horizontal monitor preserving the original aspect ratio, the right mode is 400x256. If your monitor is 16:9, the right mode is 536 x 256.

So VMMaker needs to know the aspect of your target monitor in order to apply the proper aspect correction. This also applies to horizontal modes. The new aspect ratio feature in the monitor.ini section actually has the purpose to be able to *add borders* when required to horizontal modes if you are using a 16:9 CRT TV (I was thinking on my Loewe indeed).

If you don't want VMMaker to apply aspect correction, then the most friction-less path is to simply specify an aspect ratio of 4:3 in your monitor definition. This is because VMMaker has a built in default aspect ratio for CRT monitors of exactly 4:3. So defining 4:3 in your monitor.ini results in no need for aspect correction. You may argue that VMMaker should not be so 4:3-centric, but think that it is designed to manage resolutions of games that where meant for 4:3 CRTs in 99% of cases.