then he should use another emulator, you're not going to do much playing with the 32x driver.
Wrong, some games work, and in full speed too
I know what works and what doesn't, I wrote it. It's very bad. Some games run better than they should even, because on real hardware waitstates cripple them. However, that doesn't mean the driver isn't terrible, the new sound hardware isn't emulated at all, things could break at any given moment due to inaccurate timings, and a lot of things simply don't work.
The original hardware was so bad that developers just shipped things if they 'worked', even if the underlying code was buggy as hell and relying on all sorts of weird timings or quirks of he hardware. I'd actually consider it the worst, and most fundamentally flawed add-on for any system ever. Even just doing a good 2d game on it gave you less video power (due to it being cpu and memory-access bound) than trying to do it with the plain MD hardware.
Even if it's just about the most simple add-on you could think of (2 SH2s, a framebuffer and a DAC) Emulating it well is nasty, and the MESS emulation is awful beyond words. Using it by choice, for any other reason than attempting to improve the driver is simply crazy.
Impoving it in MESS is hard too. From what I'm told (and what other emulators do) anything reading the FIFO buffers is meant to stall until it has data to read, MAME/MESS simply can't do this, you have to return something from a read. Kaotix at least does that, making no real attempt to properly sync the cpus during a massive FIFO based operation. I'd be curious to know if it really stalls the CPU on the read opcode on real hardware, or if that's just a kludge in other emus to get around needing cycle exact timing of everything. I'm told the former, but I still wonder if it's the latter.
Also even simple things don't make sense. The framebuffer mirror that's meant to handle transparency works in most cases, but then you have games like Spiderman and World Series Baseball which write data to the normal area, and expect the transparent pixels to be stripped out as if it was writing to the special mirror. (Maybe it needs the buffered writes, but I can't really see how that would fix anything really)
Increasing the interleave to perfect rates actually breaks some games too, again due to timing issues, and race conditions between the cpus etc. because memory contention and the delays it causes aren't emulated and so increasing interleave only makes some cases *worse*. (Kolibri IIRC)
Some games appear to work but break randomly (Tempo when you pick certain things up)
I hate the damn thing, and making PAL support work is pretty low down the list of things that need fixing, even if it would be an easy enough fix. Anybody is welcome to improve it btw. I don't really plan on looking at it again but right now it's not even a remotely accurate representation of the 32x.