19xx looked much the same as it did under mame0.99, a bit squashed but fairly playable. As predicted, I didn't detect any artifacts but Halley Wars (halleys) had a definite sound stutter but adding the following to halleys.ini has fixed it.
triplebuffer 0
syncrefresh 0
There might be some tearing but on a black, starry background it's difficult to see :-)
Just tried 1942 with the same settings - seems perfect. Now I'm struggling though, does this mean my default groovymame.ini should have these settings?
Yeah, those vertical games with 256 lines (halleys, 1942) are above the limit where a normal cga monitor can do 60 Hz. That's because in order to achieve 60 Hz with so many lines you need a 16.7 KHz modeline, and our monitor definition for cga is restricted to 15.7 KHz, so the maximum refresh you can get for 256 active lines is 56,68 Hz. So, you can choose one of this options:
- Remove -triplebuffer and -syncrefresh (what you did), so GroovyMame will run the emulation independent of your videocard refresh, speed will be 100%, sound will be perfect, but you'll have tearing. However tearing is not so noticeable in vertical games as it is in horizontal scrolling games.
- Add -syncrefresh. GroovyMame will reduce game's speed to 94%. No tearing, perfect scroll. Sound stuttering due to speed difference, solution: add soundsync too, so sound will sync to video at the cost of lowering its pitch.
- Add -triplebuffer. Groovymame will keep game's speed at 100%. No tearing, perfect sound, but scroll hiccups, due to game speed being different to videocard's refresh (note: adding triplebuffer actually overrides -syncrefresh so there's no point in activating both of them).
- Use another monitor type (at your own risk). For instance, Hantarex MTC 9110 (H9110) can go up to 16.7 KHz, so by choosing this monitor GroovyMame will be able to generate a 256 lines@60Hz modeline, so you won't need -syncrefresh/-triplebuffer as Groovymame will internally activate -waitvsync.
A quick, easy and force brute way to have GroovyMame set up so that any game runs smooth without video/sound artifacts is by enabling the syncrefresh + soundsync combo. So for the games that fall out of our monitor limits, you'll have a slowdown but everything will be smooth like silk apart from that.
If you leave the default options (-nosyncrefresh, -notriplebuffer), GroovyMame will only activate -waitvsync when it feels it's convenient.
So for those games it depends on your taste that you prefer smooth-but-somewhat-slowdown vs real-speed-but-tearing/hiccups, and also depending on the game it may be better or worse.
It would be good at some point to have an ui menu option for enabling/disabling -syncrefresh/-triplebuffer, I'll have a look at that.
Also, bit strange but I can't get the paths in mame.ini to display bezels or overlays.
No idea on this, sorry.