Previous 199869 Revisions Next

r32543 Saturday 4th October, 2014 at 23:28:10 UTC by Alex Jackson
devfind.h: allow ioport_finder to be dereferenced when NULL so read_safe() can be used (nw)
[src/emu]devfind.h
[src/mame/drivers]namcos22.c namcos23.c taitojc.c
[src/mame/includes]namcos22.h taitojc.h

trunk/src/emu/devfind.h
r32542r32543
226226   // make reference use transparent as well
227227   operator ioport_port &() { assert(object_finder_base<ioport_port>::m_target != NULL); return *object_finder_base<ioport_port>::m_target; }
228228
229   // allow dereference even when target is NULL so read_safe() can be used
230   ioport_port *operator->() const { return object_finder_base<ioport_port>::m_target; }
231
229232   // finder
230233   virtual bool findit(bool isvalidation = false)
231234   {
trunk/src/mame/includes/taitojc.h
r32542r32543
5151      m_palette_ram(*this, "palette_ram"),
5252      m_gfxdecode(*this, "gfxdecode"),
5353      m_screen(*this, "screen"),
54      m_palette(*this, "palette")
54      m_palette(*this, "palette"),
55      m_analog_ports(*this, "AN")
5556   {
5657      m_mcu_output = 0;
5758      m_speed_meter = 0;
r32542r32543
7475   required_device<gfxdecode_device> m_gfxdecode;
7576   required_device<screen_device> m_screen;
7677   required_device<palette_device> m_palette;
78   optional_ioport_array<8> m_analog_ports;
7779
78   ioport_port *m_analog_ports[8];
7980   taitojc_renderer *m_renderer;
8081
8182   int m_texture_x;
trunk/src/mame/includes/namcos22.h
r32542r32543
199199      m_pc_pedal_interrupt(*this, "pc_p_int"),
200200      m_gfxdecode(*this, "gfxdecode"),
201201      m_screen(*this, "screen"),
202      m_palette(*this, "palette")
202      m_palette(*this, "palette"),
203      m_adc_ports(*this, "ADC")
203204   { }
204205
205206   required_device<cpu_device> m_maincpu;
r32542r32543
228229   required_device<gfxdecode_device> m_gfxdecode;
229230   required_device<screen_device> m_screen;
230231   required_device<palette_device> m_palette;
232   optional_ioport_array<8> m_adc_ports;
231233
232   ioport_port *m_adc_ports[8];
234
233235   UINT8 m_syscontrol[0x20];
234236   bool m_dsp_irq_enabled;
235237   emu_timer *m_ar_tb_interrupt[2];
trunk/src/mame/drivers/namcos22.c
r32542r32543
37323732
37333733void namcos22_state::machine_start()
37343734{
3735   static const char *const tags[] = { "ADC.0", "ADC.1", "ADC.2", "ADC.3", "ADC.4", "ADC.5", "ADC.6", "ADC.7" };
3736   for (int i = 0; i < 8; i++)
3737      m_adc_ports[i] = ioport(tags[i]);
3738
37393735   m_slave_simulation_active = false;
37403736   m_portbits[0] = 0xffff;
37413737   m_portbits[1] = 0xffff;
trunk/src/mame/drivers/namcos23.c
r32542r32543
13761376      m_p2(*this, "P2"),
13771377      m_screen(*this, "screen"),
13781378      m_palette(*this, "palette"),
1379      m_generic_paletteram_32(*this, "paletteram")
1379      m_generic_paletteram_32(*this, "paletteram"),
1380      m_adc_ports(*this, "ADC")
13801381   { }
13811382
13821383   required_device<mips3_device> m_maincpu;
r32542r32543
14011402   required_device<screen_device> m_screen;
14021403   required_device<palette_device> m_palette;
14031404   required_shared_ptr<UINT32> m_generic_paletteram_32;
1405   optional_ioport_array<4> m_adc_ports;
14041406
14051407   c404_t m_c404;
14061408   c361_t m_c361;
r32542r32543
14101412   c422_t m_c422;
14111413   render_t m_render;
14121414
1413   ioport_port *m_adc_ports[4];
14141415   tilemap_t *m_bgtilemap;
14151416   UINT8 m_jvssense;
14161417   INT32 m_has_jvsio;
r32542r32543
32193220
32203221void namcos23_state::machine_start()
32213222{
3222   static const char *const tags[] = { "ADC.0", "ADC.1", "ADC.2", "ADC.3" };
3223   for (int i = 0; i < 4; i++)
3224      m_adc_ports[i] = ioport(tags[i]);
3225
32263223   m_c361.timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(namcos23_state::c361_timer_cb),this));
32273224   m_c361.timer->adjust(attotime::never);
32283225
trunk/src/mame/drivers/taitojc.c
r32542r32543
11131113
11141114void taitojc_state::machine_start()
11151115{
1116   static const char *const tags[] = { "AN.0", "AN.1", "AN.2", "AN.3", "AN.4", "AN.5", "AN.6", "AN.7" };
1117   for (int i = 0; i < 8; i++)
1118      m_analog_ports[i] = ioport(tags[i]);
1119
11201116   // register for savestates
11211117   save_item(NAME(m_texture_x));
11221118   save_item(NAME(m_texture_y));

Previous 199869 Revisions Next


© 1997-2024 The MAME Team