summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/boogwing.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/boogwing.cpp')
-rw-r--r--src/mame/drivers/boogwing.cpp92
1 files changed, 46 insertions, 46 deletions
diff --git a/src/mame/drivers/boogwing.cpp b/src/mame/drivers/boogwing.cpp
index f1f6ba71179..0241777f905 100644
--- a/src/mame/drivers/boogwing.cpp
+++ b/src/mame/drivers/boogwing.cpp
@@ -361,53 +361,53 @@ MACHINE_CONFIG_START(boogwing_state::boogwing)
DECO_ACE(config, m_deco_ace, 0);
- MCFG_DEVICE_ADD("tilegen1", DECO16IC, 0)
- MCFG_DECO16IC_SPLIT(0)
- MCFG_DECO16IC_PF1_SIZE(DECO_64x32)
- MCFG_DECO16IC_PF2_SIZE(DECO_64x32)
- MCFG_DECO16IC_PF1_TRANS_MASK(0x0f)
- MCFG_DECO16IC_PF2_TRANS_MASK(0x1f) // pf2 has 5bpp graphics
- MCFG_DECO16IC_PF1_COL_BANK(0)
- MCFG_DECO16IC_PF2_COL_BANK(0) // pf2 is non default
- MCFG_DECO16IC_PF1_COL_MASK(0x0f)
- MCFG_DECO16IC_PF2_COL_MASK(0x0f)
+ DECO16IC(config, m_deco_tilegen[0], 0);
+ m_deco_tilegen[0]->set_split(0);
+ m_deco_tilegen[0]->set_pf1_size(DECO_64x32);
+ m_deco_tilegen[0]->set_pf2_size(DECO_64x32);
+ m_deco_tilegen[0]->set_pf1_trans_mask(0x0f);
+ m_deco_tilegen[0]->set_pf2_trans_mask(0x1f); // pf2 has 5bpp graphics
+ m_deco_tilegen[0]->set_pf1_col_bank(0);
+ m_deco_tilegen[0]->set_pf2_col_bank(0); // pf2 is non default
+ m_deco_tilegen[0]->set_pf1_col_mask(0x0f);
+ m_deco_tilegen[0]->set_pf2_col_mask(0x0f);
// no bank1 callback
- MCFG_DECO16IC_BANK2_CB(boogwing_state, bank_callback)
- MCFG_DECO16IC_PF12_8X8_BANK(0)
- MCFG_DECO16IC_PF12_16X16_BANK(1)
- MCFG_DECO16IC_GFXDECODE("gfxdecode")
-
- MCFG_DEVICE_ADD("tilegen2", DECO16IC, 0)
- MCFG_DECO16IC_SPLIT(0)
- MCFG_DECO16IC_PF1_SIZE(DECO_64x32)
- MCFG_DECO16IC_PF2_SIZE(DECO_64x32)
- MCFG_DECO16IC_PF1_TRANS_MASK(0x0f)
- MCFG_DECO16IC_PF2_TRANS_MASK(0x0f)
- MCFG_DECO16IC_PF1_COL_BANK(0)
- MCFG_DECO16IC_PF2_COL_BANK(16)
- MCFG_DECO16IC_PF1_COL_MASK(0x0f)
- MCFG_DECO16IC_PF2_COL_MASK(0x0f)
- MCFG_DECO16IC_BANK1_CB(boogwing_state, bank_callback2)
- MCFG_DECO16IC_BANK2_CB(boogwing_state, bank_callback2)
- MCFG_DECO16IC_PF12_8X8_BANK(0)
- MCFG_DECO16IC_PF12_16X16_BANK(2)
- MCFG_DECO16IC_GFXDECODE("gfxdecode")
-
- MCFG_DEVICE_ADD("spritegen1", DECO_SPRITE, 0)
- MCFG_DECO_SPRITE_GFX_REGION(3)
- MCFG_DECO_SPRITE_GFXDECODE("gfxdecode")
-
- MCFG_DEVICE_ADD("spritegen2", DECO_SPRITE, 0)
- MCFG_DECO_SPRITE_GFX_REGION(4)
- MCFG_DECO_SPRITE_GFXDECODE("gfxdecode")
-
- MCFG_DEVICE_ADD("ioprot", DECO104PROT, 0)
- MCFG_DECO146_IN_PORTA_CB(IOPORT("INPUTS"))
- MCFG_DECO146_IN_PORTB_CB(IOPORT("SYSTEM"))
- MCFG_DECO146_IN_PORTC_CB(IOPORT("DSW"))
- MCFG_DECO146_SOUNDLATCH_IRQ_CB(INPUTLINE("audiocpu", 0))
- MCFG_DECO146_SET_INTERFACE_SCRAMBLE_REVERSE
- MCFG_DECO146_SET_USE_MAGIC_ADDRESS_XOR
+ m_deco_tilegen[0]->set_bank2_callback(FUNC(boogwing_state::bank_callback), this);
+ m_deco_tilegen[0]->set_pf12_8x8_bank(0);
+ m_deco_tilegen[0]->set_pf12_16x16_bank(1);
+ m_deco_tilegen[0]->set_gfxdecode_tag("gfxdecode");
+
+ DECO16IC(config, m_deco_tilegen[1], 0);
+ m_deco_tilegen[1]->set_split(0);
+ m_deco_tilegen[1]->set_pf1_size(DECO_64x32);
+ m_deco_tilegen[1]->set_pf2_size(DECO_64x32);
+ m_deco_tilegen[1]->set_pf1_trans_mask(0x0f);
+ m_deco_tilegen[1]->set_pf2_trans_mask(0x0f);
+ m_deco_tilegen[1]->set_pf1_col_bank(0);
+ m_deco_tilegen[1]->set_pf2_col_bank(16);
+ m_deco_tilegen[1]->set_pf1_col_mask(0x0f);
+ m_deco_tilegen[1]->set_pf2_col_mask(0x0f);
+ m_deco_tilegen[1]->set_bank1_callback(FUNC(boogwing_state::bank_callback2), this);
+ m_deco_tilegen[1]->set_bank2_callback(FUNC(boogwing_state::bank_callback2), this);
+ m_deco_tilegen[1]->set_pf12_8x8_bank(0);
+ m_deco_tilegen[1]->set_pf12_16x16_bank(2);
+ m_deco_tilegen[1]->set_gfxdecode_tag("gfxdecode");
+
+ DECO_SPRITE(config, m_sprgen[0], 0);
+ m_sprgen[0]->set_gfx_region(3);
+ m_sprgen[0]->set_gfxdecode_tag("gfxdecode");
+
+ DECO_SPRITE(config, m_sprgen[1], 0);
+ m_sprgen[1]->set_gfx_region(4);
+ m_sprgen[1]->set_gfxdecode_tag("gfxdecode");
+
+ DECO104PROT(config, m_deco104, 0);
+ m_deco104->port_a_cb().set_ioport("INPUTS");
+ m_deco104->port_b_cb().set_ioport("SYSTEM");
+ m_deco104->port_c_cb().set_ioport("DSW");
+ m_deco104->soundlatch_irq_cb().set_inputline(m_audiocpu, 0);
+ m_deco104->set_interface_scramble_reverse();
+ m_deco104->set_use_magic_read_address_xor(true);
/* sound hardware */
SPEAKER(config, "lspeaker").front_left();