summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/includes/djboy.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/includes/djboy.h')
-rw-r--r--src/mame/includes/djboy.h77
1 files changed, 44 insertions, 33 deletions
diff --git a/src/mame/includes/djboy.h b/src/mame/includes/djboy.h
index ad61893d613..c61cce140a6 100644
--- a/src/mame/includes/djboy.h
+++ b/src/mame/includes/djboy.h
@@ -16,18 +16,27 @@ class djboy_state : public driver_device
{
public:
djboy_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
- m_videoram(*this, "videoram"),
- m_paletteram(*this, "paletteram"),
- m_maincpu(*this, "maincpu"),
- m_cpu1(*this, "cpu1"),
- m_cpu2(*this, "cpu2"),
- m_beast(*this, "beast"),
- m_pandora(*this, "pandora"),
- m_gfxdecode(*this, "gfxdecode"),
- m_palette(*this, "palette"),
- m_soundlatch(*this, "soundlatch")
- { }
+ : driver_device(mconfig, type, tag)
+ , m_videoram(*this, "videoram")
+ , m_paletteram(*this, "paletteram")
+ , m_masterbank(*this, "master_bank")
+ , m_slavebank(*this, "slave_bank")
+ , m_soundbank(*this, "sound_bank")
+ , m_masterbank_l(*this, "master_bank_l")
+ , m_port_in(*this, "IN%u", 0)
+ , m_port_dsw(*this, "DSW%u", 1)
+ , m_mastercpu(*this, "mastercpu")
+ , m_slavecpu(*this, "slavecpu")
+ , m_soundcpu(*this, "soundcpu")
+ , m_beast(*this, "beast")
+ , m_pandora(*this, "pandora")
+ , m_gfxdecode(*this, "gfxdecode")
+ , m_palette(*this, "palette")
+ , m_soundlatch(*this, "soundlatch")
+ , m_slavelatch(*this, "slavelatch")
+ , m_beastlatch(*this, "beastlatch")
+ {
+ }
/* memory pointers */
required_shared_ptr<uint8_t> m_videoram;
@@ -35,6 +44,14 @@ public:
/* ROM banking */
uint8_t m_bankxor;
+
+ required_memory_bank m_masterbank;
+ required_memory_bank m_slavebank;
+ required_memory_bank m_soundbank;
+ required_memory_bank m_masterbank_l;
+
+ required_ioport_array<3> m_port_in;
+ required_ioport_array<2> m_port_dsw;
/* video-related */
tilemap_t *m_background;
@@ -43,35 +60,29 @@ public:
uint8_t m_scrolly;
/* Kaneko BEAST state */
- uint8_t m_data_to_beast;
- uint8_t m_data_to_z80;
- uint8_t m_beast_to_z80_full;
- uint8_t m_z80_to_beast_full;
- uint8_t m_beast_int0_l;
uint8_t m_beast_p0;
uint8_t m_beast_p1;
uint8_t m_beast_p2;
uint8_t m_beast_p3;
/* devices */
- required_device<cpu_device> m_maincpu;
- required_device<cpu_device> m_cpu1;
- required_device<cpu_device> m_cpu2;
+ required_device<cpu_device> m_mastercpu;
+ required_device<cpu_device> m_slavecpu;
+ required_device<cpu_device> m_soundcpu;
required_device<cpu_device> m_beast;
required_device<kaneko_pandora_device> m_pandora;
required_device<gfxdecode_device> m_gfxdecode;
required_device<palette_device> m_palette;
required_device<generic_latch_8_device> m_soundlatch;
+ required_device<generic_latch_8_device> m_slavelatch;
+ required_device<generic_latch_8_device> m_beastlatch;
- DECLARE_WRITE8_MEMBER(beast_data_w);
- DECLARE_READ8_MEMBER(beast_data_r);
DECLARE_READ8_MEMBER(beast_status_r);
- DECLARE_WRITE8_MEMBER(trigger_nmi_on_cpu0);
- DECLARE_WRITE8_MEMBER(cpu0_bankswitch_w);
- DECLARE_WRITE8_MEMBER(cpu1_bankswitch_w);
+ DECLARE_WRITE8_MEMBER(trigger_nmi_on_mastercpu);
+ DECLARE_WRITE8_MEMBER(mastercpu_bankswitch_w);
+ DECLARE_WRITE8_MEMBER(slavecpu_bankswitch_w);
DECLARE_WRITE8_MEMBER(coin_count_w);
- DECLARE_WRITE8_MEMBER(trigger_nmi_on_sound_cpu2);
- DECLARE_WRITE8_MEMBER(cpu2_bankswitch_w);
+ DECLARE_WRITE8_MEMBER(soundcpu_bankswitch_w);
DECLARE_READ8_MEMBER(beast_p0_r);
DECLARE_WRITE8_MEMBER(beast_p0_w);
DECLARE_READ8_MEMBER(beast_p1_r);
@@ -94,10 +105,10 @@ public:
DECLARE_WRITE_LINE_MEMBER(screen_vblank_djboy);
TIMER_DEVICE_CALLBACK_MEMBER(djboy_scanline);
void djboy(machine_config &config);
- void cpu0_am(address_map &map);
- void cpu0_port_am(address_map &map);
- void cpu1_am(address_map &map);
- void cpu1_port_am(address_map &map);
- void cpu2_am(address_map &map);
- void cpu2_port_am(address_map &map);
+ void mastercpu_am(address_map &map);
+ void mastercpu_port_am(address_map &map);
+ void slavecpu_am(address_map &map);
+ void slavecpu_port_am(address_map &map);
+ void soundcpu_am(address_map &map);
+ void soundcpu_port_am(address_map &map);
};