Commit Graph

22498 Commits

Author SHA1 Message Date
Zsolt Vasvari
6d54ed169c - Merged memory maps
- Uses PORT_CHANGED for coins
- Renamed 'Inferno (S2650) to 'Inferno (Meadows)'
- Renamed 'Bowling 3D' to '3-D Bowling'
- Added NO_DUMP entries for Gypsy Juggler's ball graphics and added GAME_IMPERFECT_GRAPHICS flag
2008-03-05 08:00:31 +00:00
Aaron Giles
a724936cb3 Added running_machine * to the device_config, live while the device
is live, and NULL otherwise, just like the token.
2008-03-05 07:54:12 +00:00
Aaron Giles
ee0a5642ab Added running_machine * parameter to the front of all read/write handlers.
Updated all call-through handlers appropriately. Renamed read8_handler to
read8_machine_func, replicating this pattern throughout. 

Defined new set of memory handler functions which are similar but which
pass a const device_config * in place of the running_machine *. These are
called read8_device_func, etc. Added macros READ8_DEVICE_HANDLER() for
specifying functions of this type. Note that some plumbing still needs to
happen in memory.c before this will work.

This check-in should remove the need for the global Machine and in turn
"deprecat.h" for a lot of drivers, but that work has not been done. On
the flip side, some new accesses to the global Machine were added in the
emu/ files. These should be addressed over time, but are smaller in
number than the references in the driver.
2008-03-05 07:45:34 +00:00
Zsolt Vasvari
9f03451a61 Uses PORT_CHANGED for coins 2008-03-05 07:19:58 +00:00
Zsolt Vasvari
d41cb7ebce Untangles the Fire Truck driver -- what a nightmare...
Many uses of PORT_CUSTOM and PORT_CHANGED, including another good use case for the gear shift logic
2008-03-05 04:25:29 +00:00
Zsolt Vasvari
793cf2e715 VBLANK based watchdogs can be disabled once again
Removed debugging fprintf
2008-03-05 04:20:01 +00:00
Brian Troha
0eca6ca59c fixes capitol letter in rom name issue in last commit 2008-03-05 00:04:11 +00:00
Brian Troha
98a838fe06 adds info from recent Peekaboo submission
retains / adds a little info and better rom name for the MCU
2008-03-04 23:59:58 +00:00
Andrew Gardner
28c035cca5 Fixes memory map conversion typo for zodiack. 2008-03-04 16:20:41 +00:00
Zsolt Vasvari
f1e2ccd4f1 Better separation of driver and video code.
Gave Top Secret its own (1 line long) video update function.
2008-03-04 11:36:09 +00:00
Zsolt Vasvari
6ae0a85462 Exidy440 - modernized input port handling with CUSTOM_INPUT and INPUT_CHANGED
Cleaned-up (IMO) special case handling
2008-03-04 07:59:35 +00:00
Zsolt Vasvari
5b108ad039 Uses PORT_CHANGED
Removes PORT_IMPULSE from Star Hawk
2008-03-04 04:53:58 +00:00
Andrew Gardner
7a52f023ac Merges memory maps X->Z.
Regression tests consist of running through demo mode with -log, diff'ing the results, and playing a bit.
2008-03-04 04:37:01 +00:00
Zsolt Vasvari
77ed3a81ef Uses PORT_CHANGED
Cheeky Mouse: tilemap conversion
2008-03-04 03:51:03 +00:00
Zsolt Vasvari
4ce1310abb Converted to use PORT_CHANGED
Combined memory maps where applicable
2008-03-03 09:27:06 +00:00
Zsolt Vasvari
65204e090e Readds accidentally deleted line 2008-03-03 05:21:35 +00:00
Zsolt Vasvari
34b3ab9841 Added running_machine* to the CUSTOM_INPUT callback - updated drivers to use it 2008-03-03 05:17:57 +00:00
Zsolt Vasvari
62466dd08f - Added PORT_CHANGED macro which calls a callback if the given port changes.
Usage is very similar to PORT_CUSTOM.  See the Astro Invader driver for an example
- Removed input_port_set_changed_callback and converted all users to PORT_CHANGED
  The only difference between the old callback and the ones supplied by PORT_CHANGED is
  that values passed by PORT_CHANGED are normalized to start at bit 0, just like
  PORT_CUSTOM.
2008-03-03 04:10:51 +00:00
Aaron Giles
e31f9a6313 Normalized function pointer typedefs: they are now all
suffixed with _func. Did this throughout the core and
drivers I was familiar with.

Fixed gcc compiler error with recent render.c changes.
gcc does not like explicit (int) casts on float or
double functions. This is fracking annoying and stupid,
but there you have it.
2008-03-03 01:51:31 +00:00
Zsolt Vasvari
05702939cd Removed used srcnum from ccpuRegs
State saves more stuff -- wasn't 100% sure if they are all needed saved, but it appears they do.
2008-03-03 01:22:21 +00:00
Aaron Giles
8042e50f87 Added video_screen_get_time_until_vblank_end() and
video_screen_get_time_until_update().

Fixed CCPU and QB3 to no longer rely on cpu_scalebyfcount().
Fixed busted timing in the CCPU core. Changed watchdog to
count internally rather than using external watchdog support.
Altered CCPU to accept interrupt signals from the driver.
Updated clocks in the cinemat driver to be derived from the
clock crystal.
2008-03-03 01:02:16 +00:00
Zsolt Vasvari
713f03885f MC6845: Added support for the Commodore 6545-1 device type
Added support for the status register
Pops up message if display mode is not zero
some minor clean-ups
2008-03-02 23:25:35 +00:00
Couriersud
490713dea8 render.[ch]: change type of target_orientation in target_compute_visible_area to int for consistency with other calls. 2008-03-02 22:21:54 +00:00
Couriersud
c2a1232ea1 Rename dkngjnrb to dkongjre - Credit Mike Haaland 2008-03-02 20:13:20 +00:00
Brian Troha
7d4bfdf1f1 Corrects some documentation and rom names.
Minor whitespace clean up.
Slight reorganization to be consistent through out driver
2008-03-02 18:51:22 +00:00
Couriersud
e8c24a40d9 Changed z80dma to new device interface, updated mario.c and dkong.c to use new interface
* Illustrates how to keep existing memory read/write handlers
  This is slower than caching the device interface, but does not have an impact on
  devices accessed at a low frequency like in this case.
2008-03-02 15:40:24 +00:00
Zsolt Vasvari
75a0723116 Gyruss: Tilemap conversion, sprite multiplexing done properly, driver clean-up 2008-03-02 15:17:13 +00:00
Zsolt Vasvari
1a0ccf8101 tp84: Replaces sprite multiplexing hack with video_screen_update_now() on sprite RAM write
General driver clean-up
tilemap.h:  Deletes no longer applicable comment
2008-03-02 13:26:10 +00:00
Zsolt Vasvari
2ddf3da8dd - Watchdog gets its own namespace for state saving
- Corrected some comments
2008-03-02 03:39:43 +00:00
Zsolt Vasvari
c7a0a7942f Moves watchdog processing logic into its own module 2008-03-02 03:32:54 +00:00
Zsolt Vasvari
56ad71eccf Some more #includes's removed 2008-03-02 02:50:21 +00:00
Zsolt Vasvari
9adda05850 Removes unneeded #includes 2008-03-02 02:43:26 +00:00
Zsolt Vasvari
807d71db76 Removes cpu_getcurrentframe() and replaces it with video_screen_get_frame_number(int scrnum)
Updates all callers
2008-03-02 02:38:20 +00:00
Couriersud
6ab989af82 Reverted change to options.c - not ready for release due to potential breakage of frontends. 2008-03-02 00:39:56 +00:00
Couriersud
7df031fb4f Rewrote some potentially compiler specific code:
* added ATTR_FORCE_INLINE to osdcomm.h
* added ATTR_NONNULL
* moved U64 S64 fram mamecore.h to osdcomm.h
* define SETJMP_GNUC_PROTECT() in osdcomm.h for use in ppc602, ppc603
2008-03-02 00:35:58 +00:00
Couriersud
492612b6c9 Various clean ups:
* remove more unreachable code
* identify more functions not being used
* Changed a number of global functions to being static
2008-03-01 16:54:52 +00:00
Nicola Salmoria
6dc290df31 (from Razoola) ddtojr1/ddtojr2 were swapped 2008-03-01 16:39:44 +00:00
Zsolt Vasvari
275d692874 Removed use of cpu_scalebyfcount() 2008-03-01 16:20:39 +00:00
Zsolt Vasvari
7198a00e65 - Moves all video timing logic from cpuexec.c to video.c
- Added a video_screen_register_vbl_cb() function for registering VBLANK callbanks
- Changed inptport.c and debugcpu.c to make use the VBLANK callbacks
- Added video_screen_get_time_until_vblank_start()
- CCPU and anything using cpu_scalebyfcount() are currently broken
- I did some fairly extensive testing, but this is a very signficant internal change,
  so some things may have broke
2008-03-01 15:50:12 +00:00
Couriersud
e90a92697c * Wrapped unused code in "#ifdef UNUSED_FUNCTION" 2008-03-01 11:29:29 +00:00
Couriersud
7ce83ee92b memory.c: removed further code never to be executed
* removed "return 0" from READWORD & READWORD16/32/64/MASKED since it is unreachable
2008-03-01 11:25:57 +00:00
Aaron Giles
b8a64773fd Added macros to define device functions. Updated existing devices
to use the macros.

Added the concept of device classes. Devices specify their class
in their get_info function. Classes can be used to walk through
devices at a more general level than their type. Functions have
been added to iterate through devices by class just as you can
by type.

Removed some unused fields from device_config.
2008-03-01 08:41:56 +00:00
Zsolt Vasvari
2fba8bdb8a - Removes a couple of unused items from the cpuexec_data structure
- Adds one more validty checks -- screenless drivers cannot have a VBLANK
2008-03-01 05:30:22 +00:00
Roberto Fresca
efabbae0b1 Changed parent/clone relationship to separate SSI Poker sets from Jackpot Joker Poker. 2008-03-01 04:49:35 +00:00
R. Belmont
cd802cf4d1 [AICA] Better (not perfect) slot monitoring. (kingshriek) 2008-03-01 03:28:18 +00:00
R. Belmont
753b8dbf32 [DC/NAOMI] Use defines instead of magic numbers for IRQ sources, add VBL-out. 2008-03-01 03:27:21 +00:00
Zsolt Vasvari
875ece67f6 - Implemented VSYNC height computation difference between the Motorola and the Rockwell devices
- Since the Commodore 40xx computers program an HSYNC width that extends past the end of
  the scanline, I am clamping it in lack of anything better to do.
2008-03-01 02:40:27 +00:00
Zsolt Vasvari
09bf1cb3e4 Added mc6845->has_valid_parameters in mc6845_assert_light_pen_input, so that processing only happens
if the chip was correctly configured
2008-03-01 01:58:51 +00:00
Zsolt Vasvari
fe74a22163 - Uses a timer for latching the light pen address. Not that there was anything really wrong
with the previous way, but this is a bit more accurate.  I actually tested this.
- Added reset device function
- Better variable names
- More asserts
2008-03-01 01:56:35 +00:00
Couriersud
16547714e4 Fix compile issues introduced with r844 2008-03-01 01:47:47 +00:00