* added save state support to the SHARC CPU core
* added save state support to the PowerPC recompiler
* added save state support to the virtual TLB system
* added save state support to the RF5C400 sound core
* added save state support to konppc module
* added save state support to K056800 host controller
* added save state support to the Konami hornet driver
Fixed poor default CLUT handling in the voodoo driver
Subject: [patch] memory_region madness reloaded
Hi mamedev,
The memory_region and memory_region_length functions are probably the
two most common functions in MAME that don't take a machine parameter
but should given the syntax of the related apis memory_region_type and
memory_region_flags. Clearly they didn't get the parameter because of
the sheer number of changes needed to change the apis. This pair of
patches makes the change, and deals with the consequences.
The second patch then changes the api for memory_region and
memory_region_length, and fixes the fallout. It generally plumbs
through machine parameters where needed, except for the case of sound
apis which I deferred doing so till later. This increased the number
of deprecat.h includes by ~50. Given it is a massive patch, there are
bound to be a few mistakes in it (I had to make ~20% of the changes by
hand), but I exercised care and reviewed the patch several times to
minimize the problems.
Subject: [patch] memory_region madness reloaded
Hi mamedev,
The memory_region and memory_region_length functions are probably the
two most common functions in MAME that don't take a machine parameter
but should given the syntax of the related apis memory_region_type and
memory_region_flags. Clearly they didn't get the parameter because of
the sheer number of changes needed to change the apis. This pair of
patches makes the change, and deals with the consequences.
The first patch makes some changes to help the second patch
along, as well as moves some uses of the memory_region apis within for
loops outside the loops.
* added save state support to the MIPS3 recompiler
* added save state support to CAGE audio system
* added save state support to the voodoo emulator
* added save state support to the smc91c9x emulator
* added save state support to the kinst, seattle, and vegas drivers
* fixed core video handling of save states with dynamic screen resolutions
SMC91C9x:
* converted to proper device
* updated seattle and vegas drivers to allocate devices
* added separate 91C96 device for eventual 2049 use
* cleaned up code
- Lots of improvements on the input system.
- Adjusted the CPU adressing to 14 bits for systems 903/904.
- Adjusted the CPU adressing to 15 bits for system 905.
- Rewrote all the ROM loads based on these changes.
- Defined CPU, UART and sound clocks.
- Splitted the sound interface to cover different systems.
- Splitted the PIAs interfaces to cover different systems.
- Added sound to system 905 games.
- Added MACHINE_START and MACHINE_RESET to initialize the devices properly.
- Documented the systems 903/904 UART connections.
- Traced and added PIAs connection diagrams for systems 903/904/905.
- Hooked the missing DIP Switches bank to the AY8912 for system 903.
- Added preliminary serial/UART support to systems 903/904.
- Hooked the missing DIP Switches bank to the ACIA 6850 for systems 903/904. It allow to choose the proper transfer rate for UART.
- Fixed graphics ROM loads for different Hotline versions.
- Added support to Game 8.0 (Arcade Black Jack).
- Added support to Game 12.3 (Ticket Poker).
- Added support to Game 23.0 (FC Bingo (4-card)).
- Renamed all roms of each set according to the systems schematics and official list.
- Cleaned-up the sets.
- Cleaned-up the driver.
- Updated technical notes.
New games marked as GAME_NOT_WORKING
------------------------------------
Cal Omega - Game 8.0 (Arcade Black Jack) [Roberto Fresca]
Cal Omega - Game 12.3 (Ticket Poker) [Roberto Fresca]
Cal Omega - Game 23.0 (FC Bingo (4-card)) [Roberto Fresca]
Removed call to discrete_reset() in the initialization code. It is already
called by the sound system during reset, at which point it is safe to read
input ports.
looks like the protection on vgoal might do more than just return jump
addresses, it seems to be in charge of the game timers too, so who knows
if there is additional subtle behavior on both.
Subject: some more diff
Hi, attached please find a few more patches about indexed port reads.
* g_patch01 & g_patch02 cover drivers starting with g (it seems I never sent you these ones :) ). With these patches I also simplified gaplus inputs, fixed a small problem with grchamp coin lockout (it was reading the accelerator rather than the right dipswitch) and removed some old code from galaxold.c (driver & machine).
* k_patch & l_patch cover drivers starting with k & l. Notice that I simplified a bit konamigx ports and used input_port_read_safe to avoid the need of too many fake ports
* snes.diff removes indexed port reads from snes based drivers (nss.c & kinstb.c). Please let Arbee know that if he's still using the debug graphic inputs in his local builds, he has to add tags (DEBUG1, DEBUG2, DEBUG3, see kinstb.c). OTOH If he's not using those anymore, it's now easier to remove the dead code searching for those 3 tags.
* md.diff removes most of indexed port reads from megadrive/genesis based drivers (plus segas18, that I realized later it was sharing only video code). It also removes some dead code (handlers used only by megaplay/megatech, with a local copy in the driver).
Notice that port_read_indexed is still used to read pad inputs: indeed, the natural 'tagged' replacement has issues with 6 button pad (and therefore breaks ssf2ghw). hopefully, I'll find a clean solution to be submitted after u6 :)
Regards,
Fabio