It’s time to say goodbye to 2020, and we’re doing that with the release of MAME 0.227, the fruit of our extended November/December development cycle. A lot has happened in these two months, in terms of internal improvements to MAME as well as user-visible changes. If you’ve been following along with development, you’ll have noticed that we’ve migrated MAME to C++17, overhauled the Lua interface, further streamlined and enhanced the emulated memory system, and cleaned up a lot of ageing code.
MAME 0.227 adds preliminary support for macOS on AArch64, also known as “Apple Silicon”. Please note that we lack a native A64 recompiler back-end, and there are some issues with our C recompiler back-end. If you’re running an A64 build of MAME, you can disable recompilers for most systems that use them with the -nodrc option on the command line. You may get better performance for emulated systems with MIPS III or PowerPC processors by running an x86-64 build of MAME under Rosetta 2 with recompilers enabled. (Yo, ’sup dawg. I heard you like recompilers…)
Lots of long-standing issues have been fixed in this release. Missing platforms in stage 15 of Sega’s Quartet now appear properly. This relies on a protection microcontroller feature that we were previously unaware of. Protection features that are only used late in the game have been a recurring source of frustration not just for emulator developers, but also for arcade bootleggers, and even publishers re-issuing old games in new formats. It seems Sega missed this feature in their Astro City Mini release. Another long-standing protection issue was fixed this month that made Atari’s Rampart impossible to complete on Veteran difficulty. This one was actually a regression that managed to stay unresolved for years, possibly because the game’s high difficulty makes it difficult to reach. While we’re on the topic, protection simulation has been added for the versions of Sega’s Carnival that run on Head On hardware.
While protection emulation may encompass the most noticeable fixes, lots of other things that have been improved as well. Graphical issues have been fixed in Chase Bombers, Championship Bowling, and Prop Cycle. NFL Blitz ’99 no longer skips animations in attract mode. DIP switch descriptions have been corrected in 3-D Bowling, Bloxeed and Mahjong Tenkaigen. Game switching now works on Multipede, and Klax bootlegs are playable, with working sound.
It wouldn’t be a MAME release without new supported systems. This month we’ve got TV games from dreamGEAR, JungelTac, LexiBook and Senario. As always, the quality varies enormously. New versions of 1944: The Loop Master, Cookie & Bibi 2, F-1 Grand Prix, Forgotten Worlds, and Narc have been found and dumped. One of the newly supported Narc versions is particularly interesting, as it appears to be an early test version, lacking a substantial amount of content found in other versions of the game. Another incomplete copy of Unico’s Master’s Fury was found, which could be combined with the previous incomplete set to make the game playable.
Finally, there are a few improvements to the internal user interface. There are more controls for screenshots, aspect ratio and scaling accessible from the Video Options menu. You can now use NOT codes when assigning analog joystick axes to digital inputs. The menus for the Cheat and Autofire plugins have been made more consistent.
Of course, there’s far more that we don’t have space for here, but you can read all about it in the whatsnew.txt file .