The NEW Build Your Own Arcade Controls

Software Support => GroovyMAME => Topic started by: simantic on May 21, 2022, 03:07:35 pm

Title: How to add a 1280x800 modeline?
Post by: simantic on May 21, 2022, 03:07:35 pm
Hi everyone.

I have an arcade cab with:
- monitor arcade 15khz
- ATI Radeon HD 4890 1 GB RAM
- JammASD
- Windows 7 64bit Embedded Sp1
- CRT Emudriver 2.0
- GroovyMame

The maximum resolution available is 800x560.

Is it possible to install a "fake" resolution of 1280x800 only to configure the utility and windows games through Team Viewer or UltraVNC?
I have tried with VMMaker but I didn't succeed.

Best Regards
Title: Re: How to add a 1280x800 modeline?
Post by: buttersoft on May 22, 2022, 07:37:09 am
The problem is that you've set your limits for 15kHz. Allowing that to go as high as 16.2kHz which is where most arcade monitors cut off, you can get:

(600 visible lines + 25 blanking lines) x 50Hz = 16.2kHz

But nothing higher, as you have set VMM to block them. And even that 600 visible lines assumes you have a monitor preset that allows so many.

The best idea, if you really need to install a higher res mode, is to adjust your range line. Or even better, add a second range line to your chosen present in the monitor.ini file. (Or make your own preset, duplicating the current range line and adding second custom one, but you get the point).

The problem with doing this is that programs are going to grab and try to use this higher res mode, you can't account for every situation and guaranteed it's going to present problems. That said, it may not happen often, and if it does, you can remote in and fix it. I would recommend putting some sort of 15kHz protection dongle on the video card output port. like a Jpac, if you already have one. Or there are several DIY designs here - http://forum.arcadecontrols.com/index.php/topic,160869.0.html

Alternately, get everything set up, save your modelines in VMM, remove that one extra mode, and reinstall the rest and you should be fine - or at least in the same boat as the rest of us :)

So, your extra range line gets calculated specifically from the video mode you want - 1280x800@60Hz, the mode line for which is going to look something like this:
"1280x800_60 51.6KHz 60.00Hz" 73.48 1280 1298 1314 1424 800 810 820 860 -hsync -vsync

(Number of visible lines each frame + v-blanking) x frames-per-second-in-Hz = scan rate

Scan rate x (visible horizontal width + h-blanking) = pixel clock.

You will then need to go back and work out the timings for the italicised positions below, because it's late and i need to go to bed.

crt_range1 51550-51700, 60.00-60.00, 2.000, 4.700, 8.000, 0.064, 0.192, 1.024, 0, 0, 800, 800, 800, 800

For extra help with the crt_emudriver modelines, there is a monitor presets sticky above that explains a bit more. Pls give that a look, and post up again if you get stuck.
Title: Re: How to add a 1280x800 modeline?
Post by: simantic on May 22, 2022, 08:49:59 am
The best idea, if you really need to install a higher res mode, is to adjust your range line. Or even better, add a second range line to your chosen present in the monitor.ini file. (Or make your own preset, duplicating the current range line and adding second custom one, but you get the point).

In VMM i had chosen "generic_15" and so I tried to modify the monitor.ini file
from
Code: [Select]
monitor "generic_15", "Generic 15.7 kHz", "4:3"
        crt_range0 15625-15750, 49.50-65.00, 2.000, 4.700, 8.000, 0.064, 0.192, 1.024, 0, 0, 192, 288, 448, 576
to
Code: [Select]
monitor "generic_15", "Generic 15.7 kHz", "4:3"
        crt_range0 15625-15750, 49.50-65.00, 2.000, 4.700, 8.000, 0.064, 0.192, 1.024, 0, 0, 192, 288, 448, 800
and I added the modeline 1280 x 800 @ 60.000000 desktop in the user_modes.ini then i have generate the modelines in VMM but without success

I would recommend putting some sort of 15kHz protection dongle on the video card output port. like a Jpac, if you already have one. Or there are several DIY designs here - http://forum.arcadecontrols.com/index.php/topic,160869.0.html
Yes, i use the JammASD board (I will add this information to my first post)

crt_range1 51550-51700, 60.00-60.00, 2.000, 4.700, 8.000, 0.064, 0.192, 1.024, 0, 0, 800, 800, 800, 800
I need to add this second range line in my monitor.ini file?

Thanks for your help
Title: Re: How to add a 1280x800 modeline?
Post by: buttersoft on May 22, 2022, 07:37:44 pm
It didn't work as you haven't changed the scan rate limit, it's still set to 15625-15750 Hz. And even then you had set the interlaced lines max to 800, not progressive.

(Number of visible lines each frame + v-blanking) x frames-per-second-in-Hz = scan rate

(800 + ~60) x 60.00 = ~51.600kHz

That's waaaaay higher than 15.75kHz.

Even better would be to add a new range line to your monitor.ini file. I would recommend adding a whole new preset, thus:
Quote
monitor "Custom1", "Generic 15.7 kHz + 1280x800", "4:3"
        crt_range0 15625-15750, 49.50-65.00, 2.000, 4.700, 8.000, 0.064, 0.192, 1.024, 0, 0, 192, 288, 448, 576
        crt_range1 51550-51700, 60.00-60.00, 2.000, 4.700, 8.000, 0.064, 0.192, 1.024, 0, 0, 800, 800, 800, 800

Then select it in VMM and try to install the modelines, including the 1280x800 one. If that doesn't work it's because the timings are off. I don't know what they are or i'd tell you. You may need to extract them by using a tool like CRU on the monitor in question, TBH i'm not sure with a VM/remote setup.

I would say the next step would be to read the monitor presets sticky - at least the first post in depth and a few more - and then come back and read through my post again. And repeat. You may also want to look up some info on modelines in general.

Title: Re: How to add a 1280x800 modeline?
Post by: simantic on May 23, 2022, 08:59:28 am
It didn't work as you haven't changed the scan rate limit, it's still set to 15625-15750 Hz. And even then you had set the interlaced lines max to 800, not progressive.
(Number of visible lines each frame + v-blanking) x frames-per-second-in-Hz = scan rate
(800 + ~60) x 60.00 = ~51.600kHz
That's waaaaay higher than 15.75kHz.
ok, i have understand now.
Thanks

Even better would be to add a new range line to your monitor.ini file. I would recommend adding a whole new preset, thus:
Code: [Select]
monitor "Custom1", "Generic 15.7 kHz + 1280x800", "4:3"
        crt_range0 15625-15750, 49.50-65.00, 2.000, 4.700, 8.000, 0.064, 0.192, 1.024, 0, 0, 192, 288, 448, 576
        crt_range1 51550-51700, 60.00-60.00, 2.000, 4.700, 8.000, 0.064, 0.192, 1.024, 0, 0, 800, 800, 800, 800
Then select it in VMM and try to install the modelines, including the 1280x800 one. If that doesn't work it's because the timings are off. I don't know what they are or i'd tell you.
I have tried it but it did not work  :(

You may need to extract them by using a tool like CRU on the monitor in question, TBH i'm not sure with a VM/remote setup.
I have tried CRU and it's works!!!  ;D
CRU has installed the 1280x800

Thank you for your support  :cheers:
Title: Re: How to add a 1280x800 modeline?
Post by: buttersoft on May 23, 2022, 07:19:23 pm
I have tried CRU and it's works!!!  ;D
CRU has installed the 1280x800

TBH i hadn't thought of that! Using CRU to override the EDID on top of the emulated EDID from crt_emudriver, gee.

I'm glad it worked, but i swear half the time i manage to actually help ppl i only do so accidentally :/