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: Getting smooth scrolling on all MAME games with ArcadeVGA  (Read 11269 times)

0 Members and 1 Guest are viewing this topic.

Pyronious

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 52
  • Last login:June 04, 2021, 09:52:25 pm
  • Klatuu... Verata... Necktie.
    • Pyronious.com
Getting smooth scrolling on all MAME games with ArcadeVGA
« on: July 02, 2003, 05:25:29 pm »
I've spent a great deal of time attempting to determine why some games appear to stutter even though the emulation is running with no dropped frames. It turns out that many of the games in MAME did not originally run at exactly 60Hz. They were often slightly different, some running at 58Hz, etc. This slight offset causes smooth scrolling motion to appear slightly jerky as the emulator compensates for the difference between the game's refresh and the monitor's refresh.

The ArcadeVGA board is great because it provides so many of the native resolutions necessary to run MAME games. But most of the good resolutions run at exactly 60Hz. And all of the non 240-line modes run at some unknown refresh rate.

So how do you get the games to run smoothly all the time? First, you only allow the games to use the 60Hz modes of the ArcadeVGA card. The other modes are useless if you are interested in guaranteed smooth scrolling.

Second, you use a build of MAME which "tweaks" all the game drivers to run at exactly 60Hz. You won't be able to tell that your game is running 1fps faster and it won't cause audio breakup problems like MAME's internal option to match the game's refresh to the monitor.

For Mame32 users, use TvMAME32:
http://www.trouble-makers.com/kami/emulation/main.html

For command line users, use SmoothMAME:
http://www.mameworld.net/smoothmame/

To create the INI files using AVRes, use this custom ArcadeVGA.txt file:

H V Vertical Refresh
240 240 60Hz
256 240 60Hz
288 240 60Hz
296 240 60Hz
304 240 60Hz
321 240 60Hz
336 240 60Hz
368 240 60Hz
392 240 60Hz
448 240 60Hz
512 240 60Hz
640 240 60Hz
640 480 60Hz
640 480 Vert on Horiz Mon

Your vertical games will need hardware stretch (as well as some medium resolution horizontal games) but if you're anything like me a smooth gameplay experience is more important.

Finally, here are the default MAME video options I recommend to keep your scrolls liquid smooth with the above configuration:

### Windows video options ###
autoframeskip           1
frameskip               0
waitvsync               1
triplebuffer            1
window                  0
ddraw                   1
direct3d                0
hwstretch               0
cleanstretch            0
resolution              auto
zoom                    2
refresh                 0
scanlines               0
switchres               1
switchbpp               1
maximize                1
keepaspect              1
matchrefresh            0
syncrefresh             0
throttle                1
full_screen_brightness   0.000000
frames_to_run           0
effect                  none
screen_aspect           4:3
sleep                   1
rdtsc                   0
high_priority           0

Hope this helps anyone who's been struggling to get smooth scrolling going on their arcade monitor with ArcadeVGA.  I'm finally happy with my video configuration after weeks of tweaking, frustration, and research.

P.
« Last Edit: July 02, 2003, 05:34:05 pm by Pyronious »

Mani

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 35
  • Last login:August 19, 2005, 11:20:16 pm
  • total arcade addict
    • my homepage
Re:Getting smooth scrolling on all MAME games with ArcadeVGA
« Reply #1 on: July 03, 2003, 03:36:11 pm »
very helpful post, thanks a lot!

although i haven't noticed stuttering, i do notice a lot of "tearing" using windows mame, even with vsync turned on. hopefully this will fix the problem ...

it is worth noting that i experienced no image tearing when i was using dos mame in a pure dos setup, with vsync enabled.

-Mani

Pyronious

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 52
  • Last login:June 04, 2021, 09:52:25 pm
  • Klatuu... Verata... Necktie.
    • Pyronious.com
Re:Getting smooth scrolling on all MAME games with ArcadeVGA
« Reply #2 on: July 03, 2003, 04:25:12 pm »
Yes, this will fix the tearing problem as well.

dreamfreak

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 41
  • Last login:August 23, 2005, 08:10:58 am
  • I'm a llama!
Re:Getting smooth scrolling on all MAME games with ArcadeVGA
« Reply #3 on: September 13, 2003, 04:56:26 am »
hi,
thanx for this usefull tips
I

vitaflo

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 135
  • Last login:January 14, 2020, 08:11:04 pm
    • ASMBLR
Re:Getting smooth scrolling on all MAME games with ArcadeVGA
« Reply #4 on: September 13, 2003, 12:24:50 pm »
Thanks for the info, very helpful, especially as I am about to use an arcade monitor.  Does this depend on the monitor though?  Would you reccommend trying normal MAME w/ normal settings first, then trying SmoothMAME if there are problems?

I'm also curious which games you noticed problems with originally, so I can test those out when I get my arcade monitor.  Thanks for the info!

JoeB

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 628
  • Last login:June 27, 2025, 08:23:34 am
  • NES Fanatic
Re:Getting smooth scrolling on all MAME games with ArcadeVGA
« Reply #5 on: September 14, 2003, 11:01:34 pm »
smoothMAME in my opinion is the only reasonable MAME for anyone using a CGA monitor that wants to play many arcade games that cross many different freq. rates.

I'm just surprised that the regular MAME doesn't have a command line switch to lock games at certain refresh rates!

That would be a very valuable feature for many arcade monitor owners!

vegetariansoul

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 35
  • Last login:September 18, 2003, 06:36:13 pm
  • Hey! Why only one Smurfette in this damn village?
Re:Getting smooth scrolling on all MAME games with ArcadeVGA
« Reply #6 on: September 16, 2003, 12:01:38 am »
Pyronius,

Arcade VGA, MameWah and Avres utility?

That is how I had it planned for my upcomming setup based on some information at www.ultimarc.com in the FAQ's and installations.

So MameWah wasn't on your list up there, will it work just as well?  Do you have any info for me?

Mike
« Last Edit: September 16, 2003, 01:22:34 am by vegetariansoul »
"Luck favors the well prepared."

dreamfreak

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 41
  • Last login:August 23, 2005, 08:10:58 am
  • I'm a llama!
Re:Getting smooth scrolling on all MAME games with ArcadeVGA
« Reply #7 on: September 16, 2003, 07:23:32 am »
mamewah is the best choice and runs perfect

GamingGreg

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 304
  • Last login:August 05, 2018, 06:04:30 pm
Re:Getting smooth scrolling on all MAME games with ArcadeVGA
« Reply #8 on: September 16, 2003, 03:17:52 pm »
Just curious as to what resolution everyone using an ArcadeVGA is running their front end in?  

I'm using an old monitor and I have to adjust the Vertical Hold if I switch between 640X480 and any of the ???x240 modes.  Thus I'm running MameWah in 640x288, so that when starting a game I don't have to tweek the VHold all the time.

However I'd like to add some PC games, and other emulator games into the cabinet.  Most of these support 640X480 but not 640x240.   Any ideas on getting this to work without needing to adjust the VHold?


JoeB

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 628
  • Last login:June 27, 2025, 08:23:34 am
  • NES Fanatic
Re:Getting smooth scrolling on all MAME games with ArcadeVGA
« Reply #9 on: September 16, 2003, 04:35:36 pm »
I covered this topic in one of the threads in the software forum..

basically, what ever you do.. most games should be 240 lines or less, or 640x480 for vertical (which is the same as 240 lines since it's interlaced).  Windows should be running at 640x480 as well.  

This will solve all you v-synch problems!

Further more, your front end (MAMEWAH) should run at 368x240.  This will result in ultra smooth display (no interlacing).  The only problem is that there is no bundled skin at that resolution.

So your choice is to either make new ones (like I did) or search the web for it.  MAMEWAH's web site has a link to a site with skins, and one of them is at that wonderful CGA monitor friendly resolution.

Here's the original thread:

http://www.arcadecontrols.org/yabbse/index.php?board=3;action=display;threadid=10963

GamingGreg

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 304
  • Last login:August 05, 2018, 06:04:30 pm
Re:Getting smooth scrolling on all MAME games with ArcadeVGA
« Reply #10 on: September 17, 2003, 03:45:33 pm »
JoeB,  I vaguely remembered that discussion but I couldn't find the old thread.  Thanks for the link and info.  

(Speaking about the search, Does the search engine indexes only go back a week or two?  I have a hard time finding older stuff.)

Minwah

  • Trade Count: (+3)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 7662
  • Last login:January 18, 2019, 05:03:20 am
    • MAMEWAH
Re:Getting smooth scrolling on all MAME games with ArcadeVGA
« Reply #11 on: September 23, 2003, 01:51:13 pm »
Further more, your front end (MAMEWAH) should run at 368x240.  This will result in ultra smooth display (no interlacing).  The only problem is that there is no bundled skin at that resolution.

There will be a bundled 368x240 layout next release - this is my preferred res too :)

vitaflo

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 135
  • Last login:January 14, 2020, 08:11:04 pm
    • ASMBLR
Re:Getting smooth scrolling on all MAME games with ArcadeVGA
« Reply #12 on: September 23, 2003, 03:37:44 pm »
Here's a question for ya...

I did the above like Pyronious suggested, and it looks great!  The issue I have are the Vert on Horiz games that use hardware stretch.  Hardware stretch invokes Bilinear Filtering (anti-aliasing) which, while looking good on a computer monitor, looks way too fuzzy to me on an arcade monitor (much more fuzzy than any of the other rezolutions at 60hz).

Is there any way to turn this off?  I know there is "-effect sharp" in SmoothMAME, but this takes up CPU cycles and isn't exactly what I want.  I'm curious if there's a way to turn it off on the ArcadeVGA card?  I looked through the control panel for the card and couldn't find it.  Is there a better way to do this w/ SmoothMAME?  If anyone can find it let me know.  It's the one thing stopping me from using this method full time.

Thanks!

misfit777

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 21
  • Last login:October 07, 2003, 11:02:18 pm
  • I'm a llama!
Re:Getting smooth scrolling on all MAME games with ArcadeVGA
« Reply #13 on: October 06, 2003, 03:52:52 pm »
There is a new version of avres on the ultimarc site. It allows you to specify 60 hz only and orientation of your mame machine. Its really a big help! and will take out all the guess work.

Here is the link
http://www.ultimarc.com/avgainst.html