diff options
Diffstat (limited to 'src/devices/cpu/hphybrid/hphybrid.h')
-rw-r--r-- | src/devices/cpu/hphybrid/hphybrid.h | 142 |
1 files changed, 71 insertions, 71 deletions
diff --git a/src/devices/cpu/hphybrid/hphybrid.h b/src/devices/cpu/hphybrid/hphybrid.h index 43ce4533694..2ec2124567c 100644 --- a/src/devices/cpu/hphybrid/hphybrid.h +++ b/src/devices/cpu/hphybrid/hphybrid.h @@ -87,28 +87,28 @@ public: DECLARE_WRITE_LINE_MEMBER(status_w); DECLARE_WRITE_LINE_MEMBER(flag_w); - UINT8 pa_r(void) const; + uint8_t pa_r(void) const; template<class _Object> static devcb_base &set_pa_changed_func(device_t &device, _Object object) { return downcast<hp_hybrid_cpu_device &>(device).m_pa_changed_func.set_callback(object); } protected: - hp_hybrid_cpu_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname , UINT8 addrwidth); + hp_hybrid_cpu_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, uint32_t clock, const char *shortname , uint8_t addrwidth); // device-level overrides virtual void device_start() override; virtual void device_reset() override; // device_execute_interface overrides - virtual UINT32 execute_min_cycles() const override { return 6; } - virtual UINT32 execute_input_lines() const override { return 2; } - virtual UINT32 execute_default_irq_vector() const override { return 0xffff; } + virtual uint32_t execute_min_cycles() const override { return 6; } + virtual uint32_t execute_input_lines() const override { return 2; } + virtual uint32_t execute_default_irq_vector() const override { return 0xffff; } virtual void execute_run() override; virtual void execute_set_input(int inputnum, int state) override; - UINT16 execute_one(UINT16 opcode); - UINT16 execute_one_sub(UINT16 opcode); + uint16_t execute_one(uint16_t opcode); + uint16_t execute_one_sub(uint16_t opcode); // Execute an instruction that doesn't belong to either BPC or IOC - virtual UINT16 execute_no_bpc_ioc(UINT16 opcode) = 0; + virtual uint16_t execute_no_bpc_ioc(uint16_t opcode) = 0; // device_memory_interface overrides virtual const address_space_config *memory_space_config(address_spacenum spacenum = AS_0) const override { return (spacenum == AS_PROGRAM) ? &m_program_config : ( (spacenum == AS_IO) ? &m_io_config : nullptr ); } @@ -117,9 +117,9 @@ protected: void state_string_export(const device_state_entry &entry, std::string &str) const override; // device_disasm_interface overrides - virtual UINT32 disasm_min_opcode_bytes() const override { return 2; } - virtual UINT32 disasm_max_opcode_bytes() const override { return 2; } - virtual offs_t disasm_disassemble(char *buffer, offs_t pc, const UINT8 *oprom, const UINT8 *opram, UINT32 options) override; + virtual uint32_t disasm_min_opcode_bytes() const override { return 2; } + virtual uint32_t disasm_max_opcode_bytes() const override { return 2; } + virtual offs_t disasm_disassemble(char *buffer, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options) override; // Different cases of memory access // See patent @ pg 361 @@ -131,21 +131,21 @@ protected: } aec_cases_t; // do memory address extension - virtual UINT32 add_mae(aec_cases_t aec_case , UINT16 addr) = 0; + virtual uint32_t add_mae(aec_cases_t aec_case , uint16_t addr) = 0; - UINT16 remove_mae(UINT32 addr); + uint16_t remove_mae(uint32_t addr); - UINT16 RM(aec_cases_t aec_case , UINT16 addr); - UINT16 RM(UINT32 addr); - virtual UINT16 read_non_common_reg(UINT16 addr) = 0; + uint16_t RM(aec_cases_t aec_case , uint16_t addr); + uint16_t RM(uint32_t addr); + virtual uint16_t read_non_common_reg(uint16_t addr) = 0; - void WM(aec_cases_t aec_case , UINT16 addr , UINT16 v); - void WM(UINT32 addr , UINT16 v); - virtual void write_non_common_reg(UINT16 addr , UINT16 v) = 0; + void WM(aec_cases_t aec_case , uint16_t addr , uint16_t v); + void WM(uint32_t addr , uint16_t v); + virtual void write_non_common_reg(uint16_t addr , uint16_t v) = 0; - UINT16 fetch(void); + uint16_t fetch(void); - UINT16 get_skip_addr(UINT16 opcode , bool condition) const; + uint16_t get_skip_addr(uint16_t opcode , bool condition) const; devcb_write8 m_pa_changed_func; @@ -153,21 +153,21 @@ protected: bool m_forced_bsc_25; // State of processor - UINT16 m_reg_A; // Register A - UINT16 m_reg_B; // Register B - UINT16 m_reg_P; // Register P - UINT16 m_reg_R; // Register R - UINT16 m_reg_C; // Register C - UINT16 m_reg_D; // Register D - UINT16 m_reg_IV; // Register IV - UINT16 m_reg_W; // Register W - UINT8 m_reg_PA[ HPHYBRID_INT_LVLS + 1 ]; // Stack of register PA (4 bit-long) - UINT32 m_flags; // Flags - UINT8 m_dmapa; // DMA peripheral address (4 bits) - UINT16 m_dmama; // DMA address - UINT16 m_dmac; // DMA counter - UINT16 m_reg_I; // Instruction register - UINT32 m_genpc; // Full PC + uint16_t m_reg_A; // Register A + uint16_t m_reg_B; // Register B + uint16_t m_reg_P; // Register P + uint16_t m_reg_R; // Register R + uint16_t m_reg_C; // Register C + uint16_t m_reg_D; // Register D + uint16_t m_reg_IV; // Register IV + uint16_t m_reg_W; // Register W + uint8_t m_reg_PA[ HPHYBRID_INT_LVLS + 1 ]; // Stack of register PA (4 bit-long) + uint32_t m_flags; // Flags + uint8_t m_dmapa; // DMA peripheral address (4 bits) + uint16_t m_dmama; // DMA address + uint16_t m_dmac; // DMA counter + uint16_t m_reg_I; // Instruction register + uint32_t m_genpc; // Full PC private: address_space_config m_program_config; @@ -177,57 +177,57 @@ private: direct_read_data *m_direct; address_space *m_io; - UINT32 get_ea(UINT16 opcode); - void do_add(UINT16& addend1 , UINT16 addend2); - UINT16 get_skip_addr_sc(UINT16 opcode , UINT16& v , unsigned n); - UINT16 get_skip_addr_sc(UINT16 opcode , UINT32& v , unsigned n); - void do_pw(UINT16 opcode); + uint32_t get_ea(uint16_t opcode); + void do_add(uint16_t& addend1 , uint16_t addend2); + uint16_t get_skip_addr_sc(uint16_t opcode , uint16_t& v , unsigned n); + uint16_t get_skip_addr_sc(uint16_t opcode , uint32_t& v , unsigned n); + void do_pw(uint16_t opcode); void check_for_interrupts(void); virtual void enter_isr(void); void handle_dma(void); - UINT16 RIO(UINT8 pa , UINT8 ic); - void WIO(UINT8 pa , UINT8 ic , UINT16 v); + uint16_t RIO(uint8_t pa , uint8_t ic); + void WIO(uint8_t pa , uint8_t ic , uint16_t v); }; class hp_5061_3001_cpu_device : public hp_hybrid_cpu_device { public: - hp_5061_3001_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + hp_5061_3001_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); static void set_boot_mode_static(device_t &device, bool mode) { downcast<hp_5061_3001_cpu_device &>(device).m_boot_mode = mode; } protected: virtual void device_start() override; virtual void device_reset() override; - virtual UINT32 execute_max_cycles() const override { return 237; } // FMP 15 - - static UINT8 do_dec_shift_r(UINT8 d1 , UINT64& mantissa); - static UINT8 do_dec_shift_l(UINT8 d12 , UINT64& mantissa); - UINT64 get_ar1(void); - void set_ar1(UINT64 v); - UINT64 get_ar2(void) const; - void set_ar2(UINT64 v); - UINT64 do_mrxy(UINT64 ar); - bool do_dec_add(bool carry_in , UINT64& a , UINT64 b); + virtual uint32_t execute_max_cycles() const override { return 237; } // FMP 15 + + static uint8_t do_dec_shift_r(uint8_t d1 , uint64_t& mantissa); + static uint8_t do_dec_shift_l(uint8_t d12 , uint64_t& mantissa); + uint64_t get_ar1(void); + void set_ar1(uint64_t v); + uint64_t get_ar2(void) const; + void set_ar2(uint64_t v); + uint64_t do_mrxy(uint64_t ar); + bool do_dec_add(bool carry_in , uint64_t& a , uint64_t b); void do_mpy(void); - virtual UINT16 execute_no_bpc_ioc(UINT16 opcode) override; - virtual offs_t disasm_disassemble(char *buffer, offs_t pc, const UINT8 *oprom, const UINT8 *opram, UINT32 options) override; - virtual UINT32 add_mae(aec_cases_t aec_case , UINT16 addr) override; - virtual UINT16 read_non_common_reg(UINT16 addr) override; - virtual void write_non_common_reg(UINT16 addr , UINT16 v) override; + virtual uint16_t execute_no_bpc_ioc(uint16_t opcode) override; + virtual offs_t disasm_disassemble(char *buffer, offs_t pc, const uint8_t *oprom, const uint8_t *opram, uint32_t options) override; + virtual uint32_t add_mae(aec_cases_t aec_case , uint16_t addr) override; + virtual uint16_t read_non_common_reg(uint16_t addr) override; + virtual void write_non_common_reg(uint16_t addr , uint16_t v) override; private: bool m_boot_mode; // Additional state of processor - UINT16 m_reg_ar2[ 4 ]; // AR2 register - UINT16 m_reg_se; // SE register (4 bits) - UINT16 m_reg_r25; // R25 register - UINT16 m_reg_r26; // R26 register - UINT16 m_reg_r27; // R27 register - UINT16 m_reg_aec[ HP_REG_R37_ADDR - HP_REG_R32_ADDR + 1 ]; // AEC registers R32-R37 + uint16_t m_reg_ar2[ 4 ]; // AR2 register + uint16_t m_reg_se; // SE register (4 bits) + uint16_t m_reg_r25; // R25 register + uint16_t m_reg_r26; // R26 register + uint16_t m_reg_r27; // R27 register + uint16_t m_reg_aec[ HP_REG_R37_ADDR - HP_REG_R32_ADDR + 1 ]; // AEC registers R32-R37 virtual void enter_isr(void) override; }; @@ -235,14 +235,14 @@ private: class hp_5061_3011_cpu_device : public hp_hybrid_cpu_device { public: - hp_5061_3011_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + hp_5061_3011_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); protected: - virtual UINT32 execute_max_cycles() const override { return 25; } - virtual UINT16 execute_no_bpc_ioc(UINT16 opcode) override; - virtual UINT32 add_mae(aec_cases_t aec_case , UINT16 addr) override; - virtual UINT16 read_non_common_reg(UINT16 addr) override; - virtual void write_non_common_reg(UINT16 addr , UINT16 v) override; + virtual uint32_t execute_max_cycles() const override { return 25; } + virtual uint16_t execute_no_bpc_ioc(uint16_t opcode) override; + virtual uint32_t add_mae(aec_cases_t aec_case , uint16_t addr) override; + virtual uint16_t read_non_common_reg(uint16_t addr) override; + virtual void write_non_common_reg(uint16_t addr , uint16_t v) override; }; |