Commit Graph

15728 Commits

Author SHA1 Message Date
Aaron Giles
5594694605 Make memory shares follow the same pattern as memory
regions and memory banks, accessible only via the device.
2012-04-20 19:57:41 +00:00
Michaël Banaan Ananas
95fcb3ceec (renamed BITSWITCH -> BSW, and state/machine wldarrow -> meyc8080) 2012-04-20 16:41:23 +00:00
Scott Stone
b7a1d964e0 CPS-3 update [Team CPS-1]:
* Fixed CD Catalog # for jojoba 990927
  and properly renamed the chd
* Realigned the games table
2012-04-20 16:34:05 +00:00
Aaron Giles
0466e27746 Cleaned up required_/optional_<object> templates.
Added new ones for memory banks and memory regions.
Removed debugging verbose printfs.
2012-04-20 16:08:24 +00:00
Scott Stone
4d32568ca0 Refactored a few things related to reels and use of layouts allowing for more function with less work [David Haywood]
Comment:  I need to check a few more things, see how bad performance gets if we force some elements to render each update rather than using cached bitmaps, the idea of ending up with up to 200,000 temporary bitmaps for each 16 segment LED with the existing code is quite frankly horrendous, but from what I understand it's entirely possible it could happen.
2012-04-20 14:51:24 +00:00
Miodrag Milanovic
f841751e50 Sync with MESS (no whatsnew) 2012-04-20 09:59:23 +00:00
Miodrag Milanovic
c9deec8e1d fix for 16bit device callback from Judge (no whatsnew) 2012-04-20 07:12:43 +00:00
Aaron Giles
b486b4d040 Typo fix. Also forgot to mention in the last
whatsnew that the SSIO PROM has been moved
to within the Midway SSIO device now.
2012-04-20 05:58:34 +00:00
Aaron Giles
18f33f4eff Changed device->subregion to device->memregion. Moved
memory_region management into the memory manager instead
of directly in the machine. Hid the global region method;
now all regions must be looked up relative to a device.

If you're a member function, you can just use memregion("tag") 
directly. If you're a global function or a device referencing
global regions, use machine().root_device().memregion("tag")
to look up regions relative to the root.

S&R to convert all references:

machine([()]*)\.region
machine\1\.root_device\(\).subregion

Then remove redundant machine().root_device() within src/mame:

([ \t])machine\(\)\.root_device\(\)\.
\1

And use state->memregion() if we have a state variable present:

(state *= *[^;]+driver_data[^}]+)([^ \t]*)machine[()]*\.root_device\(\)\.
\1state->

Finally some cleanup:

screen.state->
state->

device->state->
state->

space->state->
state->

And a few hand-tweaks.
2012-04-20 05:54:39 +00:00
Aaron Giles
776d29c90f Memory banks are now device-relative only. Global lookups
are private. Renamed device_t::subbank to device_t::membank
and updated a few remaining users of the global lookup.
2012-04-19 20:59:50 +00:00
Aaron Giles
b5b7808cb7 Remove global memory banking functions in favor of referencing
subbanks of a device and directly acting on them.

First round S&R:

memory_configure_bank( *)\(( *)([^,]+), *([^,]+), *
\3.root_device().subbank\1\(\2\4\2\)->configure_entries\1\(\2

memory_configure_bank_decrypted( *)\(( *)([^,]+), *([^,]+), *
\3.root_device().subbank\1\(\2\4\2\)->configure_decrypted_entries\1\(\2

memory_set_bank( *)\(( *)([^,]+), *([^,]+), *
\3.root_device().subbank\1\(\2\4\2\)->set_entry\1\(\2

memory_set_bankptr( *)\(( *)([^,]+), *([^,]+), *
\3.root_device().subbank\1\(\2\4\2\)->set_base\1\(\2


Then convert single entries to simpler form:

configure_entries( *\( *[^,]+, *)1 *, *([^,]+),[^)]+\)
configure_entry\1\2\)

configure_decrypted_entries( *\( *[^,]+, *)1 *, *([^,]+),[^)]+\)
configure_decrypted_entry\1\2\)


Remove renundant root_device lookup for methods:

([ \t])machine\(\)\.root_device\(\)\.
\1


Use state-> instead of root_device lookup where available (this
one must be done by hand unfortunately):

([^ \t]*)machine[()]*\.root_device\(\)\.
state->
2012-04-19 20:35:01 +00:00
Aaron Giles
70eab27301 Fix most remaining regressions. 2012-04-19 07:47:35 +00:00
Aaron Giles
c931255796 Use an OKI address map instead of memcpy to handle ADPCM
banking for the Williams ADPCM sound board.
2012-04-18 20:02:48 +00:00
Michaël Banaan Ananas
97f2edd3f4 (rm note about missing sound) 2012-04-18 19:48:09 +00:00
Michaël Banaan Ananas
c47f8d57b0 small cleanup on OKI access 2012-04-18 19:46:34 +00:00
Aaron Giles
523c35daed Now that memory_bank is exposed as an object, removed all the global
bank manipulation APIs from memory_manager, and instead added a
memory_manager::bank("tag") function which will return a pointer to
the representative memory_bank. Operations can then be performed as
expected directly on the memory_bank. Most code did not need an update
yet, as I haven't done the search/replace to move away from global
functions (which still exist for now).

Added device_t::subbank("tag") to return a bank that is owned by the
given device.

Switched YM2151 interfaces over to devcb callbacks.

Created proper sound devices for the Williams NARC, CVSD and ADPCM
sound boards. Updated midyunit, midtunit, williams(joust2), and
mcr68(archrivl/pigskin/trisport) to use the new devices.
2012-04-18 19:40:59 +00:00
Michaël Banaan Ananas
6718512f0a check if voice is playing *before* possibly starting an invalid sample (MT bug 485) 2012-04-18 19:39:55 +00:00
Scott Stone
55265da530 Preliminary work on Scorpion 4 lamps + more set resorting [David Haywood]
Discovered similarities in gotcha.c to Data East Bootleg sprites, also happening to be the closest implementation to Silver Millennium in the sources.  Refactored each based on this information.  [David Haywood]
2012-04-18 18:25:26 +00:00
Miodrag Milanovic
912f74766d Made TIA modern device (no whatsnew) 2012-04-18 17:25:26 +00:00
smf-
33cddd265e apply bitswap/xor to all mem(n) roms except the header 2012-04-18 14:01:44 +00:00
Scott Stone
bcbfc417de Added some better command handling to stop SC4 games from overwriting their attract mode messages with garbage. [James Wallace]
Comment:  Unfortunately MAME's artwork system can't cope with the changes in brightness and flashing, so we just ignore them entirely.
2012-04-17 23:57:56 +00:00
Michaël Banaan Ananas
fee0f44df1 rm old and obsolete hack 2012-04-17 23:35:40 +00:00
Michaël Banaan Ananas
7144c2ae78 get rid of duplicated code 2012-04-17 23:17:25 +00:00
Aaron Giles
80b23c9ec0 audio/mcr -> audio/midway 2012-04-17 18:55:15 +00:00
Miodrag Milanovic
ed505a2205 Removed the rest DIRECT_UPDATE_HANDLERS from mame section (no whatsnew) 2012-04-17 16:18:43 +00:00
Michaël Banaan Ananas
8be5555e52 (update prev commit) 2012-04-17 16:15:20 +00:00
Michaël Banaan Ananas
dc38487ba1 exponential volume table sounds much better (music doesn't drown sfx anymore) 2012-04-17 15:58:57 +00:00
Miodrag Milanovic
257bd20979 some DIRECT_UPDATE_HANDLER - > DIRECT_UPDATE_MEMBER (nw) 2012-04-17 15:00:27 +00:00
Aaron Giles
9091010c87 Broke dependency between mcr68 and mcr by creating
sound devices for each of the Midway 8-bit sound
boards. This will also aid in eventually hooking them
up to pinballs.

Enhanced the mixer interface support to allow for
more than one output line. To use this you need to
use the MCFG_MIXER_ROUTE macro instead of 
MCFG_SOUND_ROUTE so that the mixer output index can
be specified. See midway_ssio_device for an example.
2012-04-17 14:58:05 +00:00
Scott Stone
59769e3f30 new clones
------------
Hot Mind (Fit of Fighting Hardware) [f20v] (NOT WORKING)
2012-04-17 14:46:33 +00:00
Miodrag Milanovic
8fedf40b97 Fixed assert on double AM_SHARE (no whatsnew) 2012-04-17 11:48:44 +00:00
Michaël Banaan Ananas
523b96e818 3bit adpcm pitch was wrong 2012-04-17 10:44:28 +00:00
Miodrag Milanovic
995513cb74 Converted turbo.c to use i8279 device [Sandro Ronco] 2012-04-17 08:25:07 +00:00
Scott Stone
46a014a281 Started giving Scorpion games their own reel / key configs, which is needed for most of them to pass their post / not hang on 'reel errors' or infinitely spinning reels. Also more work on 68307's. [David Haywood] 2012-04-17 03:39:11 +00:00
Michaël Banaan Ananas
4d6ddd3816 small fix 2012-04-17 00:47:06 +00:00
R. Belmont
0a39b84f95 Games added as GAME_NOT_WORKING
-------------------------------
Star Trek: Voyager [R. Belmont, Mr. CAST, Smitdogg, The Dumping Union]
2012-04-17 00:45:46 +00:00
Michaël Banaan Ananas
7b4918cdf9 add 3bit adpcm 2012-04-17 00:32:22 +00:00
Michaël Banaan Ananas
907c85cc60 fix unending samples 2012-04-16 20:49:08 +00:00
Michaël Banaan Ananas
8dcd707695 woops 2012-04-16 19:21:46 +00:00
Michaël Banaan Ananas
e04ed2ad44 preliminary Imagetek I5000 sound emulation. [hap] 2012-04-16 18:17:00 +00:00
Miodrag Milanovic
39746064c6 Sync with MESS (no whatsnew) 2012-04-16 14:20:10 +00:00
Aaron Giles
3f82bc4d81 Clear out remaining AM_BASE_SIZE. 2012-04-16 08:42:02 +00:00
Aaron Giles
1092cb2f9b Fix validity check errors 2012-04-16 08:33:38 +00:00
Aaron Giles
fe9fb6ff9f Fix most reported errors. 2012-04-16 08:28:56 +00:00
Miodrag Milanovic
b383296ea9 Sync with MESS (no whatsnew) 2012-04-16 08:10:08 +00:00
Roberto Fresca
95d77623ee Meyco driver improvements: [Roberto Fresca]
* Reworked Inputs for all games.
 * Added button-lamps support.
 * Created internal control layout for all games.
 * Added mech counters support.
 * Promoted all games to working state.
 * Renamed the mdrawpkra ROMs based on PCB picture.
 * Renamed the driver to meyc8080.c
 * Added technical and game notes.

New games added or promoted from NOT_WORKING status
---------------------------------------------------
Draw Poker - Joker's Wild (Standard) [hap, Roberto Fresca]
Draw Poker - Joker's Wild (02-11) [hap, Roberto Fresca]
2012-04-16 03:33:18 +00:00
Brian Troha
55c3403c45 segas32.c: correct doc id# on rom board for Holosseum - NW 2012-04-16 01:53:02 +00:00
Aaron Giles
06fe858cf1 More fixes and a gcc warning fix. 2012-04-15 23:48:57 +00:00
Aaron Giles
6efb52a7b3 Several more driver regression fixes.
Seek & destroy on duplicate AM_SHAREs.
2012-04-15 22:44:14 +00:00
Aaron Giles
1dd1388ed8 A few key fixes. Also changed error reporting to list all missing
objects prior to fatalerror'ing.
2012-04-15 22:00:24 +00:00