The H6280 core registered nothing with the save-state system, and the HuC6270 video chip of the battlera board (VRAM, registers, palette, scanline/IRQ bookkeeping) and the driver's port select / ADPCM toggle were not registered either. After a state load the CPU kept running from its own PC, registers, MMR bank map and timer, and the screen was drawn from the old VRAM, so netplay guests saw a blank or diverging screen and rewind / run-ahead diverged. - h6280.c: register PPC/PC/SP/ZP/EA, A/X/Y/P, the 8 MMR registers, the IRQ mask, timer status/ack/value/load, extra cycles and the IRQ lines (plus NZ with LAZY_FLAGS) per CPU in h6280_init(), as m6809_init() does. - battlera_vidhrdw.c: register VRAM, the 20 VDC registers, the VDC pointers and flags, last_line (was a function-local static) and the palette RAM; a postload handler marks everything dirty and rebuilds the palette. - battlera.c: register control_port_select, msm5205next and the ADPCM toggle (was a function-local static) from a new DRIVER_INIT. Co-authored-by: Squirbie <[email protected]> Co-authored-by: Claude Opus 5.5 <[email protected]>
What is MAME 2003-Plus?
MAME 2003-Plus (also referred to as MAME 2003+ and mame2003-plus) is a libretro arcade system emulator core with an emphasis on high performance and broad compatibility with mobile devices, single board computers, embedded systems, and similar platforms.
In order to take advantage of the performance and lower hardware requirements of an earlier MAME architecture, MAME 2003-Plus began with the MAME 2003 codebase which is itself derived from xmame 0.78. Upon that base, MAME 2003-Plus contributors have backported support for an additional 350 games, as well as other functionality not originally present in the underlying codebase.
What games are supported?
View our live compatibility table built using datmagic, a tool created by the MAME 2003-Plus team. Datmagic auto-generates a compatibility table based on the latest XML DAT file. See an incorrect entry? Create a new issue to let us know! This allows us to keep the compatibility table as accurate as possible by fixing it at the source.
Authors: MAMEdev, MAME 2003-Plus team, et al (see LICENSE.md and CHANGELOG.md)
Documentation
User documentation for MAME 2003-Plus can be found in the libretro core documentation library.
Developer documentation can be found in the MAME 2003-Plus wiki.
Development chat
#programming channel of the libretro discord chat server.
Romsets and how to build them for this core
mame2003-plus was originally built from the MAME 0.78 codebase, meaning that 95% or more of MAME 0.78 romsets will work as-is in mame2003-plus, where they immediately benefit from its bugfixes and other improvements. In order to play the new games and games which received ROM updates in mame2003-plus, you will need to find or build the correct romsets.
Read more about rebuilding romsets in the libretro core documentation for mame2003-plus.