Great job, Cools!
Question, since I'm not able to test on a high res system - does GroovyMAME *require* the patched Kernel, SDL, and Xorg drivers, or are they only required for low resolution use? And regarding Xorg, is that only required if switchres / modeline_generation is enabled or not?
(IIRC) GroovyMAME doesn't need the patched kernel because it runs on top of Xorg. The kernel patches are just to add the 15 kHz modelines so they are available to the console (boot, etc.). Once inside Xorg, GroovyMAME can create whatever mode through xrandr. Actually the kernel modelines aren't used by GroovyMAME.
Besides, the kernel patch allows the ArcadeVGA 3000 card to work properly.
However, the SDL patch is vital to GroovyMAME, but just in the case of games that switch resolutions several times (many).
The patched ATI drivers fix a problem wth v-sync not working upon a mode switch, apart from allowing low resolutions (lower than 320x240, which wouldn't be strictly necessary anyway if some sort of multiple width mode was used).
As a note, not sure if any one realized about
this. I'll write a little how-to when I have some time. It allows creating a custom EDID through Switchres. This adds the required custom modeline into a custom EDID which is loaded by the kernel on boot, making the kernel patches redundant. It's limited to one modeline by now, which it's plenty enough for most purposes. The good thing is that this modeline is made based on the same crt_range settings used by GroovyMAME, so you can make the both match in geometry, something that was not possible before. Besides the custom EDID should mask the physical one in the monitor, if any, preventing its factory modes from getting in the middle.