diff options
Diffstat (limited to 'src/mame/includes/atarisy2.h')
-rw-r--r-- | src/mame/includes/atarisy2.h | 42 |
1 files changed, 20 insertions, 22 deletions
diff --git a/src/mame/includes/atarisy2.h b/src/mame/includes/atarisy2.h index 03db8308ed6..be76279270d 100644 --- a/src/mame/includes/atarisy2.h +++ b/src/mame/includes/atarisy2.h @@ -10,6 +10,7 @@ #include "video/atarimo.h" #include "cpu/m6502/m6502.h" #include "cpu/t11/t11.h" +#include "machine/bankdev.h" #include "machine/watchdog.h" #include "sound/ym2151.h" #include "sound/pokey.h" @@ -20,26 +21,27 @@ class atarisy2_state : public atarigen_state { public: atarisy2_state(const machine_config &mconfig, device_type type, const char *tag) - : atarigen_state(mconfig, type, tag), - m_maincpu(*this, "maincpu"), - m_audiocpu(*this, "audiocpu"), - m_mob(*this, "mob"), - m_slapstic_base(*this, "slapstic_base"), - m_playfield_tilemap(*this, "playfield"), - m_alpha_tilemap(*this, "alpha"), - m_soundcomm(*this, "soundcomm"), - m_ym2151(*this, "ymsnd"), - m_pokey(*this, "pokey%u", 1U), - m_tms5220(*this, "tms"), - m_rombank1(*this, "rombank1"), - m_rombank2(*this, "rombank2"), - m_slapstic(*this, "slapstic") - { } + : atarigen_state(mconfig, type, tag) + , m_maincpu(*this, "maincpu") + , m_audiocpu(*this, "audiocpu") + , m_mob(*this, "mob") + , m_slapstic_base(*this, "slapstic_base") + , m_vrambank(*this, "vrambank") + , m_playfield_tilemap(*this, "playfield") + , m_alpha_tilemap(*this, "alpha") + , m_soundcomm(*this, "soundcomm") + , m_ym2151(*this, "ymsnd") + , m_pokey(*this, "pokey%u", 1U) + , m_tms5220(*this, "tms") + , m_rombank(*this, "rombank%u", 1U) + , m_slapstic(*this, "slapstic") + { } required_device<t11_device> m_maincpu; required_device<m6502_device> m_audiocpu; required_device<atari_motion_objects_device> m_mob; required_shared_ptr<uint16_t> m_slapstic_base; + required_device<address_map_bank_device> m_vrambank; uint8_t m_interrupt_enable; @@ -56,15 +58,13 @@ public: uint8_t m_p2portwr_state; uint8_t m_p2portrd_state; - required_memory_bank m_rombank1; - required_memory_bank m_rombank2; + required_memory_bank_array<2> m_rombank; required_device<atari_slapstic_device> m_slapstic; uint8_t m_sound_reset_state; emu_timer * m_yscroll_reset_timer; uint32_t m_playfield_tile_bank[2]; - uint32_t m_videobank; // 720 fake joystick double m_joy_last_angle; @@ -75,8 +75,6 @@ public: int32_t m_spin_pos; /* track fake position of spinner */ uint32_t m_spin_center_count; - uint16_t m_vram[0x8000/2]; - virtual void device_post_load() override; virtual void update_interrupts() override; @@ -112,11 +110,10 @@ public: TIMER_CALLBACK_MEMBER(delayed_int_enable_w); TIMER_CALLBACK_MEMBER(reset_yscroll_callback); DECLARE_READ16_MEMBER(slapstic_r); - DECLARE_READ16_MEMBER(videoram_r); DECLARE_WRITE16_MEMBER(slapstic_w); DECLARE_WRITE16_MEMBER(yscroll_w); DECLARE_WRITE16_MEMBER(xscroll_w); - DECLARE_WRITE16_MEMBER(videoram_w); + DECLARE_WRITE16_MEMBER(spriteram_w); DECLARE_PALETTE_DECODER(RRRRGGGGBBBBIIII); static const atari_motion_objects_config s_mob_config; @@ -128,4 +125,5 @@ public: void csprint(machine_config &config); void main_map(address_map &map); void sound_map(address_map &map); + void vrambank_map(address_map &map); }; |