summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/e132xs/e132xs.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/e132xs/e132xs.h')
-rw-r--r--src/devices/cpu/e132xs/e132xs.h20
1 files changed, 13 insertions, 7 deletions
diff --git a/src/devices/cpu/e132xs/e132xs.h b/src/devices/cpu/e132xs/e132xs.h
index 44730b4f163..1acc86d53e9 100644
--- a/src/devices/cpu/e132xs/e132xs.h
+++ b/src/devices/cpu/e132xs/e132xs.h
@@ -108,6 +108,12 @@ protected:
LIMM = 1
};
+ enum shift_type
+ {
+ N_LO = 0,
+ N_HI = 1,
+ };
+
// construction/destruction
hyperstone_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock,
const device_type type, uint32_t prg_data_width, uint32_t io_data_width, address_map_constructor internal_map);
@@ -240,18 +246,18 @@ private:
template <reg_bank DST_GLOBAL, imm_size IMM_LONG> void hyperstone_andni();
template <reg_bank DST_GLOBAL, imm_size IMM_LONG> void hyperstone_ori();
template <reg_bank DST_GLOBAL, imm_size IMM_LONG> void hyperstone_xori();
- void hyperstone_shrdi();
+ template <shift_type HI_N> void hyperstone_shrdi();
void hyperstone_shrd();
void hyperstone_shr();
- template <reg_bank DST_GLOBAL> void hyperstone_shri();
- void hyperstone_sardi();
+ template <shift_type HI_N, reg_bank DST_GLOBAL> void hyperstone_shri();
+ template <shift_type HI_N> void hyperstone_sardi();
void hyperstone_sard();
void hyperstone_sar();
- template <reg_bank DST_GLOBAL> void hyperstone_sari();
- void hyperstone_shldi();
+ template <shift_type HI_N, reg_bank DST_GLOBAL> void hyperstone_sari();
+ template <shift_type HI_N> void hyperstone_shldi();
void hyperstone_shld();
void hyperstone_shl();
- template <reg_bank DST_GLOBAL> void hyperstone_shli();
+ template <shift_type HI_N, reg_bank DST_GLOBAL> void hyperstone_shli();
void hyperstone_testlz();
void hyperstone_rol();
template <reg_bank DST_GLOBAL, reg_bank SRC_GLOBAL> void hyperstone_ldxx1();
@@ -263,7 +269,7 @@ private:
template <reg_bank DST_GLOBAL, reg_bank SRC_GLOBAL> void hyperstone_muls();
template <reg_bank DST_GLOBAL, reg_bank SRC_GLOBAL> void hyperstone_mul();
- template <reg_bank DST_GLOBAL> void hyperstone_set();
+ template <shift_type HI_N, reg_bank DST_GLOBAL> void hyperstone_set();
template <reg_bank SRC_GLOBAL> void hyperstone_ldwr();
template <reg_bank SRC_GLOBAL> void hyperstone_lddr();