summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/hphybrid/hphybrid.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/hphybrid/hphybrid.h')
-rw-r--r--src/devices/cpu/hphybrid/hphybrid.h142
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;
};