Re: SDLMAME OpenGL vsync problem
I figured it out on my own. In case anyone gives a crap, the culprit is nvidia's Twinview. When you run Twinview with 2 different monitors that have different vertical scan frequencies, it's impossible to vsync when an application is spanned across both screens. This is explained in the nvidia README file.
I was running SDLMAME in fullscreen mode, and although there was no image on the second monitor, it was still spanning to it somehow because I would see the second monitor go blank while running a game. This is what gave me the clue about what was happening. This is probably not SDLMAME's fault, but again a problem with Twinview or possibly Xorg trying to use the entire area since X just sees both monitors as one huge screen.
Anyways, the answer if anyone cares (if you use Twinview) is to run SDLMAME in windowed mode, maximized of course, and select the waitvsync option. And of course don't forget to select the vsync options in the nvidia control panel.