Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: GroovyMame/Emudriver and VGA PC Monitor  (Read 6137 times)

0 Members and 1 Guest are viewing this topic.

ZTylerDurden717

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 188
  • Last login:January 07, 2024, 12:52:28 pm
  • I want to build my own arcade controls!
GroovyMame/Emudriver and VGA PC Monitor
« on: September 11, 2018, 02:38:11 pm »
Hi all,

I'm new to the forum.  I read buttersoft's breakdown of how to connect a Windows PC to an arcade monitor and it really opened up my brain to understand the tech.

There's not much info I can find about how CRT PC monitors apply to GM and Emudriver 2.0, however.

Here's my perspective first of all:

With a monitor, I should be able to use AMD/Nvidia control panel to set a custom resolution to match the native resolution of an arcade game in the best way possible as per the referenced link:
https://www.reddit.com/r/emulation/comments/675wk4/guide_how_to_run_retroarch_at_240p_on_your_vga/

Thereafter, I believe MAME would have HLSL to apply interlacing filters to make the monitor scanlines less sharp and more like a true arcade monitor.

With this in mind, does Groovymame/Switchres/Emudriver accomplish something more streamlined and overall better in terms of matching native resolution/refresh rates for games?  Is the software even applicable with CRT PC VGA monitors?

Thanks for your help!

buttersoft

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1758
  • Last login:March 22, 2024, 12:55:20 am
  • Is running at 15kHz
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #1 on: September 11, 2018, 10:35:09 pm »
Thereafter, I believe MAME would have HLSL to apply interlacing filters to make the monitor scanlines less sharp and more like a true arcade monitor.
That assumption is not correct. Using 31kHz 240p on a PC CRT produces very thin, sharp scanlines. This is due to the fact PC monitors have excellent beam focus in order to produce high resolution, and the beam strikes a very fine grille or mask. The video source (your PC, here) cannot affect this sharpness. So, you'd be filtering or blurring the image on the PC side, not affecting how sharp the scanlines are.

This can work slightly with bilinear flicker filters, but those are applied *to* interlaced modes, and it's an image effect not a focus adjustment. 240p is not an interlaced mode, however, so anything you did apply would not be an interlaced filter. If you meant the filter described by hizzlekizzle in the first comment of that reddit thread, sure, that would work, and cut your screen to 50% brightness instantly. But then you're not running 240p anymore either, and your post seemed to be saying you want to. Either way this would not affect scanline sharpness, i wouldn't think.

EDIT: TBH i'd give all the optiosn a go and see what you like the look of. I need to get around to trying 31kHz 240p one day, i'm sure it must be very nice in some ways.

« Last Edit: September 11, 2018, 10:41:36 pm by buttersoft »

ZTylerDurden717

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 188
  • Last login:January 07, 2024, 12:52:28 pm
  • I want to build my own arcade controls!
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #2 on: September 11, 2018, 11:22:11 pm »
Thanks for your response!  Yeah, I'm using the wrong verbiage in terms of filters and was referring to the reddit poster.  I'll give that a go and see how it looks.  Thanks for the optimism btw on 31khz I want to believe it'll be just as good in some ways  :).


I may have emphasized too much on that point regarding filters/shaders.  My main point should've been the last part.  I know you don't have as much experience with CRT PC's, but, would emudriver+GM work with one? 

cools

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 645
  • Last login:March 11, 2024, 02:59:06 pm
  • Arcade Otaku Sysadmin
    • Arcade Otaku
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #3 on: September 12, 2018, 04:41:17 am »
Further on in the reddit topic it's mentioned about running 480p with a scanline overlay, avoiding having to use high refresh rates.

This is what you want. You can use an overlay of 50% or 75% black scanlines to control how dark they are (rather than pure black) and it'll get you much closer to an arcade CRT than you will running 240p on a 31KHz monitor.

Go even higher - depending on your monitor - and you have the option of doing stuff like this: https://wiki.arcadeotaku.com/w/MAME_CRT_Simulation

ZTylerDurden717

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 188
  • Last login:January 07, 2024, 12:52:28 pm
  • I want to build my own arcade controls!
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #4 on: September 12, 2018, 12:37:25 pm »
Further on in the reddit topic it's mentioned about running 480p with a scanline overlay, avoiding having to use high refresh rates.

This is what you want. You can use an overlay of 50% or 75% black scanlines to control how dark they are (rather than pure black) and it'll get you much closer to an arcade CRT than you will running 240p on a 31KHz monitor.

Go even higher - depending on your monitor - and you have the option of doing stuff like this: https://wiki.arcadeotaku.com/w/MAME_CRT_Simulation

That's super helpful, thank you!

I have a question about the overlay.  Does this black scanline overlay filter come with MAME?  The reason I ask is because the reddit post is about raspberry pi+retroarch+black scanlines and my focus is for Windows+MAME.

cools

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 645
  • Last login:March 11, 2024, 02:59:06 pm
  • Arcade Otaku Sysadmin
    • Arcade Otaku
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #5 on: September 13, 2018, 03:32:18 pm »
Yes.

In mame.ini set:

effect scanlines

If you're integer scaling x2 on the vertical it will work. Alter the scanlines.png to change its grey stripes (leave the white alone) to control scanline intensity. You can copy and rename the png anything, just put it in the artwork folder and change the ini effect line to match the filename.

ZTylerDurden717

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 188
  • Last login:January 07, 2024, 12:52:28 pm
  • I want to build my own arcade controls!
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #6 on: September 14, 2018, 01:50:29 am »
Yes.

In mame.ini set:

effect scanlines

If you're integer scaling x2 on the vertical it will work. Alter the scanlines.png to change its grey stripes (leave the white alone) to control scanline intensity. You can copy and rename the png anything, just put it in the artwork folder and change the ini effect line to match the filename.

Thanks so much!  Can't wait to try this out.

ZTylerDurden717

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 188
  • Last login:January 07, 2024, 12:52:28 pm
  • I want to build my own arcade controls!
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #7 on: September 21, 2018, 02:16:21 pm »
Yes.

In mame.ini set:

effect scanlines

If you're integer scaling x2 on the vertical it will work. Alter the scanlines.png to change its grey stripes (leave the white alone) to control scanline intensity. You can copy and rename the png anything, just put it in the artwork folder and change the ini effect line to match the filename.

This worked amazingly well!  I set Nvidia custom resolution to 1920 x 480p, added darker scanlines, and disabled aspect ratio resizing for some beautiful retro art.

I noticed every time I boot up Groovymame I get notified that switchres doesn't support the resolution above.  Is there a reason I should use Groovymame instead of vanilla MAME since I'm not using a CRT tv?  The switchres notification above is a false positive.  Thank you!



cools

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 645
  • Last login:March 11, 2024, 02:59:06 pm
  • Arcade Otaku Sysadmin
    • Arcade Otaku
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #8 on: September 22, 2018, 06:48:33 am »
Post a log. You want GM, definitely

ZTylerDurden717

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 188
  • Last login:January 07, 2024, 12:52:28 pm
  • I want to build my own arcade controls!
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #9 on: September 22, 2018, 11:10:09 pm »
I'll take your word for it.  I can't find the log file and didn't find resources online mentioning location of it.  Help?

Paradroid

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 687
  • Last login:April 12, 2024, 04:50:06 pm
    • SCART Hunter
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #10 on: September 22, 2018, 11:18:51 pm »
I'll take your word for it.

Cools speaks the truth: even if you're using a fixed resolution, GroovyMAME will still match the game's original refresh rate for you. Standard MAME won't.

I can't find the log file and didn't find resources online mentioning location of it.  Help?

See here.
My MAME/SCART/CRT blog: SCART Hunter

ZTylerDurden717

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 188
  • Last login:January 07, 2024, 12:52:28 pm
  • I want to build my own arcade controls!
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #11 on: September 26, 2018, 03:10:25 pm »
Post a log. You want GM, definitely

Sorry for the delay.

SO it turns out I don't get any errors when booting the game via command prompt.  It goes directly to game.  I only get the warning when opening up GM through windows explorer.

Am I fine in this case?  It doesn't generate an error log via command prompt, basically.

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7414
  • Last login:April 10, 2024, 02:02:31 pm
  • Quote me with care
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #12 on: September 26, 2018, 03:45:44 pm »
Mate, why not posting the log anyway, it's free.

The error is still there. The cause of the problem is you're trying to force a 480p resolution, and because GM's default configuration is for a 15 kHz monitor, you can't use that resolution unless you explicitely specify you have an appropriate monitor. You can do that by specifying -monitor vesa_480 in mame.ini.

Additionaly, for Nvidia or Intel gpus you'll need to disable the option -lock_system_modes.

Failing to do any of the above will make GM disable Switchres, which basically means all the interesting GM's specific features will go way.



Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

ZTylerDurden717

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 188
  • Last login:January 07, 2024, 12:52:28 pm
  • I want to build my own arcade controls!
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #13 on: September 26, 2018, 06:28:07 pm »
Mate, why not posting the log anyway, it's free.

The error is still there. The cause of the problem is you're trying to force a 480p resolution, and because GM's default configuration is for a 15 kHz monitor, you can't use that resolution unless you explicitely specify you have an appropriate monitor. You can do that by specifying -monitor vesa_480 in mame.ini.

Additionaly, for Nvidia or Intel gpus you'll need to disable the option -lock_system_modes.

Failing to do any of the above will make GM disable Switchres, which basically means all the interesting GM's specific features will go way.

Mate I know it's free -- I didn't get it right the first time because the log was appearing empty and I'm a noob.  I'm posting the log.  I'll test your suggestions right now. 


ZTylerDurden717

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 188
  • Last login:January 07, 2024, 12:52:28 pm
  • I want to build my own arcade controls!
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #14 on: September 26, 2018, 06:42:22 pm »
Attaching the second log with suggested fixes you mentioned above.

The log is reporting better compatibility, however, the game is squeezed and not rendering to fit screen in full screen mode.

edit: The game previously had some slight tearing that has completely gone away.  This definitely made it look that much better! We are almost golden.
« Last Edit: September 26, 2018, 06:45:55 pm by ZTylerDurden717 »

cools

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 645
  • Last login:March 11, 2024, 02:59:06 pm
  • Arcade Otaku Sysadmin
    • Arcade Otaku
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #15 on: September 27, 2018, 02:23:26 am »
That's perfectly normal for a 224 line game. The only way to fix it is to adjust the vertical height on the monitor itself.

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7414
  • Last login:April 10, 2024, 02:02:31 pm
  • Quote me with care
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #16 on: September 27, 2018, 03:35:51 am »
Because you have set your desktop resolution to 1920x480 which has an odd pixel aspect ratio, GM assumes your monitor is 4:1. You need to tell GM your monitor is actually 4:3 (or 16:9 or whatever your actual monitor aspect is). You do that by means of the -aspect option. Set that to 4:3.
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

ZTylerDurden717

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 188
  • Last login:January 07, 2024, 12:52:28 pm
  • I want to build my own arcade controls!
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #17 on: September 27, 2018, 12:40:13 pm »
Because you have set your desktop resolution to 1920x480 which has an odd pixel aspect ratio, GM assumes your monitor is 4:1. You need to tell GM your monitor is actually 4:3 (or 16:9 or whatever your actual monitor aspect is). You do that by means of the -aspect option. Set that to 4:3.

That did it!  All the slight screen tearing went away and the games are running perfectly.  Now I get why Switchres/GM is unique. 

Appreciate the help.  I hope this topic serves useful for those wanting to use a CRT Monitor instead.
« Last Edit: September 27, 2018, 12:41:51 pm by ZTylerDurden717 »

Calamity

  • Moderator
  • Trade Count: (0)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 7414
  • Last login:April 10, 2024, 02:02:31 pm
  • Quote me with care
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #18 on: September 27, 2018, 01:08:33 pm »
Finally, you can make GM use your 1920x480 mode as a super resolution and always use it (currently it's picking different resolutions depending on the game). To do that, in mame.ini:

- Set -resolution 1920x480
- Set -super_width 1920
Important note: posts reporting GM issues without a log will be IGNORED.
Steps to create a log:
 - From command line, run: groovymame.exe -v romname >romname.txt
 - Attach resulting romname.txt file to your post, instead of pasting it.

CRT Emudriver, VMMaker & Arcade OSD downloads, documentation and discussion:  Eiusdemmodi

ZTylerDurden717

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 188
  • Last login:January 07, 2024, 12:52:28 pm
  • I want to build my own arcade controls!
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #19 on: September 27, 2018, 01:31:41 pm »
Finally, you can make GM use your 1920x480 mode as a super resolution and always use it (currently it's picking different resolutions depending on the game). To do that, in mame.ini:

- Set -resolution 1920x480
- Set -super_width 1920

Done.  Thank you!

processedmeat

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 245
  • Last login:March 28, 2024, 11:58:07 pm
  • Ikeakade Here I come!
Re: GroovyMame/Emudriver and VGA PC Monitor
« Reply #20 on: November 07, 2018, 02:43:02 pm »
Hi, would it be possible to upload the relevant GM section of your mame.ini so I can study it?  I have a PC CRT monitor that I want to use.