summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/includes/atarisy2.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/includes/atarisy2.h')
-rw-r--r--src/mame/includes/atarisy2.h42
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);
};