diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/mame/audio/geebee.c | 9 | ||||
-rw-r--r-- | src/mame/audio/warpwarp.c | 8 | ||||
-rw-r--r-- | src/mame/audio/warpwarp.h | 2 | ||||
-rw-r--r-- | src/mame/drivers/warpwarp.c | 35 | ||||
-rw-r--r-- | src/mame/includes/warpwarp.h | 38 | ||||
-rw-r--r-- | src/mame/video/warpwarp.c | 11 |
6 files changed, 50 insertions, 53 deletions
diff --git a/src/mame/audio/geebee.c b/src/mame/audio/geebee.c index ab84daf034b..8105b65ac41 100644 --- a/src/mame/audio/geebee.c +++ b/src/mame/audio/geebee.c @@ -29,15 +29,6 @@ geebee_sound_device::geebee_sound_device(const machine_config &mconfig, const ch { } -//------------------------------------------------- -// device_config_complete - perform any -// operations now that the configuration is -// complete -//------------------------------------------------- - -void geebee_sound_device::device_config_complete() -{ -} //------------------------------------------------- // device_start - device-specific startup diff --git a/src/mame/audio/warpwarp.c b/src/mame/audio/warpwarp.c index 8f2130fb4a2..1c3f42f9de4 100644 --- a/src/mame/audio/warpwarp.c +++ b/src/mame/audio/warpwarp.c @@ -40,15 +40,7 @@ warpwarp_sound_device::warpwarp_sound_device(const machine_config &mconfig, cons { } -//------------------------------------------------- -// device_config_complete - perform any -// operations now that the configuration is -// complete -//------------------------------------------------- -void warpwarp_sound_device::device_config_complete() -{ -} //------------------------------------------------- // device_start - device-specific startup diff --git a/src/mame/audio/warpwarp.h b/src/mame/audio/warpwarp.h index 9e4352c792f..593208d8939 100644 --- a/src/mame/audio/warpwarp.h +++ b/src/mame/audio/warpwarp.h @@ -15,7 +15,6 @@ public: protected: // device-level overrides - virtual void device_config_complete(); virtual void device_start(); // sound stream update overrides @@ -59,7 +58,6 @@ public: protected: // device-level overrides - virtual void device_config_complete(); virtual void device_start(); // sound stream update overrides diff --git a/src/mame/drivers/warpwarp.c b/src/mame/drivers/warpwarp.c index 4e868343715..69a95f87cd1 100644 --- a/src/mame/drivers/warpwarp.c +++ b/src/mame/drivers/warpwarp.c @@ -135,6 +135,13 @@ Notes: #define MASTER_CLOCK XTAL_18_432MHz +void warpwarp_state::machine_start() +{ + save_item(NAME(m_geebee_bgw)); + save_item(NAME(m_ball_on)); + save_item(NAME(m_ball_h)); + save_item(NAME(m_ball_v)); +} /* Interrupt Gen */ INTERRUPT_GEN_MEMBER(warpwarp_state::vblank_irq) @@ -733,7 +740,7 @@ static MACHINE_CONFIG_START( geebee, warpwarp_state ) /* video hardware */ MCFG_SCREEN_ADD("screen", RASTER) MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 0, 272, 264, 0, 224) - MCFG_SCREEN_UPDATE_DRIVER(warpwarp_state, screen_update_geebee) + MCFG_SCREEN_UPDATE_DRIVER(warpwarp_state, screen_update) MCFG_SCREEN_PALETTE("palette") MCFG_GFXDECODE_ADD("gfxdecode", "palette", 1k) @@ -770,7 +777,7 @@ static MACHINE_CONFIG_START( bombbee, warpwarp_state ) /* video hardware */ MCFG_SCREEN_ADD("screen", RASTER) MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 0, 272, 264, 0, 224) - MCFG_SCREEN_UPDATE_DRIVER(warpwarp_state, screen_update_geebee) + MCFG_SCREEN_UPDATE_DRIVER(warpwarp_state, screen_update) MCFG_SCREEN_PALETTE("palette") MCFG_GFXDECODE_ADD("gfxdecode", "palette", color) @@ -986,18 +993,18 @@ DRIVER_INIT_MEMBER(warpwarp_state,warpwarp) /* B & W games */ -GAMEL(1978, geebee, 0, geebee, geebee, warpwarp_state, geebee, ROT90, "Namco", "Gee Bee (Japan)", 0, layout_geebee ) -GAMEL(1978, geebeeb, geebee, geebee, geebeeb, warpwarp_state, geebee, ROT90, "Namco (F.lli Bertolino license)", "Gee Bee (Europe)", 0, layout_geebee ) // Fratelli Bertolino -GAMEL(1978, geebeeg, geebee, geebee, geebee, warpwarp_state, geebee, ROT90, "Namco (Gremlin license)", "Gee Bee (US)", 0, layout_geebee ) +GAMEL(1978, geebee, 0, geebee, geebee, warpwarp_state, geebee, ROT90, "Namco", "Gee Bee (Japan)", GAME_SUPPORTS_SAVE, layout_geebee ) +GAMEL(1978, geebeeb, geebee, geebee, geebeeb, warpwarp_state, geebee, ROT90, "Namco (F.lli Bertolino license)", "Gee Bee (Europe)", GAME_SUPPORTS_SAVE, layout_geebee ) // Fratelli Bertolino +GAMEL(1978, geebeeg, geebee, geebee, geebee, warpwarp_state, geebee, ROT90, "Namco (Gremlin license)", "Gee Bee (US)", GAME_SUPPORTS_SAVE, layout_geebee ) -GAMEL(1980, navarone, 0, navarone, navarone, warpwarp_state, navarone, ROT90, "Namco", "Navarone", GAME_IMPERFECT_SOUND, layout_navarone ) -GAME( 1980, kaitein, kaitei, navarone, kaitein, warpwarp_state, kaitein, ROT90, "K.K. Tokki (Namco license)", "Kaitei Takara Sagashi (Namco license)", 0 ) // pretty sure it didn't have a color overlay -GAME( 1980, kaitei, 0, navarone, kaitei, warpwarp_state, kaitei, ROT90, "K.K. Tokki", "Kaitei Takara Sagashi", 0 ) // " -GAME( 1980, sos, 0, navarone, sos, warpwarp_state, sos, ROT90, "Namco", "SOS", GAME_IMPERFECT_SOUND ) // developed by Shoei? +GAMEL(1980, navarone, 0, navarone, navarone, warpwarp_state, navarone, ROT90, "Namco", "Navarone", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE, layout_navarone ) +GAME( 1980, kaitein, kaitei, navarone, kaitein, warpwarp_state, kaitein, ROT90, "K.K. Tokki (Namco license)", "Kaitei Takara Sagashi (Namco license)", GAME_SUPPORTS_SAVE ) // pretty sure it didn't have a color overlay +GAME( 1980, kaitei, 0, navarone, kaitei, warpwarp_state, kaitei, ROT90, "K.K. Tokki", "Kaitei Takara Sagashi", GAME_SUPPORTS_SAVE ) // " +GAME( 1980, sos, 0, navarone, sos, warpwarp_state, sos, ROT90, "Namco", "SOS", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE ) // developed by Shoei? /* Color games */ -GAME( 1979, bombbee, 0, bombbee, bombbee, warpwarp_state, bombbee, ROT90, "Namco", "Bomb Bee", 0 ) -GAME( 1979, cutieq, 0, bombbee, cutieq, warpwarp_state, bombbee, ROT90, "Namco", "Cutie Q", 0 ) -GAME( 1981, warpwarp, 0, warpwarp, warpwarp, warpwarp_state, warpwarp, ROT90, "Namco", "Warp & Warp", 0 ) -GAME( 1981, warpwarpr, warpwarp, warpwarp, warpwarpr, warpwarp_state, warpwarp, ROT90, "Namco (Rock-Ola license)", "Warp Warp (Rock-Ola set 1)", 0 ) -GAME( 1981, warpwarpr2, warpwarp, warpwarp, warpwarpr, warpwarp_state, warpwarp, ROT90, "Namco (Rock-Ola license)", "Warp Warp (Rock-Ola set 2)", 0 ) +GAME( 1979, bombbee, 0, bombbee, bombbee, warpwarp_state, bombbee, ROT90, "Namco", "Bomb Bee", GAME_SUPPORTS_SAVE ) +GAME( 1979, cutieq, 0, bombbee, cutieq, warpwarp_state, bombbee, ROT90, "Namco", "Cutie Q", GAME_SUPPORTS_SAVE ) +GAME( 1981, warpwarp, 0, warpwarp, warpwarp, warpwarp_state, warpwarp, ROT90, "Namco", "Warp & Warp", GAME_SUPPORTS_SAVE ) +GAME( 1981, warpwarpr, warpwarp, warpwarp, warpwarpr, warpwarp_state, warpwarp, ROT90, "Namco (Rock-Ola license)", "Warp Warp (Rock-Ola set 1)", GAME_SUPPORTS_SAVE ) +GAME( 1981, warpwarpr2, warpwarp, warpwarp, warpwarpr, warpwarp_state, warpwarp, ROT90, "Namco (Rock-Ola license)", "Warp Warp (Rock-Ola set 2)", GAME_SUPPORTS_SAVE ) diff --git a/src/mame/includes/warpwarp.h b/src/mame/includes/warpwarp.h index da3eb75ac29..d50cf1cef5f 100644 --- a/src/mame/includes/warpwarp.h +++ b/src/mame/includes/warpwarp.h @@ -8,19 +8,20 @@ public: warpwarp_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag), m_maincpu(*this, "maincpu"), + m_gfxdecode(*this, "gfxdecode"), m_warpwarp_sound(*this, "warpwarp_custom"), m_geebee_sound(*this, "geebee_custom"), m_geebee_videoram(*this, "geebee_videoram"), - m_videoram(*this, "videoram"), - m_gfxdecode(*this, "gfxdecode") + m_videoram(*this, "videoram") { } required_device<cpu_device> m_maincpu; + required_device<gfxdecode_device> m_gfxdecode; optional_device<warpwarp_sound_device> m_warpwarp_sound; optional_device<geebee_sound_device> m_geebee_sound; optional_shared_ptr<UINT8> m_geebee_videoram; optional_shared_ptr<UINT8> m_videoram; - required_device<gfxdecode_device> m_gfxdecode; + int m_geebee_bgw; int m_ball_on; int m_ball_h; @@ -30,16 +31,22 @@ public: int m_ball_sizey; int m_handle_joystick; tilemap_t *m_bg_tilemap; - DECLARE_READ8_MEMBER(geebee_in_r); - DECLARE_WRITE8_MEMBER(geebee_out6_w); - DECLARE_WRITE8_MEMBER(geebee_out7_w); + + // warpwarp and bombbee DECLARE_READ8_MEMBER(warpwarp_sw_r); DECLARE_WRITE8_MEMBER(warpwarp_out0_w); DECLARE_WRITE8_MEMBER(warpwarp_out3_w); - DECLARE_WRITE8_MEMBER(geebee_videoram_w); DECLARE_WRITE8_MEMBER(warpwarp_videoram_w); DECLARE_READ8_MEMBER(warpwarp_dsw1_r); DECLARE_READ8_MEMBER(warpwarp_vol_r); + + //geebee and navarone + DECLARE_READ8_MEMBER(geebee_in_r); + DECLARE_WRITE8_MEMBER(geebee_out6_w); + DECLARE_WRITE8_MEMBER(geebee_out7_w); + DECLARE_WRITE8_MEMBER(geebee_videoram_w); + + virtual void machine_start(); DECLARE_DRIVER_INIT(navarone); DECLARE_DRIVER_INIT(geebee); DECLARE_DRIVER_INIT(kaitein); @@ -47,18 +54,21 @@ public: DECLARE_DRIVER_INIT(sos); DECLARE_DRIVER_INIT(kaitei); DECLARE_DRIVER_INIT(bombbee); - TILEMAP_MAPPER_MEMBER(tilemap_scan); - TILE_GET_INFO_MEMBER(geebee_get_tile_info); - TILE_GET_INFO_MEMBER(navarone_get_tile_info); - TILE_GET_INFO_MEMBER(warpwarp_get_tile_info); DECLARE_VIDEO_START(geebee); DECLARE_PALETTE_INIT(geebee); DECLARE_VIDEO_START(warpwarp); DECLARE_PALETTE_INIT(warpwarp); DECLARE_VIDEO_START(navarone); DECLARE_PALETTE_INIT(navarone); - UINT32 screen_update_geebee(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); - INTERRUPT_GEN_MEMBER(vblank_irq); - inline void geebee_plot(bitmap_ind16 &bitmap, const rectangle &cliprect, int x, int y, pen_t pen); + + TILEMAP_MAPPER_MEMBER(tilemap_scan); + TILE_GET_INFO_MEMBER(geebee_get_tile_info); + TILE_GET_INFO_MEMBER(navarone_get_tile_info); + TILE_GET_INFO_MEMBER(warpwarp_get_tile_info); + + UINT32 screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); + inline void plot(bitmap_ind16 &bitmap, const rectangle &cliprect, int x, int y, pen_t pen); void draw_ball(bitmap_ind16 &bitmap, const rectangle &cliprect,pen_t pen); + + INTERRUPT_GEN_MEMBER(vblank_irq); }; diff --git a/src/mame/video/warpwarp.c b/src/mame/video/warpwarp.c index ada74e22dab..de018da6033 100644 --- a/src/mame/video/warpwarp.c +++ b/src/mame/video/warpwarp.c @@ -2,7 +2,7 @@ // copyright-holders:Chris Hardy /*************************************************************************** - video.c + warpwarp.c Functions to emulate the video hardware of the machine. @@ -63,7 +63,6 @@ PALETTE_INIT_MEMBER(warpwarp_state,navarone) PALETTE_INIT_MEMBER(warpwarp_state,warpwarp) { - int i; static const int resistances_tiles_rg[] = { 1600, 820, 390 }; static const int resistances_tiles_b[] = { 820, 390 }; static const int resistance_ball[] = { 220 }; @@ -75,7 +74,7 @@ PALETTE_INIT_MEMBER(warpwarp_state,warpwarp) 2, resistances_tiles_b, weights_tiles_b, 150, 0, 1, resistance_ball, weight_ball, 150, 0); - for (i = 0; i < 0x100; i++) + for (int i = 0; i < 0x100; i++) { int bit0, bit1, bit2; int r,g,b; @@ -206,7 +205,7 @@ WRITE8_MEMBER(warpwarp_state::warpwarp_videoram_w) ***************************************************************************/ -inline void warpwarp_state::geebee_plot(bitmap_ind16 &bitmap, const rectangle &cliprect, int x, int y, pen_t pen) +inline void warpwarp_state::plot(bitmap_ind16 &bitmap, const rectangle &cliprect, int x, int y, pen_t pen) { if (cliprect.contains(x, y)) bitmap.pix16(y, x) = pen; @@ -229,11 +228,11 @@ void warpwarp_state::draw_ball(bitmap_ind16 &bitmap, const rectangle &cliprect,p for (i = m_ball_sizey;i > 0;i--) for (j = m_ball_sizex;j > 0;j--) - geebee_plot(bitmap, cliprect, x-j, y-i, pen); + plot(bitmap, cliprect, x-j, y-i, pen); } } -UINT32 warpwarp_state::screen_update_geebee(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) +UINT32 warpwarp_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) { m_bg_tilemap->draw(screen, bitmap, cliprect, 0,0); |