public asteroid_state(machine_config mconfig, device_type type, string tag) : base(mconfig, type, tag) { m_maincpu = new required_device <m6502_device>(this, "maincpu"); m_dvg = new required_device <dvg_device>(this, "dvg"); m_earom = new optional_device <er2055_device>(this, "earom"); m_discrete = new required_device <discrete_sound_device>(this, "discrete"); m_dsw1 = new required_ioport(this, "DSW1"); m_dsw_sel = new required_device <ttl153_device>(this, "dsw_sel"); m_cocktail = new optional_ioport(this, "COCKTAIL"); m_ram1 = new optional_memory_bank(this, "ram1"); m_ram2 = new optional_memory_bank(this, "ram2"); m_sram1 = new memory_share_creator <u8>(this, "ram1", 0x100, ENDIANNESS_LITTLE); m_sram2 = new memory_share_creator <u8>(this, "ram2", 0x100, ENDIANNESS_LITTLE); }
// constructor public dac_device_base(machine_config mconfig, device_type type, string tag, device_t owner, uint32_t clock, u8 bits, dac_mapper_callback mapper, stream_buffer_sample_t gain) : base(mconfig, type, tag, owner, clock) { m_class_interfaces.Add(new device_sound_interface_dac_device_base(mconfig, this)); //device_sound_interface(mconfig, *this); m_disound = GetClassInterface <device_sound_interface_dac_device_base>(); m_stream = null; m_curval = 0; m_value_map = new std.vector <stream_buffer_sample_t>(1 << bits); m_bits = bits; m_mapper = mapper; m_gain = gain; m_range_min = (bits == 1) ? (stream_buffer_sample_t)0.0 : (stream_buffer_sample_t)(-1.0); m_range_max = (stream_buffer_sample_t)1.0; }
public centiped_state(machine_config mconfig, device_type type, string tag) : base(mconfig, type, tag) { m_maincpu = new required_device <m6502_device>(this, "maincpu"); m_rambase = new optional_shared_ptr <uint8_t>(this, "rambase"); m_videoram = new required_shared_ptr <uint8_t>(this, "videoram"); m_spriteram = new required_shared_ptr <uint8_t>(this, "spriteram"); m_paletteram = new optional_shared_ptr <uint8_t>(this, "paletteram"); m_bullsdrt_tiles_bankram = new optional_shared_ptr <uint8_t>(this, "bullsdrt_bank"); m_outlatch = new required_device <ls259_device>(this, "outlatch"); m_earom = new optional_device <er2055_device>(this, "earom"); 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_aysnd = new optional_device <ay8910_device>(this, "aysnd"); }
public pacman_state(machine_config mconfig, device_type type, string tag) : base(mconfig, type, tag) { m_maincpu = new required_device <cpu_device>(this, "maincpu"); m_mainlatch = new optional_device <ls259_device>(this, "mainlatch"); m_namco_sound = new optional_device <namco_device>(this, "namco"); m_watchdog = new required_device <watchdog_timer_device>(this, "watchdog"); m_spriteram = new optional_shared_ptr <uint8_t>(this, "spriteram"); m_spriteram2 = new optional_shared_ptr <uint8_t>(this, "spriteram2"); m_s2650_spriteram = new optional_shared_ptr <uint8_t>(this, "s2650_spriteram"); m_videoram = new required_shared_ptr <uint8_t>(this, "videoram"); m_colorram = new optional_shared_ptr <uint8_t>(this, "colorram"); m_s2650games_tileram = new optional_shared_ptr <uint8_t>(this, "s2650_tileram"); m_rocktrv2_prot_data = new optional_shared_ptr <uint8_t>(this, "rocktrv2_prot"); m_gfxdecode = new required_device <gfxdecode_device>(this, "gfxdecode"); m_palette = new required_device <palette_device>(this, "palette"); }
protected input_merger_device( machine_config mconfig, device_type type, string tag, device_t owner, uint32_t clock, u32 initval, u32 xorval, int active) : base(mconfig, type, tag, owner, clock) { m_output_handler = new devcb_write_line(this); m_initval = initval; m_xorval = xorval; m_active = active; m_state = initval; }
protected irem_audio_device(machine_config mconfig, device_type type, string tag, device_t owner, uint32_t clock) : base(mconfig, type, tag, owner, clock) { m_audio_SINH = new optional_device <netlist_mame_logic_input_device>(this, "snd_nl:sinh"); m_cpu = new required_device <m6803_cpu_device>(this, "iremsound"); m_adpcm1 = new required_device <msm5205_device>(this, "msm1"); m_adpcm2 = new optional_device <msm5205_device>(this, "msm2"); m_ay_45L = new required_device <ay8910_device>(this, "ay_45l"); m_ay_45M = new required_device <ay8910_device>(this, "ay_45m"); m_port1 = 0; m_port2 = 0; m_soundlatch = 0; m_audio_BD = new optional_device <netlist_mame_logic_input_device>(this, "snd_nl:ibd"); m_audio_SD = new optional_device <netlist_mame_logic_input_device>(this, "snd_nl:isd"); m_audio_OH = new optional_device <netlist_mame_logic_input_device>(this, "snd_nl:ioh"); m_audio_CH = new optional_device <netlist_mame_logic_input_device>(this, "snd_nl:ich"); }
public void saveChanges() { using (var db = new PlanningContext()) { device_type data = null; if (!this._isCreateMode) { var id = Convert.ToInt32(this.device_type_id.Text); data = db.device_type.Where(d => d.device_type_id == id).FirstOrDefault(); if (data == null) { this._mainInterface.statusText = $"ERROR: ID '{this.device_type_id.Text}' does not exist."; return; } } else { data = new device_type(); } data.device_type_id = Convert.ToInt32(this.device_type_id.Text); data.description = /**/ (this.description.Text); data.is_active = (bool)this.is_active.IsChecked; data.comment = /**/ (this.comment.Text); data.unit = new Func <unit>(() => { foreach (var v in db.units) { if (v.unit_id == (this.unit.item as unit).unit_id) { return(v); } } return(null); })(); if (this._isCreateMode) { db.device_type.Add(data); } db.SaveChanges(); } }
public void deleteItem(object item) { if (item == null) { return; } device_type data = item as device_type; if (data == null) { return; } using (var db = new PlanningContext()) { db.device_type.Remove(db.device_type.Where(d => d.device_type_id == data.device_type_id).First()); db.SaveChanges(); } }
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" }
i8255_device(machine_config mconfig, device_type type, string tag, device_t owner, uint32_t clock, bool is_ams40489) : base(mconfig, type, tag, owner, clock) { m_force_portb_in = is_ams40489; m_force_portc_out = is_ams40489; m_dont_clear_output_latches = is_ams40489; m_in_pa_cb = new devcb_read8(this); m_in_pb_cb = new devcb_read8(this); m_in_pc_cb = new devcb_read8(this); m_out_pa_cb = new devcb_write8(this); m_out_pb_cb = new devcb_write8(this); m_out_pc_cb = new devcb_write8(this); m_tri_pa_cb = new devcb_read8(this); m_tri_pb_cb = new devcb_read8(this); m_tri_pc_cb = new devcb_read8(this); m_control = 0; m_intr = new int[2] { 0, 0 }; }
// construction/destruction //------------------------------------------------- // driver_device - constructor //------------------------------------------------- public driver_device(machine_config mconfig, device_type type, string tag) : base(mconfig, type, tag, null, 0) { m_system = mconfig.gamedrv(); m_flip_screen_x = 0; m_flip_screen_y = 0; // set the search path to include all parents and cache it because devices search system paths m_searchpath.emplace_back(m_system.name); std.set <game_driver> seen = new std.set <game_driver>(); for (int ancestor = driver_list.clone(m_system); 0 <= ancestor; ancestor = driver_list.clone((size_t)ancestor)) { if (!seen.insert(driver_list.driver((size_t)ancestor))) { throw new emu_fatalerror("driver_device({0}): parent/clone relationships form a loop", m_system.name); } m_searchpath.emplace_back(driver_list.driver((size_t)ancestor).name); } }
public galaga_state(machine_config mconfig, device_type type, string tag) : base(mconfig, type, tag) { m_videoram = new optional_shared_ptr <uint8_t>(this, "videoram"); m_galaga_ram1 = new optional_shared_ptr <uint8_t>(this, "galaga_ram1"); m_galaga_ram2 = new optional_shared_ptr <uint8_t>(this, "galaga_ram2"); m_galaga_ram3 = new optional_shared_ptr <uint8_t>(this, "galaga_ram3"); m_videolatch = new optional_device <ls259_device>(this, "videolatch"); m_maincpu = new required_device <cpu_device>(this, "maincpu"); m_subcpu = new required_device <cpu_device>(this, "sub"); m_subcpu2 = new required_device <cpu_device>(this, "sub2"); m_namco_sound = new required_device <namco_device>(this, "namco"); 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_leds = new output_finder <u32_const_2>(this, "led{0}", 0U); m_starfield = new optional_device <starfield_05xx_device>(this, "starfield"); m_galaga_gfxbank = 0; m_main_irq_mask = 0; m_sub_irq_mask = 0; m_sub2_nmi_mask = 0; }
m6502_device(machine_config mconfig, device_type type, string tag, device_t owner, u32 clock) : base(mconfig, type, tag, owner, clock) { m_class_interfaces.Add(new device_execute_interface_m6502(mconfig, this)); m_class_interfaces.Add(new device_memory_interface_m6502(mconfig, this)); m_class_interfaces.Add(new device_state_interface_m6502(mconfig, this)); m_class_interfaces.Add(new device_disasm_interface_m6502(mconfig, this)); sync_w = new devcb_write_line(this); program_config = new address_space_config("program", ENDIANNESS_LITTLE, 8, 16); sprogram_config = new address_space_config("decrypted_opcodes", ENDIANNESS_LITTLE, 8, 16); PPC = 0; NPC = 0; PC = 0; SP = 0; TMP = 0; TMP2 = 0; A = 0; X = 0; Y = 0; P = 0; IR = 0; inst_state_base = 0; mintf = null; inst_state = 0; inst_substate = 0; icount_.i = 0; //icount = 0; nmi_state = false; irq_state = false; apu_irq_state = false; v_state = false; nmi_pending = false; irq_taken = false; sync = false; inhibit_interrupts = false; count_before_instruction_step = 0; }
public dkong_state(machine_config mconfig, device_type type, string tag) : base(mconfig, type, tag) { m_maincpu = new required_device <cpu_device>(this, "maincpu"); m_soundcpu = new optional_device <mcs48_cpu_device>(this, "soundcpu"); m_eeprom = new optional_device <eeprom_serial_93cxx_device>(this, "eeprom"); m_dev_n2a03a = new optional_device <intref>(this, "n2a03a"); m_dev_n2a03b = new optional_device <intref>(this, "n2a03b"); m_dev_vp2 = new optional_device <latch8_device>(this, "virtual_p2"); m_dev_6h = new optional_device <latch8_device>(this, "ls259.6h"); m_ls175_3d = new optional_device <latch8_device>(this, "ls175.3d"); m_discrete = new optional_device <discrete_device>(this, "discrete"); m_m58817 = new optional_device <intref>(this, "tms"); m_watchdog = new optional_device <watchdog_timer_device>(this, "watchdog"); m_video_ram = new required_shared_ptr <uint8_t>(this, "video_ram"); m_sprite_ram = new required_shared_ptr <uint8_t>(this, "sprite_ram"); m_snd_rom = new optional_region_ptr <uint8_t>(this, "soundcpu"); m_vidhw = DKONG_BOARD; m_sig30Hz = 0; m_star_ff = 0; m_blue_level = 0; m_cv1 = 0; m_cv2 = 0; m_vg1 = 0; m_vg2 = 0; m_vg3 = 0; m_cv3 = 0; m_cv4 = 0; m_vc17 = 0; m_pixelcnt = 0; 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_z80dma = new optional_device <intref>(this, "z80dma"); m_dma8257 = new optional_device <i8257_device>(this, "dma8257"); m_bank1 = new memory_bank_creator(this, "bank1"); m_bank2 = new memory_bank_creator(this, "bank2"); }
MemoryContainer <int16_t> [] m_waveform = new MemoryContainer <int16_t> [MAX_VOLUME]; //std::unique_ptr<int16_t[]> m_waveform[MAX_VOLUME]; public namco_audio_device(machine_config mconfig, device_type type, string tag, device_t owner, u32 clock) : base(mconfig, type, tag, owner, clock) { m_class_interfaces.Add(new device_sound_interface_namco_audio(mconfig, this)); //device_sound_interface(mconfig, *this), m_disound = GetClassInterface <device_sound_interface_namco_audio>(); m_wave_ptr = new optional_region_ptr <uint8_t>(this, DEVICE_SELF); m_last_channel = null; m_wavedata = null; m_wave_size = 0; m_sound_enable = false; m_stream = null; m_namco_clock = 0; m_sample_rate = 0; m_f_fracbits = 0; m_voices = 0; m_stereo = false; for (int i = 0; i < m_channel_list.Length; i++) { m_channel_list[i] = new sound_channel(); } }
memory_access <int_const_13, int_const_0, int_const_0, endianness_t_const_ENDIANNESS_BIG> .specific m_program13 = new memory_access <int_const_13, int_const_0, int_const_0, endianness_t_const_ENDIANNESS_BIG> .specific(); //memory_access<13, 0, 0, ENDIANNESS_BIG>::specific m_program13; protected m6805_base_device( machine_config mconfig, string tag, device_t owner, uint32_t clock, device_type type, configuration_params params_) : base(mconfig, type, tag, owner, clock) { //m_class_interfaces.Add(new device_execute_interface_m6805_base(mconfig, this)); m_class_interfaces.Add(new device_memory_interface_m6805_base(mconfig, this)); m_class_interfaces.Add(new device_state_interface_m6805_base(mconfig, this)); //m_class_interfaces.Add(new device_disasm_interface_m6805_base(mconfig, this)); m_dimemory = GetClassInterface <device_memory_interface_m6805_base>(); m_distate = GetClassInterface <device_state_interface_m6805_base>(); init_s_hmos_s_ops(); m_params = params_; m_program_config = new address_space_config("program", ENDIANNESS_BIG, 8, (u8)params_.m_addr_width); }
// constructor public empty_state(machine_config mconfig, device_type type, string tag) : base(mconfig, type, tag) { }
//------------------------------------------------- // device_add - configuration helper to add a // new device //------------------------------------------------- public device_t device_add(string tag, device_type type, u32 clock) { std.pair <string, device_t> owner = resolve_owner(tag); return(add_device(type.create(this, owner.first, owner.second, clock), owner.second)); }
// configuration state //uint8_t m_command_address_bits; // number of address bits in a command //bool m_streaming_enabled; // true if streaming is enabled //bool m_output_on_falling_clock_enabled; // true if the output pin is updated on the falling edge of the clock //devcb_write_line m_do_cb; // callback to push state of DO line // runtime state //eeprom_state m_state; // current internal state //uint8_t m_cs_state; // state of the CS line //attotime m_last_cs_rising_edge_time; // time of the last CS rising edge //uint8_t m_oe_state; // state of the OE line //uint8_t m_clk_state; // state of the CLK line //uint8_t m_di_state; // state of the DI line //bool m_locked; // are we locked against writes? //uint32_t m_bits_accum; // number of bits accumulated //uint32_t m_command_address_accum; // accumulator of command+address bits //eeprom_command m_command; // current command //uint32_t m_address; // current address extracted from command //uint32_t m_shift_register; // holds data coming in/going out // inline configuration helpers //void enable_streaming(bool enable) { m_streaming_enabled = enable; } //void enable_output_on_falling_clock(bool enable) { m_output_on_falling_clock_enabled = enable; } //auto do_callback() { return m_do_cb.bind(); } // construction/destruction protected eeprom_serial_base_device(machine_config mconfig, device_type devtype, string tag, device_t owner, eeprom_serial_streaming enable_streaming) : base(mconfig, devtype, tag, owner) { throw new emu_unimplemented(); }
std.vector <uint8_t> m_save_blob; // state saving buffer // constructor protected ymfm_device_base(machine_config mconfig, string tag, device_t owner, uint32_t clock, device_type type, Func <ymfm_interface, ChipClass> chip_class_creator) : base(mconfig, tag, owner, clock, type) { m_class_interfaces.Add(new device_sound_interface_ymfm_device_base(mconfig, this)); //device_sound_interface(mconfig, *this); m_disound = GetClassInterface <device_sound_interface_ymfm_device_base>(); m_stream = null; m_chip = chip_class_creator(m_ymfm_interface); //eg, m_chip = new ym2151(this); OUTPUTS = (int)m_chip.OUTPUTS; //static constexpr int OUTPUTS = ChipClass.OUTPUTS; }
protected m6805_hmos_device(machine_config mconfig, string tag, device_t owner, u32 clock, device_type type, u32 addr_width, unsigned ram_size) : base(mconfig, tag, owner, clock, type, new configuration_params(addr_width > 13 ? s_hmos_b_ops : s_hmos_s_ops, s_hmos_cycles, addr_width, 0x007f, 0x0060, M6805_VECTOR_SWI), null) //map) { m6805_base_device_after_ctor(map); //m_class_interfaces.Add(new device_execute_interface_m6805_hmos(mconfig, this)); m_timer = new m6805_timer(this); m_port_open_drain = new bool [PORT_COUNT] { false, false, false, false }; m_port_mask = new u8 [PORT_COUNT] { 0x00, 0x00, 0x00, 0x00 }; m_port_input = new u8 [PORT_COUNT] { 0xff, 0xff, 0xff, 0xff }; m_port_latch = new u8 [PORT_COUNT] { 0xff, 0xff, 0xff, 0xff }; m_port_ddr = new u8 [PORT_COUNT] { 0x00, 0x00, 0x00, 0x00 }; m_port_cb_r = new devcb_read8.array <u64_const_PORT_COUNT>(this, () => { return(new devcb_read8(this)); }); m_port_cb_w = new devcb_write8.array <u64_const_PORT_COUNT>(this, () => { return(new devcb_write8(this)); }); m_ram_size = ram_size; }
protected m68705_device(machine_config mconfig, string tag, device_t owner, u32 clock, device_type type, u32 addr_width, unsigned ram_size) : base(mconfig, tag, owner, clock, type, addr_width, ram_size) { m_class_interfaces.Add(new device_execute_interface_m68705(mconfig, this)); m_class_interfaces.Add(new device_nvram_interface_m68705(mconfig, this)); //device_nvram_interface(mconfig, *this) m_diexecute = GetClassInterface <device_execute_interface_m68705>(); m_nvram_interface = GetClassInterface <device_nvram_interface_m68705>(); m_user_rom = new required_region_ptr <u8>(this, DEVICE_SELF); m_vihtp = CLEAR_LINE; m_pcr = 0xff; m_pl_data = 0xff; m_pl_addr = 0xffff; }
protected m68705p_device(machine_config mconfig, string tag, device_t owner, u32 clock, device_type type) : base(mconfig, tag, owner, clock, type, 11, 112) { m_class_interfaces.Add(new device_disasm_interface_m68705p(mconfig, this)); set_port_open_drain <u32_const_0>(true); // Port A is open drain with internal pull-ups set_port_mask <u32_const_2>(0xf0); // Port C is four bits wide set_port_mask <u32_const_3>(0xff); // Port D isn't present }
galaxian_sound_device(machine_config mconfig, device_type type, string tag, device_t owner, uint32_t clock) : base(mconfig, type, tag, owner, clock) { m_discrete = new required_device <discrete_sound_device>(this, "discrete"); m_lfo_val = 0; }
public pong_state(machine_config mconfig, device_type type, string tag) : base(mconfig, type, tag) { m_sw1a = new required_device <netlist_mame_logic_input_device>(this, "maincpu:sw1a"); m_sw1b = new required_device <netlist_mame_logic_input_device>(this, "maincpu:sw1b"); }
public sprite16_device_ind16(machine_config mconfig, device_type type, string tag, device_t owner, int dirty_granularity = 3) : base(mconfig, type, tag, owner, dirty_granularity) { sprite_device_after_ctor((base_, width, height, rowpixels) => { return(new bitmap_ind16(base_, width, height, rowpixels)); }); }
public defender_state(machine_config mconfig, device_type type, string tag) : base(mconfig, type, tag) { m_bankc000 = new required_device <address_map_bank_device>(this, "bankc000"); }
protected dac_word_device_base(machine_config mconfig, device_type type, string tag, device_t owner, u32 clock, u8 bits, dac_mapper_callback mapper, stream_buffer_sample_t gain) : base(mconfig, type, tag, owner, clock, bits, mapper, gain) { }
protected m6802_cpu_device(machine_config mconfig, device_type type, string tag, device_t owner, uint32_t clock, op_func [] insn, uint8_t [] cycles) : base(mconfig, type, tag, owner, clock, insn, cycles, ram_map)//, this) { m_ram_enable = true; }
devcb_write8 [] m_io_write = new devcb_write8[2]; // up to 2 output port handlers // constructor protected ym_generic_device(machine_config mconfig, string tag, device_t owner, uint32_t clock, device_type type) : base(mconfig, type, tag, owner, clock) { //device_sound_interface(mconfig, *this), m_ymfm_interface = new ymfm_interface_ym_generic_device(this); m_timer = new emu_timer[] { null, null }; m_update_irq = new devcb_write_line(this); m_io_read = new devcb_read8[] { new devcb_read8(this), new devcb_read8(this) }; m_io_write = new devcb_write8[] { new devcb_write8(this), new devcb_write8(this) }; }