optional_device_array <pia6821_device, u32_const_4> m_pia; //optional_device_array<pia6821_device, 4> m_pia; protected williams_state(machine_config mconfig, device_type type, string tag) : base(mconfig, type, tag) { m_nvram = new required_shared_ptr <uint8_t>(this, "nvram"); m_videoram = new required_shared_ptr <uint8_t>(this, "videoram"); m_mainbank = new optional_memory_bank(this, "mainbank"); m_maincpu = new required_device <mc6809e_device>(this, "maincpu"); m_soundcpu = new required_device <m6808_cpu_device>(this, "soundcpu"); m_watchdog = new required_device <watchdog_timer_device>(this, "watchdog"); m_screen = new required_device <screen_device>(this, "screen"); m_palette = new optional_device <palette_device>(this, "palette"); m_paletteram = new optional_shared_ptr <uint8_t>(this, "paletteram"); m_pia = new optional_device_array <pia6821_device, u32_const_4>(this, "pia_{0}", 0U, (base_, tag_) => { return(new device_finder <pia6821_device, bool_const_false>(base_, tag_)); }); }
public galaxian_state(machine_config mconfig, device_type type, string tag) : base(mconfig, type, tag) { m_maincpu = new required_device <cpu_device>(this, "maincpu"); m_audiocpu = new optional_device <cpu_device>(this, "audiocpu"); m_ay8910 = new optional_device_array <ay8910_device, u32_const_3>(this, "8910.{0}", 0, (base_, tag_) => { return(new device_finder <ay8910_device, bool_const_false>(base_, tag_)); }); // "8910.%u" m_ay8910_cclimber = new optional_device <ay8910_device>(this, "cclimber_audio:aysnd"); m_ppi8255 = new optional_device_array <i8255_device, u32_const_3>(this, "ppi8255_{0}", 0, (base_, tag_) => { return(new device_finder <i8255_device, bool_const_false>(base_, tag_)); }); // ppi8255_%u m_gfxdecode = new required_device <gfxdecode_device>(this, "gfxdecode"); m_screen = new required_device <screen_device>(this, "screen"); m_palette = new required_device <palette_device>(this, "palette"); m_soundlatch = new optional_device <generic_latch_8_device>(this, "soundlatch"); m_netlist = new optional_device <netlist_mame_sound_device>(this, "konami"); m_filter_ctl = new optional_device_array <netlist_mame_logic_input_device, u32_const_12>(this, "konami:ctl{0}", 0, (base_, tag_) => { return(new device_finder <netlist_mame_logic_input_device, bool_const_false>(base_, tag_)); }); m_ckong_coinage = new optional_ioport(this, "COINAGE"); m_spriteram = new required_shared_ptr <uint8_t>(this, "spriteram"); m_videoram = new required_shared_ptr <uint8_t>(this, "videoram"); m_decrypted_opcodes = new optional_shared_ptr <uint8_t>(this, "decrypted_opcodes"); m_lamps = new output_finder <u32_const_2>(this, "lamp{0}", 0U); //"lamp%u" }