diff options
author | Alexey Yakovenko <wakeroid@gmail.com> | 2010-07-04 10:51:28 +0200 |
---|---|---|
committer | Alexey Yakovenko <wakeroid@gmail.com> | 2010-07-04 10:51:28 +0200 |
commit | e6013001a3e730497e4606add4aff3ac743aedc4 (patch) | |
tree | 0b347abed118addaf7631f78cbc1649b0b9d0596 /plugins/ao/eng_ssf/m68kopac.c | |
parent | efd7ae55acdca5eef47432eefed35d90d594d572 (diff) |
ao plugin: eng_ssf reentrant
Diffstat (limited to 'plugins/ao/eng_ssf/m68kopac.c')
-rw-r--r-- | plugins/ao/eng_ssf/m68kopac.c | 2301 |
1 files changed, 1151 insertions, 1150 deletions
diff --git a/plugins/ao/eng_ssf/m68kopac.c b/plugins/ao/eng_ssf/m68kopac.c index 535eb888..405b6bbd 100644 --- a/plugins/ao/eng_ssf/m68kopac.c +++ b/plugins/ao/eng_ssf/m68kopac.c @@ -1,3 +1,4 @@ +#include "ao.h" #include "m68kcpu.h" /* ======================================================================== */ @@ -5,19 +6,19 @@ /* ======================================================================== */ -void m68k_op_1010(void) +void m68k_op_1010(m68ki_cpu_core *cpu) { - m68ki_exception_1010(); + m68ki_exception_1010(cpu); } -void m68k_op_1111(void) +void m68k_op_1111(m68ki_cpu_core *cpu) { - m68ki_exception_1111(); + m68ki_exception_1111(cpu); } -void m68k_op_abcd_8_rr(void) +void m68k_op_abcd_8_rr(m68ki_cpu_core *cpu) { uint* r_dst = &DX; uint src = DY; @@ -43,9 +44,9 @@ void m68k_op_abcd_8_rr(void) } -void m68k_op_abcd_8_mm_ax7(void) +void m68k_op_abcd_8_mm_ax7(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PD_8(); + uint src = OPER_AY_PD_8(cpu); uint ea = EA_A7_PD_8(); uint dst = m68ki_read_8(ea); uint res = LOW_NIBBLE(src) + LOW_NIBBLE(dst) + XFLAG_AS_1(); @@ -69,9 +70,9 @@ void m68k_op_abcd_8_mm_ax7(void) } -void m68k_op_abcd_8_mm_ay7(void) +void m68k_op_abcd_8_mm_ay7(m68ki_cpu_core *cpu) { - uint src = OPER_A7_PD_8(); + uint src = OPER_A7_PD_8(cpu); uint ea = EA_AX_PD_8(); uint dst = m68ki_read_8(ea); uint res = LOW_NIBBLE(src) + LOW_NIBBLE(dst) + XFLAG_AS_1(); @@ -95,9 +96,9 @@ void m68k_op_abcd_8_mm_ay7(void) } -void m68k_op_abcd_8_mm_axy7(void) +void m68k_op_abcd_8_mm_axy7(m68ki_cpu_core *cpu) { - uint src = OPER_A7_PD_8(); + uint src = OPER_A7_PD_8(cpu); uint ea = EA_A7_PD_8(); uint dst = m68ki_read_8(ea); uint res = LOW_NIBBLE(src) + LOW_NIBBLE(dst) + XFLAG_AS_1(); @@ -121,9 +122,9 @@ void m68k_op_abcd_8_mm_axy7(void) } -void m68k_op_abcd_8_mm(void) +void m68k_op_abcd_8_mm(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PD_8(); + uint src = OPER_AY_PD_8(cpu); uint ea = EA_AX_PD_8(); uint dst = m68ki_read_8(ea); uint res = LOW_NIBBLE(src) + LOW_NIBBLE(dst) + XFLAG_AS_1(); @@ -147,7 +148,7 @@ void m68k_op_abcd_8_mm(void) } -void m68k_op_add_8_er_d(void) +void m68k_op_add_8_er_d(m68ki_cpu_core *cpu) { uint* r_dst = &DX; uint src = MASK_OUT_ABOVE_8(DY); @@ -163,10 +164,10 @@ void m68k_op_add_8_er_d(void) } -void m68k_op_add_8_er_ai(void) +void m68k_op_add_8_er_ai(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_AI_8(); + uint src = OPER_AY_AI_8(cpu); uint dst = MASK_OUT_ABOVE_8(*r_dst); uint res = src + dst; @@ -179,10 +180,10 @@ void m68k_op_add_8_er_ai(void) } -void m68k_op_add_8_er_pi(void) +void m68k_op_add_8_er_pi(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_PI_8(); + uint src = OPER_AY_PI_8(cpu); uint dst = MASK_OUT_ABOVE_8(*r_dst); uint res = src + dst; @@ -195,10 +196,10 @@ void m68k_op_add_8_er_pi(void) } -void m68k_op_add_8_er_pi7(void) +void m68k_op_add_8_er_pi7(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_A7_PI_8(); + uint src = OPER_A7_PI_8(cpu); uint dst = MASK_OUT_ABOVE_8(*r_dst); uint res = src + dst; @@ -211,10 +212,10 @@ void m68k_op_add_8_er_pi7(void) } -void m68k_op_add_8_er_pd(void) +void m68k_op_add_8_er_pd(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_PD_8(); + uint src = OPER_AY_PD_8(cpu); uint dst = MASK_OUT_ABOVE_8(*r_dst); uint res = src + dst; @@ -227,10 +228,10 @@ void m68k_op_add_8_er_pd(void) } -void m68k_op_add_8_er_pd7(void) +void m68k_op_add_8_er_pd7(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_A7_PD_8(); + uint src = OPER_A7_PD_8(cpu); uint dst = MASK_OUT_ABOVE_8(*r_dst); uint res = src + dst; @@ -243,10 +244,10 @@ void m68k_op_add_8_er_pd7(void) } -void m68k_op_add_8_er_di(void) +void m68k_op_add_8_er_di(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_DI_8(); + uint src = OPER_AY_DI_8(cpu); uint dst = MASK_OUT_ABOVE_8(*r_dst); uint res = src + dst; @@ -259,10 +260,10 @@ void m68k_op_add_8_er_di(void) } -void m68k_op_add_8_er_ix(void) +void m68k_op_add_8_er_ix(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_IX_8(); + uint src = OPER_AY_IX_8(cpu); uint dst = MASK_OUT_ABOVE_8(*r_dst); uint res = src + dst; @@ -275,10 +276,10 @@ void m68k_op_add_8_er_ix(void) } -void m68k_op_add_8_er_aw(void) +void m68k_op_add_8_er_aw(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AW_8(); + uint src = OPER_AW_8(cpu); uint dst = MASK_OUT_ABOVE_8(*r_dst); uint res = src + dst; @@ -291,10 +292,10 @@ void m68k_op_add_8_er_aw(void) } -void m68k_op_add_8_er_al(void) +void m68k_op_add_8_er_al(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AL_8(); + uint src = OPER_AL_8(cpu); uint dst = MASK_OUT_ABOVE_8(*r_dst); uint res = src + dst; @@ -307,10 +308,10 @@ void m68k_op_add_8_er_al(void) } -void m68k_op_add_8_er_pcdi(void) +void m68k_op_add_8_er_pcdi(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_PCDI_8(); + uint src = OPER_PCDI_8(cpu); uint dst = MASK_OUT_ABOVE_8(*r_dst); uint res = src + dst; @@ -323,10 +324,10 @@ void m68k_op_add_8_er_pcdi(void) } -void m68k_op_add_8_er_pcix(void) +void m68k_op_add_8_er_pcix(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_PCIX_8(); + uint src = OPER_PCIX_8(cpu); uint dst = MASK_OUT_ABOVE_8(*r_dst); uint res = src + dst; @@ -339,7 +340,7 @@ void m68k_op_add_8_er_pcix(void) } -void m68k_op_add_8_er_i(void) +void m68k_op_add_8_er_i(m68ki_cpu_core *cpu) { uint* r_dst = &DX; uint src = OPER_I_8(); @@ -355,7 +356,7 @@ void m68k_op_add_8_er_i(void) } -void m68k_op_add_16_er_d(void) +void m68k_op_add_16_er_d(m68ki_cpu_core *cpu) { uint* r_dst = &DX; uint src = MASK_OUT_ABOVE_16(DY); @@ -371,7 +372,7 @@ void m68k_op_add_16_er_d(void) } -void m68k_op_add_16_er_a(void) +void m68k_op_add_16_er_a(m68ki_cpu_core *cpu) { uint* r_dst = &DX; uint src = MASK_OUT_ABOVE_16(AY); @@ -387,10 +388,10 @@ void m68k_op_add_16_er_a(void) } -void m68k_op_add_16_er_ai(void) +void m68k_op_add_16_er_ai(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_AI_16(); + uint src = OPER_AY_AI_16(cpu); uint dst = MASK_OUT_ABOVE_16(*r_dst); uint res = src + dst; @@ -403,10 +404,10 @@ void m68k_op_add_16_er_ai(void) } -void m68k_op_add_16_er_pi(void) +void m68k_op_add_16_er_pi(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_PI_16(); + uint src = OPER_AY_PI_16(cpu); uint dst = MASK_OUT_ABOVE_16(*r_dst); uint res = src + dst; @@ -419,10 +420,10 @@ void m68k_op_add_16_er_pi(void) } -void m68k_op_add_16_er_pd(void) +void m68k_op_add_16_er_pd(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_PD_16(); + uint src = OPER_AY_PD_16(cpu); uint dst = MASK_OUT_ABOVE_16(*r_dst); uint res = src + dst; @@ -435,10 +436,10 @@ void m68k_op_add_16_er_pd(void) } -void m68k_op_add_16_er_di(void) +void m68k_op_add_16_er_di(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_DI_16(); + uint src = OPER_AY_DI_16(cpu); uint dst = MASK_OUT_ABOVE_16(*r_dst); uint res = src + dst; @@ -451,10 +452,10 @@ void m68k_op_add_16_er_di(void) } -void m68k_op_add_16_er_ix(void) +void m68k_op_add_16_er_ix(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_IX_16(); + uint src = OPER_AY_IX_16(cpu); uint dst = MASK_OUT_ABOVE_16(*r_dst); uint res = src + dst; @@ -467,10 +468,10 @@ void m68k_op_add_16_er_ix(void) } -void m68k_op_add_16_er_aw(void) +void m68k_op_add_16_er_aw(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AW_16(); + uint src = OPER_AW_16(cpu); uint dst = MASK_OUT_ABOVE_16(*r_dst); uint res = src + dst; @@ -483,10 +484,10 @@ void m68k_op_add_16_er_aw(void) } -void m68k_op_add_16_er_al(void) +void m68k_op_add_16_er_al(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AL_16(); + uint src = OPER_AL_16(cpu); uint dst = MASK_OUT_ABOVE_16(*r_dst); uint res = src + dst; @@ -499,10 +500,10 @@ void m68k_op_add_16_er_al(void) } -void m68k_op_add_16_er_pcdi(void) +void m68k_op_add_16_er_pcdi(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_PCDI_16(); + uint src = OPER_PCDI_16(cpu); uint dst = MASK_OUT_ABOVE_16(*r_dst); uint res = src + dst; @@ -515,10 +516,10 @@ void m68k_op_add_16_er_pcdi(void) } -void m68k_op_add_16_er_pcix(void) +void m68k_op_add_16_er_pcix(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_PCIX_16(); + uint src = OPER_PCIX_16(cpu); uint dst = MASK_OUT_ABOVE_16(*r_dst); uint res = src + dst; @@ -531,7 +532,7 @@ void m68k_op_add_16_er_pcix(void) } -void m68k_op_add_16_er_i(void) +void m68k_op_add_16_er_i(m68ki_cpu_core *cpu) { uint* r_dst = &DX; uint src = OPER_I_16(); @@ -547,7 +548,7 @@ void m68k_op_add_16_er_i(void) } -void m68k_op_add_32_er_d(void) +void m68k_op_add_32_er_d(m68ki_cpu_core *cpu) { uint* r_dst = &DX; uint src = DY; @@ -563,7 +564,7 @@ void m68k_op_add_32_er_d(void) } -void m68k_op_add_32_er_a(void) +void m68k_op_add_32_er_a(m68ki_cpu_core *cpu) { uint* r_dst = &DX; uint src = AY; @@ -579,10 +580,10 @@ void m68k_op_add_32_er_a(void) } -void m68k_op_add_32_er_ai(void) +void m68k_op_add_32_er_ai(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_AI_32(); + uint src = OPER_AY_AI_32(cpu); uint dst = *r_dst; uint res = src + dst; @@ -595,10 +596,10 @@ void m68k_op_add_32_er_ai(void) } -void m68k_op_add_32_er_pi(void) +void m68k_op_add_32_er_pi(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_PI_32(); + uint src = OPER_AY_PI_32(cpu); uint dst = *r_dst; uint res = src + dst; @@ -611,10 +612,10 @@ void m68k_op_add_32_er_pi(void) } -void m68k_op_add_32_er_pd(void) +void m68k_op_add_32_er_pd(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_PD_32(); + uint src = OPER_AY_PD_32(cpu); uint dst = *r_dst; uint res = src + dst; @@ -627,10 +628,10 @@ void m68k_op_add_32_er_pd(void) } -void m68k_op_add_32_er_di(void) +void m68k_op_add_32_er_di(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_DI_32(); + uint src = OPER_AY_DI_32(cpu); uint dst = *r_dst; uint res = src + dst; @@ -643,10 +644,10 @@ void m68k_op_add_32_er_di(void) } -void m68k_op_add_32_er_ix(void) +void m68k_op_add_32_er_ix(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AY_IX_32(); + uint src = OPER_AY_IX_32(cpu); uint dst = *r_dst; uint res = src + dst; @@ -659,10 +660,10 @@ void m68k_op_add_32_er_ix(void) } -void m68k_op_add_32_er_aw(void) +void m68k_op_add_32_er_aw(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AW_32(); + uint src = OPER_AW_32(cpu); uint dst = *r_dst; uint res = src + dst; @@ -675,10 +676,10 @@ void m68k_op_add_32_er_aw(void) } -void m68k_op_add_32_er_al(void) +void m68k_op_add_32_er_al(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_AL_32(); + uint src = OPER_AL_32(cpu); uint dst = *r_dst; uint res = src + dst; @@ -691,10 +692,10 @@ void m68k_op_add_32_er_al(void) } -void m68k_op_add_32_er_pcdi(void) +void m68k_op_add_32_er_pcdi(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_PCDI_32(); + uint src = OPER_PCDI_32(cpu); uint dst = *r_dst; uint res = src + dst; @@ -707,10 +708,10 @@ void m68k_op_add_32_er_pcdi(void) } -void m68k_op_add_32_er_pcix(void) +void m68k_op_add_32_er_pcix(m68ki_cpu_core *cpu) { uint* r_dst = &DX; - uint src = OPER_PCIX_32(); + uint src = OPER_PCIX_32(cpu); uint dst = *r_dst; uint res = src + dst; @@ -723,7 +724,7 @@ void m68k_op_add_32_er_pcix(void) } -void m68k_op_add_32_er_i(void) +void m68k_op_add_32_er_i(m68ki_cpu_core *cpu) { uint* r_dst = &DX; uint src = OPER_I_32(); @@ -739,7 +740,7 @@ void m68k_op_add_32_er_i(void) } -void m68k_op_add_8_re_ai(void) +void m68k_op_add_8_re_ai(m68ki_cpu_core *cpu) { uint ea = EA_AY_AI_8(); uint src = MASK_OUT_ABOVE_8(DX); @@ -755,7 +756,7 @@ void m68k_op_add_8_re_ai(void) } -void m68k_op_add_8_re_pi(void) +void m68k_op_add_8_re_pi(m68ki_cpu_core *cpu) { uint ea = EA_AY_PI_8(); uint src = MASK_OUT_ABOVE_8(DX); @@ -771,7 +772,7 @@ void m68k_op_add_8_re_pi(void) } -void m68k_op_add_8_re_pi7(void) +void m68k_op_add_8_re_pi7(m68ki_cpu_core *cpu) { uint ea = EA_A7_PI_8(); uint src = MASK_OUT_ABOVE_8(DX); @@ -787,7 +788,7 @@ void m68k_op_add_8_re_pi7(void) } -void m68k_op_add_8_re_pd(void) +void m68k_op_add_8_re_pd(m68ki_cpu_core *cpu) { uint ea = EA_AY_PD_8(); uint src = MASK_OUT_ABOVE_8(DX); @@ -803,7 +804,7 @@ void m68k_op_add_8_re_pd(void) } -void m68k_op_add_8_re_pd7(void) +void m68k_op_add_8_re_pd7(m68ki_cpu_core *cpu) { uint ea = EA_A7_PD_8(); uint src = MASK_OUT_ABOVE_8(DX); @@ -819,7 +820,7 @@ void m68k_op_add_8_re_pd7(void) } -void m68k_op_add_8_re_di(void) +void m68k_op_add_8_re_di(m68ki_cpu_core *cpu) { uint ea = EA_AY_DI_8(); uint src = MASK_OUT_ABOVE_8(DX); @@ -835,7 +836,7 @@ void m68k_op_add_8_re_di(void) } -void m68k_op_add_8_re_ix(void) +void m68k_op_add_8_re_ix(m68ki_cpu_core *cpu) { uint ea = EA_AY_IX_8(); uint src = MASK_OUT_ABOVE_8(DX); @@ -851,7 +852,7 @@ void m68k_op_add_8_re_ix(void) } -void m68k_op_add_8_re_aw(void) +void m68k_op_add_8_re_aw(m68ki_cpu_core *cpu) { uint ea = EA_AW_8(); uint src = MASK_OUT_ABOVE_8(DX); @@ -867,7 +868,7 @@ void m68k_op_add_8_re_aw(void) } -void m68k_op_add_8_re_al(void) +void m68k_op_add_8_re_al(m68ki_cpu_core *cpu) { uint ea = EA_AL_8(); uint src = MASK_OUT_ABOVE_8(DX); @@ -883,7 +884,7 @@ void m68k_op_add_8_re_al(void) } -void m68k_op_add_16_re_ai(void) +void m68k_op_add_16_re_ai(m68ki_cpu_core *cpu) { uint ea = EA_AY_AI_16(); uint src = MASK_OUT_ABOVE_16(DX); @@ -899,7 +900,7 @@ void m68k_op_add_16_re_ai(void) } -void m68k_op_add_16_re_pi(void) +void m68k_op_add_16_re_pi(m68ki_cpu_core *cpu) { uint ea = EA_AY_PI_16(); uint src = MASK_OUT_ABOVE_16(DX); @@ -915,7 +916,7 @@ void m68k_op_add_16_re_pi(void) } -void m68k_op_add_16_re_pd(void) +void m68k_op_add_16_re_pd(m68ki_cpu_core *cpu) { uint ea = EA_AY_PD_16(); uint src = MASK_OUT_ABOVE_16(DX); @@ -931,7 +932,7 @@ void m68k_op_add_16_re_pd(void) } -void m68k_op_add_16_re_di(void) +void m68k_op_add_16_re_di(m68ki_cpu_core *cpu) { uint ea = EA_AY_DI_16(); uint src = MASK_OUT_ABOVE_16(DX); @@ -947,7 +948,7 @@ void m68k_op_add_16_re_di(void) } -void m68k_op_add_16_re_ix(void) +void m68k_op_add_16_re_ix(m68ki_cpu_core *cpu) { uint ea = EA_AY_IX_16(); uint src = MASK_OUT_ABOVE_16(DX); @@ -963,7 +964,7 @@ void m68k_op_add_16_re_ix(void) } -void m68k_op_add_16_re_aw(void) +void m68k_op_add_16_re_aw(m68ki_cpu_core *cpu) { uint ea = EA_AW_16(); uint src = MASK_OUT_ABOVE_16(DX); @@ -979,7 +980,7 @@ void m68k_op_add_16_re_aw(void) } -void m68k_op_add_16_re_al(void) +void m68k_op_add_16_re_al(m68ki_cpu_core *cpu) { uint ea = EA_AL_16(); uint src = MASK_OUT_ABOVE_16(DX); @@ -995,7 +996,7 @@ void m68k_op_add_16_re_al(void) } -void m68k_op_add_32_re_ai(void) +void m68k_op_add_32_re_ai(m68ki_cpu_core *cpu) { uint ea = EA_AY_AI_32(); uint src = DX; @@ -1011,7 +1012,7 @@ void m68k_op_add_32_re_ai(void) } -void m68k_op_add_32_re_pi(void) +void m68k_op_add_32_re_pi(m68ki_cpu_core *cpu) { uint ea = EA_AY_PI_32(); uint src = DX; @@ -1027,7 +1028,7 @@ void m68k_op_add_32_re_pi(void) } -void m68k_op_add_32_re_pd(void) +void m68k_op_add_32_re_pd(m68ki_cpu_core *cpu) { uint ea = EA_AY_PD_32(); uint src = DX; @@ -1043,7 +1044,7 @@ void m68k_op_add_32_re_pd(void) } -void m68k_op_add_32_re_di(void) +void m68k_op_add_32_re_di(m68ki_cpu_core *cpu) { uint ea = EA_AY_DI_32(); uint src = DX; @@ -1059,7 +1060,7 @@ void m68k_op_add_32_re_di(void) } -void m68k_op_add_32_re_ix(void) +void m68k_op_add_32_re_ix(m68ki_cpu_core *cpu) { uint ea = EA_AY_IX_32(); uint src = DX; @@ -1075,7 +1076,7 @@ void m68k_op_add_32_re_ix(void) } -void m68k_op_add_32_re_aw(void) +void m68k_op_add_32_re_aw(m68ki_cpu_core *cpu) { uint ea = EA_AW_32(); uint src = DX; @@ -1091,7 +1092,7 @@ void m68k_op_add_32_re_aw(void) } -void m68k_op_add_32_re_al(void) +void m68k_op_add_32_re_al(m68ki_cpu_core *cpu) { uint ea = EA_AL_32(); uint src = DX; @@ -1107,7 +1108,7 @@ void m68k_op_add_32_re_al(void) } -void m68k_op_adda_16_d(void) +void m68k_op_adda_16_d(m68ki_cpu_core *cpu) { uint* r_dst = &AX; @@ -1115,7 +1116,7 @@ void m68k_op_adda_16_d(void) } -void m68k_op_adda_16_a(void) +void m68k_op_adda_16_a(m68ki_cpu_core *cpu) { uint* r_dst = &AX; @@ -1123,79 +1124,79 @@ void m68k_op_adda_16_a(void) } -void m68k_op_adda_16_ai(void) +void m68k_op_adda_16_ai(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AY_AI_16())); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AY_AI_16(cpu))); } -void m68k_op_adda_16_pi(void) +void m68k_op_adda_16_pi(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AY_PI_16())); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AY_PI_16(cpu))); } -void m68k_op_adda_16_pd(void) +void m68k_op_adda_16_pd(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AY_PD_16())); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AY_PD_16(cpu))); } -void m68k_op_adda_16_di(void) +void m68k_op_adda_16_di(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AY_DI_16())); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AY_DI_16(cpu))); } -void m68k_op_adda_16_ix(void) +void m68k_op_adda_16_ix(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AY_IX_16())); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AY_IX_16(cpu))); } -void m68k_op_adda_16_aw(void) +void m68k_op_adda_16_aw(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AW_16())); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AW_16(cpu))); } -void m68k_op_adda_16_al(void) +void m68k_op_adda_16_al(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AL_16())); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_AL_16(cpu))); } -void m68k_op_adda_16_pcdi(void) +void m68k_op_adda_16_pcdi(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_PCDI_16())); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_PCDI_16(cpu))); } -void m68k_op_adda_16_pcix(void) +void m68k_op_adda_16_pcix(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_PCIX_16())); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + MAKE_INT_16(OPER_PCIX_16(cpu))); } -void m68k_op_adda_16_i(void) +void m68k_op_adda_16_i(m68ki_cpu_core *cpu) { uint* r_dst = &AX; @@ -1203,7 +1204,7 @@ void m68k_op_adda_16_i(void) } -void m68k_op_adda_32_d(void) +void m68k_op_adda_32_d(m68ki_cpu_core *cpu) { uint* r_dst = &AX; @@ -1211,7 +1212,7 @@ void m68k_op_adda_32_d(void) } -void m68k_op_adda_32_a(void) +void m68k_op_adda_32_a(m68ki_cpu_core *cpu) { uint* r_dst = &AX; @@ -1219,79 +1220,79 @@ void m68k_op_adda_32_a(void) } -void m68k_op_adda_32_ai(void) +void m68k_op_adda_32_ai(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AY_AI_32()); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AY_AI_32(cpu)); } -void m68k_op_adda_32_pi(void) +void m68k_op_adda_32_pi(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AY_PI_32()); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AY_PI_32(cpu)); } -void m68k_op_adda_32_pd(void) +void m68k_op_adda_32_pd(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AY_PD_32()); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AY_PD_32(cpu)); } -void m68k_op_adda_32_di(void) +void m68k_op_adda_32_di(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AY_DI_32()); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AY_DI_32(cpu)); } -void m68k_op_adda_32_ix(void) +void m68k_op_adda_32_ix(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AY_IX_32()); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AY_IX_32(cpu)); } -void m68k_op_adda_32_aw(void) +void m68k_op_adda_32_aw(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AW_32()); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AW_32(cpu)); } -void m68k_op_adda_32_al(void) +void m68k_op_adda_32_al(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AL_32()); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_AL_32(cpu)); } -void m68k_op_adda_32_pcdi(void) +void m68k_op_adda_32_pcdi(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_PCDI_32()); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_PCDI_32(cpu)); } -void m68k_op_adda_32_pcix(void) +void m68k_op_adda_32_pcix(m68ki_cpu_core *cpu) { uint* r_dst = &AX; - *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_PCIX_32()); + *r_dst = MASK_OUT_ABOVE_32(*r_dst + OPER_PCIX_32(cpu)); } -void m68k_op_adda_32_i(void) +void m68k_op_adda_32_i(m68ki_cpu_core *cpu) { uint* r_dst = &AX; @@ -1299,7 +1300,7 @@ void m68k_op_adda_32_i(void) } -void m68k_op_addi_8_d(void) +void m68k_op_addi_8_d(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint src = OPER_I_8(); @@ -1315,7 +1316,7 @@ void m68k_op_addi_8_d(void) } -void m68k_op_addi_8_ai(void) +void m68k_op_addi_8_ai(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AY_AI_8(); @@ -1331,7 +1332,7 @@ void m68k_op_addi_8_ai(void) } -void m68k_op_addi_8_pi(void) +void m68k_op_addi_8_pi(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AY_PI_8(); @@ -1347,7 +1348,7 @@ void m68k_op_addi_8_pi(void) } -void m68k_op_addi_8_pi7(void) +void m68k_op_addi_8_pi7(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_A7_PI_8(); @@ -1363,7 +1364,7 @@ void m68k_op_addi_8_pi7(void) } -void m68k_op_addi_8_pd(void) +void m68k_op_addi_8_pd(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AY_PD_8(); @@ -1379,7 +1380,7 @@ void m68k_op_addi_8_pd(void) } -void m68k_op_addi_8_pd7(void) +void m68k_op_addi_8_pd7(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_A7_PD_8(); @@ -1395,7 +1396,7 @@ void m68k_op_addi_8_pd7(void) } -void m68k_op_addi_8_di(void) +void m68k_op_addi_8_di(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AY_DI_8(); @@ -1411,7 +1412,7 @@ void m68k_op_addi_8_di(void) } -void m68k_op_addi_8_ix(void) +void m68k_op_addi_8_ix(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AY_IX_8(); @@ -1427,7 +1428,7 @@ void m68k_op_addi_8_ix(void) } -void m68k_op_addi_8_aw(void) +void m68k_op_addi_8_aw(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AW_8(); @@ -1443,7 +1444,7 @@ void m68k_op_addi_8_aw(void) } -void m68k_op_addi_8_al(void) +void m68k_op_addi_8_al(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AL_8(); @@ -1459,7 +1460,7 @@ void m68k_op_addi_8_al(void) } -void m68k_op_addi_16_d(void) +void m68k_op_addi_16_d(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint src = OPER_I_16(); @@ -1475,7 +1476,7 @@ void m68k_op_addi_16_d(void) } -void m68k_op_addi_16_ai(void) +void m68k_op_addi_16_ai(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AY_AI_16(); @@ -1491,7 +1492,7 @@ void m68k_op_addi_16_ai(void) } -void m68k_op_addi_16_pi(void) +void m68k_op_addi_16_pi(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AY_PI_16(); @@ -1507,7 +1508,7 @@ void m68k_op_addi_16_pi(void) } -void m68k_op_addi_16_pd(void) +void m68k_op_addi_16_pd(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AY_PD_16(); @@ -1523,7 +1524,7 @@ void m68k_op_addi_16_pd(void) } -void m68k_op_addi_16_di(void) +void m68k_op_addi_16_di(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AY_DI_16(); @@ -1539,7 +1540,7 @@ void m68k_op_addi_16_di(void) } -void m68k_op_addi_16_ix(void) +void m68k_op_addi_16_ix(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AY_IX_16(); @@ -1555,7 +1556,7 @@ void m68k_op_addi_16_ix(void) } -void m68k_op_addi_16_aw(void) +void m68k_op_addi_16_aw(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AW_16(); @@ -1571,7 +1572,7 @@ void m68k_op_addi_16_aw(void) } -void m68k_op_addi_16_al(void) +void m68k_op_addi_16_al(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AL_16(); @@ -1587,7 +1588,7 @@ void m68k_op_addi_16_al(void) } -void m68k_op_addi_32_d(void) +void m68k_op_addi_32_d(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint src = OPER_I_32(); @@ -1603,7 +1604,7 @@ void m68k_op_addi_32_d(void) } -void m68k_op_addi_32_ai(void) +void m68k_op_addi_32_ai(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AY_AI_32(); @@ -1619,7 +1620,7 @@ void m68k_op_addi_32_ai(void) } -void m68k_op_addi_32_pi(void) +void m68k_op_addi_32_pi(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AY_PI_32(); @@ -1635,7 +1636,7 @@ void m68k_op_addi_32_pi(void) } -void m68k_op_addi_32_pd(void) +void m68k_op_addi_32_pd(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AY_PD_32(); @@ -1651,7 +1652,7 @@ void m68k_op_addi_32_pd(void) } -void m68k_op_addi_32_di(void) +void m68k_op_addi_32_di(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AY_DI_32(); @@ -1667,7 +1668,7 @@ void m68k_op_addi_32_di(void) } -void m68k_op_addi_32_ix(void) +void m68k_op_addi_32_ix(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AY_IX_32(); @@ -1683,7 +1684,7 @@ void m68k_op_addi_32_ix(void) } -void m68k_op_addi_32_aw(void) +void m68k_op_addi_32_aw(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AW_32(); @@ -1699,7 +1700,7 @@ void m68k_op_addi_32_aw(void) } -void m68k_op_addi_32_al(void) +void m68k_op_addi_32_al(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AL_32(); @@ -1715,7 +1716,7 @@ void m68k_op_addi_32_al(void) } -void m68k_op_addq_8_d(void) +void m68k_op_addq_8_d(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint src = (((REG_IR >> 9) - 1) & 7) + 1; @@ -1731,7 +1732,7 @@ void m68k_op_addq_8_d(void) } -void m68k_op_addq_8_ai(void) +void m68k_op_addq_8_ai(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_AI_8(); @@ -1747,7 +1748,7 @@ void m68k_op_addq_8_ai(void) } -void m68k_op_addq_8_pi(void) +void m68k_op_addq_8_pi(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_PI_8(); @@ -1763,7 +1764,7 @@ void m68k_op_addq_8_pi(void) } -void m68k_op_addq_8_pi7(void) +void m68k_op_addq_8_pi7(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_A7_PI_8(); @@ -1779,7 +1780,7 @@ void m68k_op_addq_8_pi7(void) } -void m68k_op_addq_8_pd(void) +void m68k_op_addq_8_pd(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_PD_8(); @@ -1795,7 +1796,7 @@ void m68k_op_addq_8_pd(void) } -void m68k_op_addq_8_pd7(void) +void m68k_op_addq_8_pd7(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_A7_PD_8(); @@ -1811,7 +1812,7 @@ void m68k_op_addq_8_pd7(void) } -void m68k_op_addq_8_di(void) +void m68k_op_addq_8_di(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_DI_8(); @@ -1827,7 +1828,7 @@ void m68k_op_addq_8_di(void) } -void m68k_op_addq_8_ix(void) +void m68k_op_addq_8_ix(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_IX_8(); @@ -1843,7 +1844,7 @@ void m68k_op_addq_8_ix(void) } -void m68k_op_addq_8_aw(void) +void m68k_op_addq_8_aw(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AW_8(); @@ -1859,7 +1860,7 @@ void m68k_op_addq_8_aw(void) } -void m68k_op_addq_8_al(void) +void m68k_op_addq_8_al(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AL_8(); @@ -1875,7 +1876,7 @@ void m68k_op_addq_8_al(void) } -void m68k_op_addq_16_d(void) +void m68k_op_addq_16_d(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint src = (((REG_IR >> 9) - 1) & 7) + 1; @@ -1891,7 +1892,7 @@ void m68k_op_addq_16_d(void) } -void m68k_op_addq_16_a(void) +void m68k_op_addq_16_a(m68ki_cpu_core *cpu) { uint* r_dst = &AY; @@ -1899,7 +1900,7 @@ void m68k_op_addq_16_a(void) } -void m68k_op_addq_16_ai(void) +void m68k_op_addq_16_ai(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_AI_16(); @@ -1915,7 +1916,7 @@ void m68k_op_addq_16_ai(void) } -void m68k_op_addq_16_pi(void) +void m68k_op_addq_16_pi(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_PI_16(); @@ -1931,7 +1932,7 @@ void m68k_op_addq_16_pi(void) } -void m68k_op_addq_16_pd(void) +void m68k_op_addq_16_pd(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_PD_16(); @@ -1947,7 +1948,7 @@ void m68k_op_addq_16_pd(void) } -void m68k_op_addq_16_di(void) +void m68k_op_addq_16_di(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_DI_16(); @@ -1963,7 +1964,7 @@ void m68k_op_addq_16_di(void) } -void m68k_op_addq_16_ix(void) +void m68k_op_addq_16_ix(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_IX_16(); @@ -1979,7 +1980,7 @@ void m68k_op_addq_16_ix(void) } -void m68k_op_addq_16_aw(void) +void m68k_op_addq_16_aw(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AW_16(); @@ -1995,7 +1996,7 @@ void m68k_op_addq_16_aw(void) } -void m68k_op_addq_16_al(void) +void m68k_op_addq_16_al(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AL_16(); @@ -2011,7 +2012,7 @@ void m68k_op_addq_16_al(void) } -void m68k_op_addq_32_d(void) +void m68k_op_addq_32_d(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint src = (((REG_IR >> 9) - 1) & 7) + 1; @@ -2027,7 +2028,7 @@ void m68k_op_addq_32_d(void) } -void m68k_op_addq_32_a(void) +void m68k_op_addq_32_a(m68ki_cpu_core *cpu) { uint* r_dst = &AY; @@ -2035,7 +2036,7 @@ void m68k_op_addq_32_a(void) } -void m68k_op_addq_32_ai(void) +void m68k_op_addq_32_ai(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_AI_32(); @@ -2052,7 +2053,7 @@ void m68k_op_addq_32_ai(void) } -void m68k_op_addq_32_pi(void) +void m68k_op_addq_32_pi(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_PI_32(); @@ -2069,7 +2070,7 @@ void m68k_op_addq_32_pi(void) } -void m68k_op_addq_32_pd(void) +void m68k_op_addq_32_pd(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_PD_32(); @@ -2086,7 +2087,7 @@ void m68k_op_addq_32_pd(void) } -void m68k_op_addq_32_di(void) +void m68k_op_addq_32_di(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_DI_32(); @@ -2103,7 +2104,7 @@ void m68k_op_addq_32_di(void) } -void m68k_op_addq_32_ix(void) +void m68k_op_addq_32_ix(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AY_IX_32(); @@ -2120,7 +2121,7 @@ void m68k_op_addq_32_ix(void) } -void m68k_op_addq_32_aw(void) +void m68k_op_addq_32_aw(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AW_32(); @@ -2137,7 +2138,7 @@ void m68k_op_addq_32_aw(void) } -void m68k_op_addq_32_al(void) +void m68k_op_addq_32_al(m68ki_cpu_core *cpu) { uint src = (((REG_IR >> 9) - 1) & 7) + 1; uint ea = EA_AL_32(); @@ -2154,7 +2155,7 @@ void m68k_op_addq_32_al(void) } -void m68k_op_addx_8_rr(void) +void m68k_op_addx_8_rr(m68ki_cpu_core *cpu) { uint* r_dst = &DX; uint src = MASK_OUT_ABOVE_8(DY); @@ -2172,7 +2173,7 @@ void m68k_op_addx_8_rr(void) } -void m68k_op_addx_16_rr(void) +void m68k_op_addx_16_rr(m68ki_cpu_core *cpu) { uint* r_dst = &DX; uint src = MASK_OUT_ABOVE_16(DY); @@ -2190,7 +2191,7 @@ void m68k_op_addx_16_rr(void) } -void m68k_op_addx_32_rr(void) +void m68k_op_addx_32_rr(m68ki_cpu_core *cpu) { uint* r_dst = &DX; uint src = DY; @@ -2208,9 +2209,9 @@ void m68k_op_addx_32_rr(void) } -void m68k_op_addx_8_mm_ax7(void) +void m68k_op_addx_8_mm_ax7(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PD_8(); + uint src = OPER_AY_PD_8(cpu); uint ea = EA_A7_PD_8(); uint dst = m68ki_read_8(ea); uint res = src + dst + XFLAG_AS_1(); @@ -2226,9 +2227,9 @@ void m68k_op_addx_8_mm_ax7(void) } -void m68k_op_addx_8_mm_ay7(void) +void m68k_op_addx_8_mm_ay7(m68ki_cpu_core *cpu) { - uint src = OPER_A7_PD_8(); + uint src = OPER_A7_PD_8(cpu); uint ea = EA_AX_PD_8(); uint dst = m68ki_read_8(ea); uint res = src + dst + XFLAG_AS_1(); @@ -2244,9 +2245,9 @@ void m68k_op_addx_8_mm_ay7(void) } -void m68k_op_addx_8_mm_axy7(void) +void m68k_op_addx_8_mm_axy7(m68ki_cpu_core *cpu) { - uint src = OPER_A7_PD_8(); + uint src = OPER_A7_PD_8(cpu); uint ea = EA_A7_PD_8(); uint dst = m68ki_read_8(ea); uint res = src + dst + XFLAG_AS_1(); @@ -2262,9 +2263,9 @@ void m68k_op_addx_8_mm_axy7(void) } -void m68k_op_addx_8_mm(void) +void m68k_op_addx_8_mm(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PD_8(); + uint src = OPER_AY_PD_8(cpu); uint ea = EA_AX_PD_8(); uint dst = m68ki_read_8(ea); uint res = src + dst + XFLAG_AS_1(); @@ -2280,9 +2281,9 @@ void m68k_op_addx_8_mm(void) } -void m68k_op_addx_16_mm(void) +void m68k_op_addx_16_mm(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PD_16(); + uint src = OPER_AY_PD_16(cpu); uint ea = EA_AX_PD_16(); uint dst = m68ki_read_16(ea); uint res = src + dst + XFLAG_AS_1(); @@ -2298,9 +2299,9 @@ void m68k_op_addx_16_mm(void) } -void m68k_op_addx_32_mm(void) +void m68k_op_addx_32_mm(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PD_32(); + uint src = OPER_AY_PD_32(cpu); uint ea = EA_AX_PD_32(); uint dst = m68ki_read_32(ea); uint res = src + dst + XFLAG_AS_1(); @@ -2316,7 +2317,7 @@ void m68k_op_addx_32_mm(void) } -void m68k_op_and_8_er_d(void) +void m68k_op_and_8_er_d(m68ki_cpu_core *cpu) { FLAG_Z = MASK_OUT_ABOVE_8(DX &= (DY | 0xffffff00)); @@ -2326,9 +2327,9 @@ void m68k_op_and_8_er_d(void) } -void m68k_op_and_8_er_ai(void) +void m68k_op_and_8_er_ai(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AY_AI_8() | 0xffffff00)); + FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AY_AI_8(cpu) | 0xffffff00)); FLAG_N = NFLAG_8(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2336,9 +2337,9 @@ void m68k_op_and_8_er_ai(void) } -void m68k_op_and_8_er_pi(void) +void m68k_op_and_8_er_pi(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AY_PI_8() | 0xffffff00)); + FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AY_PI_8(cpu) | 0xffffff00)); FLAG_N = NFLAG_8(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2346,9 +2347,9 @@ void m68k_op_and_8_er_pi(void) } -void m68k_op_and_8_er_pi7(void) +void m68k_op_and_8_er_pi7(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_A7_PI_8() | 0xffffff00)); + FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_A7_PI_8(cpu) | 0xffffff00)); FLAG_N = NFLAG_8(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2356,9 +2357,9 @@ void m68k_op_and_8_er_pi7(void) } -void m68k_op_and_8_er_pd(void) +void m68k_op_and_8_er_pd(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AY_PD_8() | 0xffffff00)); + FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AY_PD_8(cpu) | 0xffffff00)); FLAG_N = NFLAG_8(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2366,9 +2367,9 @@ void m68k_op_and_8_er_pd(void) } -void m68k_op_and_8_er_pd7(void) +void m68k_op_and_8_er_pd7(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_A7_PD_8() | 0xffffff00)); + FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_A7_PD_8(cpu) | 0xffffff00)); FLAG_N = NFLAG_8(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2376,9 +2377,9 @@ void m68k_op_and_8_er_pd7(void) } -void m68k_op_and_8_er_di(void) +void m68k_op_and_8_er_di(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AY_DI_8() | 0xffffff00)); + FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AY_DI_8(cpu) | 0xffffff00)); FLAG_N = NFLAG_8(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2386,9 +2387,9 @@ void m68k_op_and_8_er_di(void) } -void m68k_op_and_8_er_ix(void) +void m68k_op_and_8_er_ix(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AY_IX_8() | 0xffffff00)); + FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AY_IX_8(cpu) | 0xffffff00)); FLAG_N = NFLAG_8(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2396,9 +2397,9 @@ void m68k_op_and_8_er_ix(void) } -void m68k_op_and_8_er_aw(void) +void m68k_op_and_8_er_aw(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AW_8() | 0xffffff00)); + FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AW_8(cpu) | 0xffffff00)); FLAG_N = NFLAG_8(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2406,9 +2407,9 @@ void m68k_op_and_8_er_aw(void) } -void m68k_op_and_8_er_al(void) +void m68k_op_and_8_er_al(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AL_8() | 0xffffff00)); + FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_AL_8(cpu) | 0xffffff00)); FLAG_N = NFLAG_8(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2416,9 +2417,9 @@ void m68k_op_and_8_er_al(void) } -void m68k_op_and_8_er_pcdi(void) +void m68k_op_and_8_er_pcdi(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_PCDI_8() | 0xffffff00)); + FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_PCDI_8(cpu) | 0xffffff00)); FLAG_N = NFLAG_8(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2426,9 +2427,9 @@ void m68k_op_and_8_er_pcdi(void) } -void m68k_op_and_8_er_pcix(void) +void m68k_op_and_8_er_pcix(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_PCIX_8() | 0xffffff00)); + FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_PCIX_8(cpu) | 0xffffff00)); FLAG_N = NFLAG_8(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2436,7 +2437,7 @@ void m68k_op_and_8_er_pcix(void) } -void m68k_op_and_8_er_i(void) +void m68k_op_and_8_er_i(m68ki_cpu_core *cpu) { FLAG_Z = MASK_OUT_ABOVE_8(DX &= (OPER_I_8() | 0xffffff00)); @@ -2446,7 +2447,7 @@ void m68k_op_and_8_er_i(void) } -void m68k_op_and_16_er_d(void) +void m68k_op_and_16_er_d(m68ki_cpu_core *cpu) { FLAG_Z = MASK_OUT_ABOVE_16(DX &= (DY | 0xffff0000)); @@ -2456,9 +2457,9 @@ void m68k_op_and_16_er_d(void) } -void m68k_op_and_16_er_ai(void) +void m68k_op_and_16_er_ai(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AY_AI_16() | 0xffff0000)); + FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AY_AI_16(cpu) | 0xffff0000)); FLAG_N = NFLAG_16(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2466,9 +2467,9 @@ void m68k_op_and_16_er_ai(void) } -void m68k_op_and_16_er_pi(void) +void m68k_op_and_16_er_pi(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AY_PI_16() | 0xffff0000)); + FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AY_PI_16(cpu) | 0xffff0000)); FLAG_N = NFLAG_16(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2476,9 +2477,9 @@ void m68k_op_and_16_er_pi(void) } -void m68k_op_and_16_er_pd(void) +void m68k_op_and_16_er_pd(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AY_PD_16() | 0xffff0000)); + FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AY_PD_16(cpu) | 0xffff0000)); FLAG_N = NFLAG_16(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2486,9 +2487,9 @@ void m68k_op_and_16_er_pd(void) } -void m68k_op_and_16_er_di(void) +void m68k_op_and_16_er_di(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AY_DI_16() | 0xffff0000)); + FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AY_DI_16(cpu) | 0xffff0000)); FLAG_N = NFLAG_16(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2496,9 +2497,9 @@ void m68k_op_and_16_er_di(void) } -void m68k_op_and_16_er_ix(void) +void m68k_op_and_16_er_ix(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AY_IX_16() | 0xffff0000)); + FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AY_IX_16(cpu) | 0xffff0000)); FLAG_N = NFLAG_16(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2506,9 +2507,9 @@ void m68k_op_and_16_er_ix(void) } -void m68k_op_and_16_er_aw(void) +void m68k_op_and_16_er_aw(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AW_16() | 0xffff0000)); + FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AW_16(cpu) | 0xffff0000)); FLAG_N = NFLAG_16(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2516,9 +2517,9 @@ void m68k_op_and_16_er_aw(void) } -void m68k_op_and_16_er_al(void) +void m68k_op_and_16_er_al(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AL_16() | 0xffff0000)); + FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_AL_16(cpu) | 0xffff0000)); FLAG_N = NFLAG_16(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2526,9 +2527,9 @@ void m68k_op_and_16_er_al(void) } -void m68k_op_and_16_er_pcdi(void) +void m68k_op_and_16_er_pcdi(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_PCDI_16() | 0xffff0000)); + FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_PCDI_16(cpu) | 0xffff0000)); FLAG_N = NFLAG_16(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2536,9 +2537,9 @@ void m68k_op_and_16_er_pcdi(void) } -void m68k_op_and_16_er_pcix(void) +void m68k_op_and_16_er_pcix(m68ki_cpu_core *cpu) { - FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_PCIX_16() | 0xffff0000)); + FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_PCIX_16(cpu) | 0xffff0000)); FLAG_N = NFLAG_16(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2546,7 +2547,7 @@ void m68k_op_and_16_er_pcix(void) } -void m68k_op_and_16_er_i(void) +void m68k_op_and_16_er_i(m68ki_cpu_core *cpu) { FLAG_Z = MASK_OUT_ABOVE_16(DX &= (OPER_I_16() | 0xffff0000)); @@ -2556,7 +2557,7 @@ void m68k_op_and_16_er_i(void) } -void m68k_op_and_32_er_d(void) +void m68k_op_and_32_er_d(m68ki_cpu_core *cpu) { FLAG_Z = DX &= DY; @@ -2566,9 +2567,9 @@ void m68k_op_and_32_er_d(void) } -void m68k_op_and_32_er_ai(void) +void m68k_op_and_32_er_ai(m68ki_cpu_core *cpu) { - FLAG_Z = DX &= OPER_AY_AI_32(); + FLAG_Z = DX &= OPER_AY_AI_32(cpu); FLAG_N = NFLAG_32(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2576,9 +2577,9 @@ void m68k_op_and_32_er_ai(void) } -void m68k_op_and_32_er_pi(void) +void m68k_op_and_32_er_pi(m68ki_cpu_core *cpu) { - FLAG_Z = DX &= OPER_AY_PI_32(); + FLAG_Z = DX &= OPER_AY_PI_32(cpu); FLAG_N = NFLAG_32(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2586,9 +2587,9 @@ void m68k_op_and_32_er_pi(void) } -void m68k_op_and_32_er_pd(void) +void m68k_op_and_32_er_pd(m68ki_cpu_core *cpu) { - FLAG_Z = DX &= OPER_AY_PD_32(); + FLAG_Z = DX &= OPER_AY_PD_32(cpu); FLAG_N = NFLAG_32(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2596,9 +2597,9 @@ void m68k_op_and_32_er_pd(void) } -void m68k_op_and_32_er_di(void) +void m68k_op_and_32_er_di(m68ki_cpu_core *cpu) { - FLAG_Z = DX &= OPER_AY_DI_32(); + FLAG_Z = DX &= OPER_AY_DI_32(cpu); FLAG_N = NFLAG_32(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2606,9 +2607,9 @@ void m68k_op_and_32_er_di(void) } -void m68k_op_and_32_er_ix(void) +void m68k_op_and_32_er_ix(m68ki_cpu_core *cpu) { - FLAG_Z = DX &= OPER_AY_IX_32(); + FLAG_Z = DX &= OPER_AY_IX_32(cpu); FLAG_N = NFLAG_32(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2616,9 +2617,9 @@ void m68k_op_and_32_er_ix(void) } -void m68k_op_and_32_er_aw(void) +void m68k_op_and_32_er_aw(m68ki_cpu_core *cpu) { - FLAG_Z = DX &= OPER_AW_32(); + FLAG_Z = DX &= OPER_AW_32(cpu); FLAG_N = NFLAG_32(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2626,9 +2627,9 @@ void m68k_op_and_32_er_aw(void) } -void m68k_op_and_32_er_al(void) +void m68k_op_and_32_er_al(m68ki_cpu_core *cpu) { - FLAG_Z = DX &= OPER_AL_32(); + FLAG_Z = DX &= OPER_AL_32(cpu); FLAG_N = NFLAG_32(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2636,9 +2637,9 @@ void m68k_op_and_32_er_al(void) } -void m68k_op_and_32_er_pcdi(void) +void m68k_op_and_32_er_pcdi(m68ki_cpu_core *cpu) { - FLAG_Z = DX &= OPER_PCDI_32(); + FLAG_Z = DX &= OPER_PCDI_32(cpu); FLAG_N = NFLAG_32(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2646,9 +2647,9 @@ void m68k_op_and_32_er_pcdi(void) } -void m68k_op_and_32_er_pcix(void) +void m68k_op_and_32_er_pcix(m68ki_cpu_core *cpu) { - FLAG_Z = DX &= OPER_PCIX_32(); + FLAG_Z = DX &= OPER_PCIX_32(cpu); FLAG_N = NFLAG_32(FLAG_Z); FLAG_C = CFLAG_CLEAR; @@ -2656,7 +2657,7 @@ void m68k_op_and_32_er_pcix(void) } -void m68k_op_and_32_er_i(void) +void m68k_op_and_32_er_i(m68ki_cpu_core *cpu) { FLAG_Z = DX &= OPER_I_32(); @@ -2666,7 +2667,7 @@ void m68k_op_and_32_er_i(void) } -void m68k_op_and_8_re_ai(void) +void m68k_op_and_8_re_ai(m68ki_cpu_core *cpu) { uint ea = EA_AY_AI_8(); uint res = DX & m68ki_read_8(ea); @@ -2680,7 +2681,7 @@ void m68k_op_and_8_re_ai(void) } -void m68k_op_and_8_re_pi(void) +void m68k_op_and_8_re_pi(m68ki_cpu_core *cpu) { uint ea = EA_AY_PI_8(); uint res = DX & m68ki_read_8(ea); @@ -2694,7 +2695,7 @@ void m68k_op_and_8_re_pi(void) } -void m68k_op_and_8_re_pi7(void) +void m68k_op_and_8_re_pi7(m68ki_cpu_core *cpu) { uint ea = EA_A7_PI_8(); uint res = DX & m68ki_read_8(ea); @@ -2708,7 +2709,7 @@ void m68k_op_and_8_re_pi7(void) } -void m68k_op_and_8_re_pd(void) +void m68k_op_and_8_re_pd(m68ki_cpu_core *cpu) { uint ea = EA_AY_PD_8(); uint res = DX & m68ki_read_8(ea); @@ -2722,7 +2723,7 @@ void m68k_op_and_8_re_pd(void) } -void m68k_op_and_8_re_pd7(void) +void m68k_op_and_8_re_pd7(m68ki_cpu_core *cpu) { uint ea = EA_A7_PD_8(); uint res = DX & m68ki_read_8(ea); @@ -2736,7 +2737,7 @@ void m68k_op_and_8_re_pd7(void) } -void m68k_op_and_8_re_di(void) +void m68k_op_and_8_re_di(m68ki_cpu_core *cpu) { uint ea = EA_AY_DI_8(); uint res = DX & m68ki_read_8(ea); @@ -2750,7 +2751,7 @@ void m68k_op_and_8_re_di(void) } -void m68k_op_and_8_re_ix(void) +void m68k_op_and_8_re_ix(m68ki_cpu_core *cpu) { uint ea = EA_AY_IX_8(); uint res = DX & m68ki_read_8(ea); @@ -2764,7 +2765,7 @@ void m68k_op_and_8_re_ix(void) } -void m68k_op_and_8_re_aw(void) +void m68k_op_and_8_re_aw(m68ki_cpu_core *cpu) { uint ea = EA_AW_8(); uint res = DX & m68ki_read_8(ea); @@ -2778,7 +2779,7 @@ void m68k_op_and_8_re_aw(void) } -void m68k_op_and_8_re_al(void) +void m68k_op_and_8_re_al(m68ki_cpu_core *cpu) { uint ea = EA_AL_8(); uint res = DX & m68ki_read_8(ea); @@ -2792,7 +2793,7 @@ void m68k_op_and_8_re_al(void) } -void m68k_op_and_16_re_ai(void) +void m68k_op_and_16_re_ai(m68ki_cpu_core *cpu) { uint ea = EA_AY_AI_16(); uint res = DX & m68ki_read_16(ea); @@ -2806,7 +2807,7 @@ void m68k_op_and_16_re_ai(void) } -void m68k_op_and_16_re_pi(void) +void m68k_op_and_16_re_pi(m68ki_cpu_core *cpu) { uint ea = EA_AY_PI_16(); uint res = DX & m68ki_read_16(ea); @@ -2820,7 +2821,7 @@ void m68k_op_and_16_re_pi(void) } -void m68k_op_and_16_re_pd(void) +void m68k_op_and_16_re_pd(m68ki_cpu_core *cpu) { uint ea = EA_AY_PD_16(); uint res = DX & m68ki_read_16(ea); @@ -2834,7 +2835,7 @@ void m68k_op_and_16_re_pd(void) } -void m68k_op_and_16_re_di(void) +void m68k_op_and_16_re_di(m68ki_cpu_core *cpu) { uint ea = EA_AY_DI_16(); uint res = DX & m68ki_read_16(ea); @@ -2848,7 +2849,7 @@ void m68k_op_and_16_re_di(void) } -void m68k_op_and_16_re_ix(void) +void m68k_op_and_16_re_ix(m68ki_cpu_core *cpu) { uint ea = EA_AY_IX_16(); uint res = DX & m68ki_read_16(ea); @@ -2862,7 +2863,7 @@ void m68k_op_and_16_re_ix(void) } -void m68k_op_and_16_re_aw(void) +void m68k_op_and_16_re_aw(m68ki_cpu_core *cpu) { uint ea = EA_AW_16(); uint res = DX & m68ki_read_16(ea); @@ -2876,7 +2877,7 @@ void m68k_op_and_16_re_aw(void) } -void m68k_op_and_16_re_al(void) +void m68k_op_and_16_re_al(m68ki_cpu_core *cpu) { uint ea = EA_AL_16(); uint res = DX & m68ki_read_16(ea); @@ -2890,7 +2891,7 @@ void m68k_op_and_16_re_al(void) } -void m68k_op_and_32_re_ai(void) +void m68k_op_and_32_re_ai(m68ki_cpu_core *cpu) { uint ea = EA_AY_AI_32(); uint res = DX & m68ki_read_32(ea); @@ -2904,7 +2905,7 @@ void m68k_op_and_32_re_ai(void) } -void m68k_op_and_32_re_pi(void) +void m68k_op_and_32_re_pi(m68ki_cpu_core *cpu) { uint ea = EA_AY_PI_32(); uint res = DX & m68ki_read_32(ea); @@ -2918,7 +2919,7 @@ void m68k_op_and_32_re_pi(void) } -void m68k_op_and_32_re_pd(void) +void m68k_op_and_32_re_pd(m68ki_cpu_core *cpu) { uint ea = EA_AY_PD_32(); uint res = DX & m68ki_read_32(ea); @@ -2932,7 +2933,7 @@ void m68k_op_and_32_re_pd(void) } -void m68k_op_and_32_re_di(void) +void m68k_op_and_32_re_di(m68ki_cpu_core *cpu) { uint ea = EA_AY_DI_32(); uint res = DX & m68ki_read_32(ea); @@ -2946,7 +2947,7 @@ void m68k_op_and_32_re_di(void) } -void m68k_op_and_32_re_ix(void) +void m68k_op_and_32_re_ix(m68ki_cpu_core *cpu) { uint ea = EA_AY_IX_32(); uint res = DX & m68ki_read_32(ea); @@ -2960,7 +2961,7 @@ void m68k_op_and_32_re_ix(void) } -void m68k_op_and_32_re_aw(void) +void m68k_op_and_32_re_aw(m68ki_cpu_core *cpu) { uint ea = EA_AW_32(); uint res = DX & m68ki_read_32(ea); @@ -2974,7 +2975,7 @@ void m68k_op_and_32_re_aw(void) } -void m68k_op_and_32_re_al(void) +void m68k_op_and_32_re_al(m68ki_cpu_core *cpu) { uint ea = EA_AL_32(); uint res = DX & m68ki_read_32(ea); @@ -2988,7 +2989,7 @@ void m68k_op_and_32_re_al(void) } -void m68k_op_andi_8_d(void) +void m68k_op_andi_8_d(m68ki_cpu_core *cpu) { FLAG_Z = MASK_OUT_ABOVE_8(DY &= (OPER_I_8() | 0xffffff00)); @@ -2998,7 +2999,7 @@ void m68k_op_andi_8_d(void) } -void m68k_op_andi_8_ai(void) +void m68k_op_andi_8_ai(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AY_AI_8(); @@ -3013,7 +3014,7 @@ void m68k_op_andi_8_ai(void) } -void m68k_op_andi_8_pi(void) +void m68k_op_andi_8_pi(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AY_PI_8(); @@ -3028,7 +3029,7 @@ void m68k_op_andi_8_pi(void) } -void m68k_op_andi_8_pi7(void) +void m68k_op_andi_8_pi7(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_A7_PI_8(); @@ -3043,7 +3044,7 @@ void m68k_op_andi_8_pi7(void) } -void m68k_op_andi_8_pd(void) +void m68k_op_andi_8_pd(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AY_PD_8(); @@ -3058,7 +3059,7 @@ void m68k_op_andi_8_pd(void) } -void m68k_op_andi_8_pd7(void) +void m68k_op_andi_8_pd7(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_A7_PD_8(); @@ -3073,7 +3074,7 @@ void m68k_op_andi_8_pd7(void) } -void m68k_op_andi_8_di(void) +void m68k_op_andi_8_di(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AY_DI_8(); @@ -3088,7 +3089,7 @@ void m68k_op_andi_8_di(void) } -void m68k_op_andi_8_ix(void) +void m68k_op_andi_8_ix(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AY_IX_8(); @@ -3103,7 +3104,7 @@ void m68k_op_andi_8_ix(void) } -void m68k_op_andi_8_aw(void) +void m68k_op_andi_8_aw(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AW_8(); @@ -3118,7 +3119,7 @@ void m68k_op_andi_8_aw(void) } -void m68k_op_andi_8_al(void) +void m68k_op_andi_8_al(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint ea = EA_AL_8(); @@ -3133,7 +3134,7 @@ void m68k_op_andi_8_al(void) } -void m68k_op_andi_16_d(void) +void m68k_op_andi_16_d(m68ki_cpu_core *cpu) { FLAG_Z = MASK_OUT_ABOVE_16(DY &= (OPER_I_16() | 0xffff0000)); @@ -3143,7 +3144,7 @@ void m68k_op_andi_16_d(void) } -void m68k_op_andi_16_ai(void) +void m68k_op_andi_16_ai(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AY_AI_16(); @@ -3158,7 +3159,7 @@ void m68k_op_andi_16_ai(void) } -void m68k_op_andi_16_pi(void) +void m68k_op_andi_16_pi(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AY_PI_16(); @@ -3173,7 +3174,7 @@ void m68k_op_andi_16_pi(void) } -void m68k_op_andi_16_pd(void) +void m68k_op_andi_16_pd(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AY_PD_16(); @@ -3188,7 +3189,7 @@ void m68k_op_andi_16_pd(void) } -void m68k_op_andi_16_di(void) +void m68k_op_andi_16_di(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AY_DI_16(); @@ -3203,7 +3204,7 @@ void m68k_op_andi_16_di(void) } -void m68k_op_andi_16_ix(void) +void m68k_op_andi_16_ix(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AY_IX_16(); @@ -3218,7 +3219,7 @@ void m68k_op_andi_16_ix(void) } -void m68k_op_andi_16_aw(void) +void m68k_op_andi_16_aw(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AW_16(); @@ -3233,7 +3234,7 @@ void m68k_op_andi_16_aw(void) } -void m68k_op_andi_16_al(void) +void m68k_op_andi_16_al(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint ea = EA_AL_16(); @@ -3248,7 +3249,7 @@ void m68k_op_andi_16_al(void) } -void m68k_op_andi_32_d(void) +void m68k_op_andi_32_d(m68ki_cpu_core *cpu) { FLAG_Z = DY &= (OPER_I_32()); @@ -3258,7 +3259,7 @@ void m68k_op_andi_32_d(void) } -void m68k_op_andi_32_ai(void) +void m68k_op_andi_32_ai(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AY_AI_32(); @@ -3273,7 +3274,7 @@ void m68k_op_andi_32_ai(void) } -void m68k_op_andi_32_pi(void) +void m68k_op_andi_32_pi(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AY_PI_32(); @@ -3288,7 +3289,7 @@ void m68k_op_andi_32_pi(void) } -void m68k_op_andi_32_pd(void) +void m68k_op_andi_32_pd(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AY_PD_32(); @@ -3303,7 +3304,7 @@ void m68k_op_andi_32_pd(void) } -void m68k_op_andi_32_di(void) +void m68k_op_andi_32_di(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AY_DI_32(); @@ -3318,7 +3319,7 @@ void m68k_op_andi_32_di(void) } -void m68k_op_andi_32_ix(void) +void m68k_op_andi_32_ix(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AY_IX_32(); @@ -3333,7 +3334,7 @@ void m68k_op_andi_32_ix(void) } -void m68k_op_andi_32_aw(void) +void m68k_op_andi_32_aw(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AW_32(); @@ -3348,7 +3349,7 @@ void m68k_op_andi_32_aw(void) } -void m68k_op_andi_32_al(void) +void m68k_op_andi_32_al(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint ea = EA_AL_32(); @@ -3363,26 +3364,26 @@ void m68k_op_andi_32_al(void) } -void m68k_op_andi_16_toc(void) +void m68k_op_andi_16_toc(m68ki_cpu_core *cpu) { - m68ki_set_ccr(m68ki_get_ccr() & OPER_I_16()); + m68ki_set_ccr(cpu, m68ki_get_ccr() & OPER_I_16()); } -void m68k_op_andi_16_tos(void) +void m68k_op_andi_16_tos(m68ki_cpu_core *cpu) { if(FLAG_S) { uint src = OPER_I_16(); m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_set_sr(m68ki_get_sr() & src); + m68ki_set_sr(cpu, m68ki_get_sr() & src); return; } - m68ki_exception_privilege_violation(); + m68ki_exception_privilege_violation(cpu); } -void m68k_op_asr_8_s(void) +void m68k_op_asr_8_s(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint shift = (((REG_IR >> 9) - 1) & 7) + 1; @@ -3401,7 +3402,7 @@ void m68k_op_asr_8_s(void) } -void m68k_op_asr_16_s(void) +void m68k_op_asr_16_s(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint shift = (((REG_IR >> 9) - 1) & 7) + 1; @@ -3420,7 +3421,7 @@ void m68k_op_asr_16_s(void) } -void m68k_op_asr_32_s(void) +void m68k_op_asr_32_s(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint shift = (((REG_IR >> 9) - 1) & 7) + 1; @@ -3439,7 +3440,7 @@ void m68k_op_asr_32_s(void) } -void m68k_op_asr_8_r(void) +void m68k_op_asr_8_r(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint shift = DX & 0x3f; @@ -3491,7 +3492,7 @@ void m68k_op_asr_8_r(void) } -void m68k_op_asr_16_r(void) +void m68k_op_asr_16_r(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint shift = DX & 0x3f; @@ -3543,7 +3544,7 @@ void m68k_op_asr_16_r(void) } -void m68k_op_asr_32_r(void) +void m68k_op_asr_32_r(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint shift = DX & 0x3f; @@ -3595,7 +3596,7 @@ void m68k_op_asr_32_r(void) } -void m68k_op_asr_16_ai(void) +void m68k_op_asr_16_ai(m68ki_cpu_core *cpu) { uint ea = EA_AY_AI_16(); uint src = m68ki_read_16(ea); @@ -3613,7 +3614,7 @@ void m68k_op_asr_16_ai(void) } -void m68k_op_asr_16_pi(void) +void m68k_op_asr_16_pi(m68ki_cpu_core *cpu) { uint ea = EA_AY_PI_16(); uint src = m68ki_read_16(ea); @@ -3631,7 +3632,7 @@ void m68k_op_asr_16_pi(void) } -void m68k_op_asr_16_pd(void) +void m68k_op_asr_16_pd(m68ki_cpu_core *cpu) { uint ea = EA_AY_PD_16(); uint src = m68ki_read_16(ea); @@ -3649,7 +3650,7 @@ void m68k_op_asr_16_pd(void) } -void m68k_op_asr_16_di(void) +void m68k_op_asr_16_di(m68ki_cpu_core *cpu) { uint ea = EA_AY_DI_16(); uint src = m68ki_read_16(ea); @@ -3667,7 +3668,7 @@ void m68k_op_asr_16_di(void) } -void m68k_op_asr_16_ix(void) +void m68k_op_asr_16_ix(m68ki_cpu_core *cpu) { uint ea = EA_AY_IX_16(); uint src = m68ki_read_16(ea); @@ -3685,7 +3686,7 @@ void m68k_op_asr_16_ix(void) } -void m68k_op_asr_16_aw(void) +void m68k_op_asr_16_aw(m68ki_cpu_core *cpu) { uint ea = EA_AW_16(); uint src = m68ki_read_16(ea); @@ -3703,7 +3704,7 @@ void m68k_op_asr_16_aw(void) } -void m68k_op_asr_16_al(void) +void m68k_op_asr_16_al(m68ki_cpu_core *cpu) { uint ea = EA_AL_16(); uint src = m68ki_read_16(ea); @@ -3721,7 +3722,7 @@ void m68k_op_asr_16_al(void) } -void m68k_op_asl_8_s(void) +void m68k_op_asl_8_s(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint shift = (((REG_IR >> 9) - 1) & 7) + 1; @@ -3738,7 +3739,7 @@ void m68k_op_asl_8_s(void) } -void m68k_op_asl_16_s(void) +void m68k_op_asl_16_s(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint shift = (((REG_IR >> 9) - 1) & 7) + 1; @@ -3755,7 +3756,7 @@ void m68k_op_asl_16_s(void) } -void m68k_op_asl_32_s(void) +void m68k_op_asl_32_s(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint shift = (((REG_IR >> 9) - 1) & 7) + 1; @@ -3772,7 +3773,7 @@ void m68k_op_asl_32_s(void) } -void m68k_op_asl_8_r(void) +void m68k_op_asl_8_r(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint shift = DX & 0x3f; @@ -3809,7 +3810,7 @@ void m68k_op_asl_8_r(void) } -void m68k_op_asl_16_r(void) +void m68k_op_asl_16_r(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint shift = DX & 0x3f; @@ -3846,7 +3847,7 @@ void m68k_op_asl_16_r(void) } -void m68k_op_asl_32_r(void) +void m68k_op_asl_32_r(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint shift = DX & 0x3f; @@ -3883,7 +3884,7 @@ void m68k_op_asl_32_r(void) } -void m68k_op_asl_16_ai(void) +void m68k_op_asl_16_ai(m68ki_cpu_core *cpu) { uint ea = EA_AY_AI_16(); uint src = m68ki_read_16(ea); @@ -3899,7 +3900,7 @@ void m68k_op_asl_16_ai(void) } -void m68k_op_asl_16_pi(void) +void m68k_op_asl_16_pi(m68ki_cpu_core *cpu) { uint ea = EA_AY_PI_16(); uint src = m68ki_read_16(ea); @@ -3915,7 +3916,7 @@ void m68k_op_asl_16_pi(void) } -void m68k_op_asl_16_pd(void) +void m68k_op_asl_16_pd(m68ki_cpu_core *cpu) { uint ea = EA_AY_PD_16(); uint src = m68ki_read_16(ea); @@ -3931,7 +3932,7 @@ void m68k_op_asl_16_pd(void) } -void m68k_op_asl_16_di(void) +void m68k_op_asl_16_di(m68ki_cpu_core *cpu) { uint ea = EA_AY_DI_16(); uint src = m68ki_read_16(ea); @@ -3947,7 +3948,7 @@ void m68k_op_asl_16_di(void) } -void m68k_op_asl_16_ix(void) +void m68k_op_asl_16_ix(m68ki_cpu_core *cpu) { uint ea = EA_AY_IX_16(); uint src = m68ki_read_16(ea); @@ -3963,7 +3964,7 @@ void m68k_op_asl_16_ix(void) } -void m68k_op_asl_16_aw(void) +void m68k_op_asl_16_aw(m68ki_cpu_core *cpu) { uint ea = EA_AW_16(); uint src = m68ki_read_16(ea); @@ -3979,7 +3980,7 @@ void m68k_op_asl_16_aw(void) } -void m68k_op_asl_16_al(void) +void m68k_op_asl_16_al(m68ki_cpu_core *cpu) { uint ea = EA_AL_16(); uint src = m68ki_read_16(ea); @@ -3995,182 +3996,182 @@ void m68k_op_asl_16_al(void) } -void m68k_op_bhi_8(void) +void m68k_op_bhi_8(m68ki_cpu_core *cpu) { if(COND_HI()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_bls_8(void) +void m68k_op_bls_8(m68ki_cpu_core *cpu) { if(COND_LS()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_bcc_8(void) +void m68k_op_bcc_8(m68ki_cpu_core *cpu) { if(COND_CC()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_bcs_8(void) +void m68k_op_bcs_8(m68ki_cpu_core *cpu) { if(COND_CS()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_bne_8(void) +void m68k_op_bne_8(m68ki_cpu_core *cpu) { if(COND_NE()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_beq_8(void) +void m68k_op_beq_8(m68ki_cpu_core *cpu) { if(COND_EQ()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_bvc_8(void) +void m68k_op_bvc_8(m68ki_cpu_core *cpu) { if(COND_VC()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_bvs_8(void) +void m68k_op_bvs_8(m68ki_cpu_core *cpu) { if(COND_VS()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_bpl_8(void) +void m68k_op_bpl_8(m68ki_cpu_core *cpu) { if(COND_PL()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_bmi_8(void) +void m68k_op_bmi_8(m68ki_cpu_core *cpu) { if(COND_MI()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_bge_8(void) +void m68k_op_bge_8(m68ki_cpu_core *cpu) { if(COND_GE()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_blt_8(void) +void m68k_op_blt_8(m68ki_cpu_core *cpu) { if(COND_LT()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_bgt_8(void) +void m68k_op_bgt_8(m68ki_cpu_core *cpu) { if(COND_GT()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_ble_8(void) +void m68k_op_ble_8(m68ki_cpu_core *cpu) { if(COND_LE()) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); return; } USE_CYCLES(CYC_BCC_NOTAKE_B); } -void m68k_op_bhi_16(void) +void m68k_op_bhi_16(m68ki_cpu_core *cpu) { if(COND_HI()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4178,14 +4179,14 @@ void m68k_op_bhi_16(void) } -void m68k_op_bls_16(void) +void m68k_op_bls_16(m68ki_cpu_core *cpu) { if(COND_LS()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4193,14 +4194,14 @@ void m68k_op_bls_16(void) } -void m68k_op_bcc_16(void) +void m68k_op_bcc_16(m68ki_cpu_core *cpu) { if(COND_CC()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4208,14 +4209,14 @@ void m68k_op_bcc_16(void) } -void m68k_op_bcs_16(void) +void m68k_op_bcs_16(m68ki_cpu_core *cpu) { if(COND_CS()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4223,14 +4224,14 @@ void m68k_op_bcs_16(void) } -void m68k_op_bne_16(void) +void m68k_op_bne_16(m68ki_cpu_core *cpu) { if(COND_NE()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4238,14 +4239,14 @@ void m68k_op_bne_16(void) } -void m68k_op_beq_16(void) +void m68k_op_beq_16(m68ki_cpu_core *cpu) { if(COND_EQ()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4253,14 +4254,14 @@ void m68k_op_beq_16(void) } -void m68k_op_bvc_16(void) +void m68k_op_bvc_16(m68ki_cpu_core *cpu) { if(COND_VC()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4268,14 +4269,14 @@ void m68k_op_bvc_16(void) } -void m68k_op_bvs_16(void) +void m68k_op_bvs_16(m68ki_cpu_core *cpu) { if(COND_VS()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4283,14 +4284,14 @@ void m68k_op_bvs_16(void) } -void m68k_op_bpl_16(void) +void m68k_op_bpl_16(m68ki_cpu_core *cpu) { if(COND_PL()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4298,14 +4299,14 @@ void m68k_op_bpl_16(void) } -void m68k_op_bmi_16(void) +void m68k_op_bmi_16(m68ki_cpu_core *cpu) { if(COND_MI()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4313,14 +4314,14 @@ void m68k_op_bmi_16(void) } -void m68k_op_bge_16(void) +void m68k_op_bge_16(m68ki_cpu_core *cpu) { if(COND_GE()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4328,14 +4329,14 @@ void m68k_op_bge_16(void) } -void m68k_op_blt_16(void) +void m68k_op_blt_16(m68ki_cpu_core *cpu) { if(COND_LT()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4343,14 +4344,14 @@ void m68k_op_blt_16(void) } -void m68k_op_bgt_16(void) +void m68k_op_bgt_16(m68ki_cpu_core *cpu) { if(COND_GT()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4358,14 +4359,14 @@ void m68k_op_bgt_16(void) } -void m68k_op_ble_16(void) +void m68k_op_ble_16(m68ki_cpu_core *cpu) { if(COND_LE()) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); return; } REG_PC += 2; @@ -4373,7 +4374,7 @@ void m68k_op_ble_16(void) } -void m68k_op_bhi_32(void) +void m68k_op_bhi_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4382,17 +4383,17 @@ void m68k_op_bhi_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bls_32(void) +void m68k_op_bls_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4401,17 +4402,17 @@ void m68k_op_bls_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bcc_32(void) +void m68k_op_bcc_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4420,17 +4421,17 @@ void m68k_op_bcc_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bcs_32(void) +void m68k_op_bcs_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4439,17 +4440,17 @@ void m68k_op_bcs_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bne_32(void) +void m68k_op_bne_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4458,17 +4459,17 @@ void m68k_op_bne_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_beq_32(void) +void m68k_op_beq_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4477,17 +4478,17 @@ void m68k_op_beq_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bvc_32(void) +void m68k_op_bvc_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4496,17 +4497,17 @@ void m68k_op_bvc_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bvs_32(void) +void m68k_op_bvs_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4515,17 +4516,17 @@ void m68k_op_bvs_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bpl_32(void) +void m68k_op_bpl_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4534,17 +4535,17 @@ void m68k_op_bpl_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bmi_32(void) +void m68k_op_bmi_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4553,17 +4554,17 @@ void m68k_op_bmi_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bge_32(void) +void m68k_op_bge_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4572,17 +4573,17 @@ void m68k_op_bge_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_blt_32(void) +void m68k_op_blt_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4591,17 +4592,17 @@ void m68k_op_blt_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bgt_32(void) +void m68k_op_bgt_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4610,17 +4611,17 @@ void m68k_op_bgt_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_ble_32(void) +void m68k_op_ble_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -4629,17 +4630,17 @@ void m68k_op_ble_32(void) uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } REG_PC += 4; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bchg_32_r_d(void) +void m68k_op_bchg_32_r_d(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint mask = 1 << (DX & 0x1f); @@ -4649,7 +4650,7 @@ void m68k_op_bchg_32_r_d(void) } -void m68k_op_bchg_8_r_ai(void) +void m68k_op_bchg_8_r_ai(m68ki_cpu_core *cpu) { uint ea = EA_AY_AI_8(); uint src = m68ki_read_8(ea); @@ -4660,7 +4661,7 @@ void m68k_op_bchg_8_r_ai(void) } -void m68k_op_bchg_8_r_pi(void) +void m68k_op_bchg_8_r_pi(m68ki_cpu_core *cpu) { uint ea = EA_AY_PI_8(); uint src = m68ki_read_8(ea); @@ -4671,7 +4672,7 @@ void m68k_op_bchg_8_r_pi(void) } -void m68k_op_bchg_8_r_pi7(void) +void m68k_op_bchg_8_r_pi7(m68ki_cpu_core *cpu) { uint ea = EA_A7_PI_8(); uint src = m68ki_read_8(ea); @@ -4682,7 +4683,7 @@ void m68k_op_bchg_8_r_pi7(void) } -void m68k_op_bchg_8_r_pd(void) +void m68k_op_bchg_8_r_pd(m68ki_cpu_core *cpu) { uint ea = EA_AY_PD_8(); uint src = m68ki_read_8(ea); @@ -4693,7 +4694,7 @@ void m68k_op_bchg_8_r_pd(void) } -void m68k_op_bchg_8_r_pd7(void) +void m68k_op_bchg_8_r_pd7(m68ki_cpu_core *cpu) { uint ea = EA_A7_PD_8(); uint src = m68ki_read_8(ea); @@ -4704,7 +4705,7 @@ void m68k_op_bchg_8_r_pd7(void) } -void m68k_op_bchg_8_r_di(void) +void m68k_op_bchg_8_r_di(m68ki_cpu_core *cpu) { uint ea = EA_AY_DI_8(); uint src = m68ki_read_8(ea); @@ -4715,7 +4716,7 @@ void m68k_op_bchg_8_r_di(void) } -void m68k_op_bchg_8_r_ix(void) +void m68k_op_bchg_8_r_ix(m68ki_cpu_core *cpu) { uint ea = EA_AY_IX_8(); uint src = m68ki_read_8(ea); @@ -4726,7 +4727,7 @@ void m68k_op_bchg_8_r_ix(void) } -void m68k_op_bchg_8_r_aw(void) +void m68k_op_bchg_8_r_aw(m68ki_cpu_core *cpu) { uint ea = EA_AW_8(); uint src = m68ki_read_8(ea); @@ -4737,7 +4738,7 @@ void m68k_op_bchg_8_r_aw(void) } -void m68k_op_bchg_8_r_al(void) +void m68k_op_bchg_8_r_al(m68ki_cpu_core *cpu) { uint ea = EA_AL_8(); uint src = m68ki_read_8(ea); @@ -4748,7 +4749,7 @@ void m68k_op_bchg_8_r_al(void) } -void m68k_op_bchg_32_s_d(void) +void m68k_op_bchg_32_s_d(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint mask = 1 << (OPER_I_8() & 0x1f); @@ -4758,7 +4759,7 @@ void m68k_op_bchg_32_s_d(void) } -void m68k_op_bchg_8_s_ai(void) +void m68k_op_bchg_8_s_ai(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_AI_8(); @@ -4769,7 +4770,7 @@ void m68k_op_bchg_8_s_ai(void) } -void m68k_op_bchg_8_s_pi(void) +void m68k_op_bchg_8_s_pi(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_PI_8(); @@ -4780,7 +4781,7 @@ void m68k_op_bchg_8_s_pi(void) } -void m68k_op_bchg_8_s_pi7(void) +void m68k_op_bchg_8_s_pi7(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_A7_PI_8(); @@ -4791,7 +4792,7 @@ void m68k_op_bchg_8_s_pi7(void) } -void m68k_op_bchg_8_s_pd(void) +void m68k_op_bchg_8_s_pd(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_PD_8(); @@ -4802,7 +4803,7 @@ void m68k_op_bchg_8_s_pd(void) } -void m68k_op_bchg_8_s_pd7(void) +void m68k_op_bchg_8_s_pd7(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_A7_PD_8(); @@ -4813,7 +4814,7 @@ void m68k_op_bchg_8_s_pd7(void) } -void m68k_op_bchg_8_s_di(void) +void m68k_op_bchg_8_s_di(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_DI_8(); @@ -4824,7 +4825,7 @@ void m68k_op_bchg_8_s_di(void) } -void m68k_op_bchg_8_s_ix(void) +void m68k_op_bchg_8_s_ix(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_IX_8(); @@ -4835,7 +4836,7 @@ void m68k_op_bchg_8_s_ix(void) } -void m68k_op_bchg_8_s_aw(void) +void m68k_op_bchg_8_s_aw(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AW_8(); @@ -4846,7 +4847,7 @@ void m68k_op_bchg_8_s_aw(void) } -void m68k_op_bchg_8_s_al(void) +void m68k_op_bchg_8_s_al(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AL_8(); @@ -4857,7 +4858,7 @@ void m68k_op_bchg_8_s_al(void) } -void m68k_op_bclr_32_r_d(void) +void m68k_op_bclr_32_r_d(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint mask = 1 << (DX & 0x1f); @@ -4867,7 +4868,7 @@ void m68k_op_bclr_32_r_d(void) } -void m68k_op_bclr_8_r_ai(void) +void m68k_op_bclr_8_r_ai(m68ki_cpu_core *cpu) { uint ea = EA_AY_AI_8(); uint src = m68ki_read_8(ea); @@ -4878,7 +4879,7 @@ void m68k_op_bclr_8_r_ai(void) } -void m68k_op_bclr_8_r_pi(void) +void m68k_op_bclr_8_r_pi(m68ki_cpu_core *cpu) { uint ea = EA_AY_PI_8(); uint src = m68ki_read_8(ea); @@ -4889,7 +4890,7 @@ void m68k_op_bclr_8_r_pi(void) } -void m68k_op_bclr_8_r_pi7(void) +void m68k_op_bclr_8_r_pi7(m68ki_cpu_core *cpu) { uint ea = EA_A7_PI_8(); uint src = m68ki_read_8(ea); @@ -4900,7 +4901,7 @@ void m68k_op_bclr_8_r_pi7(void) } -void m68k_op_bclr_8_r_pd(void) +void m68k_op_bclr_8_r_pd(m68ki_cpu_core *cpu) { uint ea = EA_AY_PD_8(); uint src = m68ki_read_8(ea); @@ -4911,7 +4912,7 @@ void m68k_op_bclr_8_r_pd(void) } -void m68k_op_bclr_8_r_pd7(void) +void m68k_op_bclr_8_r_pd7(m68ki_cpu_core *cpu) { uint ea = EA_A7_PD_8(); uint src = m68ki_read_8(ea); @@ -4922,7 +4923,7 @@ void m68k_op_bclr_8_r_pd7(void) } -void m68k_op_bclr_8_r_di(void) +void m68k_op_bclr_8_r_di(m68ki_cpu_core *cpu) { uint ea = EA_AY_DI_8(); uint src = m68ki_read_8(ea); @@ -4933,7 +4934,7 @@ void m68k_op_bclr_8_r_di(void) } -void m68k_op_bclr_8_r_ix(void) +void m68k_op_bclr_8_r_ix(m68ki_cpu_core *cpu) { uint ea = EA_AY_IX_8(); uint src = m68ki_read_8(ea); @@ -4944,7 +4945,7 @@ void m68k_op_bclr_8_r_ix(void) } -void m68k_op_bclr_8_r_aw(void) +void m68k_op_bclr_8_r_aw(m68ki_cpu_core *cpu) { uint ea = EA_AW_8(); uint src = m68ki_read_8(ea); @@ -4955,7 +4956,7 @@ void m68k_op_bclr_8_r_aw(void) } -void m68k_op_bclr_8_r_al(void) +void m68k_op_bclr_8_r_al(m68ki_cpu_core *cpu) { uint ea = EA_AL_8(); uint src = m68ki_read_8(ea); @@ -4966,7 +4967,7 @@ void m68k_op_bclr_8_r_al(void) } -void m68k_op_bclr_32_s_d(void) +void m68k_op_bclr_32_s_d(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint mask = 1 << (OPER_I_8() & 0x1f); @@ -4976,7 +4977,7 @@ void m68k_op_bclr_32_s_d(void) } -void m68k_op_bclr_8_s_ai(void) +void m68k_op_bclr_8_s_ai(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_AI_8(); @@ -4987,7 +4988,7 @@ void m68k_op_bclr_8_s_ai(void) } -void m68k_op_bclr_8_s_pi(void) +void m68k_op_bclr_8_s_pi(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_PI_8(); @@ -4998,7 +4999,7 @@ void m68k_op_bclr_8_s_pi(void) } -void m68k_op_bclr_8_s_pi7(void) +void m68k_op_bclr_8_s_pi7(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_A7_PI_8(); @@ -5009,7 +5010,7 @@ void m68k_op_bclr_8_s_pi7(void) } -void m68k_op_bclr_8_s_pd(void) +void m68k_op_bclr_8_s_pd(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_PD_8(); @@ -5020,7 +5021,7 @@ void m68k_op_bclr_8_s_pd(void) } -void m68k_op_bclr_8_s_pd7(void) +void m68k_op_bclr_8_s_pd7(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_A7_PD_8(); @@ -5031,7 +5032,7 @@ void m68k_op_bclr_8_s_pd7(void) } -void m68k_op_bclr_8_s_di(void) +void m68k_op_bclr_8_s_di(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_DI_8(); @@ -5042,7 +5043,7 @@ void m68k_op_bclr_8_s_di(void) } -void m68k_op_bclr_8_s_ix(void) +void m68k_op_bclr_8_s_ix(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_IX_8(); @@ -5053,7 +5054,7 @@ void m68k_op_bclr_8_s_ix(void) } -void m68k_op_bclr_8_s_aw(void) +void m68k_op_bclr_8_s_aw(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AW_8(); @@ -5064,7 +5065,7 @@ void m68k_op_bclr_8_s_aw(void) } -void m68k_op_bclr_8_s_al(void) +void m68k_op_bclr_8_s_al(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AL_8(); @@ -5075,7 +5076,7 @@ void m68k_op_bclr_8_s_al(void) } -void m68k_op_bfchg_32_d(void) +void m68k_op_bfchg_32_d(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5106,11 +5107,11 @@ void m68k_op_bfchg_32_d(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfchg_32_ai(void) +void m68k_op_bfchg_32_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5160,11 +5161,11 @@ void m68k_op_bfchg_32_ai(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfchg_32_di(void) +void m68k_op_bfchg_32_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5214,11 +5215,11 @@ void m68k_op_bfchg_32_di(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfchg_32_ix(void) +void m68k_op_bfchg_32_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5268,11 +5269,11 @@ void m68k_op_bfchg_32_ix(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfchg_32_aw(void) +void m68k_op_bfchg_32_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5322,11 +5323,11 @@ void m68k_op_bfchg_32_aw(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfchg_32_al(void) +void m68k_op_bfchg_32_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5376,11 +5377,11 @@ void m68k_op_bfchg_32_al(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfclr_32_d(void) +void m68k_op_bfclr_32_d(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5413,11 +5414,11 @@ void m68k_op_bfclr_32_d(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfclr_32_ai(void) +void m68k_op_bfclr_32_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5467,11 +5468,11 @@ void m68k_op_bfclr_32_ai(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfclr_32_di(void) +void m68k_op_bfclr_32_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5521,11 +5522,11 @@ void m68k_op_bfclr_32_di(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfclr_32_ix(void) +void m68k_op_bfclr_32_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5575,11 +5576,11 @@ void m68k_op_bfclr_32_ix(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfclr_32_aw(void) +void m68k_op_bfclr_32_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5629,11 +5630,11 @@ void m68k_op_bfclr_32_aw(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfclr_32_al(void) +void m68k_op_bfclr_32_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5683,11 +5684,11 @@ void m68k_op_bfclr_32_al(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfexts_32_d(void) +void m68k_op_bfexts_32_d(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5717,11 +5718,11 @@ void m68k_op_bfexts_32_d(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfexts_32_ai(void) +void m68k_op_bfexts_32_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5765,11 +5766,11 @@ void m68k_op_bfexts_32_ai(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfexts_32_di(void) +void m68k_op_bfexts_32_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5813,11 +5814,11 @@ void m68k_op_bfexts_32_di(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfexts_32_ix(void) +void m68k_op_bfexts_32_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5861,11 +5862,11 @@ void m68k_op_bfexts_32_ix(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfexts_32_aw(void) +void m68k_op_bfexts_32_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5909,11 +5910,11 @@ void m68k_op_bfexts_32_aw(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfexts_32_al(void) +void m68k_op_bfexts_32_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -5957,11 +5958,11 @@ void m68k_op_bfexts_32_al(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfexts_32_pcdi(void) +void m68k_op_bfexts_32_pcdi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6005,11 +6006,11 @@ void m68k_op_bfexts_32_pcdi(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfexts_32_pcix(void) +void m68k_op_bfexts_32_pcix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6053,11 +6054,11 @@ void m68k_op_bfexts_32_pcix(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfextu_32_d(void) +void m68k_op_bfextu_32_d(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6087,11 +6088,11 @@ void m68k_op_bfextu_32_d(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfextu_32_ai(void) +void m68k_op_bfextu_32_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6134,11 +6135,11 @@ void m68k_op_bfextu_32_ai(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfextu_32_di(void) +void m68k_op_bfextu_32_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6181,11 +6182,11 @@ void m68k_op_bfextu_32_di(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfextu_32_ix(void) +void m68k_op_bfextu_32_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6228,11 +6229,11 @@ void m68k_op_bfextu_32_ix(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfextu_32_aw(void) +void m68k_op_bfextu_32_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6275,11 +6276,11 @@ void m68k_op_bfextu_32_aw(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfextu_32_al(void) +void m68k_op_bfextu_32_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6322,11 +6323,11 @@ void m68k_op_bfextu_32_al(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfextu_32_pcdi(void) +void m68k_op_bfextu_32_pcdi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6369,11 +6370,11 @@ void m68k_op_bfextu_32_pcdi(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfextu_32_pcix(void) +void m68k_op_bfextu_32_pcix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6416,11 +6417,11 @@ void m68k_op_bfextu_32_pcix(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfffo_32_d(void) +void m68k_op_bfffo_32_d(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6454,11 +6455,11 @@ void m68k_op_bfffo_32_d(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfffo_32_ai(void) +void m68k_op_bfffo_32_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6506,11 +6507,11 @@ void m68k_op_bfffo_32_ai(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfffo_32_di(void) +void m68k_op_bfffo_32_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6558,11 +6559,11 @@ void m68k_op_bfffo_32_di(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfffo_32_ix(void) +void m68k_op_bfffo_32_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6610,11 +6611,11 @@ void m68k_op_bfffo_32_ix(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfffo_32_aw(void) +void m68k_op_bfffo_32_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6662,11 +6663,11 @@ void m68k_op_bfffo_32_aw(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfffo_32_al(void) +void m68k_op_bfffo_32_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6714,11 +6715,11 @@ void m68k_op_bfffo_32_al(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfffo_32_pcdi(void) +void m68k_op_bfffo_32_pcdi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6766,11 +6767,11 @@ void m68k_op_bfffo_32_pcdi(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfffo_32_pcix(void) +void m68k_op_bfffo_32_pcix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6818,11 +6819,11 @@ void m68k_op_bfffo_32_pcix(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfins_32_d(void) +void m68k_op_bfins_32_d(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6860,11 +6861,11 @@ void m68k_op_bfins_32_d(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfins_32_ai(void) +void m68k_op_bfins_32_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6921,11 +6922,11 @@ void m68k_op_bfins_32_ai(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfins_32_di(void) +void m68k_op_bfins_32_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -6982,11 +6983,11 @@ void m68k_op_bfins_32_di(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfins_32_ix(void) +void m68k_op_bfins_32_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7043,11 +7044,11 @@ void m68k_op_bfins_32_ix(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfins_32_aw(void) +void m68k_op_bfins_32_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7104,11 +7105,11 @@ void m68k_op_bfins_32_aw(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfins_32_al(void) +void m68k_op_bfins_32_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7165,11 +7166,11 @@ void m68k_op_bfins_32_al(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfset_32_d(void) +void m68k_op_bfset_32_d(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7202,11 +7203,11 @@ void m68k_op_bfset_32_d(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfset_32_ai(void) +void m68k_op_bfset_32_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7257,11 +7258,11 @@ void m68k_op_bfset_32_ai(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfset_32_di(void) +void m68k_op_bfset_32_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7312,11 +7313,11 @@ void m68k_op_bfset_32_di(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfset_32_ix(void) +void m68k_op_bfset_32_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7367,11 +7368,11 @@ void m68k_op_bfset_32_ix(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfset_32_aw(void) +void m68k_op_bfset_32_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7422,11 +7423,11 @@ void m68k_op_bfset_32_aw(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bfset_32_al(void) +void m68k_op_bfset_32_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7477,11 +7478,11 @@ void m68k_op_bfset_32_al(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bftst_32_d(void) +void m68k_op_bftst_32_d(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7512,11 +7513,11 @@ void m68k_op_bftst_32_d(void) return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bftst_32_ai(void) +void m68k_op_bftst_32_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7563,11 +7564,11 @@ void m68k_op_bftst_32_ai(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bftst_32_di(void) +void m68k_op_bftst_32_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7614,11 +7615,11 @@ void m68k_op_bftst_32_di(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bftst_32_ix(void) +void m68k_op_bftst_32_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7665,11 +7666,11 @@ void m68k_op_bftst_32_ix(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bftst_32_aw(void) +void m68k_op_bftst_32_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7716,11 +7717,11 @@ void m68k_op_bftst_32_aw(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bftst_32_al(void) +void m68k_op_bftst_32_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7767,11 +7768,11 @@ void m68k_op_bftst_32_al(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bftst_32_pcdi(void) +void m68k_op_bftst_32_pcdi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7818,11 +7819,11 @@ void m68k_op_bftst_32_pcdi(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bftst_32_pcix(void) +void m68k_op_bftst_32_pcix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -7869,57 +7870,57 @@ void m68k_op_bftst_32_pcix(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bkpt(void) +void m68k_op_bkpt(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_010_PLUS(CPU_TYPE)) { m68ki_bkpt_ack(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE) ? REG_IR & 7 : 0); /* auto-disable (see m68kcpu.h) */ } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bra_8(void) +void m68k_op_bra_8(m68ki_cpu_core *cpu) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); if(REG_PC == REG_PPC) USE_ALL_CYCLES(); } -void m68k_op_bra_16(void) +void m68k_op_bra_16(m68ki_cpu_core *cpu) { uint offset = OPER_I_16(); REG_PC -= 2; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); if(REG_PC == REG_PPC) USE_ALL_CYCLES(); } -void m68k_op_bra_32(void) +void m68k_op_bra_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { uint offset = OPER_I_32(); REG_PC -= 4; m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); if(REG_PC == REG_PPC) USE_ALL_CYCLES(); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_bset_32_r_d(void) +void m68k_op_bset_32_r_d(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint mask = 1 << (DX & 0x1f); @@ -7929,7 +7930,7 @@ void m68k_op_bset_32_r_d(void) } -void m68k_op_bset_8_r_ai(void) +void m68k_op_bset_8_r_ai(m68ki_cpu_core *cpu) { uint ea = EA_AY_AI_8(); uint src = m68ki_read_8(ea); @@ -7940,7 +7941,7 @@ void m68k_op_bset_8_r_ai(void) } -void m68k_op_bset_8_r_pi(void) +void m68k_op_bset_8_r_pi(m68ki_cpu_core *cpu) { uint ea = EA_AY_PI_8(); uint src = m68ki_read_8(ea); @@ -7951,7 +7952,7 @@ void m68k_op_bset_8_r_pi(void) } -void m68k_op_bset_8_r_pi7(void) +void m68k_op_bset_8_r_pi7(m68ki_cpu_core *cpu) { uint ea = EA_A7_PI_8(); uint src = m68ki_read_8(ea); @@ -7962,7 +7963,7 @@ void m68k_op_bset_8_r_pi7(void) } -void m68k_op_bset_8_r_pd(void) +void m68k_op_bset_8_r_pd(m68ki_cpu_core *cpu) { uint ea = EA_AY_PD_8(); uint src = m68ki_read_8(ea); @@ -7973,7 +7974,7 @@ void m68k_op_bset_8_r_pd(void) } -void m68k_op_bset_8_r_pd7(void) +void m68k_op_bset_8_r_pd7(m68ki_cpu_core *cpu) { uint ea = EA_A7_PD_8(); uint src = m68ki_read_8(ea); @@ -7984,7 +7985,7 @@ void m68k_op_bset_8_r_pd7(void) } -void m68k_op_bset_8_r_di(void) +void m68k_op_bset_8_r_di(m68ki_cpu_core *cpu) { uint ea = EA_AY_DI_8(); uint src = m68ki_read_8(ea); @@ -7995,7 +7996,7 @@ void m68k_op_bset_8_r_di(void) } -void m68k_op_bset_8_r_ix(void) +void m68k_op_bset_8_r_ix(m68ki_cpu_core *cpu) { uint ea = EA_AY_IX_8(); uint src = m68ki_read_8(ea); @@ -8006,7 +8007,7 @@ void m68k_op_bset_8_r_ix(void) } -void m68k_op_bset_8_r_aw(void) +void m68k_op_bset_8_r_aw(m68ki_cpu_core *cpu) { uint ea = EA_AW_8(); uint src = m68ki_read_8(ea); @@ -8017,7 +8018,7 @@ void m68k_op_bset_8_r_aw(void) } -void m68k_op_bset_8_r_al(void) +void m68k_op_bset_8_r_al(m68ki_cpu_core *cpu) { uint ea = EA_AL_8(); uint src = m68ki_read_8(ea); @@ -8028,7 +8029,7 @@ void m68k_op_bset_8_r_al(void) } -void m68k_op_bset_32_s_d(void) +void m68k_op_bset_32_s_d(m68ki_cpu_core *cpu) { uint* r_dst = &DY; uint mask = 1 << (OPER_I_8() & 0x1f); @@ -8038,7 +8039,7 @@ void m68k_op_bset_32_s_d(void) } -void m68k_op_bset_8_s_ai(void) +void m68k_op_bset_8_s_ai(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_AI_8(); @@ -8049,7 +8050,7 @@ void m68k_op_bset_8_s_ai(void) } -void m68k_op_bset_8_s_pi(void) +void m68k_op_bset_8_s_pi(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_PI_8(); @@ -8060,7 +8061,7 @@ void m68k_op_bset_8_s_pi(void) } -void m68k_op_bset_8_s_pi7(void) +void m68k_op_bset_8_s_pi7(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_A7_PI_8(); @@ -8071,7 +8072,7 @@ void m68k_op_bset_8_s_pi7(void) } -void m68k_op_bset_8_s_pd(void) +void m68k_op_bset_8_s_pd(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_PD_8(); @@ -8082,7 +8083,7 @@ void m68k_op_bset_8_s_pd(void) } -void m68k_op_bset_8_s_pd7(void) +void m68k_op_bset_8_s_pd7(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_A7_PD_8(); @@ -8093,7 +8094,7 @@ void m68k_op_bset_8_s_pd7(void) } -void m68k_op_bset_8_s_di(void) +void m68k_op_bset_8_s_di(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_DI_8(); @@ -8104,7 +8105,7 @@ void m68k_op_bset_8_s_di(void) } -void m68k_op_bset_8_s_ix(void) +void m68k_op_bset_8_s_ix(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AY_IX_8(); @@ -8115,7 +8116,7 @@ void m68k_op_bset_8_s_ix(void) } -void m68k_op_bset_8_s_aw(void) +void m68k_op_bset_8_s_aw(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AW_8(); @@ -8126,7 +8127,7 @@ void m68k_op_bset_8_s_aw(void) } -void m68k_op_bset_8_s_al(void) +void m68k_op_bset_8_s_al(m68ki_cpu_core *cpu) { uint mask = 1 << (OPER_I_8() & 7); uint ea = EA_AL_8(); @@ -8137,212 +8138,212 @@ void m68k_op_bset_8_s_al(void) } -void m68k_op_bsr_8(void) +void m68k_op_bsr_8(m68ki_cpu_core *cpu) { m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_push_32(REG_PC); - m68ki_branch_8(MASK_OUT_ABOVE_8(REG_IR)); + m68ki_push_32(cpu, REG_PC); + m68ki_branch_8(cpu, MASK_OUT_ABOVE_8(REG_IR)); } -void m68k_op_bsr_16(void) +void m68k_op_bsr_16(m68ki_cpu_core *cpu) { uint offset = OPER_I_16(); m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_push_32(REG_PC); + m68ki_push_32(cpu, REG_PC); REG_PC -= 2; - m68ki_branch_16(offset); + m68ki_branch_16(cpu, offset); } -void m68k_op_bsr_32(void) +void m68k_op_bsr_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { uint offset = OPER_I_32(); m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ - m68ki_push_32(REG_PC); + m68ki_push_32(cpu, REG_PC); REG_PC -= 4; - m68ki_branch_32(offset); + m68ki_branch_32(cpu, offset); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_btst_32_r_d(void) +void m68k_op_btst_32_r_d(m68ki_cpu_core *cpu) { FLAG_Z = DY & (1 << (DX & 0x1f)); } -void m68k_op_btst_8_r_ai(void) +void m68k_op_btst_8_r_ai(m68ki_cpu_core *cpu) { - FLAG_Z = OPER_AY_AI_8() & (1 << (DX & 7)); + FLAG_Z = OPER_AY_AI_8(cpu) & (1 << (DX & 7)); } -void m68k_op_btst_8_r_pi(void) +void m68k_op_btst_8_r_pi(m68ki_cpu_core *cpu) { - FLAG_Z = OPER_AY_PI_8() & (1 << (DX & 7)); + FLAG_Z = OPER_AY_PI_8(cpu) & (1 << (DX & 7)); } -void m68k_op_btst_8_r_pi7(void) +void m68k_op_btst_8_r_pi7(m68ki_cpu_core *cpu) { - FLAG_Z = OPER_A7_PI_8() & (1 << (DX & 7)); + FLAG_Z = OPER_A7_PI_8(cpu) & (1 << (DX & 7)); } -void m68k_op_btst_8_r_pd(void) +void m68k_op_btst_8_r_pd(m68ki_cpu_core *cpu) { - FLAG_Z = OPER_AY_PD_8() & (1 << (DX & 7)); + FLAG_Z = OPER_AY_PD_8(cpu) & (1 << (DX & 7)); } -void m68k_op_btst_8_r_pd7(void) +void m68k_op_btst_8_r_pd7(m68ki_cpu_core *cpu) { - FLAG_Z = OPER_A7_PD_8() & (1 << (DX & 7)); + FLAG_Z = OPER_A7_PD_8(cpu) & (1 << (DX & 7)); } -void m68k_op_btst_8_r_di(void) +void m68k_op_btst_8_r_di(m68ki_cpu_core *cpu) { - FLAG_Z = OPER_AY_DI_8() & (1 << (DX & 7)); + FLAG_Z = OPER_AY_DI_8(cpu) & (1 << (DX & 7)); } -void m68k_op_btst_8_r_ix(void) +void m68k_op_btst_8_r_ix(m68ki_cpu_core *cpu) { - FLAG_Z = OPER_AY_IX_8() & (1 << (DX & 7)); + FLAG_Z = OPER_AY_IX_8(cpu) & (1 << (DX & 7)); } -void m68k_op_btst_8_r_aw(void) +void m68k_op_btst_8_r_aw(m68ki_cpu_core *cpu) { - FLAG_Z = OPER_AW_8() & (1 << (DX & 7)); + FLAG_Z = OPER_AW_8(cpu) & (1 << (DX & 7)); } -void m68k_op_btst_8_r_al(void) +void m68k_op_btst_8_r_al(m68ki_cpu_core *cpu) { - FLAG_Z = OPER_AL_8() & (1 << (DX & 7)); + FLAG_Z = OPER_AL_8(cpu) & (1 << (DX & 7)); } -void m68k_op_btst_8_r_pcdi(void) +void m68k_op_btst_8_r_pcdi(m68ki_cpu_core *cpu) { - FLAG_Z = OPER_PCDI_8() & (1 << (DX & 7)); + FLAG_Z = OPER_PCDI_8(cpu) & (1 << (DX & 7)); } -void m68k_op_btst_8_r_pcix(void) +void m68k_op_btst_8_r_pcix(m68ki_cpu_core *cpu) { - FLAG_Z = OPER_PCIX_8() & (1 << (DX & 7)); + FLAG_Z = OPER_PCIX_8(cpu) & (1 << (DX & 7)); } -void m68k_op_btst_8_r_i(void) +void m68k_op_btst_8_r_i(m68ki_cpu_core *cpu) { FLAG_Z = OPER_I_8() & (1 << (DX & 7)); } -void m68k_op_btst_32_s_d(void) +void m68k_op_btst_32_s_d(m68ki_cpu_core *cpu) { FLAG_Z = DY & (1 << (OPER_I_8() & 0x1f)); } -void m68k_op_btst_8_s_ai(void) +void m68k_op_btst_8_s_ai(m68ki_cpu_core *cpu) { uint bit = OPER_I_8() & 7; - FLAG_Z = OPER_AY_AI_8() & (1 << bit); + FLAG_Z = OPER_AY_AI_8(cpu) & (1 << bit); } -void m68k_op_btst_8_s_pi(void) +void m68k_op_btst_8_s_pi(m68ki_cpu_core *cpu) { uint bit = OPER_I_8() & 7; - FLAG_Z = OPER_AY_PI_8() & (1 << bit); + FLAG_Z = OPER_AY_PI_8(cpu) & (1 << bit); } -void m68k_op_btst_8_s_pi7(void) +void m68k_op_btst_8_s_pi7(m68ki_cpu_core *cpu) { uint bit = OPER_I_8() & 7; - FLAG_Z = OPER_A7_PI_8() & (1 << bit); + FLAG_Z = OPER_A7_PI_8(cpu) & (1 << bit); } -void m68k_op_btst_8_s_pd(void) +void m68k_op_btst_8_s_pd(m68ki_cpu_core *cpu) { uint bit = OPER_I_8() & 7; - FLAG_Z = OPER_AY_PD_8() & (1 << bit); + FLAG_Z = OPER_AY_PD_8(cpu) & (1 << bit); } -void m68k_op_btst_8_s_pd7(void) +void m68k_op_btst_8_s_pd7(m68ki_cpu_core *cpu) { uint bit = OPER_I_8() & 7; - FLAG_Z = OPER_A7_PD_8() & (1 << bit); + FLAG_Z = OPER_A7_PD_8(cpu) & (1 << bit); } -void m68k_op_btst_8_s_di(void) +void m68k_op_btst_8_s_di(m68ki_cpu_core *cpu) { uint bit = OPER_I_8() & 7; - FLAG_Z = OPER_AY_DI_8() & (1 << bit); + FLAG_Z = OPER_AY_DI_8(cpu) & (1 << bit); } -void m68k_op_btst_8_s_ix(void) +void m68k_op_btst_8_s_ix(m68ki_cpu_core *cpu) { uint bit = OPER_I_8() & 7; - FLAG_Z = OPER_AY_IX_8() & (1 << bit); + FLAG_Z = OPER_AY_IX_8(cpu) & (1 << bit); } -void m68k_op_btst_8_s_aw(void) +void m68k_op_btst_8_s_aw(m68ki_cpu_core *cpu) { uint bit = OPER_I_8() & 7; - FLAG_Z = OPER_AW_8() & (1 << bit); + FLAG_Z = OPER_AW_8(cpu) & (1 << bit); } -void m68k_op_btst_8_s_al(void) +void m68k_op_btst_8_s_al(m68ki_cpu_core *cpu) { uint bit = OPER_I_8() & 7; - FLAG_Z = OPER_AL_8() & (1 << bit); + FLAG_Z = OPER_AL_8(cpu) & (1 << bit); } -void m68k_op_btst_8_s_pcdi(void) +void m68k_op_btst_8_s_pcdi(m68ki_cpu_core *cpu) { uint bit = OPER_I_8() & 7; - FLAG_Z = OPER_PCDI_8() & (1 << bit); + FLAG_Z = OPER_PCDI_8(cpu) & (1 << bit); } -void m68k_op_btst_8_s_pcix(void) +void m68k_op_btst_8_s_pcix(m68ki_cpu_core *cpu) { uint bit = OPER_I_8() & 7; - FLAG_Z = OPER_PCIX_8() & (1 << bit); + FLAG_Z = OPER_PCIX_8(cpu) & (1 << bit); } -void m68k_op_callm_32_ai(void) +void m68k_op_callm_32_ai(m68ki_cpu_core *cpu) { /* note: watch out for pcrelative modes */ if(CPU_TYPE_IS_020_VARIANT(CPU_TYPE)) @@ -8351,17 +8352,17 @@ void m68k_op_callm_32_ai(void) m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ REG_PC += 2; -(void)ea; /* just to avoid an 'unused variable' warning */ + (uint)ea; /* just to avoid an 'unused variable' warning */ M68K_DO_LOG((M68K_LOG_FILEHANDLE "%s at %08x: called unimplemented instruction %04x (%s)\n", m68ki_cpu_names[CPU_TYPE], ADDRESS_68K(REG_PC - 2), REG_IR, m68k_disassemble_quick(ADDRESS_68K(REG_PC - 2)))); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_callm_32_di(void) +void m68k_op_callm_32_di(m68ki_cpu_core *cpu) { /* note: watch out for pcrelative modes */ if(CPU_TYPE_IS_020_VARIANT(CPU_TYPE)) @@ -8370,17 +8371,17 @@ void m68k_op_callm_32_di(void) m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ REG_PC += 2; -(void)ea; /* just to avoid an 'unused variable' warning */ + (uint)ea; /* just to avoid an 'unused variable' warning */ M68K_DO_LOG((M68K_LOG_FILEHANDLE "%s at %08x: called unimplemented instruction %04x (%s)\n", m68ki_cpu_names[CPU_TYPE], ADDRESS_68K(REG_PC - 2), REG_IR, m68k_disassemble_quick(ADDRESS_68K(REG_PC - 2)))); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_callm_32_ix(void) +void m68k_op_callm_32_ix(m68ki_cpu_core *cpu) { /* note: watch out for pcrelative modes */ if(CPU_TYPE_IS_020_VARIANT(CPU_TYPE)) @@ -8389,17 +8390,17 @@ void m68k_op_callm_32_ix(void) m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ REG_PC += 2; -(void)ea; /* just to avoid an 'unused variable' warning */ + (uint)ea; /* just to avoid an 'unused variable' warning */ M68K_DO_LOG((M68K_LOG_FILEHANDLE "%s at %08x: called unimplemented instruction %04x (%s)\n", m68ki_cpu_names[CPU_TYPE], ADDRESS_68K(REG_PC - 2), REG_IR, m68k_disassemble_quick(ADDRESS_68K(REG_PC - 2)))); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_callm_32_aw(void) +void m68k_op_callm_32_aw(m68ki_cpu_core *cpu) { /* note: watch out for pcrelative modes */ if(CPU_TYPE_IS_020_VARIANT(CPU_TYPE)) @@ -8408,17 +8409,17 @@ void m68k_op_callm_32_aw(void) m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ REG_PC += 2; -(void)ea; /* just to avoid an 'unused variable' warning */ + (uint)ea; /* just to avoid an 'unused variable' warning */ M68K_DO_LOG((M68K_LOG_FILEHANDLE "%s at %08x: called unimplemented instruction %04x (%s)\n", m68ki_cpu_names[CPU_TYPE], ADDRESS_68K(REG_PC - 2), REG_IR, m68k_disassemble_quick(ADDRESS_68K(REG_PC - 2)))); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_callm_32_al(void) +void m68k_op_callm_32_al(m68ki_cpu_core *cpu) { /* note: watch out for pcrelative modes */ if(CPU_TYPE_IS_020_VARIANT(CPU_TYPE)) @@ -8427,17 +8428,17 @@ void m68k_op_callm_32_al(void) m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ REG_PC += 2; -(void)ea; /* just to avoid an 'unused variable' warning */ + (uint)ea; /* just to avoid an 'unused variable' warning */ M68K_DO_LOG((M68K_LOG_FILEHANDLE "%s at %08x: called unimplemented instruction %04x (%s)\n", m68ki_cpu_names[CPU_TYPE], ADDRESS_68K(REG_PC - 2), REG_IR, m68k_disassemble_quick(ADDRESS_68K(REG_PC - 2)))); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_callm_32_pcdi(void) +void m68k_op_callm_32_pcdi(m68ki_cpu_core *cpu) { /* note: watch out for pcrelative modes */ if(CPU_TYPE_IS_020_VARIANT(CPU_TYPE)) @@ -8446,17 +8447,17 @@ void m68k_op_callm_32_pcdi(void) m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ REG_PC += 2; -(void)ea; /* just to avoid an 'unused variable' warning */ + (uint)ea; /* just to avoid an 'unused variable' warning */ M68K_DO_LOG((M68K_LOG_FILEHANDLE "%s at %08x: called unimplemented instruction %04x (%s)\n", m68ki_cpu_names[CPU_TYPE], ADDRESS_68K(REG_PC - 2), REG_IR, m68k_disassemble_quick(ADDRESS_68K(REG_PC - 2)))); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_callm_32_pcix(void) +void m68k_op_callm_32_pcix(m68ki_cpu_core *cpu) { /* note: watch out for pcrelative modes */ if(CPU_TYPE_IS_020_VARIANT(CPU_TYPE)) @@ -8465,17 +8466,17 @@ void m68k_op_callm_32_pcix(void) m68ki_trace_t0(); /* auto-disable (see m68kcpu.h) */ REG_PC += 2; -(void)ea; /* just to avoid an 'unused variable' warning */ + (uint)ea; /* just to avoid an 'unused variable' warning */ M68K_DO_LOG((M68K_LOG_FILEHANDLE "%s at %08x: called unimplemented instruction %04x (%s)\n", m68ki_cpu_names[CPU_TYPE], ADDRESS_68K(REG_PC - 2), REG_IR, m68k_disassemble_quick(ADDRESS_68K(REG_PC - 2)))); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_8_ai(void) +void m68k_op_cas_8_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8500,11 +8501,11 @@ void m68k_op_cas_8_ai(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_8_pi(void) +void m68k_op_cas_8_pi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8529,11 +8530,11 @@ void m68k_op_cas_8_pi(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_8_pi7(void) +void m68k_op_cas_8_pi7(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8558,11 +8559,11 @@ void m68k_op_cas_8_pi7(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_8_pd(void) +void m68k_op_cas_8_pd(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8587,11 +8588,11 @@ void m68k_op_cas_8_pd(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_8_pd7(void) +void m68k_op_cas_8_pd7(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8616,11 +8617,11 @@ void m68k_op_cas_8_pd7(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_8_di(void) +void m68k_op_cas_8_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8645,11 +8646,11 @@ void m68k_op_cas_8_di(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_8_ix(void) +void m68k_op_cas_8_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8674,11 +8675,11 @@ void m68k_op_cas_8_ix(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_8_aw(void) +void m68k_op_cas_8_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8703,11 +8704,11 @@ void m68k_op_cas_8_aw(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_8_al(void) +void m68k_op_cas_8_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8732,11 +8733,11 @@ void m68k_op_cas_8_al(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_16_ai(void) +void m68k_op_cas_16_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8761,11 +8762,11 @@ void m68k_op_cas_16_ai(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_16_pi(void) +void m68k_op_cas_16_pi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8790,11 +8791,11 @@ void m68k_op_cas_16_pi(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_16_pd(void) +void m68k_op_cas_16_pd(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8819,11 +8820,11 @@ void m68k_op_cas_16_pd(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_16_di(void) +void m68k_op_cas_16_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8848,11 +8849,11 @@ void m68k_op_cas_16_di(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_16_ix(void) +void m68k_op_cas_16_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8877,11 +8878,11 @@ void m68k_op_cas_16_ix(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_16_aw(void) +void m68k_op_cas_16_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8906,11 +8907,11 @@ void m68k_op_cas_16_aw(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_16_al(void) +void m68k_op_cas_16_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8935,11 +8936,11 @@ void m68k_op_cas_16_al(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_32_ai(void) +void m68k_op_cas_32_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8964,11 +8965,11 @@ void m68k_op_cas_32_ai(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_32_pi(void) +void m68k_op_cas_32_pi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -8993,11 +8994,11 @@ void m68k_op_cas_32_pi(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_32_pd(void) +void m68k_op_cas_32_pd(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9022,11 +9023,11 @@ void m68k_op_cas_32_pd(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_32_di(void) +void m68k_op_cas_32_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9051,11 +9052,11 @@ void m68k_op_cas_32_di(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_32_ix(void) +void m68k_op_cas_32_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9080,11 +9081,11 @@ void m68k_op_cas_32_ix(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_32_aw(void) +void m68k_op_cas_32_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9109,11 +9110,11 @@ void m68k_op_cas_32_aw(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas_32_al(void) +void m68k_op_cas_32_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9138,11 +9139,11 @@ void m68k_op_cas_32_al(void) } return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas2_16(void) +void m68k_op_cas2_16(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9183,11 +9184,11 @@ void m68k_op_cas2_16(void) *compare2 = BIT_F(word2) ? MAKE_INT_16(dest2) : MASK_OUT_BELOW_16(*compare2) | dest2; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cas2_32(void) +void m68k_op_cas2_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9228,11 +9229,11 @@ void m68k_op_cas2_32(void) *compare2 = dest2; return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk_16_d(void) +void m68k_op_chk_16_d(m68ki_cpu_core *cpu) { sint src = MAKE_INT_16(DX); sint bound = MAKE_INT_16(DY); @@ -9246,14 +9247,14 @@ void m68k_op_chk_16_d(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); } -void m68k_op_chk_16_ai(void) +void m68k_op_chk_16_ai(m68ki_cpu_core *cpu) { sint src = MAKE_INT_16(DX); - sint bound = MAKE_INT_16(OPER_AY_AI_16()); + sint bound = MAKE_INT_16(OPER_AY_AI_16(cpu)); FLAG_Z = ZFLAG_16(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9264,14 +9265,14 @@ void m68k_op_chk_16_ai(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); } -void m68k_op_chk_16_pi(void) +void m68k_op_chk_16_pi(m68ki_cpu_core *cpu) { sint src = MAKE_INT_16(DX); - sint bound = MAKE_INT_16(OPER_AY_PI_16()); + sint bound = MAKE_INT_16(OPER_AY_PI_16(cpu)); FLAG_Z = ZFLAG_16(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9282,14 +9283,14 @@ void m68k_op_chk_16_pi(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); } -void m68k_op_chk_16_pd(void) +void m68k_op_chk_16_pd(m68ki_cpu_core *cpu) { sint src = MAKE_INT_16(DX); - sint bound = MAKE_INT_16(OPER_AY_PD_16()); + sint bound = MAKE_INT_16(OPER_AY_PD_16(cpu)); FLAG_Z = ZFLAG_16(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9300,14 +9301,14 @@ void m68k_op_chk_16_pd(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); } -void m68k_op_chk_16_di(void) +void m68k_op_chk_16_di(m68ki_cpu_core *cpu) { sint src = MAKE_INT_16(DX); - sint bound = MAKE_INT_16(OPER_AY_DI_16()); + sint bound = MAKE_INT_16(OPER_AY_DI_16(cpu)); FLAG_Z = ZFLAG_16(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9318,14 +9319,14 @@ void m68k_op_chk_16_di(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); } -void m68k_op_chk_16_ix(void) +void m68k_op_chk_16_ix(m68ki_cpu_core *cpu) { sint src = MAKE_INT_16(DX); - sint bound = MAKE_INT_16(OPER_AY_IX_16()); + sint bound = MAKE_INT_16(OPER_AY_IX_16(cpu)); FLAG_Z = ZFLAG_16(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9336,14 +9337,14 @@ void m68k_op_chk_16_ix(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); } -void m68k_op_chk_16_aw(void) +void m68k_op_chk_16_aw(m68ki_cpu_core *cpu) { sint src = MAKE_INT_16(DX); - sint bound = MAKE_INT_16(OPER_AW_16()); + sint bound = MAKE_INT_16(OPER_AW_16(cpu)); FLAG_Z = ZFLAG_16(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9354,14 +9355,14 @@ void m68k_op_chk_16_aw(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); } -void m68k_op_chk_16_al(void) +void m68k_op_chk_16_al(m68ki_cpu_core *cpu) { sint src = MAKE_INT_16(DX); - sint bound = MAKE_INT_16(OPER_AL_16()); + sint bound = MAKE_INT_16(OPER_AL_16(cpu)); FLAG_Z = ZFLAG_16(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9372,14 +9373,14 @@ void m68k_op_chk_16_al(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); } -void m68k_op_chk_16_pcdi(void) +void m68k_op_chk_16_pcdi(m68ki_cpu_core *cpu) { sint src = MAKE_INT_16(DX); - sint bound = MAKE_INT_16(OPER_PCDI_16()); + sint bound = MAKE_INT_16(OPER_PCDI_16(cpu)); FLAG_Z = ZFLAG_16(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9390,14 +9391,14 @@ void m68k_op_chk_16_pcdi(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); } -void m68k_op_chk_16_pcix(void) +void m68k_op_chk_16_pcix(m68ki_cpu_core *cpu) { sint src = MAKE_INT_16(DX); - sint bound = MAKE_INT_16(OPER_PCIX_16()); + sint bound = MAKE_INT_16(OPER_PCIX_16(cpu)); FLAG_Z = ZFLAG_16(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9408,11 +9409,11 @@ void m68k_op_chk_16_pcix(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); } -void m68k_op_chk_16_i(void) +void m68k_op_chk_16_i(m68ki_cpu_core *cpu) { sint src = MAKE_INT_16(DX); sint bound = MAKE_INT_16(OPER_I_16()); @@ -9426,11 +9427,11 @@ void m68k_op_chk_16_i(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); } -void m68k_op_chk_32_d(void) +void m68k_op_chk_32_d(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9446,19 +9447,19 @@ void m68k_op_chk_32_d(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk_32_ai(void) +void m68k_op_chk_32_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { sint src = MAKE_INT_32(DX); - sint bound = MAKE_INT_32(OPER_AY_AI_32()); + sint bound = MAKE_INT_32(OPER_AY_AI_32(cpu)); FLAG_Z = ZFLAG_32(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9469,19 +9470,19 @@ void m68k_op_chk_32_ai(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk_32_pi(void) +void m68k_op_chk_32_pi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { sint src = MAKE_INT_32(DX); - sint bound = MAKE_INT_32(OPER_AY_PI_32()); + sint bound = MAKE_INT_32(OPER_AY_PI_32(cpu)); FLAG_Z = ZFLAG_32(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9492,19 +9493,19 @@ void m68k_op_chk_32_pi(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk_32_pd(void) +void m68k_op_chk_32_pd(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { sint src = MAKE_INT_32(DX); - sint bound = MAKE_INT_32(OPER_AY_PD_32()); + sint bound = MAKE_INT_32(OPER_AY_PD_32(cpu)); FLAG_Z = ZFLAG_32(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9515,19 +9516,19 @@ void m68k_op_chk_32_pd(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk_32_di(void) +void m68k_op_chk_32_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { sint src = MAKE_INT_32(DX); - sint bound = MAKE_INT_32(OPER_AY_DI_32()); + sint bound = MAKE_INT_32(OPER_AY_DI_32(cpu)); FLAG_Z = ZFLAG_32(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9538,19 +9539,19 @@ void m68k_op_chk_32_di(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk_32_ix(void) +void m68k_op_chk_32_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { sint src = MAKE_INT_32(DX); - sint bound = MAKE_INT_32(OPER_AY_IX_32()); + sint bound = MAKE_INT_32(OPER_AY_IX_32(cpu)); FLAG_Z = ZFLAG_32(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9561,19 +9562,19 @@ void m68k_op_chk_32_ix(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk_32_aw(void) +void m68k_op_chk_32_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { sint src = MAKE_INT_32(DX); - sint bound = MAKE_INT_32(OPER_AW_32()); + sint bound = MAKE_INT_32(OPER_AW_32(cpu)); FLAG_Z = ZFLAG_32(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9584,19 +9585,19 @@ void m68k_op_chk_32_aw(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk_32_al(void) +void m68k_op_chk_32_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { sint src = MAKE_INT_32(DX); - sint bound = MAKE_INT_32(OPER_AL_32()); + sint bound = MAKE_INT_32(OPER_AL_32(cpu)); FLAG_Z = ZFLAG_32(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9607,19 +9608,19 @@ void m68k_op_chk_32_al(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk_32_pcdi(void) +void m68k_op_chk_32_pcdi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { sint src = MAKE_INT_32(DX); - sint bound = MAKE_INT_32(OPER_PCDI_32()); + sint bound = MAKE_INT_32(OPER_PCDI_32(cpu)); FLAG_Z = ZFLAG_32(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9630,19 +9631,19 @@ void m68k_op_chk_32_pcdi(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk_32_pcix(void) +void m68k_op_chk_32_pcix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { sint src = MAKE_INT_32(DX); - sint bound = MAKE_INT_32(OPER_PCIX_32()); + sint bound = MAKE_INT_32(OPER_PCIX_32(cpu)); FLAG_Z = ZFLAG_32(src); /* Undocumented */ FLAG_V = VFLAG_CLEAR; /* Undocumented */ @@ -9653,14 +9654,14 @@ void m68k_op_chk_32_pcix(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk_32_i(void) +void m68k_op_chk_32_i(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9676,14 +9677,14 @@ void m68k_op_chk_32_i(void) return; } FLAG_N = (src < 0)<<7; - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_8_pcdi(void) +void m68k_op_chk2cmp2_8_pcdi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9701,20 +9702,20 @@ void m68k_op_chk2cmp2_8_pcdi(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_8_pcix(void) +void m68k_op_chk2cmp2_8_pcix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9732,20 +9733,20 @@ void m68k_op_chk2cmp2_8_pcix(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_8_ai(void) +void m68k_op_chk2cmp2_8_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9763,20 +9764,20 @@ void m68k_op_chk2cmp2_8_ai(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_8_di(void) +void m68k_op_chk2cmp2_8_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9794,20 +9795,20 @@ void m68k_op_chk2cmp2_8_di(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_8_ix(void) +void m68k_op_chk2cmp2_8_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9825,20 +9826,20 @@ void m68k_op_chk2cmp2_8_ix(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_8_aw(void) +void m68k_op_chk2cmp2_8_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9856,20 +9857,20 @@ void m68k_op_chk2cmp2_8_aw(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_8_al(void) +void m68k_op_chk2cmp2_8_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9887,20 +9888,20 @@ void m68k_op_chk2cmp2_8_al(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_16_pcdi(void) +void m68k_op_chk2cmp2_16_pcdi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9919,7 +9920,7 @@ void m68k_op_chk2cmp2_16_pcdi(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } @@ -9929,14 +9930,14 @@ void m68k_op_chk2cmp2_16_pcdi(void) FLAG_C = upper_bound - compare; FLAG_C = CFLAG_16(FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_16_pcix(void) +void m68k_op_chk2cmp2_16_pcix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9955,7 +9956,7 @@ void m68k_op_chk2cmp2_16_pcix(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } @@ -9965,14 +9966,14 @@ void m68k_op_chk2cmp2_16_pcix(void) FLAG_C = upper_bound - compare; FLAG_C = CFLAG_16(FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_16_ai(void) +void m68k_op_chk2cmp2_16_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -9992,7 +9993,7 @@ void m68k_op_chk2cmp2_16_ai(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } if(!BIT_F(word2)) @@ -10002,14 +10003,14 @@ void m68k_op_chk2cmp2_16_ai(void) FLAG_C = CFLAG_16(FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_16_di(void) +void m68k_op_chk2cmp2_16_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -10029,7 +10030,7 @@ void m68k_op_chk2cmp2_16_di(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } if(!BIT_F(word2)) @@ -10039,14 +10040,14 @@ void m68k_op_chk2cmp2_16_di(void) FLAG_C = CFLAG_16(FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_16_ix(void) +void m68k_op_chk2cmp2_16_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -10066,7 +10067,7 @@ void m68k_op_chk2cmp2_16_ix(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } if(!BIT_F(word2)) @@ -10076,14 +10077,14 @@ void m68k_op_chk2cmp2_16_ix(void) FLAG_C = CFLAG_16(FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_16_aw(void) +void m68k_op_chk2cmp2_16_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -10103,7 +10104,7 @@ void m68k_op_chk2cmp2_16_aw(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } if(!BIT_F(word2)) @@ -10113,14 +10114,14 @@ void m68k_op_chk2cmp2_16_aw(void) FLAG_C = CFLAG_16(FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_16_al(void) +void m68k_op_chk2cmp2_16_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -10140,7 +10141,7 @@ void m68k_op_chk2cmp2_16_al(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } if(!BIT_F(word2)) @@ -10150,14 +10151,14 @@ void m68k_op_chk2cmp2_16_al(void) FLAG_C = CFLAG_16(FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_32_pcdi(void) +void m68k_op_chk2cmp2_32_pcdi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -10173,21 +10174,21 @@ void m68k_op_chk2cmp2_32_pcdi(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; FLAG_C = CFLAG_SUB_32(compare, upper_bound, FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_32_pcix(void) +void m68k_op_chk2cmp2_32_pcix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -10203,21 +10204,21 @@ void m68k_op_chk2cmp2_32_pcix(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; FLAG_C = CFLAG_SUB_32(compare, upper_bound, FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_32_ai(void) +void m68k_op_chk2cmp2_32_ai(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -10233,21 +10234,21 @@ void m68k_op_chk2cmp2_32_ai(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; FLAG_C = CFLAG_SUB_32(compare, upper_bound, FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_32_di(void) +void m68k_op_chk2cmp2_32_di(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -10263,21 +10264,21 @@ void m68k_op_chk2cmp2_32_di(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; FLAG_C = CFLAG_SUB_32(compare, upper_bound, FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_32_ix(void) +void m68k_op_chk2cmp2_32_ix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -10293,21 +10294,21 @@ void m68k_op_chk2cmp2_32_ix(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; FLAG_C = CFLAG_SUB_32(compare, upper_bound, FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_32_aw(void) +void m68k_op_chk2cmp2_32_aw(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -10323,21 +10324,21 @@ void m68k_op_chk2cmp2_32_aw(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; FLAG_C = CFLAG_SUB_32(compare, upper_bound, FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_chk2cmp2_32_al(void) +void m68k_op_chk2cmp2_32_al(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -10353,21 +10354,21 @@ void m68k_op_chk2cmp2_32_al(void) if(COND_CS()) { if(BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } FLAG_C = upper_bound - compare; FLAG_C = CFLAG_SUB_32(compare, upper_bound, FLAG_C); if(COND_CS() && BIT_B(word2)) - m68ki_exception_trap(EXCEPTION_CHK); + m68ki_exception_trap(cpu, EXCEPTION_CHK); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_clr_8_d(void) +void m68k_op_clr_8_d(m68ki_cpu_core *cpu) { DY &= 0xffffff00; @@ -10378,7 +10379,7 @@ void m68k_op_clr_8_d(void) } -void m68k_op_clr_8_ai(void) +void m68k_op_clr_8_ai(m68ki_cpu_core *cpu) { m68ki_write_8(EA_AY_AI_8(), 0); @@ -10389,7 +10390,7 @@ void m68k_op_clr_8_ai(void) } -void m68k_op_clr_8_pi(void) +void m68k_op_clr_8_pi(m68ki_cpu_core *cpu) { m68ki_write_8(EA_AY_PI_8(), 0); @@ -10400,7 +10401,7 @@ void m68k_op_clr_8_pi(void) } -void m68k_op_clr_8_pi7(void) +void m68k_op_clr_8_pi7(m68ki_cpu_core *cpu) { m68ki_write_8(EA_A7_PI_8(), 0); @@ -10411,7 +10412,7 @@ void m68k_op_clr_8_pi7(void) } -void m68k_op_clr_8_pd(void) +void m68k_op_clr_8_pd(m68ki_cpu_core *cpu) { m68ki_write_8(EA_AY_PD_8(), 0); @@ -10422,7 +10423,7 @@ void m68k_op_clr_8_pd(void) } -void m68k_op_clr_8_pd7(void) +void m68k_op_clr_8_pd7(m68ki_cpu_core *cpu) { m68ki_write_8(EA_A7_PD_8(), 0); @@ -10433,7 +10434,7 @@ void m68k_op_clr_8_pd7(void) } -void m68k_op_clr_8_di(void) +void m68k_op_clr_8_di(m68ki_cpu_core *cpu) { m68ki_write_8(EA_AY_DI_8(), 0); @@ -10444,7 +10445,7 @@ void m68k_op_clr_8_di(void) } -void m68k_op_clr_8_ix(void) +void m68k_op_clr_8_ix(m68ki_cpu_core *cpu) { m68ki_write_8(EA_AY_IX_8(), 0); @@ -10455,7 +10456,7 @@ void m68k_op_clr_8_ix(void) } -void m68k_op_clr_8_aw(void) +void m68k_op_clr_8_aw(m68ki_cpu_core *cpu) { m68ki_write_8(EA_AW_8(), 0); @@ -10466,7 +10467,7 @@ void m68k_op_clr_8_aw(void) } -void m68k_op_clr_8_al(void) +void m68k_op_clr_8_al(m68ki_cpu_core *cpu) { m68ki_write_8(EA_AL_8(), 0); @@ -10477,7 +10478,7 @@ void m68k_op_clr_8_al(void) } -void m68k_op_clr_16_d(void) +void m68k_op_clr_16_d(m68ki_cpu_core *cpu) { DY &= 0xffff0000; @@ -10488,7 +10489,7 @@ void m68k_op_clr_16_d(void) } -void m68k_op_clr_16_ai(void) +void m68k_op_clr_16_ai(m68ki_cpu_core *cpu) { m68ki_write_16(EA_AY_AI_16(), 0); @@ -10499,7 +10500,7 @@ void m68k_op_clr_16_ai(void) } -void m68k_op_clr_16_pi(void) +void m68k_op_clr_16_pi(m68ki_cpu_core *cpu) { m68ki_write_16(EA_AY_PI_16(), 0); @@ -10510,7 +10511,7 @@ void m68k_op_clr_16_pi(void) } -void m68k_op_clr_16_pd(void) +void m68k_op_clr_16_pd(m68ki_cpu_core *cpu) { m68ki_write_16(EA_AY_PD_16(), 0); @@ -10521,7 +10522,7 @@ void m68k_op_clr_16_pd(void) } -void m68k_op_clr_16_di(void) +void m68k_op_clr_16_di(m68ki_cpu_core *cpu) { m68ki_write_16(EA_AY_DI_16(), 0); @@ -10532,7 +10533,7 @@ void m68k_op_clr_16_di(void) } -void m68k_op_clr_16_ix(void) +void m68k_op_clr_16_ix(m68ki_cpu_core *cpu) { m68ki_write_16(EA_AY_IX_16(), 0); @@ -10543,7 +10544,7 @@ void m68k_op_clr_16_ix(void) } -void m68k_op_clr_16_aw(void) +void m68k_op_clr_16_aw(m68ki_cpu_core *cpu) { m68ki_write_16(EA_AW_16(), 0); @@ -10554,7 +10555,7 @@ void m68k_op_clr_16_aw(void) } -void m68k_op_clr_16_al(void) +void m68k_op_clr_16_al(m68ki_cpu_core *cpu) { m68ki_write_16(EA_AL_16(), 0); @@ -10565,7 +10566,7 @@ void m68k_op_clr_16_al(void) } -void m68k_op_clr_32_d(void) +void m68k_op_clr_32_d(m68ki_cpu_core *cpu) { DY = 0; @@ -10576,7 +10577,7 @@ void m68k_op_clr_32_d(void) } -void m68k_op_clr_32_ai(void) +void m68k_op_clr_32_ai(m68ki_cpu_core *cpu) { m68ki_write_32(EA_AY_AI_32(), 0); @@ -10587,7 +10588,7 @@ void m68k_op_clr_32_ai(void) } -void m68k_op_clr_32_pi(void) +void m68k_op_clr_32_pi(m68ki_cpu_core *cpu) { m68ki_write_32(EA_AY_PI_32(), 0); @@ -10598,7 +10599,7 @@ void m68k_op_clr_32_pi(void) } -void m68k_op_clr_32_pd(void) +void m68k_op_clr_32_pd(m68ki_cpu_core *cpu) { m68ki_write_32(EA_AY_PD_32(), 0); @@ -10609,7 +10610,7 @@ void m68k_op_clr_32_pd(void) } -void m68k_op_clr_32_di(void) +void m68k_op_clr_32_di(m68ki_cpu_core *cpu) { m68ki_write_32(EA_AY_DI_32(), 0); @@ -10620,7 +10621,7 @@ void m68k_op_clr_32_di(void) } -void m68k_op_clr_32_ix(void) +void m68k_op_clr_32_ix(m68ki_cpu_core *cpu) { m68ki_write_32(EA_AY_IX_32(), 0); @@ -10631,7 +10632,7 @@ void m68k_op_clr_32_ix(void) } -void m68k_op_clr_32_aw(void) +void m68k_op_clr_32_aw(m68ki_cpu_core *cpu) { m68ki_write_32(EA_AW_32(), 0); @@ -10642,7 +10643,7 @@ void m68k_op_clr_32_aw(void) } -void m68k_op_clr_32_al(void) +void m68k_op_clr_32_al(m68ki_cpu_core *cpu) { m68ki_write_32(EA_AL_32(), 0); @@ -10653,7 +10654,7 @@ void m68k_op_clr_32_al(void) } -void m68k_op_cmp_8_d(void) +void m68k_op_cmp_8_d(m68ki_cpu_core *cpu) { uint src = MASK_OUT_ABOVE_8(DY); uint dst = MASK_OUT_ABOVE_8(DX); @@ -10666,9 +10667,9 @@ void m68k_op_cmp_8_d(void) } -void m68k_op_cmp_8_ai(void) +void m68k_op_cmp_8_ai(m68ki_cpu_core *cpu) { - uint src = OPER_AY_AI_8(); + uint src = OPER_AY_AI_8(cpu); uint dst = MASK_OUT_ABOVE_8(DX); uint res = dst - src; @@ -10679,9 +10680,9 @@ void m68k_op_cmp_8_ai(void) } -void m68k_op_cmp_8_pi(void) +void m68k_op_cmp_8_pi(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PI_8(); + uint src = OPER_AY_PI_8(cpu); uint dst = MASK_OUT_ABOVE_8(DX); uint res = dst - src; @@ -10692,9 +10693,9 @@ void m68k_op_cmp_8_pi(void) } -void m68k_op_cmp_8_pi7(void) +void m68k_op_cmp_8_pi7(m68ki_cpu_core *cpu) { - uint src = OPER_A7_PI_8(); + uint src = OPER_A7_PI_8(cpu); uint dst = MASK_OUT_ABOVE_8(DX); uint res = dst - src; @@ -10705,9 +10706,9 @@ void m68k_op_cmp_8_pi7(void) } -void m68k_op_cmp_8_pd(void) +void m68k_op_cmp_8_pd(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PD_8(); + uint src = OPER_AY_PD_8(cpu); uint dst = MASK_OUT_ABOVE_8(DX); uint res = dst - src; @@ -10718,9 +10719,9 @@ void m68k_op_cmp_8_pd(void) } -void m68k_op_cmp_8_pd7(void) +void m68k_op_cmp_8_pd7(m68ki_cpu_core *cpu) { - uint src = OPER_A7_PD_8(); + uint src = OPER_A7_PD_8(cpu); uint dst = MASK_OUT_ABOVE_8(DX); uint res = dst - src; @@ -10731,9 +10732,9 @@ void m68k_op_cmp_8_pd7(void) } -void m68k_op_cmp_8_di(void) +void m68k_op_cmp_8_di(m68ki_cpu_core *cpu) { - uint src = OPER_AY_DI_8(); + uint src = OPER_AY_DI_8(cpu); uint dst = MASK_OUT_ABOVE_8(DX); uint res = dst - src; @@ -10744,9 +10745,9 @@ void m68k_op_cmp_8_di(void) } -void m68k_op_cmp_8_ix(void) +void m68k_op_cmp_8_ix(m68ki_cpu_core *cpu) { - uint src = OPER_AY_IX_8(); + uint src = OPER_AY_IX_8(cpu); uint dst = MASK_OUT_ABOVE_8(DX); uint res = dst - src; @@ -10757,9 +10758,9 @@ void m68k_op_cmp_8_ix(void) } -void m68k_op_cmp_8_aw(void) +void m68k_op_cmp_8_aw(m68ki_cpu_core *cpu) { - uint src = OPER_AW_8(); + uint src = OPER_AW_8(cpu); uint dst = MASK_OUT_ABOVE_8(DX); uint res = dst - src; @@ -10770,9 +10771,9 @@ void m68k_op_cmp_8_aw(void) } -void m68k_op_cmp_8_al(void) +void m68k_op_cmp_8_al(m68ki_cpu_core *cpu) { - uint src = OPER_AL_8(); + uint src = OPER_AL_8(cpu); uint dst = MASK_OUT_ABOVE_8(DX); uint res = dst - src; @@ -10783,9 +10784,9 @@ void m68k_op_cmp_8_al(void) } -void m68k_op_cmp_8_pcdi(void) +void m68k_op_cmp_8_pcdi(m68ki_cpu_core *cpu) { - uint src = OPER_PCDI_8(); + uint src = OPER_PCDI_8(cpu); uint dst = MASK_OUT_ABOVE_8(DX); uint res = dst - src; @@ -10796,9 +10797,9 @@ void m68k_op_cmp_8_pcdi(void) } -void m68k_op_cmp_8_pcix(void) +void m68k_op_cmp_8_pcix(m68ki_cpu_core *cpu) { - uint src = OPER_PCIX_8(); + uint src = OPER_PCIX_8(cpu); uint dst = MASK_OUT_ABOVE_8(DX); uint res = dst - src; @@ -10809,7 +10810,7 @@ void m68k_op_cmp_8_pcix(void) } -void m68k_op_cmp_8_i(void) +void m68k_op_cmp_8_i(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint dst = MASK_OUT_ABOVE_8(DX); @@ -10822,7 +10823,7 @@ void m68k_op_cmp_8_i(void) } -void m68k_op_cmp_16_d(void) +void m68k_op_cmp_16_d(m68ki_cpu_core *cpu) { uint src = MASK_OUT_ABOVE_16(DY); uint dst = MASK_OUT_ABOVE_16(DX); @@ -10835,7 +10836,7 @@ void m68k_op_cmp_16_d(void) } -void m68k_op_cmp_16_a(void) +void m68k_op_cmp_16_a(m68ki_cpu_core *cpu) { uint src = MASK_OUT_ABOVE_16(AY); uint dst = MASK_OUT_ABOVE_16(DX); @@ -10848,9 +10849,9 @@ void m68k_op_cmp_16_a(void) } -void m68k_op_cmp_16_ai(void) +void m68k_op_cmp_16_ai(m68ki_cpu_core *cpu) { - uint src = OPER_AY_AI_16(); + uint src = OPER_AY_AI_16(cpu); uint dst = MASK_OUT_ABOVE_16(DX); uint res = dst - src; @@ -10861,9 +10862,9 @@ void m68k_op_cmp_16_ai(void) } -void m68k_op_cmp_16_pi(void) +void m68k_op_cmp_16_pi(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PI_16(); + uint src = OPER_AY_PI_16(cpu); uint dst = MASK_OUT_ABOVE_16(DX); uint res = dst - src; @@ -10874,9 +10875,9 @@ void m68k_op_cmp_16_pi(void) } -void m68k_op_cmp_16_pd(void) +void m68k_op_cmp_16_pd(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PD_16(); + uint src = OPER_AY_PD_16(cpu); uint dst = MASK_OUT_ABOVE_16(DX); uint res = dst - src; @@ -10887,9 +10888,9 @@ void m68k_op_cmp_16_pd(void) } -void m68k_op_cmp_16_di(void) +void m68k_op_cmp_16_di(m68ki_cpu_core *cpu) { - uint src = OPER_AY_DI_16(); + uint src = OPER_AY_DI_16(cpu); uint dst = MASK_OUT_ABOVE_16(DX); uint res = dst - src; @@ -10900,9 +10901,9 @@ void m68k_op_cmp_16_di(void) } -void m68k_op_cmp_16_ix(void) +void m68k_op_cmp_16_ix(m68ki_cpu_core *cpu) { - uint src = OPER_AY_IX_16(); + uint src = OPER_AY_IX_16(cpu); uint dst = MASK_OUT_ABOVE_16(DX); uint res = dst - src; @@ -10913,9 +10914,9 @@ void m68k_op_cmp_16_ix(void) } -void m68k_op_cmp_16_aw(void) +void m68k_op_cmp_16_aw(m68ki_cpu_core *cpu) { - uint src = OPER_AW_16(); + uint src = OPER_AW_16(cpu); uint dst = MASK_OUT_ABOVE_16(DX); uint res = dst - src; @@ -10926,9 +10927,9 @@ void m68k_op_cmp_16_aw(void) } -void m68k_op_cmp_16_al(void) +void m68k_op_cmp_16_al(m68ki_cpu_core *cpu) { - uint src = OPER_AL_16(); + uint src = OPER_AL_16(cpu); uint dst = MASK_OUT_ABOVE_16(DX); uint res = dst - src; @@ -10939,9 +10940,9 @@ void m68k_op_cmp_16_al(void) } -void m68k_op_cmp_16_pcdi(void) +void m68k_op_cmp_16_pcdi(m68ki_cpu_core *cpu) { - uint src = OPER_PCDI_16(); + uint src = OPER_PCDI_16(cpu); uint dst = MASK_OUT_ABOVE_16(DX); uint res = dst - src; @@ -10952,9 +10953,9 @@ void m68k_op_cmp_16_pcdi(void) } -void m68k_op_cmp_16_pcix(void) +void m68k_op_cmp_16_pcix(m68ki_cpu_core *cpu) { - uint src = OPER_PCIX_16(); + uint src = OPER_PCIX_16(cpu); uint dst = MASK_OUT_ABOVE_16(DX); uint res = dst - src; @@ -10965,7 +10966,7 @@ void m68k_op_cmp_16_pcix(void) } -void m68k_op_cmp_16_i(void) +void m68k_op_cmp_16_i(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint dst = MASK_OUT_ABOVE_16(DX); @@ -10978,7 +10979,7 @@ void m68k_op_cmp_16_i(void) } -void m68k_op_cmp_32_d(void) +void m68k_op_cmp_32_d(m68ki_cpu_core *cpu) { uint src = DY; uint dst = DX; @@ -10991,7 +10992,7 @@ void m68k_op_cmp_32_d(void) } -void m68k_op_cmp_32_a(void) +void m68k_op_cmp_32_a(m68ki_cpu_core *cpu) { uint src = AY; uint dst = DX; @@ -11004,9 +11005,9 @@ void m68k_op_cmp_32_a(void) } -void m68k_op_cmp_32_ai(void) +void m68k_op_cmp_32_ai(m68ki_cpu_core *cpu) { - uint src = OPER_AY_AI_32(); + uint src = OPER_AY_AI_32(cpu); uint dst = DX; uint res = dst - src; @@ -11017,9 +11018,9 @@ void m68k_op_cmp_32_ai(void) } -void m68k_op_cmp_32_pi(void) +void m68k_op_cmp_32_pi(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PI_32(); + uint src = OPER_AY_PI_32(cpu); uint dst = DX; uint res = dst - src; @@ -11030,9 +11031,9 @@ void m68k_op_cmp_32_pi(void) } -void m68k_op_cmp_32_pd(void) +void m68k_op_cmp_32_pd(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PD_32(); + uint src = OPER_AY_PD_32(cpu); uint dst = DX; uint res = dst - src; @@ -11043,9 +11044,9 @@ void m68k_op_cmp_32_pd(void) } -void m68k_op_cmp_32_di(void) +void m68k_op_cmp_32_di(m68ki_cpu_core *cpu) { - uint src = OPER_AY_DI_32(); + uint src = OPER_AY_DI_32(cpu); uint dst = DX; uint res = dst - src; @@ -11056,9 +11057,9 @@ void m68k_op_cmp_32_di(void) } -void m68k_op_cmp_32_ix(void) +void m68k_op_cmp_32_ix(m68ki_cpu_core *cpu) { - uint src = OPER_AY_IX_32(); + uint src = OPER_AY_IX_32(cpu); uint dst = DX; uint res = dst - src; @@ -11069,9 +11070,9 @@ void m68k_op_cmp_32_ix(void) } -void m68k_op_cmp_32_aw(void) +void m68k_op_cmp_32_aw(m68ki_cpu_core *cpu) { - uint src = OPER_AW_32(); + uint src = OPER_AW_32(cpu); uint dst = DX; uint res = dst - src; @@ -11082,9 +11083,9 @@ void m68k_op_cmp_32_aw(void) } -void m68k_op_cmp_32_al(void) +void m68k_op_cmp_32_al(m68ki_cpu_core *cpu) { - uint src = OPER_AL_32(); + uint src = OPER_AL_32(cpu); uint dst = DX; uint res = dst - src; @@ -11095,9 +11096,9 @@ void m68k_op_cmp_32_al(void) } -void m68k_op_cmp_32_pcdi(void) +void m68k_op_cmp_32_pcdi(m68ki_cpu_core *cpu) { - uint src = OPER_PCDI_32(); + uint src = OPER_PCDI_32(cpu); uint dst = DX; uint res = dst - src; @@ -11108,9 +11109,9 @@ void m68k_op_cmp_32_pcdi(void) } -void m68k_op_cmp_32_pcix(void) +void m68k_op_cmp_32_pcix(m68ki_cpu_core *cpu) { - uint src = OPER_PCIX_32(); + uint src = OPER_PCIX_32(cpu); uint dst = DX; uint res = dst - src; @@ -11121,7 +11122,7 @@ void m68k_op_cmp_32_pcix(void) } -void m68k_op_cmp_32_i(void) +void m68k_op_cmp_32_i(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint dst = DX; @@ -11134,7 +11135,7 @@ void m68k_op_cmp_32_i(void) } -void m68k_op_cmpa_16_d(void) +void m68k_op_cmpa_16_d(m68ki_cpu_core *cpu) { uint src = MAKE_INT_16(DY); uint dst = AX; @@ -11147,7 +11148,7 @@ void m68k_op_cmpa_16_d(void) } -void m68k_op_cmpa_16_a(void) +void m68k_op_cmpa_16_a(m68ki_cpu_core *cpu) { uint src = MAKE_INT_16(AY); uint dst = AX; @@ -11160,9 +11161,9 @@ void m68k_op_cmpa_16_a(void) } -void m68k_op_cmpa_16_ai(void) +void m68k_op_cmpa_16_ai(m68ki_cpu_core *cpu) { - uint src = MAKE_INT_16(OPER_AY_AI_16()); + uint src = MAKE_INT_16(OPER_AY_AI_16(cpu)); uint dst = AX; uint res = dst - src; @@ -11173,9 +11174,9 @@ void m68k_op_cmpa_16_ai(void) } -void m68k_op_cmpa_16_pi(void) +void m68k_op_cmpa_16_pi(m68ki_cpu_core *cpu) { - uint src = MAKE_INT_16(OPER_AY_PI_16()); + uint src = MAKE_INT_16(OPER_AY_PI_16(cpu)); uint dst = AX; uint res = dst - src; @@ -11186,9 +11187,9 @@ void m68k_op_cmpa_16_pi(void) } -void m68k_op_cmpa_16_pd(void) +void m68k_op_cmpa_16_pd(m68ki_cpu_core *cpu) { - uint src = MAKE_INT_16(OPER_AY_PD_16()); + uint src = MAKE_INT_16(OPER_AY_PD_16(cpu)); uint dst = AX; uint res = dst - src; @@ -11199,9 +11200,9 @@ void m68k_op_cmpa_16_pd(void) } -void m68k_op_cmpa_16_di(void) +void m68k_op_cmpa_16_di(m68ki_cpu_core *cpu) { - uint src = MAKE_INT_16(OPER_AY_DI_16()); + uint src = MAKE_INT_16(OPER_AY_DI_16(cpu)); uint dst = AX; uint res = dst - src; @@ -11212,9 +11213,9 @@ void m68k_op_cmpa_16_di(void) } -void m68k_op_cmpa_16_ix(void) +void m68k_op_cmpa_16_ix(m68ki_cpu_core *cpu) { - uint src = MAKE_INT_16(OPER_AY_IX_16()); + uint src = MAKE_INT_16(OPER_AY_IX_16(cpu)); uint dst = AX; uint res = dst - src; @@ -11225,9 +11226,9 @@ void m68k_op_cmpa_16_ix(void) } -void m68k_op_cmpa_16_aw(void) +void m68k_op_cmpa_16_aw(m68ki_cpu_core *cpu) { - uint src = MAKE_INT_16(OPER_AW_16()); + uint src = MAKE_INT_16(OPER_AW_16(cpu)); uint dst = AX; uint res = dst - src; @@ -11238,9 +11239,9 @@ void m68k_op_cmpa_16_aw(void) } -void m68k_op_cmpa_16_al(void) +void m68k_op_cmpa_16_al(m68ki_cpu_core *cpu) { - uint src = MAKE_INT_16(OPER_AL_16()); + uint src = MAKE_INT_16(OPER_AL_16(cpu)); uint dst = AX; uint res = dst - src; @@ -11251,9 +11252,9 @@ void m68k_op_cmpa_16_al(void) } -void m68k_op_cmpa_16_pcdi(void) +void m68k_op_cmpa_16_pcdi(m68ki_cpu_core *cpu) { - uint src = MAKE_INT_16(OPER_PCDI_16()); + uint src = MAKE_INT_16(OPER_PCDI_16(cpu)); uint dst = AX; uint res = dst - src; @@ -11264,9 +11265,9 @@ void m68k_op_cmpa_16_pcdi(void) } -void m68k_op_cmpa_16_pcix(void) +void m68k_op_cmpa_16_pcix(m68ki_cpu_core *cpu) { - uint src = MAKE_INT_16(OPER_PCIX_16()); + uint src = MAKE_INT_16(OPER_PCIX_16(cpu)); uint dst = AX; uint res = dst - src; @@ -11277,7 +11278,7 @@ void m68k_op_cmpa_16_pcix(void) } -void m68k_op_cmpa_16_i(void) +void m68k_op_cmpa_16_i(m68ki_cpu_core *cpu) { uint src = MAKE_INT_16(OPER_I_16()); uint dst = AX; @@ -11290,7 +11291,7 @@ void m68k_op_cmpa_16_i(void) } -void m68k_op_cmpa_32_d(void) +void m68k_op_cmpa_32_d(m68ki_cpu_core *cpu) { uint src = DY; uint dst = AX; @@ -11303,7 +11304,7 @@ void m68k_op_cmpa_32_d(void) } -void m68k_op_cmpa_32_a(void) +void m68k_op_cmpa_32_a(m68ki_cpu_core *cpu) { uint src = AY; uint dst = AX; @@ -11316,9 +11317,9 @@ void m68k_op_cmpa_32_a(void) } -void m68k_op_cmpa_32_ai(void) +void m68k_op_cmpa_32_ai(m68ki_cpu_core *cpu) { - uint src = OPER_AY_AI_32(); + uint src = OPER_AY_AI_32(cpu); uint dst = AX; uint res = dst - src; @@ -11329,9 +11330,9 @@ void m68k_op_cmpa_32_ai(void) } -void m68k_op_cmpa_32_pi(void) +void m68k_op_cmpa_32_pi(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PI_32(); + uint src = OPER_AY_PI_32(cpu); uint dst = AX; uint res = dst - src; @@ -11342,9 +11343,9 @@ void m68k_op_cmpa_32_pi(void) } -void m68k_op_cmpa_32_pd(void) +void m68k_op_cmpa_32_pd(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PD_32(); + uint src = OPER_AY_PD_32(cpu); uint dst = AX; uint res = dst - src; @@ -11355,9 +11356,9 @@ void m68k_op_cmpa_32_pd(void) } -void m68k_op_cmpa_32_di(void) +void m68k_op_cmpa_32_di(m68ki_cpu_core *cpu) { - uint src = OPER_AY_DI_32(); + uint src = OPER_AY_DI_32(cpu); uint dst = AX; uint res = dst - src; @@ -11368,9 +11369,9 @@ void m68k_op_cmpa_32_di(void) } -void m68k_op_cmpa_32_ix(void) +void m68k_op_cmpa_32_ix(m68ki_cpu_core *cpu) { - uint src = OPER_AY_IX_32(); + uint src = OPER_AY_IX_32(cpu); uint dst = AX; uint res = dst - src; @@ -11381,9 +11382,9 @@ void m68k_op_cmpa_32_ix(void) } -void m68k_op_cmpa_32_aw(void) +void m68k_op_cmpa_32_aw(m68ki_cpu_core *cpu) { - uint src = OPER_AW_32(); + uint src = OPER_AW_32(cpu); uint dst = AX; uint res = dst - src; @@ -11394,9 +11395,9 @@ void m68k_op_cmpa_32_aw(void) } -void m68k_op_cmpa_32_al(void) +void m68k_op_cmpa_32_al(m68ki_cpu_core *cpu) { - uint src = OPER_AL_32(); + uint src = OPER_AL_32(cpu); uint dst = AX; uint res = dst - src; @@ -11407,9 +11408,9 @@ void m68k_op_cmpa_32_al(void) } -void m68k_op_cmpa_32_pcdi(void) +void m68k_op_cmpa_32_pcdi(m68ki_cpu_core *cpu) { - uint src = OPER_PCDI_32(); + uint src = OPER_PCDI_32(cpu); uint dst = AX; uint res = dst - src; @@ -11420,9 +11421,9 @@ void m68k_op_cmpa_32_pcdi(void) } -void m68k_op_cmpa_32_pcix(void) +void m68k_op_cmpa_32_pcix(m68ki_cpu_core *cpu) { - uint src = OPER_PCIX_32(); + uint src = OPER_PCIX_32(cpu); uint dst = AX; uint res = dst - src; @@ -11433,7 +11434,7 @@ void m68k_op_cmpa_32_pcix(void) } -void m68k_op_cmpa_32_i(void) +void m68k_op_cmpa_32_i(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint dst = AX; @@ -11446,7 +11447,7 @@ void m68k_op_cmpa_32_i(void) } -void m68k_op_cmpi_8_d(void) +void m68k_op_cmpi_8_d(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); uint dst = MASK_OUT_ABOVE_8(DY); @@ -11459,10 +11460,10 @@ void m68k_op_cmpi_8_d(void) } -void m68k_op_cmpi_8_ai(void) +void m68k_op_cmpi_8_ai(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); - uint dst = OPER_AY_AI_8(); + uint dst = OPER_AY_AI_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11472,10 +11473,10 @@ void m68k_op_cmpi_8_ai(void) } -void m68k_op_cmpi_8_pi(void) +void m68k_op_cmpi_8_pi(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); - uint dst = OPER_AY_PI_8(); + uint dst = OPER_AY_PI_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11485,10 +11486,10 @@ void m68k_op_cmpi_8_pi(void) } -void m68k_op_cmpi_8_pi7(void) +void m68k_op_cmpi_8_pi7(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); - uint dst = OPER_A7_PI_8(); + uint dst = OPER_A7_PI_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11498,10 +11499,10 @@ void m68k_op_cmpi_8_pi7(void) } -void m68k_op_cmpi_8_pd(void) +void m68k_op_cmpi_8_pd(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); - uint dst = OPER_AY_PD_8(); + uint dst = OPER_AY_PD_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11511,10 +11512,10 @@ void m68k_op_cmpi_8_pd(void) } -void m68k_op_cmpi_8_pd7(void) +void m68k_op_cmpi_8_pd7(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); - uint dst = OPER_A7_PD_8(); + uint dst = OPER_A7_PD_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11524,10 +11525,10 @@ void m68k_op_cmpi_8_pd7(void) } -void m68k_op_cmpi_8_di(void) +void m68k_op_cmpi_8_di(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); - uint dst = OPER_AY_DI_8(); + uint dst = OPER_AY_DI_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11537,10 +11538,10 @@ void m68k_op_cmpi_8_di(void) } -void m68k_op_cmpi_8_ix(void) +void m68k_op_cmpi_8_ix(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); - uint dst = OPER_AY_IX_8(); + uint dst = OPER_AY_IX_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11550,10 +11551,10 @@ void m68k_op_cmpi_8_ix(void) } -void m68k_op_cmpi_8_aw(void) +void m68k_op_cmpi_8_aw(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); - uint dst = OPER_AW_8(); + uint dst = OPER_AW_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11563,10 +11564,10 @@ void m68k_op_cmpi_8_aw(void) } -void m68k_op_cmpi_8_al(void) +void m68k_op_cmpi_8_al(m68ki_cpu_core *cpu) { uint src = OPER_I_8(); - uint dst = OPER_AL_8(); + uint dst = OPER_AL_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11576,12 +11577,12 @@ void m68k_op_cmpi_8_al(void) } -void m68k_op_cmpi_8_pcdi(void) +void m68k_op_cmpi_8_pcdi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { uint src = OPER_I_8(); - uint dst = OPER_PCDI_8(); + uint dst = OPER_PCDI_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11590,16 +11591,16 @@ void m68k_op_cmpi_8_pcdi(void) FLAG_C = CFLAG_8(res); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cmpi_8_pcix(void) +void m68k_op_cmpi_8_pcix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { uint src = OPER_I_8(); - uint dst = OPER_PCIX_8(); + uint dst = OPER_PCIX_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11608,11 +11609,11 @@ void m68k_op_cmpi_8_pcix(void) FLAG_C = CFLAG_8(res); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cmpi_16_d(void) +void m68k_op_cmpi_16_d(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); uint dst = MASK_OUT_ABOVE_16(DY); @@ -11625,10 +11626,10 @@ void m68k_op_cmpi_16_d(void) } -void m68k_op_cmpi_16_ai(void) +void m68k_op_cmpi_16_ai(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); - uint dst = OPER_AY_AI_16(); + uint dst = OPER_AY_AI_16(cpu); uint res = dst - src; FLAG_N = NFLAG_16(res); @@ -11638,10 +11639,10 @@ void m68k_op_cmpi_16_ai(void) } -void m68k_op_cmpi_16_pi(void) +void m68k_op_cmpi_16_pi(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); - uint dst = OPER_AY_PI_16(); + uint dst = OPER_AY_PI_16(cpu); uint res = dst - src; FLAG_N = NFLAG_16(res); @@ -11651,10 +11652,10 @@ void m68k_op_cmpi_16_pi(void) } -void m68k_op_cmpi_16_pd(void) +void m68k_op_cmpi_16_pd(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); - uint dst = OPER_AY_PD_16(); + uint dst = OPER_AY_PD_16(cpu); uint res = dst - src; FLAG_N = NFLAG_16(res); @@ -11664,10 +11665,10 @@ void m68k_op_cmpi_16_pd(void) } -void m68k_op_cmpi_16_di(void) +void m68k_op_cmpi_16_di(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); - uint dst = OPER_AY_DI_16(); + uint dst = OPER_AY_DI_16(cpu); uint res = dst - src; FLAG_N = NFLAG_16(res); @@ -11677,10 +11678,10 @@ void m68k_op_cmpi_16_di(void) } -void m68k_op_cmpi_16_ix(void) +void m68k_op_cmpi_16_ix(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); - uint dst = OPER_AY_IX_16(); + uint dst = OPER_AY_IX_16(cpu); uint res = dst - src; FLAG_N = NFLAG_16(res); @@ -11690,10 +11691,10 @@ void m68k_op_cmpi_16_ix(void) } -void m68k_op_cmpi_16_aw(void) +void m68k_op_cmpi_16_aw(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); - uint dst = OPER_AW_16(); + uint dst = OPER_AW_16(cpu); uint res = dst - src; FLAG_N = NFLAG_16(res); @@ -11703,10 +11704,10 @@ void m68k_op_cmpi_16_aw(void) } -void m68k_op_cmpi_16_al(void) +void m68k_op_cmpi_16_al(m68ki_cpu_core *cpu) { uint src = OPER_I_16(); - uint dst = OPER_AL_16(); + uint dst = OPER_AL_16(cpu); uint res = dst - src; FLAG_N = NFLAG_16(res); @@ -11716,12 +11717,12 @@ void m68k_op_cmpi_16_al(void) } -void m68k_op_cmpi_16_pcdi(void) +void m68k_op_cmpi_16_pcdi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { uint src = OPER_I_16(); - uint dst = OPER_PCDI_16(); + uint dst = OPER_PCDI_16(cpu); uint res = dst - src; FLAG_N = NFLAG_16(res); @@ -11730,16 +11731,16 @@ void m68k_op_cmpi_16_pcdi(void) FLAG_C = CFLAG_16(res); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cmpi_16_pcix(void) +void m68k_op_cmpi_16_pcix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { uint src = OPER_I_16(); - uint dst = OPER_PCIX_16(); + uint dst = OPER_PCIX_16(cpu); uint res = dst - src; FLAG_N = NFLAG_16(res); @@ -11748,11 +11749,11 @@ void m68k_op_cmpi_16_pcix(void) FLAG_C = CFLAG_16(res); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cmpi_32_d(void) +void m68k_op_cmpi_32_d(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); uint dst = DY; @@ -11765,10 +11766,10 @@ void m68k_op_cmpi_32_d(void) } -void m68k_op_cmpi_32_ai(void) +void m68k_op_cmpi_32_ai(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); - uint dst = OPER_AY_AI_32(); + uint dst = OPER_AY_AI_32(cpu); uint res = dst - src; FLAG_N = NFLAG_32(res); @@ -11778,10 +11779,10 @@ void m68k_op_cmpi_32_ai(void) } -void m68k_op_cmpi_32_pi(void) +void m68k_op_cmpi_32_pi(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); - uint dst = OPER_AY_PI_32(); + uint dst = OPER_AY_PI_32(cpu); uint res = dst - src; FLAG_N = NFLAG_32(res); @@ -11791,10 +11792,10 @@ void m68k_op_cmpi_32_pi(void) } -void m68k_op_cmpi_32_pd(void) +void m68k_op_cmpi_32_pd(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); - uint dst = OPER_AY_PD_32(); + uint dst = OPER_AY_PD_32(cpu); uint res = dst - src; FLAG_N = NFLAG_32(res); @@ -11804,10 +11805,10 @@ void m68k_op_cmpi_32_pd(void) } -void m68k_op_cmpi_32_di(void) +void m68k_op_cmpi_32_di(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); - uint dst = OPER_AY_DI_32(); + uint dst = OPER_AY_DI_32(cpu); uint res = dst - src; FLAG_N = NFLAG_32(res); @@ -11817,10 +11818,10 @@ void m68k_op_cmpi_32_di(void) } -void m68k_op_cmpi_32_ix(void) +void m68k_op_cmpi_32_ix(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); - uint dst = OPER_AY_IX_32(); + uint dst = OPER_AY_IX_32(cpu); uint res = dst - src; FLAG_N = NFLAG_32(res); @@ -11830,10 +11831,10 @@ void m68k_op_cmpi_32_ix(void) } -void m68k_op_cmpi_32_aw(void) +void m68k_op_cmpi_32_aw(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); - uint dst = OPER_AW_32(); + uint dst = OPER_AW_32(cpu); uint res = dst - src; FLAG_N = NFLAG_32(res); @@ -11843,10 +11844,10 @@ void m68k_op_cmpi_32_aw(void) } -void m68k_op_cmpi_32_al(void) +void m68k_op_cmpi_32_al(m68ki_cpu_core *cpu) { uint src = OPER_I_32(); - uint dst = OPER_AL_32(); + uint dst = OPER_AL_32(cpu); uint res = dst - src; FLAG_N = NFLAG_32(res); @@ -11856,12 +11857,12 @@ void m68k_op_cmpi_32_al(void) } -void m68k_op_cmpi_32_pcdi(void) +void m68k_op_cmpi_32_pcdi(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { uint src = OPER_I_32(); - uint dst = OPER_PCDI_32(); + uint dst = OPER_PCDI_32(cpu); uint res = dst - src; FLAG_N = NFLAG_32(res); @@ -11870,16 +11871,16 @@ void m68k_op_cmpi_32_pcdi(void) FLAG_C = CFLAG_SUB_32(src, dst, res); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cmpi_32_pcix(void) +void m68k_op_cmpi_32_pcix(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { uint src = OPER_I_32(); - uint dst = OPER_PCIX_32(); + uint dst = OPER_PCIX_32(cpu); uint res = dst - src; FLAG_N = NFLAG_32(res); @@ -11888,14 +11889,14 @@ void m68k_op_cmpi_32_pcix(void) FLAG_C = CFLAG_SUB_32(src, dst, res); return; } - m68ki_exception_illegal(); + m68ki_exception_illegal(cpu); } -void m68k_op_cmpm_8_ax7(void) +void m68k_op_cmpm_8_ax7(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PI_8(); - uint dst = OPER_A7_PI_8(); + uint src = OPER_AY_PI_8(cpu); + uint dst = OPER_A7_PI_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11905,10 +11906,10 @@ void m68k_op_cmpm_8_ax7(void) } -void m68k_op_cmpm_8_ay7(void) +void m68k_op_cmpm_8_ay7(m68ki_cpu_core *cpu) { - uint src = OPER_A7_PI_8(); - uint dst = OPER_AX_PI_8(); + uint src = OPER_A7_PI_8(cpu); + uint dst = OPER_AX_PI_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11918,10 +11919,10 @@ void m68k_op_cmpm_8_ay7(void) } -void m68k_op_cmpm_8_axy7(void) +void m68k_op_cmpm_8_axy7(m68ki_cpu_core *cpu) { - uint src = OPER_A7_PI_8(); - uint dst = OPER_A7_PI_8(); + uint src = OPER_A7_PI_8(cpu); + uint dst = OPER_A7_PI_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11931,10 +11932,10 @@ void m68k_op_cmpm_8_axy7(void) } -void m68k_op_cmpm_8(void) +void m68k_op_cmpm_8(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PI_8(); - uint dst = OPER_AX_PI_8(); + uint src = OPER_AY_PI_8(cpu); + uint dst = OPER_AX_PI_8(cpu); uint res = dst - src; FLAG_N = NFLAG_8(res); @@ -11944,10 +11945,10 @@ void m68k_op_cmpm_8(void) } -void m68k_op_cmpm_16(void) +void m68k_op_cmpm_16(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PI_16(); - uint dst = OPER_AX_PI_16(); + uint src = OPER_AY_PI_16(cpu); + uint dst = OPER_AX_PI_16(cpu); uint res = dst - src; FLAG_N = NFLAG_16(res); @@ -11957,10 +11958,10 @@ void m68k_op_cmpm_16(void) } -void m68k_op_cmpm_32(void) +void m68k_op_cmpm_32(m68ki_cpu_core *cpu) { - uint src = OPER_AY_PI_32(); - uint dst = OPER_AX_PI_32(); + uint src = OPER_AY_PI_32(cpu); + uint dst = OPER_AX_PI_32(cpu); uint res = dst - src; FLAG_N = NFLAG_32(res); @@ -11970,7 +11971,7 @@ void m68k_op_cmpm_32(void) } -void m68k_op_cpbcc_32(void) +void m68k_op_cpbcc_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -11979,11 +11980,11 @@ void m68k_op_cpbcc_32(void) m68k_disassemble_quick(ADDRESS_68K(REG_PC - 2)))); return; } - m68ki_exception_1111(); + m68ki_exception_1111(cpu); } -void m68k_op_cpdbcc_32(void) +void m68k_op_cpdbcc_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -11992,11 +11993,11 @@ void m68k_op_cpdbcc_32(void) m68k_disassemble_quick(ADDRESS_68K(REG_PC - 2)))); return; } - m68ki_exception_1111(); + m68ki_exception_1111(cpu); } -void m68k_op_cpgen_32(void) +void m68k_op_cpgen_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -12005,11 +12006,11 @@ void m68k_op_cpgen_32(void) m68k_disassemble_quick(ADDRESS_68K(REG_PC - 2)))); return; } - m68ki_exception_1111(); + m68ki_exception_1111(cpu); } -void m68k_op_cpscc_32(void) +void m68k_op_cpscc_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -12018,11 +12019,11 @@ void m68k_op_cpscc_32(void) m68k_disassemble_quick(ADDRESS_68K(REG_PC - 2)))); return; } - m68ki_exception_1111(); + m68ki_exception_1111(cpu); } -void m68k_op_cptrapcc_32(void) +void m68k_op_cptrapcc_32(m68ki_cpu_core *cpu) { if(CPU_TYPE_IS_EC020_PLUS(CPU_TYPE)) { @@ -12031,7 +12032,7 @@ void m68k_op_cptrapcc_32(void) m68k_disassemble_quick(ADDRESS_68K(REG_PC - 2)))); return; } - m68ki_exception_1111(); + m68ki_exception_1111(cpu); } |