mirror of
https://github.com/holub/mame
synced 2025-07-05 18:08:04 +03:00
Checkpoint, nw
This commit is contained in:
parent
f101218036
commit
302337a294
@ -22,6 +22,8 @@ Notes:
|
||||
#include "emu.h"
|
||||
#include "cpu/m6809/m6809.h"
|
||||
#include "cpu/m68000/m68000.h"
|
||||
#include "machine/namcoio.h"
|
||||
#include "sound/namco.h"
|
||||
|
||||
#define MASTER_CLOCK XTAL_6_144MHz
|
||||
|
||||
@ -31,13 +33,25 @@ public:
|
||||
toypop_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_master_cpu(*this,"maincpu"),
|
||||
m_slave_cpu(*this, "slave"),
|
||||
m_sound_cpu(*this, "audiocpu"),
|
||||
m_namco15xx(*this, "namco"),
|
||||
m_namco58xx(*this, "58xx"),
|
||||
m_namco56xx_1(*this, "56xx_1"),
|
||||
m_namco56xx_2(*this, "56xx_2"),
|
||||
m_gfxdecode(*this, "gfxdecode"),
|
||||
m_fgvram(*this, "fgvram"),
|
||||
m_fgattr(*this, "fgattr")
|
||||
{ }
|
||||
|
||||
required_device<cpu_device> m_master_cpu;
|
||||
required_device<cpu_device> m_slave_cpu;
|
||||
required_device<cpu_device> m_sound_cpu;
|
||||
|
||||
required_device<namco_15xx_device> m_namco15xx;
|
||||
required_device<namco58xx_device> m_namco58xx;
|
||||
required_device<namco56xx_device> m_namco56xx_1;
|
||||
required_device<namco56xx_device> m_namco56xx_2;
|
||||
required_device<gfxdecode_device> m_gfxdecode;
|
||||
|
||||
required_shared_ptr<UINT8> m_fgvram;
|
||||
@ -48,7 +62,13 @@ public:
|
||||
DECLARE_READ8_MEMBER(irq_enable_r);
|
||||
INTERRUPT_GEN_MEMBER(master_vblank_irq);
|
||||
DECLARE_PALETTE_INIT(toypop);
|
||||
|
||||
DECLARE_READ8_MEMBER(dipA_l);
|
||||
DECLARE_READ8_MEMBER(dipA_h);
|
||||
DECLARE_READ8_MEMBER(dipB_l);
|
||||
DECLARE_READ8_MEMBER(dipB_h);
|
||||
//DECLARE_WRITE8_MEMBER(out_coin0);
|
||||
//DECLARE_WRITE8_MEMBER(out_coin1);
|
||||
DECLARE_WRITE8_MEMBER(flip);
|
||||
protected:
|
||||
// driver_device overrides
|
||||
// virtual void machine_start() override;
|
||||
@ -158,24 +178,233 @@ READ8_MEMBER(toypop_state::irq_enable_r)
|
||||
return 0;
|
||||
}
|
||||
|
||||
READ8_MEMBER(toypop_state::dipA_l){ return ioport("DSW1")->read(); } // dips A
|
||||
READ8_MEMBER(toypop_state::dipA_h){ return ioport("DSW1")->read() >> 4; } // dips A
|
||||
READ8_MEMBER(toypop_state::dipB_l){ return ioport("DSW2")->read(); } // dips B
|
||||
READ8_MEMBER(toypop_state::dipB_h){ return ioport("DSW2")->read() >> 4; } // dips B
|
||||
|
||||
WRITE8_MEMBER(toypop_state::flip)
|
||||
{
|
||||
flip_screen_set(data & 1);
|
||||
}
|
||||
|
||||
static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8, toypop_state )
|
||||
AM_RANGE(0x0000, 0x03ff) AM_RAM AM_SHARE("fgvram")
|
||||
AM_RANGE(0x0400, 0x07ff) AM_RAM AM_SHARE("fgattr")
|
||||
AM_RANGE(0x0800, 0x1fff) AM_RAM
|
||||
AM_RANGE(0x2800, 0x2fff) AM_RAM
|
||||
// 0x6000 - 0x603f namco i/o
|
||||
AM_RANGE(0x6800, 0x6bff) AM_RAM // shared ram device
|
||||
// TODO: 0x6xxx-0x7xxx seems to be programmable somehow (PAL?)
|
||||
AM_RANGE(0x6000, 0x600f) AM_DEVREADWRITE("58xx", namco58xx_device, read, write)
|
||||
AM_RANGE(0x6010, 0x601f) AM_DEVREADWRITE("56xx_1", namco56xx_device, read, write)
|
||||
AM_RANGE(0x6020, 0x602f) AM_DEVREADWRITE("56xx_2", namco56xx_device, read, write)
|
||||
AM_RANGE(0x6800, 0x6bff) AM_DEVREADWRITE("namco", namco_15xx_device, sharedram_r, sharedram_w)
|
||||
AM_RANGE(0x7000, 0x7000) AM_READ(irq_enable_r)
|
||||
|
||||
// 0x8000 m68k irq
|
||||
// 0x9000 sound irq
|
||||
// 0xa000 paletteram
|
||||
AM_RANGE(0x8000, 0xffff) AM_ROM AM_REGION("master_rom",0)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( slave_map, AS_PROGRAM, 16, toypop_state )
|
||||
AM_RANGE(0x000000, 0x007fff) AM_ROM AM_REGION("slave_rom", 0)
|
||||
AM_RANGE(0x080000, 0x0bffff) AM_RAM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( sound_map, AS_PROGRAM, 8, toypop_state )
|
||||
AM_RANGE(0x0000, 0x03ff) AM_DEVREADWRITE("namco", namco_15xx_device, sharedram_r, sharedram_w)
|
||||
AM_RANGE(0xe000, 0xffff) AM_ROM AM_REGION("sound_rom", 0)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static INPUT_PORTS_START( liblrabl )
|
||||
/* The inputs are not memory mapped, they are handled by three I/O chips. */
|
||||
PORT_START("P1_RIGHT") /* 58XX #0 pins 22-29 */
|
||||
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_UP ) PORT_8WAY
|
||||
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_RIGHT ) PORT_8WAY
|
||||
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_DOWN ) PORT_8WAY
|
||||
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_LEFT ) PORT_8WAY
|
||||
|
||||
PORT_START("P2_RIGHT") /* 58XX #0 pins 22-29 */
|
||||
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_UP ) PORT_8WAY PORT_COCKTAIL
|
||||
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_RIGHT ) PORT_8WAY PORT_COCKTAIL
|
||||
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_DOWN ) PORT_8WAY PORT_COCKTAIL
|
||||
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_LEFT ) PORT_8WAY PORT_COCKTAIL
|
||||
|
||||
PORT_START("P1_LEFT") /* 56XX #2 pins 22-29 */
|
||||
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_UP ) PORT_8WAY
|
||||
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_RIGHT ) PORT_8WAY
|
||||
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_DOWN ) PORT_8WAY
|
||||
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_LEFT ) PORT_8WAY
|
||||
|
||||
PORT_START("P2_LEFT") /* 56XX #2 pins 22-29 */
|
||||
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_UP ) PORT_8WAY PORT_COCKTAIL
|
||||
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_RIGHT ) PORT_8WAY PORT_COCKTAIL
|
||||
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_DOWN ) PORT_8WAY PORT_COCKTAIL
|
||||
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_LEFT ) PORT_8WAY PORT_COCKTAIL
|
||||
|
||||
PORT_START("BUTTONS") /* 58XX #0 pins 30-33 and 38-41 */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 )
|
||||
|
||||
PORT_START("COINS") /* 58XX #0 pins 30-33 and 38-41 */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 )
|
||||
|
||||
PORT_START("DSW1") /* 56XX #1 pins 22-29 */
|
||||
/* default setting: all OFF */
|
||||
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPLOCATION("SWA:8,7")
|
||||
PORT_DIPSETTING( 0x02, "1" )
|
||||
PORT_DIPSETTING( 0x00, "2" )
|
||||
PORT_DIPSETTING( 0x03, "3" )
|
||||
PORT_DIPSETTING( 0x01, "5" )
|
||||
PORT_DIPNAME( 0x1c, 0x1c, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SWA:6,5,4")
|
||||
// bonus scores for common
|
||||
PORT_DIPSETTING( 0x1c, "40k 120k 200k 400k 600k 1m" )
|
||||
PORT_DIPSETTING( 0x0c, "40k 140k 250k 400k 700k 1m" )
|
||||
// bonus scores for 1, 2 or 3 lives
|
||||
PORT_DIPSETTING( 0x14, "50k 150k 300k 500k 700k 1m" ) PORT_CONDITION("DSW1", 0x03, NOTEQUALS, 0x01)
|
||||
PORT_DIPSETTING( 0x04, "40k 120k and every 120k" ) PORT_CONDITION("DSW1", 0x03, NOTEQUALS, 0x01)
|
||||
PORT_DIPSETTING( 0x18, "40k 150k and every 150k" ) PORT_CONDITION("DSW1", 0x03, NOTEQUALS, 0x01)
|
||||
PORT_DIPSETTING( 0x08, "50k 150k 300k" ) PORT_CONDITION("DSW1", 0x03, NOTEQUALS, 0x01)
|
||||
PORT_DIPSETTING( 0x10, "40k 120k 200k" ) PORT_CONDITION("DSW1", 0x03, NOTEQUALS, 0x01)
|
||||
// bonus scores for 5 lives
|
||||
PORT_DIPSETTING( 0x14, "40k 120k" ) PORT_CONDITION("DSW1", 0x03, EQUALS, 0x01)
|
||||
PORT_DIPSETTING( 0x04, "50k 150k" ) PORT_CONDITION("DSW1", 0x03, EQUALS, 0x01)
|
||||
PORT_DIPSETTING( 0x18, "50k 150k and every 150k" ) PORT_CONDITION("DSW1", 0x03, EQUALS, 0x01)
|
||||
PORT_DIPSETTING( 0x08, "60k 200k and every 200k" ) PORT_CONDITION("DSW1", 0x03, EQUALS, 0x01)
|
||||
PORT_DIPSETTING( 0x10, "50k" ) PORT_CONDITION("DSW1", 0x03, EQUALS, 0x01)
|
||||
// bonus scores for common
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( None ) )
|
||||
PORT_DIPNAME( 0xe0, 0xe0, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SWA:3,2,1")
|
||||
PORT_DIPSETTING( 0x80, DEF_STR( 3C_1C ) )
|
||||
PORT_DIPSETTING( 0xc0, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( 3C_2C ) )
|
||||
PORT_DIPSETTING( 0xe0, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( 2C_3C ) )
|
||||
PORT_DIPSETTING( 0x60, DEF_STR( 1C_2C ) )
|
||||
PORT_DIPSETTING( 0xa0, DEF_STR( 1C_3C ) )
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( 1C_6C ) )
|
||||
|
||||
PORT_START("DSW2") /* 56XX #1 pins 30-33 and 38-41 */
|
||||
PORT_DIPNAME( 0x01, 0x01, "Freeze" ) PORT_DIPLOCATION("SWB:8")
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x02, 0x02, "Rack Test" ) PORT_DIPLOCATION("SWB:7")
|
||||
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SWB:6")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x18, 0x18, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SWB:5,4")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING( 0x18, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( 1C_5C ) )
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( 1C_7C ) )
|
||||
PORT_DIPNAME( 0x20, 0x20, "Practice" ) PORT_DIPLOCATION("SWB:3")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SWB:2,1")
|
||||
PORT_DIPSETTING( 0xc0, "A" )
|
||||
PORT_DIPSETTING( 0x40, "B" )
|
||||
PORT_DIPSETTING( 0x80, "C" )
|
||||
PORT_DIPSETTING( 0x00, "D" )
|
||||
|
||||
PORT_START("SERVICE") /* 56XX #2 pins 30-33 */
|
||||
PORT_BIT( 0x03, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Cabinet ) )
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( Upright ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) )
|
||||
PORT_SERVICE( 0x08, IP_ACTIVE_LOW )
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( toypop )
|
||||
/* The inputs are not memory mapped, they are handled by three I/O chips. */
|
||||
PORT_START("P1_RIGHT") /* 58XX #0 pins 22-29 */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
|
||||
|
||||
PORT_START("P2_RIGHT") /* 58XX #0 pins 22-29 */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_PLAYER(2)
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(2)
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_PLAYER(2)
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(2)
|
||||
|
||||
PORT_START("BUTTONS") /* 58XX #0 pins 30-33 and 38-41 */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 )
|
||||
|
||||
PORT_START("COINS") /* 58XX #0 pins 30-33 and 38-41 */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 )
|
||||
|
||||
PORT_START("DSW1") /* 56XX #1 pins 22-29 */
|
||||
/* default setting: all OFF */
|
||||
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPLOCATION("SWA:8,7")
|
||||
PORT_DIPSETTING( 0x02, "1" )
|
||||
PORT_DIPSETTING( 0x01, "2" )
|
||||
PORT_DIPSETTING( 0x03, "3" )
|
||||
PORT_DIPSETTING( 0x00, "5" )
|
||||
PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SWA:6,5")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) )
|
||||
PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) )
|
||||
PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SWA:4,3")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) )
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( 1C_2C ) )
|
||||
PORT_DIPNAME( 0x40, 0x00, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SWA:2")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( On ) )
|
||||
PORT_SERVICE_DIPLOC( 0x80, 0x80, "SWA:1" )
|
||||
|
||||
PORT_START("DSW2") /* 56XX #1 pins 30-33 and 38-41 */
|
||||
PORT_DIPNAME( 0x01, 0x01, "Freeze" ) PORT_DIPLOCATION("SWB:8")
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Level_Select ) ) PORT_DIPLOCATION("SWB:7")
|
||||
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x04, 0x04, "2 Players Game" ) PORT_DIPLOCATION("SWB:6")
|
||||
PORT_DIPSETTING( 0x00, "1 Credit" )
|
||||
PORT_DIPSETTING( 0x04, "2 Credits" )
|
||||
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SWB:5")
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x08, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x10, 0x10, "Entering" ) PORT_DIPLOCATION("SWB:4") // buy in
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x60, 0x60, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SWB:3,2")
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( Easy ) )
|
||||
PORT_DIPSETTING( 0x60, DEF_STR( Normal ) )
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( Hard ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( Very_Hard ) )
|
||||
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SWB:1")
|
||||
PORT_DIPSETTING( 0x80, "Every 15000 points" )
|
||||
PORT_DIPSETTING( 0x00, "Every 20000 points" )
|
||||
|
||||
PORT_START("P1_LEFT") /* 56XX #2 pins 22-29 */
|
||||
PORT_BIT(0x0f, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
|
||||
PORT_START("P2_LEFT") /* 56XX #2 pins 22-29 */
|
||||
PORT_BIT(0x0f, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
|
||||
PORT_START("SERVICE") /* 56XX #2 pins 30-33 */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED ) // would be Cabinet, but this game has no cocktail mode
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE ) // service mode again
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
@ -224,7 +453,6 @@ static MACHINE_CONFIG_START( liblrabl, toypop_state )
|
||||
MCFG_CPU_PROGRAM_MAP(master_map)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", toypop_state, master_vblank_irq)
|
||||
|
||||
#if 0
|
||||
MCFG_CPU_ADD("slave", M68000, MASTER_CLOCK)
|
||||
MCFG_CPU_PROGRAM_MAP(slave_map)
|
||||
|
||||
@ -233,7 +461,24 @@ static MACHINE_CONFIG_START( liblrabl, toypop_state )
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
MCFG_DEVICE_ADD("58xx", NAMCO58XX, 0)
|
||||
MCFG_NAMCO58XX_IN_0_CB(IOPORT("COINS"))
|
||||
MCFG_NAMCO58XX_IN_1_CB(IOPORT("P1_RIGHT"))
|
||||
MCFG_NAMCO58XX_IN_2_CB(IOPORT("P2_RIGHT"))
|
||||
MCFG_NAMCO58XX_IN_3_CB(IOPORT("BUTTONS"))
|
||||
|
||||
MCFG_DEVICE_ADD("56xx_1", NAMCO56XX, 0)
|
||||
MCFG_NAMCO56XX_IN_0_CB(READ8(toypop_state, dipA_h))
|
||||
MCFG_NAMCO56XX_IN_1_CB(READ8(toypop_state, dipB_l))
|
||||
MCFG_NAMCO56XX_IN_2_CB(READ8(toypop_state, dipB_h))
|
||||
MCFG_NAMCO56XX_IN_3_CB(READ8(toypop_state, dipA_l))
|
||||
MCFG_NAMCO56XX_OUT_0_CB(WRITE8(toypop_state, flip))
|
||||
|
||||
MCFG_DEVICE_ADD("56xx_2", NAMCO56XX, 0)
|
||||
MCFG_NAMCO56XX_IN_1_CB(IOPORT("P1_LEFT"))
|
||||
MCFG_NAMCO56XX_IN_2_CB(IOPORT("P2_LEFT"))
|
||||
MCFG_NAMCO56XX_IN_3_CB(IOPORT("SERVICE"))
|
||||
|
||||
MCFG_SCREEN_ADD("screen", RASTER)
|
||||
MCFG_SCREEN_REFRESH_RATE(60.606060)
|
||||
@ -250,7 +495,9 @@ static MACHINE_CONFIG_START( liblrabl, toypop_state )
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
||||
MCFG_SOUND_ADD("namco", NAMCO_15XX, 24000)
|
||||
MCFG_NAMCO_AUDIO_VOICES(8)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( toypop, liblrabl )
|
||||
@ -316,4 +563,4 @@ ROM_START( toypop )
|
||||
ROM_END
|
||||
|
||||
GAME( 1983, liblrabl, 0, liblrabl, liblrabl, driver_device, 0, ROT0, "Namco", "Libble Rabble", MACHINE_IS_SKELETON )
|
||||
GAME( 1986, toypop, 0, toypop, toypop, driver_device, 0, ROT0, "Namco", "Toypop", MACHINE_IS_SKELETON )
|
||||
GAME( 1986, toypop, 0, toypop, toypop, driver_device, 0, ROT0, "Namco", "Toypop", MACHINE_IS_SKELETON )
|
||||
|
Loading…
Reference in New Issue
Block a user