mirror of
https://github.com/holub/mame
synced 2025-04-22 16:31:49 +03:00
devfind.h: allow ioport_finder to be dereferenced when NULL so read_safe() can be used (nw)
This commit is contained in:
parent
762420efad
commit
3879fb5b7e
@ -226,6 +226,9 @@ public:
|
||||
// make reference use transparent as well
|
||||
operator ioport_port &() { assert(object_finder_base<ioport_port>::m_target != NULL); return *object_finder_base<ioport_port>::m_target; }
|
||||
|
||||
// allow dereference even when target is NULL so read_safe() can be used
|
||||
ioport_port *operator->() const { return object_finder_base<ioport_port>::m_target; }
|
||||
|
||||
// finder
|
||||
virtual bool findit(bool isvalidation = false)
|
||||
{
|
||||
|
@ -3732,10 +3732,6 @@ void namcos22_state::machine_reset()
|
||||
|
||||
void namcos22_state::machine_start()
|
||||
{
|
||||
static const char *const tags[] = { "ADC.0", "ADC.1", "ADC.2", "ADC.3", "ADC.4", "ADC.5", "ADC.6", "ADC.7" };
|
||||
for (int i = 0; i < 8; i++)
|
||||
m_adc_ports[i] = ioport(tags[i]);
|
||||
|
||||
m_slave_simulation_active = false;
|
||||
m_portbits[0] = 0xffff;
|
||||
m_portbits[1] = 0xffff;
|
||||
|
@ -1376,7 +1376,8 @@ public:
|
||||
m_p2(*this, "P2"),
|
||||
m_screen(*this, "screen"),
|
||||
m_palette(*this, "palette"),
|
||||
m_generic_paletteram_32(*this, "paletteram")
|
||||
m_generic_paletteram_32(*this, "paletteram"),
|
||||
m_adc_ports(*this, "ADC")
|
||||
{ }
|
||||
|
||||
required_device<mips3_device> m_maincpu;
|
||||
@ -1401,6 +1402,7 @@ public:
|
||||
required_device<screen_device> m_screen;
|
||||
required_device<palette_device> m_palette;
|
||||
required_shared_ptr<UINT32> m_generic_paletteram_32;
|
||||
optional_ioport_array<4> m_adc_ports;
|
||||
|
||||
c404_t m_c404;
|
||||
c361_t m_c361;
|
||||
@ -1410,7 +1412,6 @@ public:
|
||||
c422_t m_c422;
|
||||
render_t m_render;
|
||||
|
||||
ioport_port *m_adc_ports[4];
|
||||
tilemap_t *m_bgtilemap;
|
||||
UINT8 m_jvssense;
|
||||
INT32 m_has_jvsio;
|
||||
@ -3219,10 +3220,6 @@ INPUT_PORTS_END
|
||||
|
||||
void namcos23_state::machine_start()
|
||||
{
|
||||
static const char *const tags[] = { "ADC.0", "ADC.1", "ADC.2", "ADC.3" };
|
||||
for (int i = 0; i < 4; i++)
|
||||
m_adc_ports[i] = ioport(tags[i]);
|
||||
|
||||
m_c361.timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(namcos23_state::c361_timer_cb),this));
|
||||
m_c361.timer->adjust(attotime::never);
|
||||
|
||||
|
@ -1113,10 +1113,6 @@ void taitojc_state::machine_reset()
|
||||
|
||||
void taitojc_state::machine_start()
|
||||
{
|
||||
static const char *const tags[] = { "AN.0", "AN.1", "AN.2", "AN.3", "AN.4", "AN.5", "AN.6", "AN.7" };
|
||||
for (int i = 0; i < 8; i++)
|
||||
m_analog_ports[i] = ioport(tags[i]);
|
||||
|
||||
// register for savestates
|
||||
save_item(NAME(m_texture_x));
|
||||
save_item(NAME(m_texture_y));
|
||||
|
@ -199,7 +199,8 @@ public:
|
||||
m_pc_pedal_interrupt(*this, "pc_p_int"),
|
||||
m_gfxdecode(*this, "gfxdecode"),
|
||||
m_screen(*this, "screen"),
|
||||
m_palette(*this, "palette")
|
||||
m_palette(*this, "palette"),
|
||||
m_adc_ports(*this, "ADC")
|
||||
{ }
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
@ -228,8 +229,9 @@ public:
|
||||
required_device<gfxdecode_device> m_gfxdecode;
|
||||
required_device<screen_device> m_screen;
|
||||
required_device<palette_device> m_palette;
|
||||
optional_ioport_array<8> m_adc_ports;
|
||||
|
||||
|
||||
ioport_port *m_adc_ports[8];
|
||||
UINT8 m_syscontrol[0x20];
|
||||
bool m_dsp_irq_enabled;
|
||||
emu_timer *m_ar_tb_interrupt[2];
|
||||
|
@ -51,7 +51,8 @@ public:
|
||||
m_palette_ram(*this, "palette_ram"),
|
||||
m_gfxdecode(*this, "gfxdecode"),
|
||||
m_screen(*this, "screen"),
|
||||
m_palette(*this, "palette")
|
||||
m_palette(*this, "palette"),
|
||||
m_analog_ports(*this, "AN")
|
||||
{
|
||||
m_mcu_output = 0;
|
||||
m_speed_meter = 0;
|
||||
@ -74,8 +75,8 @@ public:
|
||||
required_device<gfxdecode_device> m_gfxdecode;
|
||||
required_device<screen_device> m_screen;
|
||||
required_device<palette_device> m_palette;
|
||||
optional_ioport_array<8> m_analog_ports;
|
||||
|
||||
ioport_port *m_analog_ports[8];
|
||||
taitojc_renderer *m_renderer;
|
||||
|
||||
int m_texture_x;
|
||||
|
Loading…
Reference in New Issue
Block a user