diff options
Diffstat (limited to 'src/mame/drivers/murogmbl.cpp')
-rw-r--r-- | src/mame/drivers/murogmbl.cpp | 177 |
1 files changed, 1 insertions, 176 deletions
diff --git a/src/mame/drivers/murogmbl.cpp b/src/mame/drivers/murogmbl.cpp index 6b5fd170e6a..931edbc6ae7 100644 --- a/src/mame/drivers/murogmbl.cpp +++ b/src/mame/drivers/murogmbl.cpp @@ -1,7 +1,6 @@ // license:BSD-3-Clause // copyright-holders:Roberto Zandona' -/* Unknown - Poker (morugem bootleg) - Unknown - Slot +/* Unknown - Poker (morugem driver by Roberto Zandona' thanks to Angelo Salese for some precious advice @@ -66,27 +65,6 @@ public: uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); }; -class slotunbl_state : public driver_device -{ -public: - slotunbl_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_palette(*this, "palette"), - m_video(*this, "video") { } - - required_device<cpu_device> m_maincpu; - required_device<gfxdecode_device> m_gfxdecode; - required_device<palette_device> m_palette; - - required_shared_ptr<uint8_t> m_video; - - virtual void video_start() override; - DECLARE_PALETTE_INIT(slotunbl); - - uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); -}; PALETTE_INIT_MEMBER(murogmbl_state, murogmbl) { @@ -114,32 +92,6 @@ PALETTE_INIT_MEMBER(murogmbl_state, murogmbl) } } -PALETTE_INIT_MEMBER(slotunbl_state, slotunbl) -{ - const uint8_t *color_prom = memregion("proms")->base(); - int bit0, bit1, bit2 , r, g, b; - int i; - - for (i = 0; i < 0x20; ++i) - { - bit0 = (color_prom[0] >> 0) & 0x01; - bit1 = (color_prom[0] >> 1) & 0x01; - bit2 = (color_prom[0] >> 2) & 0x01; - r = 0x21 * bit0 + 0x47 * bit1 + 0x97 * bit2; - bit0 = (color_prom[0] >> 3) & 0x01; - bit1 = (color_prom[0] >> 4) & 0x01; - bit2 = (color_prom[0] >> 5) & 0x01; - g = 0x21 * bit0 + 0x47 * bit1 + 0x97 * bit2; - bit0 = 0; - bit1 = (color_prom[0] >> 6) & 0x01; - bit2 = (color_prom[0] >> 7) & 0x01; - b = 0x21 * bit0 + 0x47 * bit1 + 0x97 * bit2; - - palette.set_pen_color(i, rgb_t(r, g, b)); - color_prom++; - } -} - static ADDRESS_MAP_START( murogmbl_map, AS_PROGRAM, 8, murogmbl_state ) AM_RANGE(0x0000, 0x1fFf) AM_ROM AM_RANGE(0x4000, 0x43ff) AM_RAM @@ -152,26 +104,10 @@ static ADDRESS_MAP_START( murogmbl_map, AS_PROGRAM, 8, murogmbl_state ) AM_RANGE(0x7800, 0x7800) AM_READNOP AM_DEVWRITE("dac", dac_byte_interface, write) /* read is always discarded */ ADDRESS_MAP_END -static ADDRESS_MAP_START( slotunbl_map, AS_PROGRAM, 8, slotunbl_state ) - AM_RANGE(0x0000, 0x1fFf) AM_ROM - AM_RANGE(0x4000, 0x43ff) AM_RAM - AM_RANGE(0x4800, 0x4fff) AM_RAM - AM_RANGE(0x5000, 0x53ff) AM_RAM AM_SHARE("video") -// AM_RANGE(0x5400, 0x5fff) AM_RAM - AM_RANGE(0x6000, 0x6000) AM_READ_PORT("IN0") - AM_RANGE(0x6800, 0x6800) AM_READ_PORT("DSW") - AM_RANGE(0x7000, 0x7000) AM_READ_PORT("IN1") - AM_RANGE(0x7800, 0x7800) AM_READNOP AM_DEVWRITE("dac", dac_byte_interface, write) /* read is always discarded */ -ADDRESS_MAP_END - void murogmbl_state::video_start() { } -void slotunbl_state::video_start() -{ -} - uint32_t murogmbl_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) { gfx_element *gfx = m_gfxdecode->gfx(0); @@ -192,26 +128,6 @@ uint32_t murogmbl_state::screen_update(screen_device &screen, bitmap_ind16 &bitm return 0; } -uint32_t slotunbl_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) -{ - gfx_element *gfx = m_gfxdecode->gfx(0); - int count = 0; - - int y, x; - - for (y = 0; y < 32; y++) - { - for (x = 0; x < 32; x++) - { - int tile = m_video[count]; - gfx->opaque(bitmap,cliprect, tile, 0, 0, 0, x * 8, y * 8); - - count++; - } - } - return 0; -} - static INPUT_PORTS_START( murogmbl ) PORT_START("IN0") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_POKER_CANCEL ) PORT_NAME("Clear") @@ -260,54 +176,6 @@ static INPUT_PORTS_START( murogmbl ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) INPUT_PORTS_END -static INPUT_PORTS_START( slotunbl ) - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_POKER_CANCEL ) PORT_NAME("Clear") - PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_GAMBLE_BET ) PORT_NAME("Replay") - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_GAMBLE_DEAL ) - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_POKER_HOLD5 ) - PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_NAME("Coin clear") PORT_CODE(KEYCODE_S) - PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_NAME("Coin 1") - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_COIN2 ) PORT_NAME("Coin 2") - - PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_POKER_HOLD1 ) - PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_POKER_HOLD2 ) - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_POKER_HOLD3 ) - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_POKER_HOLD4 ) - PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - - PORT_START("DSW") - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Coin_B ) ) - PORT_DIPSETTING( 0x08, "10 credits" ) - PORT_DIPSETTING( 0x00, "5 credits" ) - PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) -INPUT_PORTS_END - static const gfx_layout layout8x8x2 = { 8,8, @@ -325,10 +193,6 @@ static GFXDECODE_START( murogmbl ) GFXDECODE_ENTRY( "gfx1", 0, layout8x8x2, 0x0, 1 ) GFXDECODE_END -static GFXDECODE_START( slotunbl ) - GFXDECODE_ENTRY( "gfx1", 0, layout8x8x2, 0x0, 1 ) -GFXDECODE_END - static MACHINE_CONFIG_START( murogmbl ) /* basic machine hardware */ MCFG_CPU_ADD("maincpu", Z80, 1000000) /* Z80? */ @@ -355,32 +219,8 @@ static MACHINE_CONFIG_START( murogmbl ) MCFG_SOUND_ROUTE_EX(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE_EX(0, "dac", -1.0, DAC_VREF_NEG_INPUT) MACHINE_CONFIG_END -static MACHINE_CONFIG_START( slotunbl ) - /* basic machine hardware */ - MCFG_CPU_ADD("maincpu", Z80, 1000000) /* Z80? */ - MCFG_CPU_PROGRAM_MAP(slotunbl_map) - - MCFG_GFXDECODE_ADD("gfxdecode", "palette", slotunbl) - /* video hardware */ - MCFG_SCREEN_ADD("screen", RASTER) - MCFG_SCREEN_REFRESH_RATE(60) - MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) - MCFG_SCREEN_SIZE(64*8, 32*8) - MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 32*8-1) - MCFG_SCREEN_UPDATE_DRIVER(slotunbl_state, screen_update) - MCFG_SCREEN_PALETTE("palette") - - MCFG_PALETTE_ADD("palette", 0x100) - MCFG_PALETTE_INIT_OWNER(slotunbl_state, slotunbl) - - MCFG_SPEAKER_STANDARD_MONO("speaker") - MCFG_SOUND_ADD("dac", DAC_8BIT_R2R, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.5) // unknown DAC - MCFG_DEVICE_ADD("vref", VOLTAGE_REGULATOR, 0) MCFG_VOLTAGE_REGULATOR_OUTPUT(5.0) - MCFG_SOUND_ROUTE_EX(0, "dac", 1.0, DAC_VREF_POS_INPUT) MCFG_SOUND_ROUTE_EX(0, "dac", -1.0, DAC_VREF_NEG_INPUT) -MACHINE_CONFIG_END - ROM_START(murogmbl) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD("2532.5e", 0x0000, 0x1000, CRC(093d4560) SHA1(d5401b5f7a2ebe5099fefc5b09f8710886e243b2) ) @@ -394,19 +234,4 @@ ROM_START(murogmbl) ROM_LOAD( "74s288.a8", 0x0000, 0x0020, CRC(fc35201c) SHA1(4549e228c48992e0d10957f029b89a547392e72b) ) ROM_END -ROM_START(slotunbl) - ROM_REGION( 0x10000, "maincpu", 0 ) - ROM_LOAD("2532.e7", 0x0000, 0x1000, CRC(031929a7) SHA1(a140e1450b6196bbe9f130e7f3b7cfe2f876b86d) ) - ROM_LOAD("2532.e7", 0x1000, 0x1000, CRC(031929a7) SHA1(a140e1450b6196bbe9f130e7f3b7cfe2f876b86d) ) - - ROM_REGION( 0x1000, "gfx1", 0 ) - ROM_LOAD("2516.d3", 0x0000, 0x0800, CRC(708764d8) SHA1(f914ae3318558c2530f007a427ec98a529984bb4) ) - ROM_LOAD("2516.d4", 0x0800, 0x0800, CRC(2cffb600) SHA1(d7c8ea6395e9cba43b9fe0cb9ddf45b96c442544) ) - - ROM_REGION( 0x0020, "proms", 0 ) - ROM_LOAD( "74s288.a8", 0x0000, 0x0020, NO_DUMP ) -ROM_END - GAME( 1982, murogmbl, murogem, murogmbl, murogmbl, murogmbl_state, 0, ROT0, "bootleg?", "Muroge Monaco (bootleg?)", MACHINE_NO_SOUND | MACHINE_SUPPORTS_SAVE ) - -GAME( 1982, slotunbl, 0, slotunbl, slotunbl, slotunbl_state, 0, ROT0, "bootleg?", "Slot (unknown bootleg?)", MACHINE_NO_SOUND | MACHINE_SUPPORTS_SAVE ) |