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: Graphics cards with low dot clock support  (Read 2370 times)

0 Members and 1 Guest are viewing this topic.

terranigma

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 18
  • Last login:March 20, 2019, 04:03:17 am
  • I want to build my own arcade controls!
Graphics cards with low dot clock support
« on: February 17, 2018, 11:39:55 pm »
Hi All,
I've been following the forum a couple of months. I yet to install groovymame on Linux and playing with graphics cards to find out which ones are suitable for low dot clock operation.

At the beginning, I was trying to figure out why I can't get any picture from some games (eg: Neogeo and Sega) with my onboard Radeon HD3200. I managed to get picture by setting "dotclock_min = 8" like what documentation suggests. But this time, picture gets narrow from sides (by doubling vertical resolution). So, I decided to try another card to get proper resolution and refresh rate. Since I'm running mame on Linux, I'm not limited by options as long as the card has 15khz and interlaced mode support regardless any chipset.

With Nvidia G210  and nouveau opensource drivers, there is not a dot clock limitation as HD3200 has. Picture is very clear like Ati but, an annoying tearing effect appears during fast paced vertical scrolling scenes. I tried many options from mame.ini and nouveau - xorg.conf but couldn't find cause of the problem. Probably a driver issue. Horizontal scrolling was very smooth, just like ATI anyway...

With an old Radeon X300 card, everything related with resolution, refresh rate, picture quality and tearing was OK but computer is freezing randomly with that setup. Probably the card is faulty. So, I decided to go with an another card.

I want to make sure that the new card won't has a low dot clock limitation. In the CRT_Emudriver documentation, there isn't any low dot clock info about the cards newer than HD4000 series, eg. HD5450, HD6350, HD7350 and so on. Since my system is not running on Intel cpu, I may delay the testing Intel option for a while until getting one.

As so far, can you share your experiences with the cards newer than HD4000 series (and the other options from Nvidia and Intel on Linux) in order to help the people in same situation like me please? Maybe we should have a pinned forum post to collect a graphics card list.

Thanks.
« Last Edit: February 18, 2018, 02:22:03 am by terranigma »

buttersoft

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1758
  • Last login:March 22, 2024, 12:55:20 am
  • Is running at 15kHz
Re: Graphics cards with low dot clock support
« Reply #1 on: February 18, 2018, 05:22:37 pm »
Only the Radeon HD 2000 and HD 3000 cards had the dot clock limit, AFAIK. This includes the mobility cards - so a low-end mobility card from the 4000 series or maybe even higher might be based on a 3000-series card and thus have the dot clock limit.

Nvidia is a bit trickier. I know some of the quadro cards seem to have the dot clock limit. Newer or desktop cards i'm not so sure about. I *think* i've run into one during testing, but i'm in no way sure as i can't actually get 15kHz from those cards. But that's jsut me :)

The black borders (You imply top and botto, but did you mean left and right sides?) can be fixed with horizontal stretching of some form. Using super resolutions would fix the problem neatly.

terranigma

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 18
  • Last login:March 20, 2019, 04:03:17 am
  • I want to build my own arcade controls!
Re: Graphics cards with low dot clock support
« Reply #2 on: February 19, 2018, 10:10:29 pm »
The black borders (You imply top and botto, but did you mean left and right sides?) can be fixed with horizontal stretching of some form. Using super resolutions would fix the problem neatly.

Yes I mean left and right sides. Since my intention is to get real progressive resolution&refresh rate that game meant to run, I really didn't look for other options. I just checked with "-resolution 480x0" and problematic games loads fine but aspect ratio problems occur this time.

buttersoft

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1758
  • Last login:March 22, 2024, 12:55:20 am
  • Is running at 15kHz
Re: Graphics cards with low dot clock support
« Reply #3 on: February 20, 2018, 12:08:34 am »
You need to stretch the image, and Super Resolutions are better for this. The width in the guides for any super resolution is 2560. Obviously this takes up the same physical space on screen, but any image that does not scale at a perfect integer ratio (2x, 3x) into 480 will scale more evenly into 2560. A resolution this wide at 15kHz has a dot clock of about 40MHz, well above any limit.

http://geedorah.com/eiusdemmodi/forum/viewforum.php?id=2

There are two guides to installing crt_emudriver with Super Resolutions on that page. One is for legacy cards of the Radeon HD 4000 series and below using crt_emudriver 2.0 on Win 7 or Win 10. There is also a guide to installing GroovyMAME, though it's older, so you ignore the stretching options as described, use "super_width 2560" or whatever it's called now, and set resolution to 2560x0. I'm not sure if this will help as you're on Linux, but give it a look and see.

Quote
Done right, using Super Resolutions saves tons of time and looks awesome, just like real arcade hardware or consoles. If you don't use super resolutions, you need to have the native resolution installed for every game you want to play, or you'll be settling for a lower-quality video image. Setting native resolutions for everything balloons out configuration time, and if you have to make changes you'll find yourself facing the same huge task over and over. And don't kid yourself, even if you buy a Hyperspin drive you'll be spending several days configuring things.
« Last Edit: February 20, 2018, 12:19:20 am by buttersoft »

ZoOl007

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 161
  • Last login:August 02, 2020, 12:03:38 pm
    • RGBcommander
Re: Graphics cards with low dot clock support
« Reply #4 on: February 20, 2018, 08:21:58 am »
Hi,

I wasn't going to answer when I read your post as I'm still learning this myself but I guess it could help to share my experiences.
I'm not going into detail but I documented the steps for myself and to make a tutorial later on once I master it.
What I've got so far is a debian9 with a custom compiled 15khz kernel that freezes... very rare but it has happened and a 0.193 compiled groovymame with a 0.193 romset.
I use the arcade 15khz edid preset and I have a very good picture in almost all horizontal games. It is butter smooth on a Sony trinitron with umsa.
I use the super resolutions mentioned above. It actually defaults to it when creating a mame.ini file iirc.
I have issues with vertical games but I am able to mitigate them by using an override in vertical.ini. It is exactly the same as the 15khz arcade preset with one parameter modified to 'squash' the image vertically a bit as most of my vertical games were stretched aka 'chopped off'. I do say mitigate as I have not been completely successful .
Horizontal an vertical games run at their native speed if I check with the original machine and what gm generates for the rom.
That's what I have now.
To proceed further I modified the 3 15khz diff's to be able to patch the latest stable kernel at kernel.org. I compiled that kernel in a vm but I haven't tested it on the machine above. It does run stable in the vm.
I also got myself a second ati card and another umsa. As I expect to keep having issues with vertical games on a horizontal tv-set and I have 2 tv's I plan on buying a new computer( I really want a ryzen7...) and make a multiseat config out of it eg 3 video cards, 3 audio cards and 2 powered usb hubs I assign to resp 15khzvertical and to 15khzhorizontal so everything that gets plugged in there gets assigned to the correct tv-set. So user 15khzH auto logs into its seat and gets to play horizontal games, the same  for 15khzV and then I still have the real seat for real computer stuff. That way I have 3 things at once with a minimal extra cost.
That's all in flux as I have next to zero time atm to dedicate to my hobby... maybe this summer...
Cheers.