Commit Graph

3352 Commits

Author SHA1 Message Date
Aaron Giles
e23c6d6676 Fixed drc-based games. 2008-11-20 11:33:25 +00:00
Aaron Giles
ba6a03d734 Memory banking now requires a machine object. This makes the memory
system fully global-free, apart from the "active_address_space"
which will eventually go away.

Also fixed compiler errors from last checkin.
2008-11-20 11:14:38 +00:00
smf-
3dcbbe190e pedantic, probably should number from 1 instead of 0... 2008-11-20 10:18:05 +00:00
smf-
6d15316659 removed excessive casts and fixed mvmva bug introduced in last commit. 2008-11-20 10:13:45 +00:00
Aaron Giles
371cd0a56d Another big one.
Moved memory global state into a struct hanging off of the machine.
Updated almost all memory APIs to take an address_space * where
appropriate, and updated all callers. Changed memory internals to
use address spaces where appropriate. Changed accessors to point
to the memory_* functions instead of the address space-specific
functions. Improved internal handling of watchpoints.

Added cputag_* functions: cputag_reset(), cputag_get_index(),
cputag_get_address_space(). These just expand via macros to an
initial fetch of the CPU via cputag_get_cpu() followed by the
standard CPU call.

Added debugger_interrupt_hook() and debugger_exception_hook() calls
which intelligently look at the debugger flags before calling.

Did minimal cleanup of debugger, mainly moving CPU-specific data
to hang off of the CPU classdata for more direct access.
2008-11-20 09:50:31 +00:00
davidhay
e9b33a8462 fix 02656: elevator: Elevator Action freezes after coin insert with "8"
seems to need slightly better interleave.
2008-11-20 07:54:32 +00:00
davidhay
923e58812a fix broken crazywar eeprom 2008-11-19 23:23:36 +00:00
smf-
24022b72ca pointerified the psx cpu core & switched it to the new memory functions. Changed some MIPS_* to PSXCPU_* 2008-11-19 19:32:44 +00:00
Couriersud
2cd2454c39 Switched m6809 and hd6309 to new memory functions
* cleaned up some macros
* aligned code a bit more
* interrupts now checked in cpu_execute instead of set_context
2008-11-19 19:27:04 +00:00
smf-
47c75a8ef4 fixed unassigned variable warning. 2008-11-19 18:48:33 +00:00
R. Belmont
b95877564a Fixed "H8/3344" to "H8/3334" as per Guru. 2008-11-19 18:00:00 +00:00
Curt Coder
49a90686e8 Refactored the COP400 CPU cores to use the new memory functions. 2008-11-19 17:47:38 +00:00
Curt Coder
e0d6d1323d Refactored the CDP1802 CPU core to use the new memory functions. 2008-11-19 17:46:39 +00:00
Aaron Giles
fff915b5e5 Sums for firefox. 2008-11-19 14:41:36 +00:00
R. Belmont
3ac959ef71 Fixed GCC compile errors in h6280 and m6509.
Also fixed the read/write handlers in m6509 to use space->cpu->token instead of the global token.
2008-11-19 14:35:26 +00:00
Nicola Salmoria
2e97ff9c21 02641: strider and clones: Problem with graphics layer 2008-11-19 09:14:29 +00:00
Aaron Giles
0801d1254c Converted change_pc() into a no-op. Changed memory_set_direct_region() to
return a boolean indicating whether the given address was successfully
located in a bank. Change raw/decrypted access to look at this result, and
if the given address is not in a bank, calls through to the standard read
handlers.

In theory, this should prevent crashes when accessing opcodes. It does in
fact prevent mp_col3 from crashing.

Fixed address space mapping handlers to invalidate direct access regions
if a change is made to the mapping. This is needed to prevent the Sega
dynamic memory mapping chips from falling over.
2008-11-19 06:36:01 +00:00
R. Belmont
6c1655976f Big H8 update
H8:
- Added support for 8-bit H8 family MCUs, starting with the H8/3344
- Pointer-ified all H8 cores
- Some cleanup and renames toward additional future work

System 23:
- Added extremely preliminary support for I/O boards with the H8/3344
- Added new game: Motocross Go! (MG3 Ver. A) [credit Guru]
2008-11-19 03:29:10 +00:00
Couriersud
13bd16a090 Switched m68000 core to new memory functions 2008-11-19 00:32:54 +00:00
Angelo Salese
a46691cd90 Fixed basic controls in 2 Minutes Drill & added preliminary shutter/defender sensors.
Still need proper ball hit/run sensors to get this working however.
2008-11-18 22:47:57 +00:00
Couriersud
3a068d3dfb Switched mcs48 core to new memory functions 2008-11-18 22:45:35 +00:00
davidhay
c67957ebb2 Documented alt Ajax rom board [Phil Morris] 2008-11-18 21:25:50 +00:00
Couriersud
56a34c2e5b Switched mcs51 to new memory functions 2008-11-18 21:19:44 +00:00
Couriersud
4c415d118b Added check "#ifndef NO_LEGACY_MEMORY_HANDLERS" to memory.h
Defining NO_LEGACY_MEMORY_HANDLERS before the first include will identify all references to [program|data|io]_[read|write]_* in a source file.
2008-11-18 21:02:53 +00:00
Curt Coder
a8475e4c1e Pointerized the COP400 CPU cores. 2008-11-18 17:15:40 +00:00
Aaron Giles
09da237dcd Pointer-ified the ASAP core. 2008-11-18 16:33:33 +00:00
Aaron Giles
1c386d0958 Oops. 2008-11-18 14:22:56 +00:00
Nicola Salmoria
e6e7a3804d added forgott1 B-board PALs 2008-11-18 09:04:14 +00:00
Aaron Giles
7df8f23199 Spacegun regression. 2008-11-18 07:10:51 +00:00
Aaron Giles
84897712e6 Model 2/3 regressions. 2008-11-18 07:07:31 +00:00
Aaron Giles
3f0a9a822f midvunit regressions. 2008-11-18 07:02:01 +00:00
Aaron Giles
77b0991214 midzeus regressions. 2008-11-18 07:00:40 +00:00
Aaron Giles
0e44db781f evilngt regressions. 2008-11-18 06:50:30 +00:00
Aaron Giles
714f517a67 Fix checkmaj regression. 2008-11-18 06:34:35 +00:00
Aaron Giles
588cacb0e3 Fix orbit regression. 2008-11-18 06:30:31 +00:00
Aaron Giles
1311447092 Fix batrider regressions. 2008-11-18 06:27:48 +00:00
Aaron Giles
64afe93c65 Fix regressions in taito_f3 sound. 2008-11-18 06:23:14 +00:00
Aaron Giles
d83c8320da Cleaned up macro mess in the Z80 core. Switched to using
generic memory calls instead of program_* and io_*.
2008-11-18 06:16:30 +00:00
davidhay
fbb31ee3ae hack to prevent title screen corruption in galpani3 2008-11-17 23:40:40 +00:00
davidhay
23430c3df6 playing with blending effects in galpani3 2008-11-17 23:25:14 +00:00
davidhay
4af951fcb9 Tweaked gun handling in beast busters a bit.. by halving the precision of the guns to 7-bit they can be calibrated more easily, maybe the originals were like this. I've also added a default eeprom with them calibrated in a 'reasonable' way for MAME. Sound is pretty awful on this, maybe the sound ROMs should be checked? 2008-11-17 22:51:04 +00:00
Couriersud
ea25feb719 Fix taitowlf.c (pf2012) crash 2008-11-17 22:09:50 +00:00
davidhay
a088d32b1b fix compile 2008-11-17 22:05:39 +00:00
Couriersud
959698c099 Fix seattle.c crash (hyprdriv) 2008-11-17 22:03:25 +00:00
Curt Coder
ce73844036 Pointerized the CDP1802 CPU core. 2008-11-17 21:42:56 +00:00
Couriersud
29d45a2410 Add proper cpu_push_context to callbacks in m6800.c
* fixes crash in namcos1.c drivers
2008-11-17 21:20:13 +00:00
Couriersud
63644323b2 Fix gladiatr.c regressions. 2008-11-17 19:53:48 +00:00
Couriersud
454fee8885 Add cpu_reset to MACHINE_RESET
* no crash on linux. Somebody on windows please check lethalen.
2008-11-17 19:43:03 +00:00
Aaron Giles
e7c418ef0f Generalized the concept of opbase access into "direct" access.
Removed opbase globals to the address_space structure.
Cleaned up names of pointers (decrypted and raw versus rom and ram).
Added inline functions to read/write data via any address space.
Added macros for existing functions to point them to the new functions.
Other related cleanups.
2008-11-17 18:33:10 +00:00
Angelo Salese
cd6f509841 ST-V IRQ rewrite and that removes several global hacks/game specific hacks
(SMPC irq bit/introdon irq register hack/pblbeach framebuffer hack plus some more)

(Note: some games have issues with it,but they'll be hopefully fixed on the next couple of updates)
2008-11-17 16:56:53 +00:00