Wednesday, June 29, 2011

Update to Neo Geo Bartop: Perfection





I'd like to follow up on a project I "finished" last year. Read about it here. After its initial completion, two things kept my beloved Neo Geo MVS Bartop from being the perfect Neo Geo emulation machine:  finding the correct software configuration for 100% arcade-perfect emulation, and keeping the PC from overheating under heavy use.

Regarding the heat issue: My original PC setup inside the cabinet was an old AMD-based Socket A chip. It got way too hot way too quickly and would often overheat and shut down the system after only an hour of use or less. Even the 5 cooling fans inside the cabinet could not keep the temperature low enough. I replaced it first with an Intel Celeron D-based setup with a ASRock board. This ran much cooler, but the board and chip did not get along very well. The CPU was not officially supported by the motherboard and would sometimes reset 10 seconds into boot-up, then boot normally. This was a minor inconvenience that I put up with until I realized my second issue, which I'll explain next. For now, I had the machine running well enough for me and everyone else that played it.

Regarding the software issue: After a few months of play, I noticed that there was some screen tearing going on in certain games where full-screen scrolling occurs, i.e. Captain Tomaday, Twinkle Star Sprites, and Blazing Star. This annoyed the hell out of me. I inquired several places (message boards, emailing vendors) as to why this was happening. The answer I found was that the Neo Geo has an odd vertical refresh rate of ~58.185Hz, which tears when set to the standard 60Hz refresh rate. Long story short, I had to buy the newest version of the ArcadeVGA video card that supported custom vertical refresh rates (via the ArcadePerfect utility), which also required a new motherboard and RAM, since I had an AGP card, but needed PCIe. A positive side effect of getting a new board was that the rebooting issue above has disappeared. Anyway, getting new hardware almost did the trick. It got my video looking perfect, but now the audio in M.A.M.E. was out of sync. It would skip every 5 seconds or so. The standard install of M.A.M.E. doesn't have a "soundsync" feature. Luckily, a custom build called GroovyMAME does. After a few false starts, GroovyMAME got my audio synced with my now 100% accurate video emulation and all is well. Setting "triplebuffer" and "soundsync" in the mame.ini file was the key. There is zero perceptible video issues on any Neo Geo games I've tried.

If you're looking to emulate Neo Geo MVS games in M.A.M.E. with 100% accuracy, the only way to do it, to my knowledge, is to do it with the combination of hardware and software that I have currently running. I'd be happy to answer any questions about my setup. Just email me or comment below.

I've gotten so much joy out of building, configuring, and playing this Neo Geo cabinet. I don't think I can ever get rid of it. Now I just need to get a real MVS.