summaryrefslogtreecommitdiffstatshomepage
path: root/src/mess/includes/sms.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mess/includes/sms.h')
-rw-r--r--src/mess/includes/sms.h22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/mess/includes/sms.h b/src/mess/includes/sms.h
index 10ea4ef7be8..c6f85a0e735 100644
--- a/src/mess/includes/sms.h
+++ b/src/mess/includes/sms.h
@@ -19,10 +19,10 @@
#define CONTROL1_TAG "ctrl1"
#define CONTROL2_TAG "ctrl2"
-#include "bus/gamegear/ggext.h"
-#include "bus/sms_ctrl/smsctrl.h"
-#include "bus/sms_exp/smsexp.h"
#include "bus/sega8/sega8_slot.h"
+#include "bus/sms_exp/smsexp.h"
+#include "bus/sms_ctrl/smsctrl.h"
+#include "bus/gamegear/ggext.h"
class sms_state : public driver_device
@@ -32,9 +32,8 @@ public:
: driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
m_vdp(*this, "sms_vdp"),
- m_ym(*this, "ym2413"),
m_main_scr(*this, "screen"),
- m_region_maincpu(*this, "maincpu"),
+ m_ym(*this, "ym2413"),
m_port_ctrl1(*this, CONTROL1_TAG),
m_port_ctrl2(*this, CONTROL2_TAG),
m_port_gg_ext(*this, "ext"),
@@ -45,6 +44,7 @@ public:
m_port_scope(*this, "SEGASCOPE"),
m_port_scope_binocular(*this, "SSCOPE_BINOCULAR"),
m_port_persist(*this, "PERSISTENCE"),
+ m_region_maincpu(*this, "maincpu"),
m_mainram(NULL),
m_is_gamegear(0),
m_is_gg_region_japan(0),
@@ -61,12 +61,12 @@ public:
// devices
required_device<cpu_device> m_maincpu;
required_device<sega315_5124_device> m_vdp;
- optional_device<ym2413_device> m_ym;
required_device<screen_device> m_main_scr;
- required_memory_region m_region_maincpu;
+ optional_device<ym2413_device> m_ym;
optional_device<sms_control_port_device> m_port_ctrl1;
optional_device<sms_control_port_device> m_port_ctrl2;
optional_device<gg_ext_port_device> m_port_gg_ext;
+
optional_ioport m_port_gg_dc;
optional_ioport m_port_pause;
optional_ioport m_port_reset;
@@ -75,6 +75,7 @@ public:
optional_ioport m_port_scope_binocular;
optional_ioport m_port_persist;
+ required_memory_region m_region_maincpu;
address_space *m_space;
UINT8 *m_mainram;
UINT8 *m_BIOS;
@@ -121,11 +122,12 @@ public:
UINT8 m_gg_sio[5];
int m_paused;
- // Data needed for Light Phaser
UINT8 m_ctrl1_th_state;
UINT8 m_ctrl2_th_state;
UINT8 m_ctrl1_th_latch;
UINT8 m_ctrl2_th_latch;
+
+ // Data needed for Light Phaser
int m_lphaser_x_offs; /* Needed to 'calibrate' lphaser; set at cart loading */
// Data needed for SegaScope (3D glasses)
@@ -160,10 +162,10 @@ public:
DECLARE_READ8_MEMBER(sms_input_port_dc_r);
DECLARE_READ8_MEMBER(sms_input_port_dd_r);
DECLARE_READ8_MEMBER(gg_input_port_00_r);
- DECLARE_WRITE8_MEMBER(gg_sio_w);
DECLARE_READ8_MEMBER(gg_sio_r);
- DECLARE_WRITE8_MEMBER(sms_fm_detect_w);
+ DECLARE_WRITE8_MEMBER(gg_sio_w);
DECLARE_READ8_MEMBER(sms_fm_detect_r);
+ DECLARE_WRITE8_MEMBER(sms_fm_detect_w);
DECLARE_WRITE8_MEMBER(sms_ym2413_register_port_w);
DECLARE_WRITE8_MEMBER(sms_ym2413_data_port_w);
DECLARE_READ8_MEMBER(sms_sscope_r);