// construction/destruction //------------------------------------------------- // generic_latch_base_device - constructor //------------------------------------------------- protected generic_latch_base_device(machine_config mconfig, device_type type, string tag, device_t owner, u32 clock) : base(mconfig, type, tag, owner, clock) { m_separate_acknowledge = false; m_latch_written = false; m_data_pending_cb = new devcb_write_line(this); }
// construction/destruction public mb88_cpu_device(machine_config mconfig, device_type type, string tag, device_t owner, uint32_t clock, int program_width, int data_width) : base(mconfig, type, tag, owner, clock) { m_class_interfaces.Add(new device_execute_interface_mb88(mconfig, this)); m_class_interfaces.Add(new device_memory_interface_mb88(mconfig, this)); m_class_interfaces.Add(new device_state_interface_mb88(mconfig, this)); m_class_interfaces.Add(new device_disasm_interface_mb88(mconfig, this)); m_program_config = new address_space_config("program", endianness_t.ENDIANNESS_BIG, 8, (byte)program_width, 0, (program_width == 9) ? program_9bit : (program_width == 10) ? program_10bit : (address_map_constructor)program_11bit); m_data_config = new address_space_config("data", endianness_t.ENDIANNESS_BIG, 8, (byte)data_width, 0, (data_width == 4) ? data_4bit : (data_width == 5) ? data_5bit : (data_width == 6) ? data_6bit : (address_map_constructor)data_7bit); m_PLA = null; m_read_k = new devcb_read8(this); m_write_o = new devcb_write8(this); m_write_p = new devcb_write8(this); for (int i = 0; i < 4; i++) { m_read_r[i] = new devcb_read8(this); } for (int i = 0; i < 4; i++) { m_write_r[i] = new devcb_write8(this); } m_read_si = new devcb_read_line(this); m_write_so = new devcb_write_line(this); }
bool m_clear; // clear/reset active state // construction/destruction protected addressable_latch_device(machine_config mconfig, device_type type, string tag, device_t owner, u32 clock, bool clear_active) : base(mconfig, type, tag, owner, clock) { for (int i = 0; i < 8; i++) { m_q_out_cb[i] = new devcb_write_line(this); } m_parallel_out_cb = new devcb_write8(this); m_clear_active = clear_active; }
msm5205_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_msm5205(mconfig, this)); //device_sound_interface(mconfig, *this), m_s1 = false; m_s2 = false; m_bitwidth = 4; m_vck_cb = new devcb_write_line(this); m_vck_legacy_cb = new devcb_write_line(this); }
latch8_device(machine_config mconfig, string tag, device_t owner, uint32_t clock = 0) : base(mconfig, LATCH8, tag, owner, clock) { m_value = 0; m_has_write = 0; m_has_read = 0; m_maskout = 0; m_xorvalue = 0; m_nosync = 0; for (int i = 0; i < 8; i++) { m_write_cb[i] = new devcb_write_line(this); } for (int i = 0; i < 8; i++) { m_read_cb[i] = new devcb_read_line(this); } }
protected m6801_cpu_device(machine_config mconfig, device_type type, string tag, device_t owner, uint32_t clock, op_func [] insn, uint8_t [] cycles, address_map_constructor internal_ = null) : base(mconfig, type, tag, owner, clock, insn, cycles, internal_) { m_class_interfaces.Add(new device_execute_interface_m6801(mconfig, this)); m_class_interfaces.Add(new device_memory_interface_m6800(mconfig, this)); m_class_interfaces.Add(new device_state_interface_m6800(mconfig, this)); init_m6803_insn(); m_in_port_func = new devcb_read8 [4] { new devcb_read8(this), new devcb_read8(this), new devcb_read8(this), new devcb_read8(this) }; m_out_port_func = new devcb_write8 [4] { new devcb_write8(this), new devcb_write8(this), new devcb_write8(this), new devcb_write8(this) }; m_out_sc2_func = new devcb_write_line(this); m_out_sertx_func = new devcb_write_line(this); }
namco_06xx_device(machine_config mconfig, string tag, device_t owner, u32 clock) : base(mconfig, NAMCO_06XX, tag, owner, clock) { m_control = 0; m_nmicpu = new required_device <cpu_device>(this, finder_base.DUMMY_TAG); for (int i = 0; i < 4; i++) { m_read[i] = new devcb_read8(this); } for (int i = 0; i < 4; i++) { m_readreq[i] = new devcb_write_line(this); } for (int i = 0; i < 4; i++) { m_write[i] = new devcb_write8(this); } }
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_t.ENDIANNESS_LITTLE, 8, 16); sprogram_config = new address_space_config("decrypted_opcodes", endianness_t.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; icountRef.i = 0; //icount = 0; nmi_state = false; irq_state = false; apu_irq_state = false; v_state = false; irq_taken = false; sync = false; inhibit_interrupts = false; count_before_instruction_step = 0; cache_disabled = false; }
intref m_icountRef = new intref(); //int m_icount; // construction/destruction i8257_device(machine_config mconfig, string tag, device_t owner, uint32_t clock) : base(mconfig, I8257, tag, owner, clock) { m_class_interfaces.Add(new device_execute_interface_i8257(mconfig, this)); //device_execute_interface(mconfig, *this), m_icountRef.i = 0; m_reverse_rw = false; m_tc = false; m_msb = 0; m_hreq = CLEAR_LINE; m_hack = 0; m_ready = 1; m_state = 0; m_current_channel = 0; m_last_channel = 0; m_transfer_mode = 0; m_status = 0; m_request = 0; m_temp = 0; m_out_hrq_cb = new devcb_write_line(this); m_out_tc_cb = new devcb_write_line(this); m_in_memr_cb = new devcb_read8(this); m_out_memw_cb = new devcb_write8(this); for (int i = 0; i < 4; i++) { m_in_ior_cb[i] = new devcb_read8(this); } for (int i = 0; i < 4; i++) { m_out_iow_cb[i] = new devcb_write8(this); } for (int i = 0; i < 4; i++) { m_out_dack_cb[i] = new devcb_write_line(this); } }