| Commit message (Collapse) | Author | Files | Lines |
|
temporary system.
|
|
This change introduces the ability to save arbitrary structures. To
make a structure eligible for saving, it must implement a new method
register_save(save_registrar &). Structs can then save their members
directly via the provided save_registrar. Nested structs and arrays of
structs are supported in this manner.
Note that state registration is not done via a virtual method or mix-in
interface because doing so would convert lightweight structures away
from being POD, and lightweight structures are one of the most common
situations where this system can be leveraged in MAME.
As a first example, the attotime struct has been changed to support
this mechanism for saving, allowing us to remove the special cases for
attotimes currently in save_manager.
(It would be tempting to do the same for bitmap_t, but bitmaps are
defined in lib/util and can't take a dependency on save.h so those
special cases will remain.)
This is a prologue to full hierarchical save state support, which I am
working on in another branch. The save_registrar class name and reg()
signatures match current work on that branch, so any changes made to
existing code to leverage struct saving in this way will port over
cleanly.
|
|
|
|
|
|
|
|
|
|
|
|
cchasm.cpp: Combined source files, added I/O port finder, reduced audio
levels to avoid hitting the limiter.
redalert.cpp: Converted sound boards to devices and removed a couple of
trampolines, making the driver state class considerably tidier.
bus/amiga/keyboard, bus/sunkbd: Put a bunch of implementation classes in
anonymous namespaces, getting implementation details out of headers and
out of the global namespace.
|
|
- Fix recently-introduced path-trashing bug in zippath_resolve
- Prevent UI file select menu from crashing in error cases where no files can be found
|
|
|
|
|
|
- Corrected IRQ behavior based on more recent PCB observations. Fixes some flickering on World X-Y interlevel screens in SMB2J bootleg.
- Corrected SMB3 bootleg's banking, also per PCB analysis.
|
|
|
|
New working software list additions (nes.xml)
-----------------------------------
4 in 1 HQ [famiac]
|
|
(Jpn)" (#8539)
|
|
New working software list additions (nes.xml)
-----------------------------------
1997 Super 7 in 1 (JY-201) [MLX]
1997 Super 6 in 1 (JY-202) [MLX]
1997 Super 7 in 1 (JY-203) [MLX]
1997 Super 7 in 1 (JY-204) [MLX]
1997 Super 7 in 1 (JY-205) [MLX]
1997 Super 7 in 1 (JY-206) [MLX]
* C++ is not C, appease the compiler
|
|
------
SpongeBob SquarePants Jellyfish Dodge (JAKKS Pacific TV Game) (Apr 5 2007) [Sean Riddle, David Haywood]
new WORKING clones
------
Dora the Explorer - Doras Abenteuer-Globus (Germany) [Sean Riddle, TeamEurope]
-namcos2.cpp : made Japanese Marvel Land the parent, the US prototype is an earlier incomplete build, it ends abruptly, lacks any end credits, and is missing many of the levels (plus various other incomplete elements, see https://tcrf.net/Marvel_Land_(Arcade) ) 'US' could also be 'World' but I haven't changed that.
|
|
|
|
|
|
|
|
|
|
|
|
other minor cleanups
- flstory.cpp: corrected main CPU clock for rumba, fixes sound regression [David Haywood]
- sbmjb.cpp: lowered Oki volume
|
|
|
|
bootstrapped theme so it doesn't 404 (still won't work due to lack of support for jQuery smartmenus).
|
|
* Reworked device type definition macros to eliminate one level of
indirection when using device types by name.
* Fixed a potential initialisation order issue that could affect device
parent ROMs.
* Eliminated the need for DEFINE_DEVICE_TYPE_NS - just use
DEFINE_DEVICE_TYPE or DEFINE_DEVICE_TYPE_PRIVATE with fully-qualified
names.
* Changed device type aliases to static auto references in the headers.
* Added Doxygen comments for system/device definition macros and system
flags.
-Added ROM parents for m68705u3 and a2diskiing.
|
|
|
|
|
|
|
|
docs with this, and it includes sphinx 4 CSS fixes. (#8544)
|
|
|
|
- added missing input [David Haywood]
- minor cleanups
|
|
|
|
|
|
of RAM device
|
|
|
|
|
|
|
|
|
|
|
|
Original device was reverse-engineered with a logic analyzer and test
ROMs. The CPLD behaves as a slave device, returning data when selected,
based on previous writes.
Clones promoted to working
--------------------------
Killer Instinct 2 (Upgrade kit) [pdaderko]
|
|
selectors missing from old version.
|
|
configuration.
|
|
|
|
comes first. This works around an issue with the debugger trying to focus first on a keyboard MCU being held in reset.
|
|
|
|
New working software list additions
-----------------------------------
tx0_ptp: Munching Squares, Punchy [Bitsavers, AJR]
|
|
* The UI controls are described as zoom in/out, but they had the
opposite effect on the palette and tile viewers. That has been
changed to make them consistent with the tilemap viewer.
* Made the default zoom key not act as a toggle. People are familiar
with the function of Ctrl+0/=/- in web browsers, so making them behave
similarly in MAME should make it more approachable. Also added the
default zoom key to the relevant documentation page.
* Implemented the default zoom key for the palette and tile viewers.
* In the tilemap viewer, if the view is in default expand to fit mode,
zoom in/out starting from the actual zoom ratio. Once again, this
behaves more like the zoom controls in a web browser displaying an
image so it should be more intuitive.
* Made more messages from the tilemap viewer localisable.
-util/zippath.cpp: Fixed MT08074.
* There were multiple issues at play here. After #8443 was applied,
is_root was simply never returning true on Windows, as OSD_WINDOWS
isn't actually defined outside libosd and libocore. This caused
phantom parent items to appear in disk roots on Windows, but it meant
that the check in zippath_resolve would always fail so the trailing
backslash would be trimmed. Fixing the macro test in is_root meant
the trailing backslash from C:\ would no longer be trimmed, which
caused the stat in zippath_resolve to fail.
-bigbord2.cpp: Hooked up floppy DRQ that had somehow got lost.
-Reduced tag map lookups in several drivers and devices.
-util/coretmpl.h: Removed an overload of bitswap that can be avoided
using if constexpr.
-Added doxygen comments to some classes, and fixed several doxygen
warnings.
-util, osd: Test for _WIN32 rather than WIN32.
* In C++17 mode, WIN32 is no longer a predefined macro, although various
things in 3rdparty define it to maintain legacy support. We're better
off moving forward anyway for when WIN32 disappears entirely. (WIN32
is not a reserved name, while _WIN32 is, starting with an underscore
follwed by an uppercase letter.)
|
|
Decoupled support for RPK (RomPacK cartridge images) from TI-99 code, enabling the logic to be leveraged by other drivers.
|
|
vigilant: swap punch/kick buttons to match with arcade cabinet
|