From fdb2b54b227ad87f0a34140977862e24b8ba372b Mon Sep 17 00:00:00 2001 From: Dimitris Panokostas Date: Tue, 24 Apr 2018 21:21:15 +0200 Subject: [PATCH] Reverted latest JIT improvements, since they introduced a bug - bumped version to 2.20 beta --- src/jit/codegen_arm.cpp | 86 +- src/jit/codegen_arm.h | 3 +- src/jit/compemu.cpp | 8978 +++++++++++++++--------------- src/jit/compemu.h | 24 +- src/jit/compemu_fpp.cpp | 22 +- src/jit/compemu_midfunc_arm.cpp | 95 +- src/jit/compemu_midfunc_arm.h | 6 +- src/jit/compemu_midfunc_arm2.cpp | 421 +- src/jit/compemu_midfunc_arm2.h | 12 +- src/jit/compemu_support.cpp | 111 +- src/jit/compstbl.cpp | 24 +- src/jit/comptbl.h | 12 - src/jit/gencomp_arm.cpp | 124 +- src/osdep/gui/PanelAbout.cpp | 2 +- 14 files changed, 4913 insertions(+), 5007 deletions(-) diff --git a/src/jit/codegen_arm.cpp b/src/jit/codegen_arm.cpp index db13798a..731a0805 100644 --- a/src/jit/codegen_arm.cpp +++ b/src/jit/codegen_arm.cpp @@ -82,11 +82,11 @@ extern void __clear_cache (char*, char*); //#define REG_DATAPTR R10_INDEX +#define REG_PC_PRE R0_INDEX /* The register we use for preloading regs.pc_p */ #define REG_PC_TMP R1_INDEX /* Another register that is not the above */ -#define R_MEMSTART 10 #define R_REGSTRUCT 11 -uae_s8 always_used[]={2,3,R_MEMSTART,R_REGSTRUCT,12,-1}; // r2, r3 and r12 are work register in emitted code +uae_s8 always_used[]={2,3,R_REGSTRUCT,12,-1}; // r2, r3 and r12 are work register in emitted code uae_u8 call_saved[]={0,0,0,0, 1,1,1,1, 1,1,1,1, 0,1,1,1}; @@ -666,7 +666,7 @@ STATIC_INLINE void compemu_raw_branch(IMM d) } -// Optimize access to struct regstruct with r11 and memory with r10 +// Optimize access to struct regstruct with r11 LOWFUNC(NONE,NONE,1,compemu_raw_init_r_regstruct,(IMM s)) { @@ -677,8 +677,6 @@ LOWFUNC(NONE,NONE,1,compemu_raw_init_r_regstruct,(IMM s)) uae_s32 offs = data_long_offs(s); LDR_rRI(R_REGSTRUCT, RPC_INDEX, offs); #endif - uae_s32 offsmem = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; - LDR_rRI(R_MEMSTART, R_REGSTRUCT, offsmem); } LENDFUNC(NONE,NONE,1,compemu_raw_init_r_regstruct,(IMM s)) @@ -778,8 +776,6 @@ LENDFUNC(NONE,READ,2,compemu_raw_tag_pc,(W4 d, MEMR s)) * FPU stuff * *************************************************************************/ -#ifdef USE_JIT_FPU - LOWFUNC(NONE,NONE,2,raw_fmov_rr,(FW d, FR s)) { VMOV64_dd(d, s); @@ -791,8 +787,13 @@ LOWFUNC(NONE,WRITE,2,compemu_raw_fmov_mr_drop,(MEMW mem, FR s)) if(mem >= (uae_u32) ®s && mem < (uae_u32) ®s + 1020 && ((mem - (uae_u32) ®s) & 0x3) == 0) { VSTR64_dRi(s, R_REGSTRUCT, (mem - (uae_u32) ®s)); } else { +#ifdef ARMV6T2 MOVW_ri16(REG_WORK1, mem); MOVT_ri16(REG_WORK1, mem >> 16); +#else + auto offs = data_long_offs(mem); + LDR_rRI(REG_WORK1, RPC_INDEX, offs); +#endif VSTR64_dRi(s, REG_WORK1, 0); } } @@ -804,8 +805,13 @@ LOWFUNC(NONE,READ,2,compemu_raw_fmov_rm,(FW d, MEMR mem)) if(mem >= (uae_u32) ®s && mem < (uae_u32) ®s + 1020 && ((mem - (uae_u32) ®s) & 0x3) == 0) { VLDR64_dRi(d, R_REGSTRUCT, (mem - (uae_u32) ®s)); } else { +#ifdef ARMV6T2 MOVW_ri16(REG_WORK1, mem); MOVT_ri16(REG_WORK1, mem >> 16); +#else + auto offs = data_long_offs(mem); + LDR_rRI(REG_WORK1, RPC_INDEX, offs); +#endif VLDR64_dRi(d, REG_WORK1, 0); } } @@ -920,16 +926,26 @@ LENDFUNC(NONE,NONE,1,raw_fmov_d_ri_10,(FW r)) LOWFUNC(NONE,READ,2,raw_fmov_d_rm,(FW r, MEMR m)) { +#ifdef ARMV6T2 MOVW_ri16(REG_WORK1, m); MOVT_ri16(REG_WORK1, m >> 16); +#else + auto offs = data_long_offs(m); + LDR_rRI(REG_WORK1, RPC_INDEX, offs); +#endif VLDR64_dRi(r, REG_WORK1, 0); } LENDFUNC(NONE,READ,2,raw_fmov_d_rm,(FW r, MEMR m)) LOWFUNC(NONE,READ,2,raw_fmovs_rm,(FW r, MEMR m)) { - MOVW_ri16(REG_WORK1, m); - MOVT_ri16(REG_WORK1, m >> 16); +#ifdef ARMV6T2 + MOVW_ri16(REG_WORK1, m); + MOVT_ri16(REG_WORK1, m >> 16); +#else + auto offs = data_long_offs(m); + LDR_rRI(REG_WORK1, RPC_INDEX, offs); +#endif VLDR32_sRi(SCRATCH_F32_1, REG_WORK1, 0); VCVT32to64_ds(r, SCRATCH_F32_1); } @@ -1061,10 +1077,13 @@ LENDFUNC(NONE,NONE,2,raw_fmovs_rr,(FW d, FR s)) LOWFUNC(NONE,NONE,3,raw_ffunc_rr,(double (*func)(double), FW d, FR s)) { VMOV64_dd(0, s); - +#ifdef ARMV6T2 MOVW_ri16(REG_WORK1, (uae_u32)func); MOVT_ri16(REG_WORK1, ((uae_u32)func) >> 16); - +#else + auto offs = data_long_offs(uae_u32(func)); + LDR_rRI(REG_WORK1, RPC_INDEX, offs); +#endif PUSH(RLR_INDEX); BLX_r(REG_WORK1); POP(RLR_INDEX); @@ -1085,8 +1104,13 @@ LOWFUNC(NONE,NONE,3,raw_fpowx_rr,(uae_u32 x, FW d, FR s)) VMOV64_dd(1, s); - MOVW_ri16(REG_WORK1, (uae_u32)func); - MOVT_ri16(REG_WORK1, ((uae_u32)func) >> 16); +#ifdef ARMV6T2 + MOVW_ri16(REG_WORK1, (uae_u32)func); + MOVT_ri16(REG_WORK1, ((uae_u32)func) >> 16); +#else + auto offs = data_long_offs(uae_u32(func)); + LDR_rRI(REG_WORK1, RPC_INDEX, offs); +#endif PUSH(RLR_INDEX); BLX_r(REG_WORK1); @@ -1098,22 +1122,24 @@ LENDFUNC(NONE,NONE,3,raw_fpowx_rr,(uae_u32 x, FW d, FR s)) LOWFUNC(NONE,WRITE,2,raw_fp_from_exten_mr,(RR4 adr, FR s)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + VMOVi_to_ARM_rd(REG_WORK1, s, 1); // get high part of double VCMP64_d0(s); VMRS_CPSR(); #ifdef ARMV6T2 - BEQ_i(19); // iszero + BEQ_i(20); // iszero #else - BEQ_i(20); + BEQ_i(21); #endif UBFX_rrii(REG_WORK2, REG_WORK1, 20, 11); // get exponent MOVW_ri16(REG_WORK3, 2047); CMP_rr(REG_WORK2, REG_WORK3); #ifdef ARMV6T2 - BEQ_i(12); // isnan + BEQ_i(13); // isnan #else - BEQ_i(13); + BEQ_i(14); #endif MOVW_ri16(REG_WORK3, 15360); // diff of bias between double and long double @@ -1121,7 +1147,8 @@ LOWFUNC(NONE,WRITE,2,raw_fp_from_exten_mr,(RR4 adr, FR s)) AND_rri(REG_WORK1, REG_WORK1, 0x80000000); // extract sign ORR_rrrLSLi(REG_WORK2, REG_WORK1, REG_WORK2, 16); // merge sign and exponent - ADD_rrr(REG_WORK3, adr, R_MEMSTART); + LDR_rRI(REG_WORK3, R_REGSTRUCT, offs); + ADD_rrr(REG_WORK3, adr, REG_WORK3); REV_rr(REG_WORK2, REG_WORK2); STRH_rR(REG_WORK2, REG_WORK3); // write exponent @@ -1132,11 +1159,11 @@ LOWFUNC(NONE,WRITE,2,raw_fp_from_exten_mr,(RR4 adr, FR s)) ORR_rri(REG_WORK1, REG_WORK1, 0x80); // insert explicit 1 #ifdef ARMV6T2 STRD_rRI(REG_WORK1, REG_WORK3, 4); - B_i(8); // end_of_op + B_i(9); // end_of_op #else STR_rRI(REG_WORK1, REG_WORK3, 4); STR_rRI(REG_WORK2, REG_WORK3, 8); - B_i(9); + B_i(10); #endif // isnan @@ -1148,7 +1175,8 @@ LOWFUNC(NONE,WRITE,2,raw_fp_from_exten_mr,(RR4 adr, FR s)) CC_AND_rri(NATIVE_CC_EQ, REG_WORK1, REG_WORK1, 0x80000000); // extract sign CC_MOV_ri(NATIVE_CC_EQ, REG_WORK2, 0); - ADD_rrr(REG_WORK3, adr, R_MEMSTART); + LDR_rRI(REG_WORK3, R_REGSTRUCT, offs); + ADD_rrr(REG_WORK3, adr, REG_WORK3); REV_rr(REG_WORK1, REG_WORK1); #ifdef ARMV6T2 @@ -1166,7 +1194,10 @@ LENDFUNC(NONE,WRITE,2,raw_fp_from_exten_mr,(RR4 adr, FR s)) LOWFUNC(NONE,READ,2,raw_fp_to_exten_rm,(FW d, RR4 adr)) { - ADD_rrr(REG_WORK3, adr, R_MEMSTART); + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + + LDR_rRI(REG_WORK3, R_REGSTRUCT, offs); + ADD_rrr(REG_WORK3, adr, REG_WORK3); #ifdef ARMV6T2 LDRD_rRI(REG_WORK1, REG_WORK3, 4); @@ -1213,7 +1244,10 @@ LENDFUNC(NONE,READ,2,raw_fp_to_exten_rm,(FW d, RR4 adr)) LOWFUNC(NONE,WRITE,2,raw_fp_from_double_mr,(RR4 adr, FR s)) { - ADD_rrr(REG_WORK3, adr, R_MEMSTART); + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + + LDR_rRI(REG_WORK3, R_REGSTRUCT, offs); + ADD_rrr(REG_WORK3, adr, REG_WORK3); VREV64_8_dd(SCRATCH_F64_1, s); VSTR64_dRi(SCRATCH_F64_1, REG_WORK3, 0); @@ -1222,7 +1256,10 @@ LENDFUNC(NONE,WRITE,2,raw_fp_from_double_mr,(RR4 adr, FR s)) LOWFUNC(NONE,READ,2,raw_fp_to_double_rm,(FW d, RR4 adr)) { - ADD_rrr(REG_WORK3, adr, R_MEMSTART); + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + + LDR_rRI(REG_WORK3, R_REGSTRUCT, offs); + ADD_rrr(REG_WORK3, adr, REG_WORK3); VLDR64_dRi(d, REG_WORK3, 0); VREV64_8_dd(d, d); @@ -1354,4 +1391,3 @@ LOWFUNC(NONE,NONE,1,raw_roundingmode,(IMM mode)) } LENDFUNC(NONE,NONE,1,raw_roundingmode,(IMM mode)) -#endif // USE_JIT_FPU diff --git a/src/jit/codegen_arm.h b/src/jit/codegen_arm.h index 32399c3b..82d3350a 100644 --- a/src/jit/codegen_arm.h +++ b/src/jit/codegen_arm.h @@ -1327,7 +1327,8 @@ enum { #define SMULxy_rrr(Rd,Rn,Rm,x,y) CC_SMULxy_rrr(NATIVE_CC_AL,Rd,Rn,Rm,x,y) // ARMv6T2 -#ifdef ARMV6T2 +//#ifdef ARMV6T2 +#if 1 #define CC_BFI_rrii(cc,Rd,Rn,lsb,msb) _W(((cc) << 28) | (0x3e << 21) | ((msb) << 16) | ((Rd) << 12) | ((lsb) << 7) | (0x1 << 4) | (Rn)) #define BFI_rrii(Rd,Rn,lsb,msb) CC_BFI_rrii(NATIVE_CC_AL,Rd,Rn,lsb,msb) diff --git a/src/jit/compemu.cpp b/src/jit/compemu.cpp index 2a54a46b..8c8448cf 100644 --- a/src/jit/compemu.cpp +++ b/src/jit/compemu.cpp @@ -51,11 +51,11 @@ uae_u32 REGPARAM2 op_10_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -70,11 +70,11 @@ uae_u32 REGPARAM2 op_18_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -91,11 +91,11 @@ uae_u32 REGPARAM2 op_20_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -111,11 +111,11 @@ uae_u32 REGPARAM2 op_28_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -129,13 +129,13 @@ uae_u32 REGPARAM2 op_30_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -150,11 +150,11 @@ uae_u32 REGPARAM2 op_38_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -169,11 +169,11 @@ uae_u32 REGPARAM2 op_39_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -218,11 +218,11 @@ uae_u32 REGPARAM2 op_50_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -237,11 +237,11 @@ uae_u32 REGPARAM2 op_58_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -258,11 +258,11 @@ uae_u32 REGPARAM2 op_60_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -278,11 +278,11 @@ uae_u32 REGPARAM2 op_68_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -296,13 +296,13 @@ uae_u32 REGPARAM2 op_70_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -317,11 +317,11 @@ uae_u32 REGPARAM2 op_78_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -336,11 +336,11 @@ uae_u32 REGPARAM2 op_79_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -371,11 +371,11 @@ uae_u32 REGPARAM2 op_90_0_comp_ff(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -390,11 +390,11 @@ uae_u32 REGPARAM2 op_98_0_comp_ff(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -411,11 +411,11 @@ uae_u32 REGPARAM2 op_a0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -431,11 +431,11 @@ uae_u32 REGPARAM2 op_a8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -449,13 +449,13 @@ uae_u32 REGPARAM2 op_b0_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -470,11 +470,11 @@ uae_u32 REGPARAM2 op_b8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -489,11 +489,11 @@ uae_u32 REGPARAM2 op_b9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -524,7 +524,7 @@ uae_u32 REGPARAM2 op_110_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -542,7 +542,7 @@ uae_u32 REGPARAM2 op_118_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -562,7 +562,7 @@ uae_u32 REGPARAM2 op_120_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -581,7 +581,7 @@ uae_u32 REGPARAM2 op_128_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -598,9 +598,9 @@ uae_u32 REGPARAM2 op_130_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -618,7 +618,7 @@ uae_u32 REGPARAM2 op_138_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -636,7 +636,7 @@ uae_u32 REGPARAM2 op_139_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -657,7 +657,7 @@ uae_u32 REGPARAM2 op_13a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -677,9 +677,9 @@ uae_u32 REGPARAM2 op_13b_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -729,11 +729,11 @@ uae_u32 REGPARAM2 op_150_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -748,11 +748,11 @@ uae_u32 REGPARAM2 op_158_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -769,11 +769,11 @@ uae_u32 REGPARAM2 op_160_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -789,11 +789,11 @@ uae_u32 REGPARAM2 op_168_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -807,13 +807,13 @@ uae_u32 REGPARAM2 op_170_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -828,11 +828,11 @@ uae_u32 REGPARAM2 op_178_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -847,11 +847,11 @@ uae_u32 REGPARAM2 op_179_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -882,11 +882,11 @@ uae_u32 REGPARAM2 op_190_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -901,11 +901,11 @@ uae_u32 REGPARAM2 op_198_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -922,11 +922,11 @@ uae_u32 REGPARAM2 op_1a0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -942,11 +942,11 @@ uae_u32 REGPARAM2 op_1a8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -960,13 +960,13 @@ uae_u32 REGPARAM2 op_1b0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -981,11 +981,11 @@ uae_u32 REGPARAM2 op_1b8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1000,11 +1000,11 @@ uae_u32 REGPARAM2 op_1b9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1035,11 +1035,11 @@ uae_u32 REGPARAM2 op_1d0_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1054,11 +1054,11 @@ uae_u32 REGPARAM2 op_1d8_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -1075,11 +1075,11 @@ uae_u32 REGPARAM2 op_1e0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1095,11 +1095,11 @@ uae_u32 REGPARAM2 op_1e8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1113,13 +1113,13 @@ uae_u32 REGPARAM2 op_1f0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1134,11 +1134,11 @@ uae_u32 REGPARAM2 op_1f8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1153,11 +1153,11 @@ uae_u32 REGPARAM2 op_1f9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1188,11 +1188,11 @@ uae_u32 REGPARAM2 op_210_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1207,11 +1207,11 @@ uae_u32 REGPARAM2 op_218_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -1228,11 +1228,11 @@ uae_u32 REGPARAM2 op_220_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1248,11 +1248,11 @@ uae_u32 REGPARAM2 op_228_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1266,13 +1266,13 @@ uae_u32 REGPARAM2 op_230_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1287,11 +1287,11 @@ uae_u32 REGPARAM2 op_238_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1306,11 +1306,11 @@ uae_u32 REGPARAM2 op_239_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1355,11 +1355,11 @@ uae_u32 REGPARAM2 op_250_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1374,11 +1374,11 @@ uae_u32 REGPARAM2 op_258_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -1395,11 +1395,11 @@ uae_u32 REGPARAM2 op_260_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1415,11 +1415,11 @@ uae_u32 REGPARAM2 op_268_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1433,13 +1433,13 @@ uae_u32 REGPARAM2 op_270_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1454,11 +1454,11 @@ uae_u32 REGPARAM2 op_278_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1473,11 +1473,11 @@ uae_u32 REGPARAM2 op_279_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1508,11 +1508,11 @@ uae_u32 REGPARAM2 op_290_0_comp_ff(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1527,11 +1527,11 @@ uae_u32 REGPARAM2 op_298_0_comp_ff(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -1548,11 +1548,11 @@ uae_u32 REGPARAM2 op_2a0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1568,11 +1568,11 @@ uae_u32 REGPARAM2 op_2a8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1586,13 +1586,13 @@ uae_u32 REGPARAM2 op_2b0_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1607,11 +1607,11 @@ uae_u32 REGPARAM2 op_2b8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1626,11 +1626,11 @@ uae_u32 REGPARAM2 op_2b9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1662,12 +1662,12 @@ uae_u32 REGPARAM2 op_410_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1682,12 +1682,12 @@ uae_u32 REGPARAM2 op_418_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -1704,12 +1704,12 @@ uae_u32 REGPARAM2 op_420_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1725,12 +1725,12 @@ uae_u32 REGPARAM2 op_428_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1744,14 +1744,14 @@ uae_u32 REGPARAM2 op_430_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1766,12 +1766,12 @@ uae_u32 REGPARAM2 op_438_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1786,12 +1786,12 @@ uae_u32 REGPARAM2 op_439_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1823,12 +1823,12 @@ uae_u32 REGPARAM2 op_450_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1843,12 +1843,12 @@ uae_u32 REGPARAM2 op_458_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -1865,12 +1865,12 @@ uae_u32 REGPARAM2 op_460_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1886,12 +1886,12 @@ uae_u32 REGPARAM2 op_468_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1905,14 +1905,14 @@ uae_u32 REGPARAM2 op_470_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1927,12 +1927,12 @@ uae_u32 REGPARAM2 op_478_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1947,12 +1947,12 @@ uae_u32 REGPARAM2 op_479_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -1984,12 +1984,12 @@ uae_u32 REGPARAM2 op_490_0_comp_ff(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2004,12 +2004,12 @@ uae_u32 REGPARAM2 op_498_0_comp_ff(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -2026,12 +2026,12 @@ uae_u32 REGPARAM2 op_4a0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2047,12 +2047,12 @@ uae_u32 REGPARAM2 op_4a8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2066,14 +2066,14 @@ uae_u32 REGPARAM2 op_4b0_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2088,12 +2088,12 @@ uae_u32 REGPARAM2 op_4b8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2108,12 +2108,12 @@ uae_u32 REGPARAM2 op_4b9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2145,12 +2145,12 @@ uae_u32 REGPARAM2 op_610_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2165,12 +2165,12 @@ uae_u32 REGPARAM2 op_618_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -2187,12 +2187,12 @@ uae_u32 REGPARAM2 op_620_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2208,12 +2208,12 @@ uae_u32 REGPARAM2 op_628_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2227,14 +2227,14 @@ uae_u32 REGPARAM2 op_630_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2249,12 +2249,12 @@ uae_u32 REGPARAM2 op_638_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2269,12 +2269,12 @@ uae_u32 REGPARAM2 op_639_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2306,12 +2306,12 @@ uae_u32 REGPARAM2 op_650_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2326,12 +2326,12 @@ uae_u32 REGPARAM2 op_658_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -2348,12 +2348,12 @@ uae_u32 REGPARAM2 op_660_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2369,12 +2369,12 @@ uae_u32 REGPARAM2 op_668_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2388,14 +2388,14 @@ uae_u32 REGPARAM2 op_670_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2410,12 +2410,12 @@ uae_u32 REGPARAM2 op_678_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2430,12 +2430,12 @@ uae_u32 REGPARAM2 op_679_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2467,12 +2467,12 @@ uae_u32 REGPARAM2 op_690_0_comp_ff(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2487,12 +2487,12 @@ uae_u32 REGPARAM2 op_698_0_comp_ff(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -2509,12 +2509,12 @@ uae_u32 REGPARAM2 op_6a0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2530,12 +2530,12 @@ uae_u32 REGPARAM2 op_6a8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2549,14 +2549,14 @@ uae_u32 REGPARAM2 op_6b0_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2571,12 +2571,12 @@ uae_u32 REGPARAM2 op_6b8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2591,12 +2591,12 @@ uae_u32 REGPARAM2 op_6b9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2627,7 +2627,7 @@ uae_u32 REGPARAM2 op_810_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -2645,7 +2645,7 @@ uae_u32 REGPARAM2 op_818_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -2665,7 +2665,7 @@ uae_u32 REGPARAM2 op_820_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -2684,7 +2684,7 @@ uae_u32 REGPARAM2 op_828_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -2701,9 +2701,9 @@ uae_u32 REGPARAM2 op_830_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -2721,7 +2721,7 @@ uae_u32 REGPARAM2 op_838_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -2739,7 +2739,7 @@ uae_u32 REGPARAM2 op_839_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -2760,7 +2760,7 @@ uae_u32 REGPARAM2 op_83a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -2780,9 +2780,9 @@ uae_u32 REGPARAM2 op_83b_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BTST_b(dst,src); live_flags(); @@ -2816,11 +2816,11 @@ uae_u32 REGPARAM2 op_850_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2835,11 +2835,11 @@ uae_u32 REGPARAM2 op_858_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -2856,11 +2856,11 @@ uae_u32 REGPARAM2 op_860_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2876,11 +2876,11 @@ uae_u32 REGPARAM2 op_868_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2894,13 +2894,13 @@ uae_u32 REGPARAM2 op_870_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2915,11 +2915,11 @@ uae_u32 REGPARAM2 op_878_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2934,11 +2934,11 @@ uae_u32 REGPARAM2 op_879_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCHG_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2969,11 +2969,11 @@ uae_u32 REGPARAM2 op_890_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -2988,11 +2988,11 @@ uae_u32 REGPARAM2 op_898_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -3009,11 +3009,11 @@ uae_u32 REGPARAM2 op_8a0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3029,11 +3029,11 @@ uae_u32 REGPARAM2 op_8a8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3047,13 +3047,13 @@ uae_u32 REGPARAM2 op_8b0_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3068,11 +3068,11 @@ uae_u32 REGPARAM2 op_8b8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3087,11 +3087,11 @@ uae_u32 REGPARAM2 op_8b9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BCLR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3122,11 +3122,11 @@ uae_u32 REGPARAM2 op_8d0_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3141,11 +3141,11 @@ uae_u32 REGPARAM2 op_8d8_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -3162,11 +3162,11 @@ uae_u32 REGPARAM2 op_8e0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3182,11 +3182,11 @@ uae_u32 REGPARAM2 op_8e8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3200,13 +3200,13 @@ uae_u32 REGPARAM2 op_8f0_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3221,11 +3221,11 @@ uae_u32 REGPARAM2 op_8f8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3240,11 +3240,11 @@ uae_u32 REGPARAM2 op_8f9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); make_flags_live(); jff_BSET_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3275,11 +3275,11 @@ uae_u32 REGPARAM2 op_a10_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3294,11 +3294,11 @@ uae_u32 REGPARAM2 op_a18_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -3315,11 +3315,11 @@ uae_u32 REGPARAM2 op_a20_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3335,11 +3335,11 @@ uae_u32 REGPARAM2 op_a28_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3353,13 +3353,13 @@ uae_u32 REGPARAM2 op_a30_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3374,11 +3374,11 @@ uae_u32 REGPARAM2 op_a38_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3393,11 +3393,11 @@ uae_u32 REGPARAM2 op_a39_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3442,11 +3442,11 @@ uae_u32 REGPARAM2 op_a50_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3461,11 +3461,11 @@ uae_u32 REGPARAM2 op_a58_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -3482,11 +3482,11 @@ uae_u32 REGPARAM2 op_a60_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3502,11 +3502,11 @@ uae_u32 REGPARAM2 op_a68_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3520,13 +3520,13 @@ uae_u32 REGPARAM2 op_a70_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3541,11 +3541,11 @@ uae_u32 REGPARAM2 op_a78_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3560,11 +3560,11 @@ uae_u32 REGPARAM2 op_a79_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3595,11 +3595,11 @@ uae_u32 REGPARAM2 op_a90_0_comp_ff(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3614,11 +3614,11 @@ uae_u32 REGPARAM2 op_a98_0_comp_ff(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -3635,11 +3635,11 @@ uae_u32 REGPARAM2 op_aa0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3655,11 +3655,11 @@ uae_u32 REGPARAM2 op_aa8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3673,13 +3673,13 @@ uae_u32 REGPARAM2 op_ab0_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3694,11 +3694,11 @@ uae_u32 REGPARAM2 op_ab8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3713,11 +3713,11 @@ uae_u32 REGPARAM2 op_ab9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -3752,7 +3752,7 @@ uae_u32 REGPARAM2 op_c10_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_CMP_b(dst,src); live_flags(); @@ -3771,7 +3771,7 @@ uae_u32 REGPARAM2 op_c18_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_CMP_b(dst,src); live_flags(); @@ -3792,7 +3792,7 @@ uae_u32 REGPARAM2 op_c20_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_CMP_b(dst,src); live_flags(); @@ -3812,7 +3812,7 @@ uae_u32 REGPARAM2 op_c28_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_CMP_b(dst,src); live_flags(); @@ -3830,9 +3830,9 @@ uae_u32 REGPARAM2 op_c30_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_CMP_b(dst,src); live_flags(); @@ -3851,7 +3851,7 @@ uae_u32 REGPARAM2 op_c38_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_CMP_b(dst,src); live_flags(); @@ -3870,7 +3870,7 @@ uae_u32 REGPARAM2 op_c39_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_CMP_b(dst,src); live_flags(); @@ -3892,7 +3892,7 @@ uae_u32 REGPARAM2 op_c3a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_CMP_b(dst,src); live_flags(); @@ -3913,9 +3913,9 @@ uae_u32 REGPARAM2 op_c3b_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_CMP_b(dst,src); live_flags(); @@ -3951,7 +3951,7 @@ uae_u32 REGPARAM2 op_c50_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_CMP_w(dst,src); live_flags(); @@ -3970,7 +3970,7 @@ uae_u32 REGPARAM2 op_c58_0_comp_ff(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_CMP_w(dst,src); live_flags(); @@ -3991,7 +3991,7 @@ uae_u32 REGPARAM2 op_c60_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_CMP_w(dst,src); live_flags(); @@ -4011,7 +4011,7 @@ uae_u32 REGPARAM2 op_c68_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_CMP_w(dst,src); live_flags(); @@ -4029,9 +4029,9 @@ uae_u32 REGPARAM2 op_c70_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_CMP_w(dst,src); live_flags(); @@ -4050,7 +4050,7 @@ uae_u32 REGPARAM2 op_c78_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_CMP_w(dst,src); live_flags(); @@ -4069,7 +4069,7 @@ uae_u32 REGPARAM2 op_c79_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_CMP_w(dst,src); live_flags(); @@ -4091,7 +4091,7 @@ uae_u32 REGPARAM2 op_c7a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_CMP_w(dst,src); live_flags(); @@ -4112,9 +4112,9 @@ uae_u32 REGPARAM2 op_c7b_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_CMP_w(dst,src); live_flags(); @@ -4150,7 +4150,7 @@ uae_u32 REGPARAM2 op_c90_0_comp_ff(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_CMP_l(dst,src); live_flags(); @@ -4169,7 +4169,7 @@ uae_u32 REGPARAM2 op_c98_0_comp_ff(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_CMP_l(dst,src); live_flags(); @@ -4190,7 +4190,7 @@ uae_u32 REGPARAM2 op_ca0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_CMP_l(dst,src); live_flags(); @@ -4210,7 +4210,7 @@ uae_u32 REGPARAM2 op_ca8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_CMP_l(dst,src); live_flags(); @@ -4228,9 +4228,9 @@ uae_u32 REGPARAM2 op_cb0_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_CMP_l(dst,src); live_flags(); @@ -4249,7 +4249,7 @@ uae_u32 REGPARAM2 op_cb8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_CMP_l(dst,src); live_flags(); @@ -4268,7 +4268,7 @@ uae_u32 REGPARAM2 op_cb9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_CMP_l(dst,src); live_flags(); @@ -4290,7 +4290,7 @@ uae_u32 REGPARAM2 op_cba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_CMP_l(dst,src); live_flags(); @@ -4311,9 +4311,9 @@ uae_u32 REGPARAM2 op_cbb_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_CMP_l(dst,src); live_flags(); @@ -4347,7 +4347,7 @@ uae_u32 REGPARAM2 op_1010_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_b(dst, src); @@ -4365,7 +4365,7 @@ uae_u32 REGPARAM2 op_1018_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dst=dstreg; dont_care_flags(); @@ -4385,7 +4385,7 @@ uae_u32 REGPARAM2 op_1020_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_b(dst, src); @@ -4404,7 +4404,7 @@ uae_u32 REGPARAM2 op_1028_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_b(dst, src); @@ -4421,9 +4421,9 @@ uae_u32 REGPARAM2 op_1030_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_b(dst, src); @@ -4441,7 +4441,7 @@ uae_u32 REGPARAM2 op_1038_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_b(dst, src); @@ -4459,7 +4459,7 @@ uae_u32 REGPARAM2 op_1039_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_b(dst, src); @@ -4479,7 +4479,7 @@ uae_u32 REGPARAM2 op_103a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_b(dst, src); @@ -4498,9 +4498,9 @@ uae_u32 REGPARAM2 op_103b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_b(dst, src); @@ -4537,7 +4537,7 @@ uae_u32 REGPARAM2 op_1080_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -4551,12 +4551,12 @@ uae_u32 REGPARAM2 op_1090_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -4570,13 +4570,13 @@ uae_u32 REGPARAM2 op_1098_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -4591,12 +4591,12 @@ uae_u32 REGPARAM2 op_10a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -4611,12 +4611,12 @@ uae_u32 REGPARAM2 op_10a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -4629,14 +4629,14 @@ uae_u32 REGPARAM2 op_10b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -4650,12 +4650,12 @@ uae_u32 REGPARAM2 op_10b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -4669,12 +4669,12 @@ uae_u32 REGPARAM2 op_10b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -4690,12 +4690,12 @@ uae_u32 REGPARAM2 op_10ba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -4710,14 +4710,14 @@ uae_u32 REGPARAM2 op_10bb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -4734,7 +4734,7 @@ uae_u32 REGPARAM2 op_10bc_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -4751,7 +4751,7 @@ uae_u32 REGPARAM2 op_10c0_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -4766,12 +4766,12 @@ uae_u32 REGPARAM2 op_10d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -4786,13 +4786,13 @@ uae_u32 REGPARAM2 op_10d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -4808,12 +4808,12 @@ uae_u32 REGPARAM2 op_10e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -4829,12 +4829,12 @@ uae_u32 REGPARAM2 op_10e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -4848,14 +4848,14 @@ uae_u32 REGPARAM2 op_10f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -4870,12 +4870,12 @@ uae_u32 REGPARAM2 op_10f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -4890,12 +4890,12 @@ uae_u32 REGPARAM2 op_10f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -4912,12 +4912,12 @@ uae_u32 REGPARAM2 op_10fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -4933,14 +4933,14 @@ uae_u32 REGPARAM2 op_10fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -4958,7 +4958,7 @@ uae_u32 REGPARAM2 op_10fc_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -4977,7 +4977,7 @@ uae_u32 REGPARAM2 op_1100_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -4991,13 +4991,13 @@ uae_u32 REGPARAM2 op_1110_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5011,14 +5011,14 @@ uae_u32 REGPARAM2 op_1118_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5033,13 +5033,13 @@ uae_u32 REGPARAM2 op_1120_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5054,13 +5054,13 @@ uae_u32 REGPARAM2 op_1128_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5073,15 +5073,15 @@ uae_u32 REGPARAM2 op_1130_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5095,13 +5095,13 @@ uae_u32 REGPARAM2 op_1138_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5115,13 +5115,13 @@ uae_u32 REGPARAM2 op_1139_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5137,13 +5137,13 @@ uae_u32 REGPARAM2 op_113a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5158,15 +5158,15 @@ uae_u32 REGPARAM2 op_113b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5184,7 +5184,7 @@ uae_u32 REGPARAM2 op_113c_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5202,7 +5202,7 @@ uae_u32 REGPARAM2 op_1140_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5216,13 +5216,13 @@ uae_u32 REGPARAM2 op_1150_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5236,14 +5236,14 @@ uae_u32 REGPARAM2 op_1158_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5258,13 +5258,13 @@ uae_u32 REGPARAM2 op_1160_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5279,13 +5279,13 @@ uae_u32 REGPARAM2 op_1168_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5298,15 +5298,15 @@ uae_u32 REGPARAM2 op_1170_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5320,13 +5320,13 @@ uae_u32 REGPARAM2 op_1178_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5340,13 +5340,13 @@ uae_u32 REGPARAM2 op_1179_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5362,13 +5362,13 @@ uae_u32 REGPARAM2 op_117a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5383,15 +5383,15 @@ uae_u32 REGPARAM2 op_117b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5409,7 +5409,7 @@ uae_u32 REGPARAM2 op_117c_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5423,11 +5423,11 @@ uae_u32 REGPARAM2 op_1180_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5441,13 +5441,13 @@ uae_u32 REGPARAM2 op_1190_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5461,14 +5461,14 @@ uae_u32 REGPARAM2 op_1198_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5483,13 +5483,13 @@ uae_u32 REGPARAM2 op_11a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5504,13 +5504,13 @@ uae_u32 REGPARAM2 op_11a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5523,15 +5523,15 @@ uae_u32 REGPARAM2 op_11b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5545,13 +5545,13 @@ uae_u32 REGPARAM2 op_11b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5565,13 +5565,13 @@ uae_u32 REGPARAM2 op_11b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5587,13 +5587,13 @@ uae_u32 REGPARAM2 op_11ba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5608,15 +5608,15 @@ uae_u32 REGPARAM2 op_11bb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5630,11 +5630,11 @@ uae_u32 REGPARAM2 op_11bc_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5651,7 +5651,7 @@ uae_u32 REGPARAM2 op_11c0_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5664,13 +5664,13 @@ uae_u32 REGPARAM2 op_11d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5683,14 +5683,14 @@ uae_u32 REGPARAM2 op_11d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5704,13 +5704,13 @@ uae_u32 REGPARAM2 op_11e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5724,13 +5724,13 @@ uae_u32 REGPARAM2 op_11e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5742,15 +5742,15 @@ uae_u32 REGPARAM2 op_11f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5763,13 +5763,13 @@ uae_u32 REGPARAM2 op_11f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5782,13 +5782,13 @@ uae_u32 REGPARAM2 op_11f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5803,13 +5803,13 @@ uae_u32 REGPARAM2 op_11fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5823,15 +5823,15 @@ uae_u32 REGPARAM2 op_11fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5848,7 +5848,7 @@ uae_u32 REGPARAM2 op_11fc_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5865,7 +5865,7 @@ uae_u32 REGPARAM2 op_13c0_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5878,13 +5878,13 @@ uae_u32 REGPARAM2 op_13d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5897,14 +5897,14 @@ uae_u32 REGPARAM2 op_13d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5918,13 +5918,13 @@ uae_u32 REGPARAM2 op_13e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5938,13 +5938,13 @@ uae_u32 REGPARAM2 op_13e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5956,15 +5956,15 @@ uae_u32 REGPARAM2 op_13f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5977,13 +5977,13 @@ uae_u32 REGPARAM2 op_13f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -5996,13 +5996,13 @@ uae_u32 REGPARAM2 op_13f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6017,13 +6017,13 @@ uae_u32 REGPARAM2 op_13fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6037,15 +6037,15 @@ uae_u32 REGPARAM2 op_13fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6062,7 +6062,7 @@ uae_u32 REGPARAM2 op_13fc_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_b(src); live_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6108,7 +6108,7 @@ uae_u32 REGPARAM2 op_2010_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_l(dst, src); @@ -6126,7 +6126,7 @@ uae_u32 REGPARAM2 op_2018_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg; dont_care_flags(); @@ -6146,7 +6146,7 @@ uae_u32 REGPARAM2 op_2020_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_l(dst, src); @@ -6165,7 +6165,7 @@ uae_u32 REGPARAM2 op_2028_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_l(dst, src); @@ -6182,9 +6182,9 @@ uae_u32 REGPARAM2 op_2030_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_l(dst, src); @@ -6202,7 +6202,7 @@ uae_u32 REGPARAM2 op_2038_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_l(dst, src); @@ -6220,7 +6220,7 @@ uae_u32 REGPARAM2 op_2039_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_l(dst, src); @@ -6240,7 +6240,7 @@ uae_u32 REGPARAM2 op_203a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_l(dst, src); @@ -6259,9 +6259,9 @@ uae_u32 REGPARAM2 op_203b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_l(dst, src); @@ -6323,7 +6323,7 @@ uae_u32 REGPARAM2 op_2050_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -6339,7 +6339,7 @@ uae_u32 REGPARAM2 op_2058_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg+8; jnf_MOVEA_l(dst, src); @@ -6357,7 +6357,7 @@ uae_u32 REGPARAM2 op_2060_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -6374,7 +6374,7 @@ uae_u32 REGPARAM2 op_2068_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -6389,9 +6389,9 @@ uae_u32 REGPARAM2 op_2070_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -6407,7 +6407,7 @@ uae_u32 REGPARAM2 op_2078_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -6423,7 +6423,7 @@ uae_u32 REGPARAM2 op_2079_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -6441,7 +6441,7 @@ uae_u32 REGPARAM2 op_207a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -6458,9 +6458,9 @@ uae_u32 REGPARAM2 op_207b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -6493,7 +6493,7 @@ uae_u32 REGPARAM2 op_2080_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6510,7 +6510,7 @@ uae_u32 REGPARAM2 op_2088_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6524,12 +6524,12 @@ uae_u32 REGPARAM2 op_2090_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6543,13 +6543,13 @@ uae_u32 REGPARAM2 op_2098_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6564,12 +6564,12 @@ uae_u32 REGPARAM2 op_20a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6584,12 +6584,12 @@ uae_u32 REGPARAM2 op_20a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6602,14 +6602,14 @@ uae_u32 REGPARAM2 op_20b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6623,12 +6623,12 @@ uae_u32 REGPARAM2 op_20b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6642,12 +6642,12 @@ uae_u32 REGPARAM2 op_20b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6663,12 +6663,12 @@ uae_u32 REGPARAM2 op_20ba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6683,14 +6683,14 @@ uae_u32 REGPARAM2 op_20bb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6707,7 +6707,7 @@ uae_u32 REGPARAM2 op_20bc_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6724,7 +6724,7 @@ uae_u32 REGPARAM2 op_20c0_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -6746,7 +6746,7 @@ uae_u32 REGPARAM2 op_20c8_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -6761,12 +6761,12 @@ uae_u32 REGPARAM2 op_20d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -6781,13 +6781,13 @@ uae_u32 REGPARAM2 op_20d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -6803,12 +6803,12 @@ uae_u32 REGPARAM2 op_20e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -6824,12 +6824,12 @@ uae_u32 REGPARAM2 op_20e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -6843,14 +6843,14 @@ uae_u32 REGPARAM2 op_20f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -6865,12 +6865,12 @@ uae_u32 REGPARAM2 op_20f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -6885,12 +6885,12 @@ uae_u32 REGPARAM2 op_20f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -6907,12 +6907,12 @@ uae_u32 REGPARAM2 op_20fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -6928,14 +6928,14 @@ uae_u32 REGPARAM2 op_20fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -6953,7 +6953,7 @@ uae_u32 REGPARAM2 op_20fc_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -6972,7 +6972,7 @@ uae_u32 REGPARAM2 op_2100_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -6994,7 +6994,7 @@ uae_u32 REGPARAM2 op_2108_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7008,13 +7008,13 @@ uae_u32 REGPARAM2 op_2110_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7028,14 +7028,14 @@ uae_u32 REGPARAM2 op_2118_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7050,13 +7050,13 @@ uae_u32 REGPARAM2 op_2120_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7071,13 +7071,13 @@ uae_u32 REGPARAM2 op_2128_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7090,15 +7090,15 @@ uae_u32 REGPARAM2 op_2130_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7112,13 +7112,13 @@ uae_u32 REGPARAM2 op_2138_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7132,13 +7132,13 @@ uae_u32 REGPARAM2 op_2139_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7154,13 +7154,13 @@ uae_u32 REGPARAM2 op_213a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7175,15 +7175,15 @@ uae_u32 REGPARAM2 op_213b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7201,7 +7201,7 @@ uae_u32 REGPARAM2 op_213c_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7219,7 +7219,7 @@ uae_u32 REGPARAM2 op_2140_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7237,7 +7237,7 @@ uae_u32 REGPARAM2 op_2148_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7251,13 +7251,13 @@ uae_u32 REGPARAM2 op_2150_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7271,14 +7271,14 @@ uae_u32 REGPARAM2 op_2158_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7293,13 +7293,13 @@ uae_u32 REGPARAM2 op_2160_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7314,13 +7314,13 @@ uae_u32 REGPARAM2 op_2168_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7333,15 +7333,15 @@ uae_u32 REGPARAM2 op_2170_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7355,13 +7355,13 @@ uae_u32 REGPARAM2 op_2178_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7375,13 +7375,13 @@ uae_u32 REGPARAM2 op_2179_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7397,13 +7397,13 @@ uae_u32 REGPARAM2 op_217a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7418,15 +7418,15 @@ uae_u32 REGPARAM2 op_217b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7444,7 +7444,7 @@ uae_u32 REGPARAM2 op_217c_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7458,11 +7458,11 @@ uae_u32 REGPARAM2 op_2180_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7476,11 +7476,11 @@ uae_u32 REGPARAM2 op_2188_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg+8; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7494,13 +7494,13 @@ uae_u32 REGPARAM2 op_2190_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7514,14 +7514,14 @@ uae_u32 REGPARAM2 op_2198_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7539,13 +7539,13 @@ uae_u32 REGPARAM2 op_21a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7560,13 +7560,13 @@ uae_u32 REGPARAM2 op_21a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7579,15 +7579,15 @@ uae_u32 REGPARAM2 op_21b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7601,13 +7601,13 @@ uae_u32 REGPARAM2 op_21b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7621,13 +7621,13 @@ uae_u32 REGPARAM2 op_21b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7643,13 +7643,13 @@ uae_u32 REGPARAM2 op_21ba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7664,15 +7664,15 @@ uae_u32 REGPARAM2 op_21bb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7686,11 +7686,11 @@ uae_u32 REGPARAM2 op_21bc_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7707,7 +7707,7 @@ uae_u32 REGPARAM2 op_21c0_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7724,7 +7724,7 @@ uae_u32 REGPARAM2 op_21c8_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7737,13 +7737,13 @@ uae_u32 REGPARAM2 op_21d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7756,14 +7756,14 @@ uae_u32 REGPARAM2 op_21d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7777,13 +7777,13 @@ uae_u32 REGPARAM2 op_21e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7797,13 +7797,13 @@ uae_u32 REGPARAM2 op_21e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7815,15 +7815,15 @@ uae_u32 REGPARAM2 op_21f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7836,13 +7836,13 @@ uae_u32 REGPARAM2 op_21f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7855,13 +7855,13 @@ uae_u32 REGPARAM2 op_21f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7876,13 +7876,13 @@ uae_u32 REGPARAM2 op_21fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7896,15 +7896,15 @@ uae_u32 REGPARAM2 op_21fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7921,7 +7921,7 @@ uae_u32 REGPARAM2 op_21fc_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7938,7 +7938,7 @@ uae_u32 REGPARAM2 op_23c0_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7955,7 +7955,7 @@ uae_u32 REGPARAM2 op_23c8_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7968,13 +7968,13 @@ uae_u32 REGPARAM2 op_23d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -7987,14 +7987,14 @@ uae_u32 REGPARAM2 op_23d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8008,13 +8008,13 @@ uae_u32 REGPARAM2 op_23e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8028,13 +8028,13 @@ uae_u32 REGPARAM2 op_23e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8046,15 +8046,15 @@ uae_u32 REGPARAM2 op_23f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8067,13 +8067,13 @@ uae_u32 REGPARAM2 op_23f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8086,13 +8086,13 @@ uae_u32 REGPARAM2 op_23f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8107,13 +8107,13 @@ uae_u32 REGPARAM2 op_23fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8127,15 +8127,15 @@ uae_u32 REGPARAM2 op_23fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8152,7 +8152,7 @@ uae_u32 REGPARAM2 op_23fc_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_l(src); live_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8198,7 +8198,7 @@ uae_u32 REGPARAM2 op_3010_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_w(dst, src); @@ -8216,7 +8216,7 @@ uae_u32 REGPARAM2 op_3018_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; dont_care_flags(); @@ -8236,7 +8236,7 @@ uae_u32 REGPARAM2 op_3020_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_w(dst, src); @@ -8255,7 +8255,7 @@ uae_u32 REGPARAM2 op_3028_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_w(dst, src); @@ -8272,9 +8272,9 @@ uae_u32 REGPARAM2 op_3030_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_w(dst, src); @@ -8292,7 +8292,7 @@ uae_u32 REGPARAM2 op_3038_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_w(dst, src); @@ -8310,7 +8310,7 @@ uae_u32 REGPARAM2 op_3039_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_w(dst, src); @@ -8330,7 +8330,7 @@ uae_u32 REGPARAM2 op_303a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_w(dst, src); @@ -8349,9 +8349,9 @@ uae_u32 REGPARAM2 op_303b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_MOVE_w(dst, src); @@ -8413,7 +8413,7 @@ uae_u32 REGPARAM2 op_3050_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -8429,7 +8429,7 @@ uae_u32 REGPARAM2 op_3058_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg+8; jnf_MOVEA_w(dst, src); @@ -8447,7 +8447,7 @@ uae_u32 REGPARAM2 op_3060_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -8464,7 +8464,7 @@ uae_u32 REGPARAM2 op_3068_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -8479,9 +8479,9 @@ uae_u32 REGPARAM2 op_3070_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -8497,7 +8497,7 @@ uae_u32 REGPARAM2 op_3078_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -8513,7 +8513,7 @@ uae_u32 REGPARAM2 op_3079_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -8531,7 +8531,7 @@ uae_u32 REGPARAM2 op_307a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -8548,9 +8548,9 @@ uae_u32 REGPARAM2 op_307b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -8583,7 +8583,7 @@ uae_u32 REGPARAM2 op_3080_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8600,7 +8600,7 @@ uae_u32 REGPARAM2 op_3088_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8614,12 +8614,12 @@ uae_u32 REGPARAM2 op_3090_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8633,13 +8633,13 @@ uae_u32 REGPARAM2 op_3098_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8654,12 +8654,12 @@ uae_u32 REGPARAM2 op_30a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8674,12 +8674,12 @@ uae_u32 REGPARAM2 op_30a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8692,14 +8692,14 @@ uae_u32 REGPARAM2 op_30b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8713,12 +8713,12 @@ uae_u32 REGPARAM2 op_30b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8732,12 +8732,12 @@ uae_u32 REGPARAM2 op_30b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8753,12 +8753,12 @@ uae_u32 REGPARAM2 op_30ba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8773,14 +8773,14 @@ uae_u32 REGPARAM2 op_30bb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8797,7 +8797,7 @@ uae_u32 REGPARAM2 op_30bc_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -8814,7 +8814,7 @@ uae_u32 REGPARAM2 op_30c0_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -8836,7 +8836,7 @@ uae_u32 REGPARAM2 op_30c8_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -8851,12 +8851,12 @@ uae_u32 REGPARAM2 op_30d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -8871,13 +8871,13 @@ uae_u32 REGPARAM2 op_30d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -8893,12 +8893,12 @@ uae_u32 REGPARAM2 op_30e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -8914,12 +8914,12 @@ uae_u32 REGPARAM2 op_30e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -8933,14 +8933,14 @@ uae_u32 REGPARAM2 op_30f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -8955,12 +8955,12 @@ uae_u32 REGPARAM2 op_30f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -8975,12 +8975,12 @@ uae_u32 REGPARAM2 op_30f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -8997,12 +8997,12 @@ uae_u32 REGPARAM2 op_30fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -9018,14 +9018,14 @@ uae_u32 REGPARAM2 op_30fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -9043,7 +9043,7 @@ uae_u32 REGPARAM2 op_30fc_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -9062,7 +9062,7 @@ uae_u32 REGPARAM2 op_3100_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9084,7 +9084,7 @@ uae_u32 REGPARAM2 op_3108_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9098,13 +9098,13 @@ uae_u32 REGPARAM2 op_3110_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9118,14 +9118,14 @@ uae_u32 REGPARAM2 op_3118_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9140,13 +9140,13 @@ uae_u32 REGPARAM2 op_3120_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9161,13 +9161,13 @@ uae_u32 REGPARAM2 op_3128_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9180,15 +9180,15 @@ uae_u32 REGPARAM2 op_3130_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9202,13 +9202,13 @@ uae_u32 REGPARAM2 op_3138_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9222,13 +9222,13 @@ uae_u32 REGPARAM2 op_3139_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9244,13 +9244,13 @@ uae_u32 REGPARAM2 op_313a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9265,15 +9265,15 @@ uae_u32 REGPARAM2 op_313b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9291,7 +9291,7 @@ uae_u32 REGPARAM2 op_313c_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9309,7 +9309,7 @@ uae_u32 REGPARAM2 op_3140_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9327,7 +9327,7 @@ uae_u32 REGPARAM2 op_3148_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9341,13 +9341,13 @@ uae_u32 REGPARAM2 op_3150_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9361,14 +9361,14 @@ uae_u32 REGPARAM2 op_3158_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9383,13 +9383,13 @@ uae_u32 REGPARAM2 op_3160_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9404,13 +9404,13 @@ uae_u32 REGPARAM2 op_3168_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9423,15 +9423,15 @@ uae_u32 REGPARAM2 op_3170_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9445,13 +9445,13 @@ uae_u32 REGPARAM2 op_3178_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9465,13 +9465,13 @@ uae_u32 REGPARAM2 op_3179_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9487,13 +9487,13 @@ uae_u32 REGPARAM2 op_317a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9508,15 +9508,15 @@ uae_u32 REGPARAM2 op_317b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9534,7 +9534,7 @@ uae_u32 REGPARAM2 op_317c_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9548,11 +9548,11 @@ uae_u32 REGPARAM2 op_3180_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9566,11 +9566,11 @@ uae_u32 REGPARAM2 op_3188_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg+8; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9584,13 +9584,13 @@ uae_u32 REGPARAM2 op_3190_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9604,14 +9604,14 @@ uae_u32 REGPARAM2 op_3198_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9626,13 +9626,13 @@ uae_u32 REGPARAM2 op_31a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9647,13 +9647,13 @@ uae_u32 REGPARAM2 op_31a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9666,15 +9666,15 @@ uae_u32 REGPARAM2 op_31b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9688,13 +9688,13 @@ uae_u32 REGPARAM2 op_31b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9708,13 +9708,13 @@ uae_u32 REGPARAM2 op_31b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9730,13 +9730,13 @@ uae_u32 REGPARAM2 op_31ba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9751,15 +9751,15 @@ uae_u32 REGPARAM2 op_31bb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9773,11 +9773,11 @@ uae_u32 REGPARAM2 op_31bc_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9794,7 +9794,7 @@ uae_u32 REGPARAM2 op_31c0_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9811,7 +9811,7 @@ uae_u32 REGPARAM2 op_31c8_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9824,13 +9824,13 @@ uae_u32 REGPARAM2 op_31d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9843,14 +9843,14 @@ uae_u32 REGPARAM2 op_31d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9864,13 +9864,13 @@ uae_u32 REGPARAM2 op_31e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9884,13 +9884,13 @@ uae_u32 REGPARAM2 op_31e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9902,15 +9902,15 @@ uae_u32 REGPARAM2 op_31f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9923,13 +9923,13 @@ uae_u32 REGPARAM2 op_31f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9942,13 +9942,13 @@ uae_u32 REGPARAM2 op_31f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9963,13 +9963,13 @@ uae_u32 REGPARAM2 op_31fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -9983,15 +9983,15 @@ uae_u32 REGPARAM2 op_31fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10008,7 +10008,7 @@ uae_u32 REGPARAM2 op_31fc_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10025,7 +10025,7 @@ uae_u32 REGPARAM2 op_33c0_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10042,7 +10042,7 @@ uae_u32 REGPARAM2 op_33c8_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10055,13 +10055,13 @@ uae_u32 REGPARAM2 op_33d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10074,14 +10074,14 @@ uae_u32 REGPARAM2 op_33d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10095,13 +10095,13 @@ uae_u32 REGPARAM2 op_33e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10115,13 +10115,13 @@ uae_u32 REGPARAM2 op_33e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10133,15 +10133,15 @@ uae_u32 REGPARAM2 op_33f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10154,13 +10154,13 @@ uae_u32 REGPARAM2 op_33f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10173,13 +10173,13 @@ uae_u32 REGPARAM2 op_33f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10194,13 +10194,13 @@ uae_u32 REGPARAM2 op_33fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10214,15 +10214,15 @@ uae_u32 REGPARAM2 op_33fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10239,7 +10239,7 @@ uae_u32 REGPARAM2 op_33fc_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_TST_w(src); live_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10267,12 +10267,12 @@ uae_u32 REGPARAM2 op_4010_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); make_flags_live(); jff_NEGX_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10285,12 +10285,12 @@ uae_u32 REGPARAM2 op_4018_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); make_flags_live(); jff_NEGX_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -10305,12 +10305,12 @@ uae_u32 REGPARAM2 op_4020_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); make_flags_live(); jff_NEGX_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10324,12 +10324,12 @@ uae_u32 REGPARAM2 op_4028_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); make_flags_live(); jff_NEGX_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10341,14 +10341,14 @@ uae_u32 REGPARAM2 op_4030_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); make_flags_live(); jff_NEGX_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10361,12 +10361,12 @@ uae_u32 REGPARAM2 op_4038_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); make_flags_live(); jff_NEGX_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10379,12 +10379,12 @@ uae_u32 REGPARAM2 op_4039_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); make_flags_live(); jff_NEGX_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10412,12 +10412,12 @@ uae_u32 REGPARAM2 op_4050_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); make_flags_live(); jff_NEGX_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10430,12 +10430,12 @@ uae_u32 REGPARAM2 op_4058_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); make_flags_live(); jff_NEGX_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -10450,12 +10450,12 @@ uae_u32 REGPARAM2 op_4060_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); make_flags_live(); jff_NEGX_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10469,12 +10469,12 @@ uae_u32 REGPARAM2 op_4068_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); make_flags_live(); jff_NEGX_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10486,14 +10486,14 @@ uae_u32 REGPARAM2 op_4070_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); make_flags_live(); jff_NEGX_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10506,12 +10506,12 @@ uae_u32 REGPARAM2 op_4078_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); make_flags_live(); jff_NEGX_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10524,12 +10524,12 @@ uae_u32 REGPARAM2 op_4079_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); make_flags_live(); jff_NEGX_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10557,12 +10557,12 @@ uae_u32 REGPARAM2 op_4090_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); make_flags_live(); jff_NEGX_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10575,12 +10575,12 @@ uae_u32 REGPARAM2 op_4098_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); make_flags_live(); jff_NEGX_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -10595,12 +10595,12 @@ uae_u32 REGPARAM2 op_40a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); make_flags_live(); jff_NEGX_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10614,12 +10614,12 @@ uae_u32 REGPARAM2 op_40a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); make_flags_live(); jff_NEGX_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10631,14 +10631,14 @@ uae_u32 REGPARAM2 op_40b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); make_flags_live(); jff_NEGX_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10651,12 +10651,12 @@ uae_u32 REGPARAM2 op_40b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); make_flags_live(); jff_NEGX_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10669,12 +10669,12 @@ uae_u32 REGPARAM2 op_40b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); make_flags_live(); jff_NEGX_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10718,7 +10718,7 @@ uae_u32 REGPARAM2 op_41f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int dst=dstreg+8; if(dstreg+8!=srca) mov_l_rr(dstreg+8,srca); @@ -10783,7 +10783,7 @@ uae_u32 REGPARAM2 op_41fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int dst=dstreg+8; if(dstreg+8!=srca) mov_l_rr(dstreg+8,srca); @@ -10816,7 +10816,7 @@ uae_u32 REGPARAM2 op_4210_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10832,7 +10832,7 @@ uae_u32 REGPARAM2 op_4218_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -10850,7 +10850,7 @@ uae_u32 REGPARAM2 op_4220_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10867,7 +10867,7 @@ uae_u32 REGPARAM2 op_4228_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10879,12 +10879,12 @@ uae_u32 REGPARAM2 op_4230_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; dont_care_flags(); jff_CLR_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10900,7 +10900,7 @@ uae_u32 REGPARAM2 op_4238_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10916,7 +10916,7 @@ uae_u32 REGPARAM2 op_4239_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10946,7 +10946,7 @@ uae_u32 REGPARAM2 op_4250_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10962,7 +10962,7 @@ uae_u32 REGPARAM2 op_4258_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -10980,7 +10980,7 @@ uae_u32 REGPARAM2 op_4260_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -10997,7 +10997,7 @@ uae_u32 REGPARAM2 op_4268_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11009,12 +11009,12 @@ uae_u32 REGPARAM2 op_4270_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; dont_care_flags(); jff_CLR_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11030,7 +11030,7 @@ uae_u32 REGPARAM2 op_4278_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11046,7 +11046,7 @@ uae_u32 REGPARAM2 op_4279_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11076,7 +11076,7 @@ uae_u32 REGPARAM2 op_4290_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11092,7 +11092,7 @@ uae_u32 REGPARAM2 op_4298_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -11110,7 +11110,7 @@ uae_u32 REGPARAM2 op_42a0_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11127,7 +11127,7 @@ uae_u32 REGPARAM2 op_42a8_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11139,12 +11139,12 @@ uae_u32 REGPARAM2 op_42b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; dont_care_flags(); jff_CLR_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11160,7 +11160,7 @@ uae_u32 REGPARAM2 op_42b8_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11176,7 +11176,7 @@ uae_u32 REGPARAM2 op_42b9_0_comp_ff(uae_u32 opcode) dont_care_flags(); jff_CLR_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11206,11 +11206,11 @@ uae_u32 REGPARAM2 op_4410_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jff_NEG_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11223,11 +11223,11 @@ uae_u32 REGPARAM2 op_4418_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jff_NEG_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -11242,11 +11242,11 @@ uae_u32 REGPARAM2 op_4420_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jff_NEG_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11260,11 +11260,11 @@ uae_u32 REGPARAM2 op_4428_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jff_NEG_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11276,13 +11276,13 @@ uae_u32 REGPARAM2 op_4430_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jff_NEG_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11295,11 +11295,11 @@ uae_u32 REGPARAM2 op_4438_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jff_NEG_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11312,11 +11312,11 @@ uae_u32 REGPARAM2 op_4439_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jff_NEG_b(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11343,11 +11343,11 @@ uae_u32 REGPARAM2 op_4450_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_NEG_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11360,11 +11360,11 @@ uae_u32 REGPARAM2 op_4458_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_NEG_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -11379,11 +11379,11 @@ uae_u32 REGPARAM2 op_4460_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_NEG_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11397,11 +11397,11 @@ uae_u32 REGPARAM2 op_4468_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_NEG_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11413,13 +11413,13 @@ uae_u32 REGPARAM2 op_4470_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_NEG_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11432,11 +11432,11 @@ uae_u32 REGPARAM2 op_4478_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_NEG_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11449,11 +11449,11 @@ uae_u32 REGPARAM2 op_4479_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_NEG_w(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11480,11 +11480,11 @@ uae_u32 REGPARAM2 op_4490_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jff_NEG_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11497,11 +11497,11 @@ uae_u32 REGPARAM2 op_4498_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jff_NEG_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -11516,11 +11516,11 @@ uae_u32 REGPARAM2 op_44a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jff_NEG_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11534,11 +11534,11 @@ uae_u32 REGPARAM2 op_44a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jff_NEG_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11550,13 +11550,13 @@ uae_u32 REGPARAM2 op_44b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jff_NEG_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11569,11 +11569,11 @@ uae_u32 REGPARAM2 op_44b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jff_NEG_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11586,11 +11586,11 @@ uae_u32 REGPARAM2 op_44b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jff_NEG_l(src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11617,11 +11617,11 @@ uae_u32 REGPARAM2 op_4610_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_NOT_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11634,11 +11634,11 @@ uae_u32 REGPARAM2 op_4618_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_NOT_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -11653,11 +11653,11 @@ uae_u32 REGPARAM2 op_4620_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_NOT_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11671,11 +11671,11 @@ uae_u32 REGPARAM2 op_4628_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_NOT_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11687,13 +11687,13 @@ uae_u32 REGPARAM2 op_4630_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_NOT_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11706,11 +11706,11 @@ uae_u32 REGPARAM2 op_4638_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_NOT_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11723,11 +11723,11 @@ uae_u32 REGPARAM2 op_4639_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_NOT_b(src); live_flags(); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11754,11 +11754,11 @@ uae_u32 REGPARAM2 op_4650_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_NOT_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11771,11 +11771,11 @@ uae_u32 REGPARAM2 op_4658_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_NOT_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -11790,11 +11790,11 @@ uae_u32 REGPARAM2 op_4660_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_NOT_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11808,11 +11808,11 @@ uae_u32 REGPARAM2 op_4668_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_NOT_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11824,13 +11824,13 @@ uae_u32 REGPARAM2 op_4670_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_NOT_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11843,11 +11843,11 @@ uae_u32 REGPARAM2 op_4678_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_NOT_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11860,11 +11860,11 @@ uae_u32 REGPARAM2 op_4679_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_NOT_w(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11891,11 +11891,11 @@ uae_u32 REGPARAM2 op_4690_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_NOT_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11908,11 +11908,11 @@ uae_u32 REGPARAM2 op_4698_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_NOT_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -11927,11 +11927,11 @@ uae_u32 REGPARAM2 op_46a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_NOT_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11945,11 +11945,11 @@ uae_u32 REGPARAM2 op_46a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_NOT_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11961,13 +11961,13 @@ uae_u32 REGPARAM2 op_46b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_NOT_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11980,11 +11980,11 @@ uae_u32 REGPARAM2 op_46b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_NOT_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -11997,11 +11997,11 @@ uae_u32 REGPARAM2 op_46b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_NOT_l(src); live_flags(); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -12016,7 +12016,7 @@ uae_u32 REGPARAM2 op_4808_0_comp_ff(uae_u32 opcode) int offs = scratchie++; mov_l_ri(offs,comp_get_ilong((m68k_pc_offset+=4)-4)); sub_l_ri(15,4); - writelong_clobber(15,src); + writelong_clobber(15,src,scratchie); mov_l_rr(src,15); arm_ADD_l(15,offs); if(srcreg+8!=src) @@ -12055,7 +12055,7 @@ if (srcreg==7) dodgy=1; arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -12074,7 +12074,7 @@ if (srcreg==7) dodgy=1; arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -12088,12 +12088,12 @@ uae_u32 REGPARAM2 op_4870_0_comp_ff(uae_u32 opcode) int dodgy=0; if (srcreg==7) dodgy=1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); { int dsta=dodgy?scratchie++:7+8; arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -12110,7 +12110,7 @@ uae_u32 REGPARAM2 op_4878_0_comp_ff(uae_u32 opcode) arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -12127,7 +12127,7 @@ uae_u32 REGPARAM2 op_4879_0_comp_ff(uae_u32 opcode) arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -12146,7 +12146,7 @@ uae_u32 REGPARAM2 op_487a_0_comp_ff(uae_u32 opcode) arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -12161,12 +12161,12 @@ uae_u32 REGPARAM2 op_487b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; { mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); { int dsta=dodgy?scratchie++:7+8; arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); }} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -12198,7 +12198,7 @@ uae_u32 REGPARAM2 op_4890_0_comp_ff(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_w(native,i,offset); @@ -12208,7 +12208,7 @@ uae_u32 REGPARAM2 op_4890_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writeword(tmp,i); + writeword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } } @@ -12229,7 +12229,7 @@ uae_u32 REGPARAM2 op_48a0_0_comp_ff(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { offset-=2; @@ -12240,7 +12240,7 @@ uae_u32 REGPARAM2 op_48a0_0_comp_ff(uae_u32 opcode) for (i=0;i<16;i++) { if ((mask>>i)&1) { arm_SUB_l_ri8(srca,2); - writeword(srca,15-i); + writeword(srca,15-i,scratchie); } } mov_l_rr(8+dstreg,srca); } @@ -12262,7 +12262,7 @@ uae_u32 REGPARAM2 op_48a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_w(native,i,offset); @@ -12272,7 +12272,7 @@ uae_u32 REGPARAM2 op_48a8_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writeword(tmp,i); + writeword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } } @@ -12292,9 +12292,9 @@ uae_u32 REGPARAM2 op_48b0_0_comp_ff(uae_u32 opcode) int tmp=scratchie++; signed char offset=0; int srca=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_w(native,i,offset); @@ -12304,7 +12304,7 @@ uae_u32 REGPARAM2 op_48b0_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writeword(tmp,i); + writeword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } } @@ -12325,7 +12325,7 @@ uae_u32 REGPARAM2 op_48b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_w(native,i,offset); @@ -12335,7 +12335,7 @@ uae_u32 REGPARAM2 op_48b8_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writeword(tmp,i); + writeword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } } @@ -12356,7 +12356,7 @@ uae_u32 REGPARAM2 op_48b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_w(native,i,offset); @@ -12366,7 +12366,7 @@ uae_u32 REGPARAM2 op_48b9_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writeword(tmp,i); + writeword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } } @@ -12401,7 +12401,7 @@ uae_u32 REGPARAM2 op_48d0_0_comp_ff(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_l(native,i,offset); @@ -12411,7 +12411,7 @@ uae_u32 REGPARAM2 op_48d0_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writelong(tmp,i); + writelong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } } @@ -12432,7 +12432,7 @@ uae_u32 REGPARAM2 op_48e0_0_comp_ff(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { offset-=4; @@ -12443,7 +12443,7 @@ uae_u32 REGPARAM2 op_48e0_0_comp_ff(uae_u32 opcode) for (i=0;i<16;i++) { if ((mask>>i)&1) { arm_SUB_l_ri8(srca,4); - writelong(srca,15-i); + writelong(srca,15-i,scratchie); } } mov_l_rr(8+dstreg,srca); } @@ -12465,7 +12465,7 @@ uae_u32 REGPARAM2 op_48e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_l(native,i,offset); @@ -12475,7 +12475,7 @@ uae_u32 REGPARAM2 op_48e8_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writelong(tmp,i); + writelong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } } @@ -12495,9 +12495,9 @@ uae_u32 REGPARAM2 op_48f0_0_comp_ff(uae_u32 opcode) int tmp=scratchie++; signed char offset=0; int srca=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_l(native,i,offset); @@ -12507,7 +12507,7 @@ uae_u32 REGPARAM2 op_48f0_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writelong(tmp,i); + writelong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } } @@ -12528,7 +12528,7 @@ uae_u32 REGPARAM2 op_48f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_l(native,i,offset); @@ -12538,7 +12538,7 @@ uae_u32 REGPARAM2 op_48f8_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writelong(tmp,i); + writelong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } } @@ -12559,7 +12559,7 @@ uae_u32 REGPARAM2 op_48f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_l(native,i,offset); @@ -12569,7 +12569,7 @@ uae_u32 REGPARAM2 op_48f9_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writelong(tmp,i); + writelong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } } @@ -12613,7 +12613,7 @@ uae_u32 REGPARAM2 op_4a10_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); @@ -12629,7 +12629,7 @@ uae_u32 REGPARAM2 op_4a18_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); @@ -12647,7 +12647,7 @@ uae_u32 REGPARAM2 op_4a20_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); @@ -12664,7 +12664,7 @@ uae_u32 REGPARAM2 op_4a28_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); @@ -12679,9 +12679,9 @@ uae_u32 REGPARAM2 op_4a30_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); @@ -12697,7 +12697,7 @@ uae_u32 REGPARAM2 op_4a38_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); @@ -12713,7 +12713,7 @@ uae_u32 REGPARAM2 op_4a39_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); @@ -12731,7 +12731,7 @@ uae_u32 REGPARAM2 op_4a3a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); @@ -12748,9 +12748,9 @@ uae_u32 REGPARAM2 op_4a3b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jff_TST_b(src); live_flags(); @@ -12808,7 +12808,7 @@ uae_u32 REGPARAM2 op_4a50_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); @@ -12824,7 +12824,7 @@ uae_u32 REGPARAM2 op_4a58_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); @@ -12842,7 +12842,7 @@ uae_u32 REGPARAM2 op_4a60_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); @@ -12859,7 +12859,7 @@ uae_u32 REGPARAM2 op_4a68_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); @@ -12874,9 +12874,9 @@ uae_u32 REGPARAM2 op_4a70_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); @@ -12892,7 +12892,7 @@ uae_u32 REGPARAM2 op_4a78_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); @@ -12908,7 +12908,7 @@ uae_u32 REGPARAM2 op_4a79_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); @@ -12926,7 +12926,7 @@ uae_u32 REGPARAM2 op_4a7a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); @@ -12943,9 +12943,9 @@ uae_u32 REGPARAM2 op_4a7b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jff_TST_w(src); live_flags(); @@ -13003,7 +13003,7 @@ uae_u32 REGPARAM2 op_4a90_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); @@ -13019,7 +13019,7 @@ uae_u32 REGPARAM2 op_4a98_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); @@ -13037,7 +13037,7 @@ uae_u32 REGPARAM2 op_4aa0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); @@ -13054,7 +13054,7 @@ uae_u32 REGPARAM2 op_4aa8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); @@ -13069,9 +13069,9 @@ uae_u32 REGPARAM2 op_4ab0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); @@ -13087,7 +13087,7 @@ uae_u32 REGPARAM2 op_4ab8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); @@ -13103,7 +13103,7 @@ uae_u32 REGPARAM2 op_4ab9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); @@ -13121,7 +13121,7 @@ uae_u32 REGPARAM2 op_4aba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); @@ -13138,9 +13138,9 @@ uae_u32 REGPARAM2 op_4abb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jff_TST_l(src); live_flags(); @@ -13201,7 +13201,7 @@ uae_u32 REGPARAM2 op_4c10_0_comp_ff(uae_u32 opcode) int r2=(extra>>12)&7; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -13232,7 +13232,7 @@ uae_u32 REGPARAM2 op_4c18_0_comp_ff(uae_u32 opcode) int r2=(extra>>12)&7; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (extra & 0x0400) { int r3=(extra & 7); @@ -13265,7 +13265,7 @@ uae_u32 REGPARAM2 op_4c20_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -13297,7 +13297,7 @@ uae_u32 REGPARAM2 op_4c28_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -13327,9 +13327,9 @@ uae_u32 REGPARAM2 op_4c30_0_comp_ff(uae_u32 opcode) uae_u16 extra=comp_get_iword((m68k_pc_offset+=2)-2); int r2=(extra>>12)&7; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -13360,7 +13360,7 @@ uae_u32 REGPARAM2 op_4c38_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -13391,7 +13391,7 @@ uae_u32 REGPARAM2 op_4c39_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -13425,7 +13425,7 @@ uae_u32 REGPARAM2 op_4c3a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -13458,9 +13458,9 @@ uae_u32 REGPARAM2 op_4c3b_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -13559,7 +13559,7 @@ uae_u32 REGPARAM2 op_4c50_0_comp_ff(uae_u32 opcode) int r3=extra&7; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -13594,7 +13594,7 @@ uae_u32 REGPARAM2 op_4c58_0_comp_ff(uae_u32 opcode) int r3=extra&7; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); register_possible_exception(); if (extra & 0x0400) { @@ -13631,7 +13631,7 @@ uae_u32 REGPARAM2 op_4c60_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -13667,7 +13667,7 @@ uae_u32 REGPARAM2 op_4c68_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -13701,9 +13701,9 @@ uae_u32 REGPARAM2 op_4c70_0_comp_ff(uae_u32 opcode) int r2=(extra>>12)&7; int r3=extra&7; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -13738,7 +13738,7 @@ uae_u32 REGPARAM2 op_4c78_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -13773,7 +13773,7 @@ uae_u32 REGPARAM2 op_4c79_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -13811,7 +13811,7 @@ uae_u32 REGPARAM2 op_4c7a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -13848,9 +13848,9 @@ uae_u32 REGPARAM2 op_4c7b_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -13914,7 +13914,7 @@ uae_u32 REGPARAM2 op_4c90_0_comp_ff(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -13925,7 +13925,7 @@ uae_u32 REGPARAM2 op_4c90_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -13946,7 +13946,7 @@ uae_u32 REGPARAM2 op_4c98_0_comp_ff(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -13958,7 +13958,7 @@ uae_u32 REGPARAM2 op_4c98_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -13981,7 +13981,7 @@ uae_u32 REGPARAM2 op_4ca8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -13992,7 +13992,7 @@ uae_u32 REGPARAM2 op_4ca8_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -14012,9 +14012,9 @@ uae_u32 REGPARAM2 op_4cb0_0_comp_ff(uae_u32 opcode) int i; signed char offset=0; int srca=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -14025,7 +14025,7 @@ uae_u32 REGPARAM2 op_4cb0_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -14046,7 +14046,7 @@ uae_u32 REGPARAM2 op_4cb8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -14057,7 +14057,7 @@ uae_u32 REGPARAM2 op_4cb8_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -14078,7 +14078,7 @@ uae_u32 REGPARAM2 op_4cb9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -14089,7 +14089,7 @@ uae_u32 REGPARAM2 op_4cb9_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -14113,7 +14113,7 @@ uae_u32 REGPARAM2 op_4cba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -14124,7 +14124,7 @@ uae_u32 REGPARAM2 op_4cba_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -14147,9 +14147,9 @@ uae_u32 REGPARAM2 op_4cbb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -14160,7 +14160,7 @@ uae_u32 REGPARAM2 op_4cbb_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -14181,7 +14181,7 @@ uae_u32 REGPARAM2 op_4cd0_0_comp_ff(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -14192,7 +14192,7 @@ uae_u32 REGPARAM2 op_4cd0_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -14213,7 +14213,7 @@ uae_u32 REGPARAM2 op_4cd8_0_comp_ff(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -14225,7 +14225,7 @@ uae_u32 REGPARAM2 op_4cd8_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -14248,7 +14248,7 @@ uae_u32 REGPARAM2 op_4ce8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -14259,7 +14259,7 @@ uae_u32 REGPARAM2 op_4ce8_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -14279,9 +14279,9 @@ uae_u32 REGPARAM2 op_4cf0_0_comp_ff(uae_u32 opcode) int i; signed char offset=0; int srca=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -14292,7 +14292,7 @@ uae_u32 REGPARAM2 op_4cf0_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -14313,7 +14313,7 @@ uae_u32 REGPARAM2 op_4cf8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -14324,7 +14324,7 @@ uae_u32 REGPARAM2 op_4cf8_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -14345,7 +14345,7 @@ uae_u32 REGPARAM2 op_4cf9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -14356,7 +14356,7 @@ uae_u32 REGPARAM2 op_4cf9_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -14380,7 +14380,7 @@ uae_u32 REGPARAM2 op_4cfa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -14391,7 +14391,7 @@ uae_u32 REGPARAM2 op_4cfa_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -14414,9 +14414,9 @@ uae_u32 REGPARAM2 op_4cfb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -14427,7 +14427,7 @@ uae_u32 REGPARAM2 op_4cfb_0_comp_ff(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -14446,7 +14446,7 @@ uae_u32 REGPARAM2 op_4e50_0_comp_ff(uae_u32 opcode) int offs = scratchie++; mov_l_ri(offs,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); sub_l_ri(15,4); - writelong_clobber(15,src); + writelong_clobber(15,src,scratchie); mov_l_rr(src,15); arm_ADD_l(15,offs); if(srcreg+8!=src) @@ -14463,7 +14463,7 @@ uae_u32 REGPARAM2 op_4e58_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg+8; mov_l_rr(15,src); - readlong(15,src); + readlong(15,src,scratchie); arm_ADD_l_ri8(15,4); if(srcreg+8!=src) mov_l_rr(srcreg+8,src); @@ -14489,9 +14489,9 @@ uae_u32 REGPARAM2 op_4e74_0_comp_ff(uae_u32 opcode) mov_l_ri(offs,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); arm_ADD_l_ri8(offs,4); { int newad=scratchie++; - readlong(15,newad); + readlong(15,newad,scratchie); mov_l_mr((uintptr)®s.pc,newad); - get_n_addr_jmp(newad,PC_P); + get_n_addr_jmp(newad,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; arm_ADD_l(15,offs); @@ -14505,9 +14505,9 @@ uae_u32 REGPARAM2 op_4e75_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int newad=scratchie++; - readlong(15,newad); + readlong(15,newad,scratchie); mov_l_mr((uintptr)®s.pc,newad); - get_n_addr_jmp(newad,PC_P); + get_n_addr_jmp(newad,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; arm_ADD_l_ri8(15,4); @@ -14526,9 +14526,9 @@ uae_u32 REGPARAM2 op_4e90_0_comp_ff(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14547,9 +14547,9 @@ uae_u32 REGPARAM2 op_4ea8_0_comp_ff(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14563,14 +14563,14 @@ uae_u32 REGPARAM2 op_4eb0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); { uae_u32 retadd=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14588,9 +14588,9 @@ uae_u32 REGPARAM2 op_4eb8_0_comp_ff(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14608,9 +14608,9 @@ uae_u32 REGPARAM2 op_4eb9_0_comp_ff(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14630,9 +14630,9 @@ uae_u32 REGPARAM2 op_4eba_0_comp_ff(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14648,14 +14648,14 @@ uae_u32 REGPARAM2 op_4ebb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); { uae_u32 retadd=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14670,7 +14670,7 @@ uae_u32 REGPARAM2 op_4ed0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14686,7 +14686,7 @@ uae_u32 REGPARAM2 op_4ee8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14700,9 +14700,9 @@ uae_u32 REGPARAM2 op_4ef0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14717,7 +14717,7 @@ uae_u32 REGPARAM2 op_4ef8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14732,7 +14732,7 @@ uae_u32 REGPARAM2 op_4ef9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14749,7 +14749,7 @@ uae_u32 REGPARAM2 op_4efa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14765,9 +14765,9 @@ uae_u32 REGPARAM2 op_4efb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -14803,12 +14803,12 @@ uae_u32 REGPARAM2 op_5010_0_comp_ff(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -14824,12 +14824,12 @@ uae_u32 REGPARAM2 op_5018_0_comp_ff(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -14847,12 +14847,12 @@ uae_u32 REGPARAM2 op_5020_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -14869,12 +14869,12 @@ uae_u32 REGPARAM2 op_5028_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -14889,14 +14889,14 @@ uae_u32 REGPARAM2 op_5030_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,srcreg); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -14912,12 +14912,12 @@ uae_u32 REGPARAM2 op_5038_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -14933,12 +14933,12 @@ uae_u32 REGPARAM2 op_5039_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -14987,12 +14987,12 @@ uae_u32 REGPARAM2 op_5050_0_comp_ff(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15008,12 +15008,12 @@ uae_u32 REGPARAM2 op_5058_0_comp_ff(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -15031,12 +15031,12 @@ uae_u32 REGPARAM2 op_5060_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15053,12 +15053,12 @@ uae_u32 REGPARAM2 op_5068_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15073,14 +15073,14 @@ uae_u32 REGPARAM2 op_5070_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,srcreg); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15096,12 +15096,12 @@ uae_u32 REGPARAM2 op_5078_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15117,12 +15117,12 @@ uae_u32 REGPARAM2 op_5079_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15171,12 +15171,12 @@ uae_u32 REGPARAM2 op_5090_0_comp_ff(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15192,12 +15192,12 @@ uae_u32 REGPARAM2 op_5098_0_comp_ff(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -15215,12 +15215,12 @@ uae_u32 REGPARAM2 op_50a0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15240,12 +15240,12 @@ uae_u32 REGPARAM2 op_50a8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15260,14 +15260,14 @@ uae_u32 REGPARAM2 op_50b0_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,srcreg); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15283,12 +15283,12 @@ uae_u32 REGPARAM2 op_50b8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15304,12 +15304,12 @@ uae_u32 REGPARAM2 op_50b9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15353,7 +15353,7 @@ uae_u32 REGPARAM2 op_50d0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15367,7 +15367,7 @@ uae_u32 REGPARAM2 op_50d8_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -15383,7 +15383,7 @@ uae_u32 REGPARAM2 op_50e0_0_comp_ff(uae_u32 opcode) arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15398,7 +15398,7 @@ uae_u32 REGPARAM2 op_50e8_0_comp_ff(uae_u32 opcode) lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15410,10 +15410,10 @@ uae_u32 REGPARAM2 op_50f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15427,7 +15427,7 @@ uae_u32 REGPARAM2 op_50f8_0_comp_ff(uae_u32 opcode) mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15441,7 +15441,7 @@ uae_u32 REGPARAM2 op_50f9_0_comp_ff(uae_u32 opcode) mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15475,12 +15475,12 @@ uae_u32 REGPARAM2 op_5110_0_comp_ff(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15496,12 +15496,12 @@ uae_u32 REGPARAM2 op_5118_0_comp_ff(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -15519,12 +15519,12 @@ uae_u32 REGPARAM2 op_5120_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15541,12 +15541,12 @@ uae_u32 REGPARAM2 op_5128_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15561,14 +15561,14 @@ uae_u32 REGPARAM2 op_5130_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,srcreg); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15584,12 +15584,12 @@ uae_u32 REGPARAM2 op_5138_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15605,12 +15605,12 @@ uae_u32 REGPARAM2 op_5139_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15659,12 +15659,12 @@ uae_u32 REGPARAM2 op_5150_0_comp_ff(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15680,12 +15680,12 @@ uae_u32 REGPARAM2 op_5158_0_comp_ff(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -15703,12 +15703,12 @@ uae_u32 REGPARAM2 op_5160_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15725,12 +15725,12 @@ uae_u32 REGPARAM2 op_5168_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15745,14 +15745,14 @@ uae_u32 REGPARAM2 op_5170_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,srcreg); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15768,12 +15768,12 @@ uae_u32 REGPARAM2 op_5178_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15789,12 +15789,12 @@ uae_u32 REGPARAM2 op_5179_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15843,12 +15843,12 @@ uae_u32 REGPARAM2 op_5190_0_comp_ff(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15864,12 +15864,12 @@ uae_u32 REGPARAM2 op_5198_0_comp_ff(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -15887,12 +15887,12 @@ uae_u32 REGPARAM2 op_51a0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15909,12 +15909,12 @@ uae_u32 REGPARAM2 op_51a8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15929,14 +15929,14 @@ uae_u32 REGPARAM2 op_51b0_0_comp_ff(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,srcreg); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15952,12 +15952,12 @@ uae_u32 REGPARAM2 op_51b8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -15973,12 +15973,12 @@ uae_u32 REGPARAM2 op_51b9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16027,7 +16027,7 @@ uae_u32 REGPARAM2 op_51d0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16041,7 +16041,7 @@ uae_u32 REGPARAM2 op_51d8_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -16057,7 +16057,7 @@ uae_u32 REGPARAM2 op_51e0_0_comp_ff(uae_u32 opcode) arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16072,7 +16072,7 @@ uae_u32 REGPARAM2 op_51e8_0_comp_ff(uae_u32 opcode) lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16084,10 +16084,10 @@ uae_u32 REGPARAM2 op_51f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16101,7 +16101,7 @@ uae_u32 REGPARAM2 op_51f8_0_comp_ff(uae_u32 opcode) mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16115,7 +16115,7 @@ uae_u32 REGPARAM2 op_51f9_0_comp_ff(uae_u32 opcode) mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16166,7 +16166,7 @@ uae_u32 REGPARAM2 op_52d0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16181,7 +16181,7 @@ uae_u32 REGPARAM2 op_52d8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -16198,7 +16198,7 @@ uae_u32 REGPARAM2 op_52e0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16214,7 +16214,7 @@ uae_u32 REGPARAM2 op_52e8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16226,11 +16226,11 @@ uae_u32 REGPARAM2 op_52f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16245,7 +16245,7 @@ uae_u32 REGPARAM2 op_52f8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16260,7 +16260,7 @@ uae_u32 REGPARAM2 op_52f9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16311,7 +16311,7 @@ uae_u32 REGPARAM2 op_53d0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16326,7 +16326,7 @@ uae_u32 REGPARAM2 op_53d8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -16343,7 +16343,7 @@ uae_u32 REGPARAM2 op_53e0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16359,7 +16359,7 @@ uae_u32 REGPARAM2 op_53e8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16371,11 +16371,11 @@ uae_u32 REGPARAM2 op_53f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16390,7 +16390,7 @@ uae_u32 REGPARAM2 op_53f8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16405,7 +16405,7 @@ uae_u32 REGPARAM2 op_53f9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16456,7 +16456,7 @@ uae_u32 REGPARAM2 op_54d0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16471,7 +16471,7 @@ uae_u32 REGPARAM2 op_54d8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -16488,7 +16488,7 @@ uae_u32 REGPARAM2 op_54e0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16504,7 +16504,7 @@ uae_u32 REGPARAM2 op_54e8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16516,11 +16516,11 @@ uae_u32 REGPARAM2 op_54f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16535,7 +16535,7 @@ uae_u32 REGPARAM2 op_54f8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16550,7 +16550,7 @@ uae_u32 REGPARAM2 op_54f9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16601,7 +16601,7 @@ uae_u32 REGPARAM2 op_55d0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16616,7 +16616,7 @@ uae_u32 REGPARAM2 op_55d8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -16633,7 +16633,7 @@ uae_u32 REGPARAM2 op_55e0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16649,7 +16649,7 @@ uae_u32 REGPARAM2 op_55e8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16661,11 +16661,11 @@ uae_u32 REGPARAM2 op_55f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16680,7 +16680,7 @@ uae_u32 REGPARAM2 op_55f8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16695,7 +16695,7 @@ uae_u32 REGPARAM2 op_55f9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16746,7 +16746,7 @@ uae_u32 REGPARAM2 op_56d0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16761,7 +16761,7 @@ uae_u32 REGPARAM2 op_56d8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -16778,7 +16778,7 @@ uae_u32 REGPARAM2 op_56e0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16794,7 +16794,7 @@ uae_u32 REGPARAM2 op_56e8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16806,11 +16806,11 @@ uae_u32 REGPARAM2 op_56f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16825,7 +16825,7 @@ uae_u32 REGPARAM2 op_56f8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16840,7 +16840,7 @@ uae_u32 REGPARAM2 op_56f9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16891,7 +16891,7 @@ uae_u32 REGPARAM2 op_57d0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16906,7 +16906,7 @@ uae_u32 REGPARAM2 op_57d8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -16923,7 +16923,7 @@ uae_u32 REGPARAM2 op_57e0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16939,7 +16939,7 @@ uae_u32 REGPARAM2 op_57e8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16951,11 +16951,11 @@ uae_u32 REGPARAM2 op_57f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16970,7 +16970,7 @@ uae_u32 REGPARAM2 op_57f8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -16985,7 +16985,7 @@ uae_u32 REGPARAM2 op_57f9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17036,7 +17036,7 @@ uae_u32 REGPARAM2 op_58d0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17051,7 +17051,7 @@ uae_u32 REGPARAM2 op_58d8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -17068,7 +17068,7 @@ uae_u32 REGPARAM2 op_58e0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17084,7 +17084,7 @@ uae_u32 REGPARAM2 op_58e8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17096,11 +17096,11 @@ uae_u32 REGPARAM2 op_58f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17115,7 +17115,7 @@ uae_u32 REGPARAM2 op_58f8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17130,7 +17130,7 @@ uae_u32 REGPARAM2 op_58f9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17181,7 +17181,7 @@ uae_u32 REGPARAM2 op_59d0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17196,7 +17196,7 @@ uae_u32 REGPARAM2 op_59d8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -17213,7 +17213,7 @@ uae_u32 REGPARAM2 op_59e0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17229,7 +17229,7 @@ uae_u32 REGPARAM2 op_59e8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17241,11 +17241,11 @@ uae_u32 REGPARAM2 op_59f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17260,7 +17260,7 @@ uae_u32 REGPARAM2 op_59f8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17275,7 +17275,7 @@ uae_u32 REGPARAM2 op_59f9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17326,7 +17326,7 @@ uae_u32 REGPARAM2 op_5ad0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17341,7 +17341,7 @@ uae_u32 REGPARAM2 op_5ad8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -17358,7 +17358,7 @@ uae_u32 REGPARAM2 op_5ae0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17374,7 +17374,7 @@ uae_u32 REGPARAM2 op_5ae8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17386,11 +17386,11 @@ uae_u32 REGPARAM2 op_5af0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17405,7 +17405,7 @@ uae_u32 REGPARAM2 op_5af8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17420,7 +17420,7 @@ uae_u32 REGPARAM2 op_5af9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17471,7 +17471,7 @@ uae_u32 REGPARAM2 op_5bd0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17486,7 +17486,7 @@ uae_u32 REGPARAM2 op_5bd8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -17503,7 +17503,7 @@ uae_u32 REGPARAM2 op_5be0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17519,7 +17519,7 @@ uae_u32 REGPARAM2 op_5be8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17531,11 +17531,11 @@ uae_u32 REGPARAM2 op_5bf0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17550,7 +17550,7 @@ uae_u32 REGPARAM2 op_5bf8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17565,7 +17565,7 @@ uae_u32 REGPARAM2 op_5bf9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17616,7 +17616,7 @@ uae_u32 REGPARAM2 op_5cd0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17631,7 +17631,7 @@ uae_u32 REGPARAM2 op_5cd8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -17648,7 +17648,7 @@ uae_u32 REGPARAM2 op_5ce0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17664,7 +17664,7 @@ uae_u32 REGPARAM2 op_5ce8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17676,11 +17676,11 @@ uae_u32 REGPARAM2 op_5cf0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17695,7 +17695,7 @@ uae_u32 REGPARAM2 op_5cf8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17710,7 +17710,7 @@ uae_u32 REGPARAM2 op_5cf9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17761,7 +17761,7 @@ uae_u32 REGPARAM2 op_5dd0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17776,7 +17776,7 @@ uae_u32 REGPARAM2 op_5dd8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -17793,7 +17793,7 @@ uae_u32 REGPARAM2 op_5de0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17809,7 +17809,7 @@ uae_u32 REGPARAM2 op_5de8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17821,11 +17821,11 @@ uae_u32 REGPARAM2 op_5df0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17840,7 +17840,7 @@ uae_u32 REGPARAM2 op_5df8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17855,7 +17855,7 @@ uae_u32 REGPARAM2 op_5df9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17906,7 +17906,7 @@ uae_u32 REGPARAM2 op_5ed0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17921,7 +17921,7 @@ uae_u32 REGPARAM2 op_5ed8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -17938,7 +17938,7 @@ uae_u32 REGPARAM2 op_5ee0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17954,7 +17954,7 @@ uae_u32 REGPARAM2 op_5ee8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17966,11 +17966,11 @@ uae_u32 REGPARAM2 op_5ef0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -17985,7 +17985,7 @@ uae_u32 REGPARAM2 op_5ef8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -18000,7 +18000,7 @@ uae_u32 REGPARAM2 op_5ef9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -18051,7 +18051,7 @@ uae_u32 REGPARAM2 op_5fd0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -18066,7 +18066,7 @@ uae_u32 REGPARAM2 op_5fd8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -18083,7 +18083,7 @@ uae_u32 REGPARAM2 op_5fe0_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -18099,7 +18099,7 @@ uae_u32 REGPARAM2 op_5fe8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -18111,11 +18111,11 @@ uae_u32 REGPARAM2 op_5ff0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -18130,7 +18130,7 @@ uae_u32 REGPARAM2 op_5ff8_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -18145,7 +18145,7 @@ uae_u32 REGPARAM2 op_5ff9_0_comp_ff(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -18222,7 +18222,7 @@ uae_u32 REGPARAM2 op_6100_0_comp_ff(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); arm_ADD_l_ri(src,m68k_pc_offset_thisinst+2); m68k_pc_offset=0; arm_ADD_l(PC_P,src); @@ -18243,7 +18243,7 @@ uae_u32 REGPARAM2 op_6101_0_comp_ff(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); arm_ADD_l_ri(src,m68k_pc_offset_thisinst+2); m68k_pc_offset=0; arm_ADD_l(PC_P,src); @@ -18263,7 +18263,7 @@ uae_u32 REGPARAM2 op_61ff_0_comp_ff(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); arm_ADD_l_ri(src,m68k_pc_offset_thisinst+2); m68k_pc_offset=0; arm_ADD_l(PC_P,src); @@ -19121,7 +19121,7 @@ uae_u32 REGPARAM2 op_8010_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_b(dst,src); @@ -19139,7 +19139,7 @@ uae_u32 REGPARAM2 op_8018_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dst=dstreg; dont_care_flags(); @@ -19159,7 +19159,7 @@ uae_u32 REGPARAM2 op_8020_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_b(dst,src); @@ -19178,7 +19178,7 @@ uae_u32 REGPARAM2 op_8028_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_b(dst,src); @@ -19195,9 +19195,9 @@ uae_u32 REGPARAM2 op_8030_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_b(dst,src); @@ -19215,7 +19215,7 @@ uae_u32 REGPARAM2 op_8038_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_b(dst,src); @@ -19233,7 +19233,7 @@ uae_u32 REGPARAM2 op_8039_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_b(dst,src); @@ -19253,7 +19253,7 @@ uae_u32 REGPARAM2 op_803a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_b(dst,src); @@ -19272,9 +19272,9 @@ uae_u32 REGPARAM2 op_803b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_b(dst,src); @@ -19324,7 +19324,7 @@ uae_u32 REGPARAM2 op_8050_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_w(dst,src); @@ -19342,7 +19342,7 @@ uae_u32 REGPARAM2 op_8058_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; dont_care_flags(); @@ -19362,7 +19362,7 @@ uae_u32 REGPARAM2 op_8060_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_w(dst,src); @@ -19381,7 +19381,7 @@ uae_u32 REGPARAM2 op_8068_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_w(dst,src); @@ -19398,9 +19398,9 @@ uae_u32 REGPARAM2 op_8070_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_w(dst,src); @@ -19418,7 +19418,7 @@ uae_u32 REGPARAM2 op_8078_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_w(dst,src); @@ -19436,7 +19436,7 @@ uae_u32 REGPARAM2 op_8079_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_w(dst,src); @@ -19456,7 +19456,7 @@ uae_u32 REGPARAM2 op_807a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_w(dst,src); @@ -19475,9 +19475,9 @@ uae_u32 REGPARAM2 op_807b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_w(dst,src); @@ -19527,7 +19527,7 @@ uae_u32 REGPARAM2 op_8090_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_l(dst,src); @@ -19545,7 +19545,7 @@ uae_u32 REGPARAM2 op_8098_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg; dont_care_flags(); @@ -19565,7 +19565,7 @@ uae_u32 REGPARAM2 op_80a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_l(dst,src); @@ -19584,7 +19584,7 @@ uae_u32 REGPARAM2 op_80a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_l(dst,src); @@ -19601,9 +19601,9 @@ uae_u32 REGPARAM2 op_80b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_l(dst,src); @@ -19621,7 +19621,7 @@ uae_u32 REGPARAM2 op_80b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_l(dst,src); @@ -19639,7 +19639,7 @@ uae_u32 REGPARAM2 op_80b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_l(dst,src); @@ -19659,7 +19659,7 @@ uae_u32 REGPARAM2 op_80ba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_l(dst,src); @@ -19678,9 +19678,9 @@ uae_u32 REGPARAM2 op_80bb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_OR_l(dst,src); @@ -19741,7 +19741,7 @@ uae_u32 REGPARAM2 op_80d0_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVU(dst,src); @@ -19765,7 +19765,7 @@ uae_u32 REGPARAM2 op_80d8_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; register_possible_exception(); @@ -19791,7 +19791,7 @@ uae_u32 REGPARAM2 op_80e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVU(dst,src); @@ -19816,7 +19816,7 @@ uae_u32 REGPARAM2 op_80e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVU(dst,src); @@ -19839,9 +19839,9 @@ uae_u32 REGPARAM2 op_80f0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVU(dst,src); @@ -19865,7 +19865,7 @@ uae_u32 REGPARAM2 op_80f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVU(dst,src); @@ -19889,7 +19889,7 @@ uae_u32 REGPARAM2 op_80f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVU(dst,src); @@ -19915,7 +19915,7 @@ uae_u32 REGPARAM2 op_80fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVU(dst,src); @@ -19940,9 +19940,9 @@ uae_u32 REGPARAM2 op_80fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVU(dst,src); @@ -19984,11 +19984,11 @@ uae_u32 REGPARAM2 op_8110_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20003,11 +20003,11 @@ uae_u32 REGPARAM2 op_8118_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -20024,11 +20024,11 @@ uae_u32 REGPARAM2 op_8120_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20044,11 +20044,11 @@ uae_u32 REGPARAM2 op_8128_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20062,13 +20062,13 @@ uae_u32 REGPARAM2 op_8130_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20083,11 +20083,11 @@ uae_u32 REGPARAM2 op_8138_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20102,11 +20102,11 @@ uae_u32 REGPARAM2 op_8139_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_OR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20121,11 +20121,11 @@ uae_u32 REGPARAM2 op_8150_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20140,11 +20140,11 @@ uae_u32 REGPARAM2 op_8158_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -20161,11 +20161,11 @@ uae_u32 REGPARAM2 op_8160_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20181,11 +20181,11 @@ uae_u32 REGPARAM2 op_8168_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20199,13 +20199,13 @@ uae_u32 REGPARAM2 op_8170_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20220,11 +20220,11 @@ uae_u32 REGPARAM2 op_8178_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20239,11 +20239,11 @@ uae_u32 REGPARAM2 op_8179_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_OR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20258,11 +20258,11 @@ uae_u32 REGPARAM2 op_8190_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20277,11 +20277,11 @@ uae_u32 REGPARAM2 op_8198_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -20298,11 +20298,11 @@ uae_u32 REGPARAM2 op_81a0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20318,11 +20318,11 @@ uae_u32 REGPARAM2 op_81a8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20336,13 +20336,13 @@ uae_u32 REGPARAM2 op_81b0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20357,11 +20357,11 @@ uae_u32 REGPARAM2 op_81b8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20376,11 +20376,11 @@ uae_u32 REGPARAM2 op_81b9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_OR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -20421,7 +20421,7 @@ uae_u32 REGPARAM2 op_81d0_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVS(dst,src); @@ -20445,7 +20445,7 @@ uae_u32 REGPARAM2 op_81d8_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; register_possible_exception(); @@ -20471,7 +20471,7 @@ uae_u32 REGPARAM2 op_81e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVS(dst,src); @@ -20496,7 +20496,7 @@ uae_u32 REGPARAM2 op_81e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVS(dst,src); @@ -20519,9 +20519,9 @@ uae_u32 REGPARAM2 op_81f0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVS(dst,src); @@ -20545,7 +20545,7 @@ uae_u32 REGPARAM2 op_81f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVS(dst,src); @@ -20569,7 +20569,7 @@ uae_u32 REGPARAM2 op_81f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVS(dst,src); @@ -20595,7 +20595,7 @@ uae_u32 REGPARAM2 op_81fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVS(dst,src); @@ -20620,9 +20620,9 @@ uae_u32 REGPARAM2 op_81fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jff_DIVS(dst,src); @@ -20680,7 +20680,7 @@ uae_u32 REGPARAM2 op_9010_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_b(dst,src); @@ -20699,7 +20699,7 @@ uae_u32 REGPARAM2 op_9018_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dst=dstreg; dont_care_flags(); @@ -20720,7 +20720,7 @@ uae_u32 REGPARAM2 op_9020_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_b(dst,src); @@ -20740,7 +20740,7 @@ uae_u32 REGPARAM2 op_9028_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_b(dst,src); @@ -20758,9 +20758,9 @@ uae_u32 REGPARAM2 op_9030_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_b(dst,src); @@ -20779,7 +20779,7 @@ uae_u32 REGPARAM2 op_9038_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_b(dst,src); @@ -20798,7 +20798,7 @@ uae_u32 REGPARAM2 op_9039_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_b(dst,src); @@ -20819,7 +20819,7 @@ uae_u32 REGPARAM2 op_903a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_b(dst,src); @@ -20839,9 +20839,9 @@ uae_u32 REGPARAM2 op_903b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_b(dst,src); @@ -20911,7 +20911,7 @@ uae_u32 REGPARAM2 op_9050_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_w(dst,src); @@ -20930,7 +20930,7 @@ uae_u32 REGPARAM2 op_9058_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; dont_care_flags(); @@ -20951,7 +20951,7 @@ uae_u32 REGPARAM2 op_9060_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_w(dst,src); @@ -20971,7 +20971,7 @@ uae_u32 REGPARAM2 op_9068_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_w(dst,src); @@ -20989,9 +20989,9 @@ uae_u32 REGPARAM2 op_9070_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_w(dst,src); @@ -21010,7 +21010,7 @@ uae_u32 REGPARAM2 op_9078_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_w(dst,src); @@ -21029,7 +21029,7 @@ uae_u32 REGPARAM2 op_9079_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_w(dst,src); @@ -21050,7 +21050,7 @@ uae_u32 REGPARAM2 op_907a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_w(dst,src); @@ -21070,9 +21070,9 @@ uae_u32 REGPARAM2 op_907b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_w(dst,src); @@ -21142,7 +21142,7 @@ uae_u32 REGPARAM2 op_9090_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_l(dst,src); @@ -21161,7 +21161,7 @@ uae_u32 REGPARAM2 op_9098_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg; dont_care_flags(); @@ -21182,7 +21182,7 @@ uae_u32 REGPARAM2 op_90a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_l(dst,src); @@ -21202,7 +21202,7 @@ uae_u32 REGPARAM2 op_90a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_l(dst,src); @@ -21220,9 +21220,9 @@ uae_u32 REGPARAM2 op_90b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_l(dst,src); @@ -21241,7 +21241,7 @@ uae_u32 REGPARAM2 op_90b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_l(dst,src); @@ -21260,7 +21260,7 @@ uae_u32 REGPARAM2 op_90b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_l(dst,src); @@ -21281,7 +21281,7 @@ uae_u32 REGPARAM2 op_90ba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_l(dst,src); @@ -21301,9 +21301,9 @@ uae_u32 REGPARAM2 op_90bb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_SUB_l(dst,src); @@ -21367,7 +21367,7 @@ uae_u32 REGPARAM2 op_90d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -21383,7 +21383,7 @@ uae_u32 REGPARAM2 op_90d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg+8; jnf_SUBA_w(dst, src); @@ -21401,7 +21401,7 @@ uae_u32 REGPARAM2 op_90e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -21418,7 +21418,7 @@ uae_u32 REGPARAM2 op_90e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -21433,9 +21433,9 @@ uae_u32 REGPARAM2 op_90f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -21451,7 +21451,7 @@ uae_u32 REGPARAM2 op_90f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -21467,7 +21467,7 @@ uae_u32 REGPARAM2 op_90f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -21485,7 +21485,7 @@ uae_u32 REGPARAM2 op_90fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -21502,9 +21502,9 @@ uae_u32 REGPARAM2 op_90fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -21553,17 +21553,17 @@ uae_u32 REGPARAM2 op_9108_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); make_flags_live(); jff_SUBX_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21578,12 +21578,12 @@ uae_u32 REGPARAM2 op_9110_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21598,12 +21598,12 @@ uae_u32 REGPARAM2 op_9118_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -21620,12 +21620,12 @@ uae_u32 REGPARAM2 op_9120_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21641,12 +21641,12 @@ uae_u32 REGPARAM2 op_9128_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21660,14 +21660,14 @@ uae_u32 REGPARAM2 op_9130_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21682,12 +21682,12 @@ uae_u32 REGPARAM2 op_9138_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21702,12 +21702,12 @@ uae_u32 REGPARAM2 op_9139_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_SUB_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21740,17 +21740,17 @@ uae_u32 REGPARAM2 op_9148_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); make_flags_live(); jff_SUBX_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21765,12 +21765,12 @@ uae_u32 REGPARAM2 op_9150_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21785,12 +21785,12 @@ uae_u32 REGPARAM2 op_9158_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -21807,12 +21807,12 @@ uae_u32 REGPARAM2 op_9160_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21828,12 +21828,12 @@ uae_u32 REGPARAM2 op_9168_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21847,14 +21847,14 @@ uae_u32 REGPARAM2 op_9170_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21869,12 +21869,12 @@ uae_u32 REGPARAM2 op_9178_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21889,12 +21889,12 @@ uae_u32 REGPARAM2 op_9179_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_SUB_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21927,17 +21927,17 @@ uae_u32 REGPARAM2 op_9188_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); make_flags_live(); jff_SUBX_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21952,12 +21952,12 @@ uae_u32 REGPARAM2 op_9190_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -21972,12 +21972,12 @@ uae_u32 REGPARAM2 op_9198_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -21994,12 +21994,12 @@ uae_u32 REGPARAM2 op_91a0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -22015,12 +22015,12 @@ uae_u32 REGPARAM2 op_91a8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -22034,14 +22034,14 @@ uae_u32 REGPARAM2 op_91b0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -22056,12 +22056,12 @@ uae_u32 REGPARAM2 op_91b8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -22076,12 +22076,12 @@ uae_u32 REGPARAM2 op_91b9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_SUB_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -22123,7 +22123,7 @@ uae_u32 REGPARAM2 op_91d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -22139,7 +22139,7 @@ uae_u32 REGPARAM2 op_91d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg+8; jnf_SUBA_l(dst, src); @@ -22157,7 +22157,7 @@ uae_u32 REGPARAM2 op_91e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -22174,7 +22174,7 @@ uae_u32 REGPARAM2 op_91e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -22189,9 +22189,9 @@ uae_u32 REGPARAM2 op_91f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -22207,7 +22207,7 @@ uae_u32 REGPARAM2 op_91f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -22223,7 +22223,7 @@ uae_u32 REGPARAM2 op_91f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -22241,7 +22241,7 @@ uae_u32 REGPARAM2 op_91fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -22258,9 +22258,9 @@ uae_u32 REGPARAM2 op_91fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -22307,7 +22307,7 @@ uae_u32 REGPARAM2 op_b010_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_b(dst,src); @@ -22326,7 +22326,7 @@ uae_u32 REGPARAM2 op_b018_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dst=dstreg; dont_care_flags(); @@ -22347,7 +22347,7 @@ uae_u32 REGPARAM2 op_b020_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_b(dst,src); @@ -22367,7 +22367,7 @@ uae_u32 REGPARAM2 op_b028_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_b(dst,src); @@ -22385,9 +22385,9 @@ uae_u32 REGPARAM2 op_b030_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_b(dst,src); @@ -22406,7 +22406,7 @@ uae_u32 REGPARAM2 op_b038_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_b(dst,src); @@ -22425,7 +22425,7 @@ uae_u32 REGPARAM2 op_b039_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_b(dst,src); @@ -22446,7 +22446,7 @@ uae_u32 REGPARAM2 op_b03a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_b(dst,src); @@ -22466,9 +22466,9 @@ uae_u32 REGPARAM2 op_b03b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_b(dst,src); @@ -22538,7 +22538,7 @@ uae_u32 REGPARAM2 op_b050_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_w(dst,src); @@ -22557,7 +22557,7 @@ uae_u32 REGPARAM2 op_b058_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; dont_care_flags(); @@ -22578,7 +22578,7 @@ uae_u32 REGPARAM2 op_b060_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_w(dst,src); @@ -22598,7 +22598,7 @@ uae_u32 REGPARAM2 op_b068_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_w(dst,src); @@ -22616,9 +22616,9 @@ uae_u32 REGPARAM2 op_b070_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_w(dst,src); @@ -22637,7 +22637,7 @@ uae_u32 REGPARAM2 op_b078_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_w(dst,src); @@ -22656,7 +22656,7 @@ uae_u32 REGPARAM2 op_b079_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_w(dst,src); @@ -22677,7 +22677,7 @@ uae_u32 REGPARAM2 op_b07a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_w(dst,src); @@ -22697,9 +22697,9 @@ uae_u32 REGPARAM2 op_b07b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_w(dst,src); @@ -22769,7 +22769,7 @@ uae_u32 REGPARAM2 op_b090_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_l(dst,src); @@ -22788,7 +22788,7 @@ uae_u32 REGPARAM2 op_b098_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg; dont_care_flags(); @@ -22809,7 +22809,7 @@ uae_u32 REGPARAM2 op_b0a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_l(dst,src); @@ -22832,7 +22832,7 @@ uae_u32 REGPARAM2 op_b0a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_l(dst,src); @@ -22850,9 +22850,9 @@ uae_u32 REGPARAM2 op_b0b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_l(dst,src); @@ -22871,7 +22871,7 @@ uae_u32 REGPARAM2 op_b0b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_l(dst,src); @@ -22890,7 +22890,7 @@ uae_u32 REGPARAM2 op_b0b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_l(dst,src); @@ -22911,7 +22911,7 @@ uae_u32 REGPARAM2 op_b0ba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_l(dst,src); @@ -22931,9 +22931,9 @@ uae_u32 REGPARAM2 op_b0bb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_CMP_l(dst,src); @@ -23003,7 +23003,7 @@ uae_u32 REGPARAM2 op_b0d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_w(dst,src); @@ -23022,7 +23022,7 @@ uae_u32 REGPARAM2 op_b0d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg+8; dont_care_flags(); @@ -23043,7 +23043,7 @@ uae_u32 REGPARAM2 op_b0e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_w(dst,src); @@ -23063,7 +23063,7 @@ uae_u32 REGPARAM2 op_b0e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_w(dst,src); @@ -23081,9 +23081,9 @@ uae_u32 REGPARAM2 op_b0f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_w(dst,src); @@ -23102,7 +23102,7 @@ uae_u32 REGPARAM2 op_b0f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_w(dst,src); @@ -23121,7 +23121,7 @@ uae_u32 REGPARAM2 op_b0f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_w(dst,src); @@ -23142,7 +23142,7 @@ uae_u32 REGPARAM2 op_b0fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_w(dst,src); @@ -23162,9 +23162,9 @@ uae_u32 REGPARAM2 op_b0fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_w(dst,src); @@ -23216,11 +23216,11 @@ uae_u32 REGPARAM2 op_b108_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_CMP_b(dst,src); live_flags(); @@ -23240,11 +23240,11 @@ uae_u32 REGPARAM2 op_b110_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23259,11 +23259,11 @@ uae_u32 REGPARAM2 op_b118_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -23280,11 +23280,11 @@ uae_u32 REGPARAM2 op_b120_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23300,11 +23300,11 @@ uae_u32 REGPARAM2 op_b128_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23318,13 +23318,13 @@ uae_u32 REGPARAM2 op_b130_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23339,11 +23339,11 @@ uae_u32 REGPARAM2 op_b138_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23358,11 +23358,11 @@ uae_u32 REGPARAM2 op_b139_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_EOR_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23392,11 +23392,11 @@ uae_u32 REGPARAM2 op_b148_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_CMP_w(dst,src); live_flags(); @@ -23416,11 +23416,11 @@ uae_u32 REGPARAM2 op_b150_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23435,11 +23435,11 @@ uae_u32 REGPARAM2 op_b158_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -23456,11 +23456,11 @@ uae_u32 REGPARAM2 op_b160_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23476,11 +23476,11 @@ uae_u32 REGPARAM2 op_b168_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23494,13 +23494,13 @@ uae_u32 REGPARAM2 op_b170_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23515,11 +23515,11 @@ uae_u32 REGPARAM2 op_b178_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23534,11 +23534,11 @@ uae_u32 REGPARAM2 op_b179_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_EOR_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23568,11 +23568,11 @@ uae_u32 REGPARAM2 op_b188_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_CMP_l(dst,src); live_flags(); @@ -23592,11 +23592,11 @@ uae_u32 REGPARAM2 op_b190_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23611,11 +23611,11 @@ uae_u32 REGPARAM2 op_b198_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -23632,11 +23632,11 @@ uae_u32 REGPARAM2 op_b1a0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23652,11 +23652,11 @@ uae_u32 REGPARAM2 op_b1a8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23670,13 +23670,13 @@ uae_u32 REGPARAM2 op_b1b0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23691,11 +23691,11 @@ uae_u32 REGPARAM2 op_b1b8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23710,11 +23710,11 @@ uae_u32 REGPARAM2 op_b1b9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_EOR_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -23762,7 +23762,7 @@ uae_u32 REGPARAM2 op_b1d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_l(dst,src); @@ -23781,7 +23781,7 @@ uae_u32 REGPARAM2 op_b1d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg+8; dont_care_flags(); @@ -23802,7 +23802,7 @@ uae_u32 REGPARAM2 op_b1e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_l(dst,src); @@ -23822,7 +23822,7 @@ uae_u32 REGPARAM2 op_b1e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_l(dst,src); @@ -23840,9 +23840,9 @@ uae_u32 REGPARAM2 op_b1f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_l(dst,src); @@ -23861,7 +23861,7 @@ uae_u32 REGPARAM2 op_b1f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_l(dst,src); @@ -23880,7 +23880,7 @@ uae_u32 REGPARAM2 op_b1f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_l(dst,src); @@ -23901,7 +23901,7 @@ uae_u32 REGPARAM2 op_b1fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_l(dst,src); @@ -23921,9 +23921,9 @@ uae_u32 REGPARAM2 op_b1fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); jff_CMPA_l(dst,src); @@ -23975,7 +23975,7 @@ uae_u32 REGPARAM2 op_c010_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_b(dst,src); @@ -23993,7 +23993,7 @@ uae_u32 REGPARAM2 op_c018_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dst=dstreg; dont_care_flags(); @@ -24013,7 +24013,7 @@ uae_u32 REGPARAM2 op_c020_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_b(dst,src); @@ -24032,7 +24032,7 @@ uae_u32 REGPARAM2 op_c028_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_b(dst,src); @@ -24049,9 +24049,9 @@ uae_u32 REGPARAM2 op_c030_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_b(dst,src); @@ -24069,7 +24069,7 @@ uae_u32 REGPARAM2 op_c038_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_b(dst,src); @@ -24087,7 +24087,7 @@ uae_u32 REGPARAM2 op_c039_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_b(dst,src); @@ -24107,7 +24107,7 @@ uae_u32 REGPARAM2 op_c03a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_b(dst,src); @@ -24126,9 +24126,9 @@ uae_u32 REGPARAM2 op_c03b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_b(dst,src); @@ -24178,7 +24178,7 @@ uae_u32 REGPARAM2 op_c050_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_w(dst,src); @@ -24196,7 +24196,7 @@ uae_u32 REGPARAM2 op_c058_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; dont_care_flags(); @@ -24216,7 +24216,7 @@ uae_u32 REGPARAM2 op_c060_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_w(dst,src); @@ -24235,7 +24235,7 @@ uae_u32 REGPARAM2 op_c068_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_w(dst,src); @@ -24252,9 +24252,9 @@ uae_u32 REGPARAM2 op_c070_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_w(dst,src); @@ -24272,7 +24272,7 @@ uae_u32 REGPARAM2 op_c078_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_w(dst,src); @@ -24290,7 +24290,7 @@ uae_u32 REGPARAM2 op_c079_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_w(dst,src); @@ -24310,7 +24310,7 @@ uae_u32 REGPARAM2 op_c07a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_w(dst,src); @@ -24329,9 +24329,9 @@ uae_u32 REGPARAM2 op_c07b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_w(dst,src); @@ -24381,7 +24381,7 @@ uae_u32 REGPARAM2 op_c090_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_l(dst,src); @@ -24399,7 +24399,7 @@ uae_u32 REGPARAM2 op_c098_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg; dont_care_flags(); @@ -24419,7 +24419,7 @@ uae_u32 REGPARAM2 op_c0a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_l(dst,src); @@ -24438,7 +24438,7 @@ uae_u32 REGPARAM2 op_c0a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_l(dst,src); @@ -24455,9 +24455,9 @@ uae_u32 REGPARAM2 op_c0b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_l(dst,src); @@ -24475,7 +24475,7 @@ uae_u32 REGPARAM2 op_c0b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_l(dst,src); @@ -24493,7 +24493,7 @@ uae_u32 REGPARAM2 op_c0b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_l(dst,src); @@ -24513,7 +24513,7 @@ uae_u32 REGPARAM2 op_c0ba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_l(dst,src); @@ -24532,9 +24532,9 @@ uae_u32 REGPARAM2 op_c0bb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_AND_l(dst,src); @@ -24585,7 +24585,7 @@ uae_u32 REGPARAM2 op_c0d0_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULU(dst,src); live_flags(); @@ -24603,7 +24603,7 @@ uae_u32 REGPARAM2 op_c0d8_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; jff_MULU(dst,src); @@ -24623,7 +24623,7 @@ uae_u32 REGPARAM2 op_c0e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULU(dst,src); live_flags(); @@ -24642,7 +24642,7 @@ uae_u32 REGPARAM2 op_c0e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULU(dst,src); live_flags(); @@ -24659,9 +24659,9 @@ uae_u32 REGPARAM2 op_c0f0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULU(dst,src); live_flags(); @@ -24679,7 +24679,7 @@ uae_u32 REGPARAM2 op_c0f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULU(dst,src); live_flags(); @@ -24697,7 +24697,7 @@ uae_u32 REGPARAM2 op_c0f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULU(dst,src); live_flags(); @@ -24717,7 +24717,7 @@ uae_u32 REGPARAM2 op_c0fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULU(dst,src); live_flags(); @@ -24736,9 +24736,9 @@ uae_u32 REGPARAM2 op_c0fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULU(dst,src); live_flags(); @@ -24772,11 +24772,11 @@ uae_u32 REGPARAM2 op_c110_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -24791,11 +24791,11 @@ uae_u32 REGPARAM2 op_c118_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -24812,11 +24812,11 @@ uae_u32 REGPARAM2 op_c120_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -24832,11 +24832,11 @@ uae_u32 REGPARAM2 op_c128_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -24850,13 +24850,13 @@ uae_u32 REGPARAM2 op_c130_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -24871,11 +24871,11 @@ uae_u32 REGPARAM2 op_c138_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -24890,11 +24890,11 @@ uae_u32 REGPARAM2 op_c139_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_AND_b(dst,src); live_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -24947,11 +24947,11 @@ uae_u32 REGPARAM2 op_c150_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -24966,11 +24966,11 @@ uae_u32 REGPARAM2 op_c158_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -24987,11 +24987,11 @@ uae_u32 REGPARAM2 op_c160_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -25007,11 +25007,11 @@ uae_u32 REGPARAM2 op_c168_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -25025,13 +25025,13 @@ uae_u32 REGPARAM2 op_c170_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -25046,11 +25046,11 @@ uae_u32 REGPARAM2 op_c178_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -25065,11 +25065,11 @@ uae_u32 REGPARAM2 op_c179_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_AND_w(dst,src); live_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -25103,11 +25103,11 @@ uae_u32 REGPARAM2 op_c190_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -25122,11 +25122,11 @@ uae_u32 REGPARAM2 op_c198_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -25143,11 +25143,11 @@ uae_u32 REGPARAM2 op_c1a0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -25163,11 +25163,11 @@ uae_u32 REGPARAM2 op_c1a8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -25181,13 +25181,13 @@ uae_u32 REGPARAM2 op_c1b0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -25202,11 +25202,11 @@ uae_u32 REGPARAM2 op_c1b8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -25221,11 +25221,11 @@ uae_u32 REGPARAM2 op_c1b9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_AND_l(dst,src); live_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -25256,7 +25256,7 @@ uae_u32 REGPARAM2 op_c1d0_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULS(dst,src); live_flags(); @@ -25274,7 +25274,7 @@ uae_u32 REGPARAM2 op_c1d8_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; jff_MULS(dst,src); @@ -25294,7 +25294,7 @@ uae_u32 REGPARAM2 op_c1e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULS(dst,src); live_flags(); @@ -25313,7 +25313,7 @@ uae_u32 REGPARAM2 op_c1e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULS(dst,src); live_flags(); @@ -25330,9 +25330,9 @@ uae_u32 REGPARAM2 op_c1f0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULS(dst,src); live_flags(); @@ -25350,7 +25350,7 @@ uae_u32 REGPARAM2 op_c1f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULS(dst,src); live_flags(); @@ -25368,7 +25368,7 @@ uae_u32 REGPARAM2 op_c1f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULS(dst,src); live_flags(); @@ -25388,7 +25388,7 @@ uae_u32 REGPARAM2 op_c1fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULS(dst,src); live_flags(); @@ -25407,9 +25407,9 @@ uae_u32 REGPARAM2 op_c1fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jff_MULS(dst,src); live_flags(); @@ -25459,7 +25459,7 @@ uae_u32 REGPARAM2 op_d010_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_b(dst,src); @@ -25478,7 +25478,7 @@ uae_u32 REGPARAM2 op_d018_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dst=dstreg; dont_care_flags(); @@ -25499,7 +25499,7 @@ uae_u32 REGPARAM2 op_d020_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_b(dst,src); @@ -25519,7 +25519,7 @@ uae_u32 REGPARAM2 op_d028_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_b(dst,src); @@ -25537,9 +25537,9 @@ uae_u32 REGPARAM2 op_d030_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_b(dst,src); @@ -25558,7 +25558,7 @@ uae_u32 REGPARAM2 op_d038_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_b(dst,src); @@ -25577,7 +25577,7 @@ uae_u32 REGPARAM2 op_d039_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_b(dst,src); @@ -25598,7 +25598,7 @@ uae_u32 REGPARAM2 op_d03a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_b(dst,src); @@ -25618,9 +25618,9 @@ uae_u32 REGPARAM2 op_d03b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_b(dst,src); @@ -25690,7 +25690,7 @@ uae_u32 REGPARAM2 op_d050_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_w(dst,src); @@ -25709,7 +25709,7 @@ uae_u32 REGPARAM2 op_d058_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; dont_care_flags(); @@ -25730,7 +25730,7 @@ uae_u32 REGPARAM2 op_d060_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_w(dst,src); @@ -25750,7 +25750,7 @@ uae_u32 REGPARAM2 op_d068_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_w(dst,src); @@ -25768,9 +25768,9 @@ uae_u32 REGPARAM2 op_d070_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_w(dst,src); @@ -25789,7 +25789,7 @@ uae_u32 REGPARAM2 op_d078_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_w(dst,src); @@ -25808,7 +25808,7 @@ uae_u32 REGPARAM2 op_d079_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_w(dst,src); @@ -25829,7 +25829,7 @@ uae_u32 REGPARAM2 op_d07a_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_w(dst,src); @@ -25849,9 +25849,9 @@ uae_u32 REGPARAM2 op_d07b_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_w(dst,src); @@ -25921,7 +25921,7 @@ uae_u32 REGPARAM2 op_d090_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_l(dst,src); @@ -25940,7 +25940,7 @@ uae_u32 REGPARAM2 op_d098_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg; dont_care_flags(); @@ -25961,7 +25961,7 @@ uae_u32 REGPARAM2 op_d0a0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_l(dst,src); @@ -25981,7 +25981,7 @@ uae_u32 REGPARAM2 op_d0a8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_l(dst,src); @@ -25999,9 +25999,9 @@ uae_u32 REGPARAM2 op_d0b0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_l(dst,src); @@ -26020,7 +26020,7 @@ uae_u32 REGPARAM2 op_d0b8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_l(dst,src); @@ -26039,7 +26039,7 @@ uae_u32 REGPARAM2 op_d0b9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_l(dst,src); @@ -26060,7 +26060,7 @@ uae_u32 REGPARAM2 op_d0ba_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_l(dst,src); @@ -26080,9 +26080,9 @@ uae_u32 REGPARAM2 op_d0bb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jff_ADD_l(dst,src); @@ -26146,7 +26146,7 @@ uae_u32 REGPARAM2 op_d0d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -26162,7 +26162,7 @@ uae_u32 REGPARAM2 op_d0d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg+8; jnf_ADDA_w(dst, src); @@ -26180,7 +26180,7 @@ uae_u32 REGPARAM2 op_d0e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -26197,7 +26197,7 @@ uae_u32 REGPARAM2 op_d0e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -26212,9 +26212,9 @@ uae_u32 REGPARAM2 op_d0f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -26230,7 +26230,7 @@ uae_u32 REGPARAM2 op_d0f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -26246,7 +26246,7 @@ uae_u32 REGPARAM2 op_d0f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -26264,7 +26264,7 @@ uae_u32 REGPARAM2 op_d0fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -26281,9 +26281,9 @@ uae_u32 REGPARAM2 op_d0fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -26332,17 +26332,17 @@ uae_u32 REGPARAM2 op_d108_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); make_flags_live(); jff_ADDX_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26357,12 +26357,12 @@ uae_u32 REGPARAM2 op_d110_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26377,12 +26377,12 @@ uae_u32 REGPARAM2 op_d118_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -26399,12 +26399,12 @@ uae_u32 REGPARAM2 op_d120_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26420,12 +26420,12 @@ uae_u32 REGPARAM2 op_d128_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26439,14 +26439,14 @@ uae_u32 REGPARAM2 op_d130_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26461,12 +26461,12 @@ uae_u32 REGPARAM2 op_d138_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26481,12 +26481,12 @@ uae_u32 REGPARAM2 op_d139_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jff_ADD_b(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26519,17 +26519,17 @@ uae_u32 REGPARAM2 op_d148_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); make_flags_live(); jff_ADDX_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26544,12 +26544,12 @@ uae_u32 REGPARAM2 op_d150_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26564,12 +26564,12 @@ uae_u32 REGPARAM2 op_d158_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -26586,12 +26586,12 @@ uae_u32 REGPARAM2 op_d160_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26607,12 +26607,12 @@ uae_u32 REGPARAM2 op_d168_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26626,14 +26626,14 @@ uae_u32 REGPARAM2 op_d170_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26648,12 +26648,12 @@ uae_u32 REGPARAM2 op_d178_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26668,12 +26668,12 @@ uae_u32 REGPARAM2 op_d179_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jff_ADD_w(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26706,17 +26706,17 @@ uae_u32 REGPARAM2 op_d188_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); make_flags_live(); jff_ADDX_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26731,12 +26731,12 @@ uae_u32 REGPARAM2 op_d190_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26751,12 +26751,12 @@ uae_u32 REGPARAM2 op_d198_0_comp_ff(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -26773,12 +26773,12 @@ uae_u32 REGPARAM2 op_d1a0_0_comp_ff(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26794,12 +26794,12 @@ uae_u32 REGPARAM2 op_d1a8_0_comp_ff(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26813,14 +26813,14 @@ uae_u32 REGPARAM2 op_d1b0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26835,12 +26835,12 @@ uae_u32 REGPARAM2 op_d1b8_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26855,12 +26855,12 @@ uae_u32 REGPARAM2 op_d1b9_0_comp_ff(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jff_ADD_l(dst,src); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -26902,7 +26902,7 @@ uae_u32 REGPARAM2 op_d1d0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -26918,7 +26918,7 @@ uae_u32 REGPARAM2 op_d1d8_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg+8; jnf_ADDA_l(dst, src); @@ -26936,7 +26936,7 @@ uae_u32 REGPARAM2 op_d1e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -26953,7 +26953,7 @@ uae_u32 REGPARAM2 op_d1e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -26968,9 +26968,9 @@ uae_u32 REGPARAM2 op_d1f0_0_comp_ff(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -26986,7 +26986,7 @@ uae_u32 REGPARAM2 op_d1f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -27002,7 +27002,7 @@ uae_u32 REGPARAM2 op_d1f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -27020,7 +27020,7 @@ uae_u32 REGPARAM2 op_d1fa_0_comp_ff(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -27037,9 +27037,9 @@ uae_u32 REGPARAM2 op_d1fb_0_comp_ff(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -27073,6 +27073,7 @@ uae_u32 REGPARAM2 op_e000_0_comp_ff(uae_u32 opcode) live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSRQ.B #,Dn */ @@ -27089,24 +27090,7 @@ uae_u32 REGPARAM2 op_e008_0_comp_ff(uae_u32 opcode) live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); -return 0; -} -/* ROXRQ.B #,Dn */ -uae_u32 REGPARAM2 op_e010_0_comp_ff(uae_u32 opcode) -{ - uae_s32 srcreg = imm8_table[((opcode >> 9) & 7)]; - uae_u32 dstreg = opcode & 7; - uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; - m68k_pc_offset+=2; - uae_u8 scratchie=S1; - dont_care_flags(); - int cnt = scratchie++; - mov_l_ri(cnt,srcreg); - int data=dstreg; - make_flags_live(); - jff_ROXR_b(data,cnt); - live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* RORQ.B #,Dn */ @@ -27124,6 +27108,7 @@ uae_u32 REGPARAM2 op_e018_0_comp_ff(uae_u32 opcode) jff_ROR_b(data,cnt); live_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASR.B Dn,Dn */ @@ -27134,12 +27119,17 @@ uae_u32 REGPARAM2 op_e020_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jff_ASR_b_reg(data,srcreg); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSR.B Dn,Dn */ @@ -27150,29 +27140,17 @@ uae_u32 REGPARAM2 op_e028_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jff_LSR_b_reg(data,srcreg); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); -return 0; -} -/* ROXR.B Dn,Dn */ -uae_u32 REGPARAM2 op_e030_0_comp_ff(uae_u32 opcode) -{ - uae_s32 srcreg = ((opcode >> 9) & 7); - uae_u32 dstreg = opcode & 7; - uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; - m68k_pc_offset+=2; - uae_u8 scratchie=S1; - dont_care_flags(); - int cnt=srcreg; - int data=dstreg; - make_flags_live(); - jff_ROXR_b(data,cnt); - live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROR.B Dn,Dn */ @@ -27183,12 +27161,17 @@ uae_u32 REGPARAM2 op_e038_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jff_ROR_b(data,cnt); live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASRQ.W #,Dn */ @@ -27205,6 +27188,7 @@ uae_u32 REGPARAM2 op_e040_0_comp_ff(uae_u32 opcode) live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } #endif @@ -27224,24 +27208,7 @@ uae_u32 REGPARAM2 op_e048_0_comp_ff(uae_u32 opcode) live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); -return 0; -} -/* ROXRQ.W #,Dn */ -uae_u32 REGPARAM2 op_e050_0_comp_ff(uae_u32 opcode) -{ - uae_s32 srcreg = imm8_table[((opcode >> 9) & 7)]; - uae_u32 dstreg = opcode & 7; - uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; - m68k_pc_offset+=2; - uae_u8 scratchie=S1; - dont_care_flags(); - int cnt = scratchie++; - mov_l_ri(cnt,srcreg); - int data=dstreg; - make_flags_live(); - jff_ROXR_w(data,cnt); - live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* RORQ.W #,Dn */ @@ -27259,6 +27226,7 @@ uae_u32 REGPARAM2 op_e058_0_comp_ff(uae_u32 opcode) jff_ROR_w(data,cnt); live_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASR.W Dn,Dn */ @@ -27269,12 +27237,17 @@ uae_u32 REGPARAM2 op_e060_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jff_ASR_w_reg(data,srcreg); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSR.W Dn,Dn */ @@ -27285,29 +27258,17 @@ uae_u32 REGPARAM2 op_e068_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jff_LSR_w_reg(data,srcreg); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); -return 0; -} -/* ROXR.W Dn,Dn */ -uae_u32 REGPARAM2 op_e070_0_comp_ff(uae_u32 opcode) -{ - uae_s32 srcreg = ((opcode >> 9) & 7); - uae_u32 dstreg = opcode & 7; - uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; - m68k_pc_offset+=2; - uae_u8 scratchie=S1; - dont_care_flags(); - int cnt=srcreg; - int data=dstreg; - make_flags_live(); - jff_ROXR_w(data,cnt); - live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROR.W Dn,Dn */ @@ -27318,12 +27279,17 @@ uae_u32 REGPARAM2 op_e078_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jff_ROR_w(data,cnt); live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASRQ.L #,Dn */ @@ -27340,6 +27306,7 @@ uae_u32 REGPARAM2 op_e080_0_comp_ff(uae_u32 opcode) live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSRQ.L #,Dn */ @@ -27356,24 +27323,7 @@ uae_u32 REGPARAM2 op_e088_0_comp_ff(uae_u32 opcode) live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); -return 0; -} -/* ROXRQ.L #,Dn */ -uae_u32 REGPARAM2 op_e090_0_comp_ff(uae_u32 opcode) -{ - uae_s32 srcreg = imm8_table[((opcode >> 9) & 7)]; - uae_u32 dstreg = opcode & 7; - uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; - m68k_pc_offset+=2; - uae_u8 scratchie=S1; - dont_care_flags(); - int cnt = scratchie++; - mov_l_ri(cnt,srcreg); - int data=dstreg; - make_flags_live(); - jff_ROXR_l(data,cnt); - live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* RORQ.L #,Dn */ @@ -27391,6 +27341,7 @@ uae_u32 REGPARAM2 op_e098_0_comp_ff(uae_u32 opcode) jff_ROR_l(data,cnt); live_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASR.L Dn,Dn */ @@ -27401,12 +27352,17 @@ uae_u32 REGPARAM2 op_e0a0_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jff_ASR_l_reg(data,srcreg); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSR.L Dn,Dn */ @@ -27417,29 +27373,17 @@ uae_u32 REGPARAM2 op_e0a8_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jff_LSR_l_reg(data,srcreg); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); -return 0; -} -/* ROXR.L Dn,Dn */ -uae_u32 REGPARAM2 op_e0b0_0_comp_ff(uae_u32 opcode) -{ - uae_s32 srcreg = ((opcode >> 9) & 7); - uae_u32 dstreg = opcode & 7; - uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; - m68k_pc_offset+=2; - uae_u8 scratchie=S1; - dont_care_flags(); - int cnt=srcreg; - int data=dstreg; - make_flags_live(); - jff_ROXR_l(data,cnt); - live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROR.L Dn,Dn */ @@ -27450,12 +27394,17 @@ uae_u32 REGPARAM2 op_e0b8_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jff_ROR_l(data,cnt); live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASRW.W (An) */ @@ -27468,10 +27417,10 @@ uae_u32 REGPARAM2 op_e0d0_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -27485,10 +27434,10 @@ uae_u32 REGPARAM2 op_e0d8_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -27504,10 +27453,10 @@ uae_u32 REGPARAM2 op_e0e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -27522,10 +27471,10 @@ uae_u32 REGPARAM2 op_e0e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -27538,12 +27487,12 @@ uae_u32 REGPARAM2 op_e0f0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -27557,10 +27506,10 @@ uae_u32 REGPARAM2 op_e0f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -27574,10 +27523,10 @@ uae_u32 REGPARAM2 op_e0f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -27595,6 +27544,7 @@ uae_u32 REGPARAM2 op_e100_0_comp_ff(uae_u32 opcode) live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSLQ.B #,Dn */ @@ -27611,6 +27561,7 @@ uae_u32 REGPARAM2 op_e108_0_comp_ff(uae_u32 opcode) live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROXLQ.B #,Dn */ @@ -27629,6 +27580,7 @@ uae_u32 REGPARAM2 op_e110_0_comp_ff(uae_u32 opcode) jff_ROXL_b(data,cnt); live_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROLQ.B #,Dn */ @@ -27646,6 +27598,7 @@ uae_u32 REGPARAM2 op_e118_0_comp_ff(uae_u32 opcode) jff_ROL_b(data,cnt); live_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASL.B Dn,Dn */ @@ -27656,12 +27609,17 @@ uae_u32 REGPARAM2 op_e120_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jff_ASL_b_reg(data,srcreg); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSL.B Dn,Dn */ @@ -27672,12 +27630,17 @@ uae_u32 REGPARAM2 op_e128_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jff_LSL_b_reg(data,srcreg); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROXL.B Dn,Dn */ @@ -27688,13 +27651,18 @@ uae_u32 REGPARAM2 op_e130_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; make_flags_live(); jff_ROXL_b(data,cnt); live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROL.B Dn,Dn */ @@ -27705,12 +27673,17 @@ uae_u32 REGPARAM2 op_e138_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jff_ROL_b(data,cnt); live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASLQ.W #,Dn */ @@ -27727,6 +27700,7 @@ uae_u32 REGPARAM2 op_e140_0_comp_ff(uae_u32 opcode) live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSLQ.W #,Dn */ @@ -27743,6 +27717,7 @@ uae_u32 REGPARAM2 op_e148_0_comp_ff(uae_u32 opcode) live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROXLQ.W #,Dn */ @@ -27761,6 +27736,7 @@ uae_u32 REGPARAM2 op_e150_0_comp_ff(uae_u32 opcode) jff_ROXL_w(data,cnt); live_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROLQ.W #,Dn */ @@ -27778,6 +27754,7 @@ uae_u32 REGPARAM2 op_e158_0_comp_ff(uae_u32 opcode) jff_ROL_w(data,cnt); live_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASL.W Dn,Dn */ @@ -27788,12 +27765,17 @@ uae_u32 REGPARAM2 op_e160_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jff_ASL_w_reg(data,srcreg); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSL.W Dn,Dn */ @@ -27804,12 +27786,17 @@ uae_u32 REGPARAM2 op_e168_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jff_LSL_w_reg(data,srcreg); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROXL.W Dn,Dn */ @@ -27820,13 +27807,18 @@ uae_u32 REGPARAM2 op_e170_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; make_flags_live(); jff_ROXL_w(data,cnt); live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROL.W Dn,Dn */ @@ -27837,12 +27829,17 @@ uae_u32 REGPARAM2 op_e178_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jff_ROL_w(data,cnt); live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASLQ.L #,Dn */ @@ -27859,6 +27856,7 @@ uae_u32 REGPARAM2 op_e180_0_comp_ff(uae_u32 opcode) live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSLQ.L #,Dn */ @@ -27875,6 +27873,7 @@ uae_u32 REGPARAM2 op_e188_0_comp_ff(uae_u32 opcode) live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROXLQ.L #,Dn */ @@ -27893,6 +27892,7 @@ uae_u32 REGPARAM2 op_e190_0_comp_ff(uae_u32 opcode) jff_ROXL_l(data,cnt); live_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROLQ.L #,Dn */ @@ -27910,6 +27910,7 @@ uae_u32 REGPARAM2 op_e198_0_comp_ff(uae_u32 opcode) jff_ROL_l(data,cnt); live_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASL.L Dn,Dn */ @@ -27920,12 +27921,17 @@ uae_u32 REGPARAM2 op_e1a0_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jff_ASL_l_reg(data,srcreg); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSL.L Dn,Dn */ @@ -27936,12 +27942,17 @@ uae_u32 REGPARAM2 op_e1a8_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jff_LSL_l_reg(data,srcreg); live_flags(); if (!(needed_flags & FLAG_CZNV)) dont_care_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROXL.L Dn,Dn */ @@ -27952,13 +27963,18 @@ uae_u32 REGPARAM2 op_e1b0_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; make_flags_live(); jff_ROXL_l(data,cnt); live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROL.L Dn,Dn */ @@ -27969,12 +27985,17 @@ uae_u32 REGPARAM2 op_e1b8_0_comp_ff(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jff_ROL_l(data,cnt); live_flags(); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASLW.W (An) */ @@ -27987,10 +28008,10 @@ uae_u32 REGPARAM2 op_e1d0_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28004,10 +28025,10 @@ uae_u32 REGPARAM2 op_e1d8_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -28023,10 +28044,10 @@ uae_u32 REGPARAM2 op_e1e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28041,10 +28062,10 @@ uae_u32 REGPARAM2 op_e1e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28057,12 +28078,12 @@ uae_u32 REGPARAM2 op_e1f0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28076,10 +28097,10 @@ uae_u32 REGPARAM2 op_e1f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28093,10 +28114,10 @@ uae_u32 REGPARAM2 op_e1f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ASLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28110,10 +28131,10 @@ uae_u32 REGPARAM2 op_e2d0_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28127,10 +28148,10 @@ uae_u32 REGPARAM2 op_e2d8_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -28146,10 +28167,10 @@ uae_u32 REGPARAM2 op_e2e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28164,10 +28185,10 @@ uae_u32 REGPARAM2 op_e2e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28180,12 +28201,12 @@ uae_u32 REGPARAM2 op_e2f0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28199,10 +28220,10 @@ uae_u32 REGPARAM2 op_e2f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28216,10 +28237,10 @@ uae_u32 REGPARAM2 op_e2f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSRW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28233,10 +28254,10 @@ uae_u32 REGPARAM2 op_e3d0_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28250,10 +28271,10 @@ uae_u32 REGPARAM2 op_e3d8_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -28269,10 +28290,10 @@ uae_u32 REGPARAM2 op_e3e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28287,10 +28308,10 @@ uae_u32 REGPARAM2 op_e3e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28303,12 +28324,12 @@ uae_u32 REGPARAM2 op_e3f0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28322,10 +28343,10 @@ uae_u32 REGPARAM2 op_e3f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28339,10 +28360,10 @@ uae_u32 REGPARAM2 op_e3f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_LSLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28356,10 +28377,10 @@ uae_u32 REGPARAM2 op_e6d0_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_RORW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28373,10 +28394,10 @@ uae_u32 REGPARAM2 op_e6d8_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_RORW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -28392,10 +28413,10 @@ uae_u32 REGPARAM2 op_e6e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_RORW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28410,10 +28431,10 @@ uae_u32 REGPARAM2 op_e6e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_RORW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28426,12 +28447,12 @@ uae_u32 REGPARAM2 op_e6f0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_RORW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28445,10 +28466,10 @@ uae_u32 REGPARAM2 op_e6f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_RORW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28462,10 +28483,10 @@ uae_u32 REGPARAM2 op_e6f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_RORW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28479,10 +28500,10 @@ uae_u32 REGPARAM2 op_e7d0_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ROLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28496,10 +28517,10 @@ uae_u32 REGPARAM2 op_e7d8_0_comp_ff(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ROLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -28515,10 +28536,10 @@ uae_u32 REGPARAM2 op_e7e0_0_comp_ff(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ROLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28533,10 +28554,10 @@ uae_u32 REGPARAM2 op_e7e8_0_comp_ff(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ROLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28549,12 +28570,12 @@ uae_u32 REGPARAM2 op_e7f0_0_comp_ff(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ROLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28568,10 +28589,10 @@ uae_u32 REGPARAM2 op_e7f8_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ROLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -28585,10 +28606,10 @@ uae_u32 REGPARAM2 op_e7f9_0_comp_ff(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jff_ROLW(src); live_flags(); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29105,10 +29126,10 @@ uae_u32 REGPARAM2 op_10_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29123,10 +29144,10 @@ uae_u32 REGPARAM2 op_18_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -29143,10 +29164,10 @@ uae_u32 REGPARAM2 op_20_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29162,10 +29183,10 @@ uae_u32 REGPARAM2 op_28_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29179,12 +29200,12 @@ uae_u32 REGPARAM2 op_30_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29199,10 +29220,10 @@ uae_u32 REGPARAM2 op_38_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29217,10 +29238,10 @@ uae_u32 REGPARAM2 op_39_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29261,10 +29282,10 @@ uae_u32 REGPARAM2 op_50_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29279,10 +29300,10 @@ uae_u32 REGPARAM2 op_58_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -29299,10 +29320,10 @@ uae_u32 REGPARAM2 op_60_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29318,10 +29339,10 @@ uae_u32 REGPARAM2 op_68_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29335,12 +29356,12 @@ uae_u32 REGPARAM2 op_70_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29355,10 +29376,10 @@ uae_u32 REGPARAM2 op_78_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29373,10 +29394,10 @@ uae_u32 REGPARAM2 op_79_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29406,10 +29427,10 @@ uae_u32 REGPARAM2 op_90_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29424,10 +29445,10 @@ uae_u32 REGPARAM2 op_98_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -29444,10 +29465,10 @@ uae_u32 REGPARAM2 op_a0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29463,10 +29484,10 @@ uae_u32 REGPARAM2 op_a8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29480,12 +29501,12 @@ uae_u32 REGPARAM2 op_b0_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29500,10 +29521,10 @@ uae_u32 REGPARAM2 op_b8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29518,10 +29539,10 @@ uae_u32 REGPARAM2 op_b9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29550,7 +29571,7 @@ uae_u32 REGPARAM2 op_110_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -29566,7 +29587,7 @@ uae_u32 REGPARAM2 op_118_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -29584,7 +29605,7 @@ uae_u32 REGPARAM2 op_120_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -29601,7 +29622,7 @@ uae_u32 REGPARAM2 op_128_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -29616,9 +29637,9 @@ uae_u32 REGPARAM2 op_130_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -29634,7 +29655,7 @@ uae_u32 REGPARAM2 op_138_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -29650,7 +29671,7 @@ uae_u32 REGPARAM2 op_139_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -29669,7 +29690,7 @@ uae_u32 REGPARAM2 op_13a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -29687,9 +29708,9 @@ uae_u32 REGPARAM2 op_13b_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -29734,10 +29755,10 @@ uae_u32 REGPARAM2 op_150_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29752,10 +29773,10 @@ uae_u32 REGPARAM2 op_158_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -29772,10 +29793,10 @@ uae_u32 REGPARAM2 op_160_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29791,10 +29812,10 @@ uae_u32 REGPARAM2 op_168_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29808,12 +29829,12 @@ uae_u32 REGPARAM2 op_170_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29828,10 +29849,10 @@ uae_u32 REGPARAM2 op_178_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29846,10 +29867,10 @@ uae_u32 REGPARAM2 op_179_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29879,10 +29900,10 @@ uae_u32 REGPARAM2 op_190_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29897,10 +29918,10 @@ uae_u32 REGPARAM2 op_198_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -29917,10 +29938,10 @@ uae_u32 REGPARAM2 op_1a0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29936,10 +29957,10 @@ uae_u32 REGPARAM2 op_1a8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29953,12 +29974,12 @@ uae_u32 REGPARAM2 op_1b0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29973,10 +29994,10 @@ uae_u32 REGPARAM2 op_1b8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -29991,10 +30012,10 @@ uae_u32 REGPARAM2 op_1b9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30024,10 +30045,10 @@ uae_u32 REGPARAM2 op_1d0_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30042,10 +30063,10 @@ uae_u32 REGPARAM2 op_1d8_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -30062,10 +30083,10 @@ uae_u32 REGPARAM2 op_1e0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30081,10 +30102,10 @@ uae_u32 REGPARAM2 op_1e8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30098,12 +30119,12 @@ uae_u32 REGPARAM2 op_1f0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30118,10 +30139,10 @@ uae_u32 REGPARAM2 op_1f8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30136,10 +30157,10 @@ uae_u32 REGPARAM2 op_1f9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30169,10 +30190,10 @@ uae_u32 REGPARAM2 op_210_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30187,10 +30208,10 @@ uae_u32 REGPARAM2 op_218_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -30207,10 +30228,10 @@ uae_u32 REGPARAM2 op_220_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30226,10 +30247,10 @@ uae_u32 REGPARAM2 op_228_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30243,12 +30264,12 @@ uae_u32 REGPARAM2 op_230_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30263,10 +30284,10 @@ uae_u32 REGPARAM2 op_238_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30281,10 +30302,10 @@ uae_u32 REGPARAM2 op_239_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30325,10 +30346,10 @@ uae_u32 REGPARAM2 op_250_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30343,10 +30364,10 @@ uae_u32 REGPARAM2 op_258_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -30363,10 +30384,10 @@ uae_u32 REGPARAM2 op_260_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30382,10 +30403,10 @@ uae_u32 REGPARAM2 op_268_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30399,12 +30420,12 @@ uae_u32 REGPARAM2 op_270_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30419,10 +30440,10 @@ uae_u32 REGPARAM2 op_278_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30437,10 +30458,10 @@ uae_u32 REGPARAM2 op_279_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30470,10 +30491,10 @@ uae_u32 REGPARAM2 op_290_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30488,10 +30509,10 @@ uae_u32 REGPARAM2 op_298_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -30508,10 +30529,10 @@ uae_u32 REGPARAM2 op_2a0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30527,10 +30548,10 @@ uae_u32 REGPARAM2 op_2a8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30544,12 +30565,12 @@ uae_u32 REGPARAM2 op_2b0_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30564,10 +30585,10 @@ uae_u32 REGPARAM2 op_2b8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30582,10 +30603,10 @@ uae_u32 REGPARAM2 op_2b9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30615,10 +30636,10 @@ uae_u32 REGPARAM2 op_410_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30633,10 +30654,10 @@ uae_u32 REGPARAM2 op_418_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -30653,10 +30674,10 @@ uae_u32 REGPARAM2 op_420_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30672,10 +30693,10 @@ uae_u32 REGPARAM2 op_428_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30689,12 +30710,12 @@ uae_u32 REGPARAM2 op_430_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30709,10 +30730,10 @@ uae_u32 REGPARAM2 op_438_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30727,10 +30748,10 @@ uae_u32 REGPARAM2 op_439_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30760,10 +30781,10 @@ uae_u32 REGPARAM2 op_450_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30778,10 +30799,10 @@ uae_u32 REGPARAM2 op_458_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -30798,10 +30819,10 @@ uae_u32 REGPARAM2 op_460_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30817,10 +30838,10 @@ uae_u32 REGPARAM2 op_468_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30834,12 +30855,12 @@ uae_u32 REGPARAM2 op_470_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30854,10 +30875,10 @@ uae_u32 REGPARAM2 op_478_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30872,10 +30893,10 @@ uae_u32 REGPARAM2 op_479_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30905,10 +30926,10 @@ uae_u32 REGPARAM2 op_490_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30923,10 +30944,10 @@ uae_u32 REGPARAM2 op_498_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -30943,10 +30964,10 @@ uae_u32 REGPARAM2 op_4a0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30962,10 +30983,10 @@ uae_u32 REGPARAM2 op_4a8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30979,12 +31000,12 @@ uae_u32 REGPARAM2 op_4b0_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -30999,10 +31020,10 @@ uae_u32 REGPARAM2 op_4b8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31017,10 +31038,10 @@ uae_u32 REGPARAM2 op_4b9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31050,10 +31071,10 @@ uae_u32 REGPARAM2 op_610_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31068,10 +31089,10 @@ uae_u32 REGPARAM2 op_618_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31088,10 +31109,10 @@ uae_u32 REGPARAM2 op_620_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31107,10 +31128,10 @@ uae_u32 REGPARAM2 op_628_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31124,12 +31145,12 @@ uae_u32 REGPARAM2 op_630_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31144,10 +31165,10 @@ uae_u32 REGPARAM2 op_638_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31162,10 +31183,10 @@ uae_u32 REGPARAM2 op_639_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31195,10 +31216,10 @@ uae_u32 REGPARAM2 op_650_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31213,10 +31234,10 @@ uae_u32 REGPARAM2 op_658_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31233,10 +31254,10 @@ uae_u32 REGPARAM2 op_660_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31252,10 +31273,10 @@ uae_u32 REGPARAM2 op_668_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31269,12 +31290,12 @@ uae_u32 REGPARAM2 op_670_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31289,10 +31310,10 @@ uae_u32 REGPARAM2 op_678_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31307,10 +31328,10 @@ uae_u32 REGPARAM2 op_679_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31340,10 +31361,10 @@ uae_u32 REGPARAM2 op_690_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31358,10 +31379,10 @@ uae_u32 REGPARAM2 op_698_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31378,10 +31399,10 @@ uae_u32 REGPARAM2 op_6a0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31397,10 +31418,10 @@ uae_u32 REGPARAM2 op_6a8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31414,12 +31435,12 @@ uae_u32 REGPARAM2 op_6b0_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31434,10 +31455,10 @@ uae_u32 REGPARAM2 op_6b8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31452,10 +31473,10 @@ uae_u32 REGPARAM2 op_6b9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31484,7 +31505,7 @@ uae_u32 REGPARAM2 op_810_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31500,7 +31521,7 @@ uae_u32 REGPARAM2 op_818_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -31518,7 +31539,7 @@ uae_u32 REGPARAM2 op_820_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31535,7 +31556,7 @@ uae_u32 REGPARAM2 op_828_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31550,9 +31571,9 @@ uae_u32 REGPARAM2 op_830_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31568,7 +31589,7 @@ uae_u32 REGPARAM2 op_838_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31584,7 +31605,7 @@ uae_u32 REGPARAM2 op_839_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31603,7 +31624,7 @@ uae_u32 REGPARAM2 op_83a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31621,9 +31642,9 @@ uae_u32 REGPARAM2 op_83b_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31654,10 +31675,10 @@ uae_u32 REGPARAM2 op_850_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31672,10 +31693,10 @@ uae_u32 REGPARAM2 op_858_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31692,10 +31713,10 @@ uae_u32 REGPARAM2 op_860_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31711,10 +31732,10 @@ uae_u32 REGPARAM2 op_868_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31728,12 +31749,12 @@ uae_u32 REGPARAM2 op_870_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31748,10 +31769,10 @@ uae_u32 REGPARAM2 op_878_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31766,10 +31787,10 @@ uae_u32 REGPARAM2 op_879_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCHG_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31799,10 +31820,10 @@ uae_u32 REGPARAM2 op_890_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31817,10 +31838,10 @@ uae_u32 REGPARAM2 op_898_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31837,10 +31858,10 @@ uae_u32 REGPARAM2 op_8a0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31856,10 +31877,10 @@ uae_u32 REGPARAM2 op_8a8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31873,12 +31894,12 @@ uae_u32 REGPARAM2 op_8b0_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31893,10 +31914,10 @@ uae_u32 REGPARAM2 op_8b8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31911,10 +31932,10 @@ uae_u32 REGPARAM2 op_8b9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BCLR_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31944,10 +31965,10 @@ uae_u32 REGPARAM2 op_8d0_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -31962,10 +31983,10 @@ uae_u32 REGPARAM2 op_8d8_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -31982,10 +32003,10 @@ uae_u32 REGPARAM2 op_8e0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32001,10 +32022,10 @@ uae_u32 REGPARAM2 op_8e8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32018,12 +32039,12 @@ uae_u32 REGPARAM2 op_8f0_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32038,10 +32059,10 @@ uae_u32 REGPARAM2 op_8f8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32056,10 +32077,10 @@ uae_u32 REGPARAM2 op_8f9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); jnf_BSET_b(dst,src); dont_care_flags(); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32089,10 +32110,10 @@ uae_u32 REGPARAM2 op_a10_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32107,10 +32128,10 @@ uae_u32 REGPARAM2 op_a18_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -32127,10 +32148,10 @@ uae_u32 REGPARAM2 op_a20_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32146,10 +32167,10 @@ uae_u32 REGPARAM2 op_a28_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32163,12 +32184,12 @@ uae_u32 REGPARAM2 op_a30_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32183,10 +32204,10 @@ uae_u32 REGPARAM2 op_a38_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32201,10 +32222,10 @@ uae_u32 REGPARAM2 op_a39_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32245,10 +32266,10 @@ uae_u32 REGPARAM2 op_a50_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32263,10 +32284,10 @@ uae_u32 REGPARAM2 op_a58_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -32283,10 +32304,10 @@ uae_u32 REGPARAM2 op_a60_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32302,10 +32323,10 @@ uae_u32 REGPARAM2 op_a68_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32319,12 +32340,12 @@ uae_u32 REGPARAM2 op_a70_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32339,10 +32360,10 @@ uae_u32 REGPARAM2 op_a78_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32357,10 +32378,10 @@ uae_u32 REGPARAM2 op_a79_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32390,10 +32411,10 @@ uae_u32 REGPARAM2 op_a90_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32408,10 +32429,10 @@ uae_u32 REGPARAM2 op_a98_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -32428,10 +32449,10 @@ uae_u32 REGPARAM2 op_aa0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32447,10 +32468,10 @@ uae_u32 REGPARAM2 op_aa8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32464,12 +32485,12 @@ uae_u32 REGPARAM2 op_ab0_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32484,10 +32505,10 @@ uae_u32 REGPARAM2 op_ab8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32502,10 +32523,10 @@ uae_u32 REGPARAM2 op_ab9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -32538,7 +32559,7 @@ uae_u32 REGPARAM2 op_c10_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32555,7 +32576,7 @@ uae_u32 REGPARAM2 op_c18_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); @@ -32574,7 +32595,7 @@ uae_u32 REGPARAM2 op_c20_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32592,7 +32613,7 @@ uae_u32 REGPARAM2 op_c28_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32608,9 +32629,9 @@ uae_u32 REGPARAM2 op_c30_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32627,7 +32648,7 @@ uae_u32 REGPARAM2 op_c38_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32644,7 +32665,7 @@ uae_u32 REGPARAM2 op_c39_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32664,7 +32685,7 @@ uae_u32 REGPARAM2 op_c3a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32683,9 +32704,9 @@ uae_u32 REGPARAM2 op_c3b_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32717,7 +32738,7 @@ uae_u32 REGPARAM2 op_c50_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32734,7 +32755,7 @@ uae_u32 REGPARAM2 op_c58_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ arm_ADD_l_ri8(dstreg+8,2); @@ -32753,7 +32774,7 @@ uae_u32 REGPARAM2 op_c60_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32771,7 +32792,7 @@ uae_u32 REGPARAM2 op_c68_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32787,9 +32808,9 @@ uae_u32 REGPARAM2 op_c70_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32806,7 +32827,7 @@ uae_u32 REGPARAM2 op_c78_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32823,7 +32844,7 @@ uae_u32 REGPARAM2 op_c79_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32843,7 +32864,7 @@ uae_u32 REGPARAM2 op_c7a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32862,9 +32883,9 @@ uae_u32 REGPARAM2 op_c7b_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32896,7 +32917,7 @@ uae_u32 REGPARAM2 op_c90_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32913,7 +32934,7 @@ uae_u32 REGPARAM2 op_c98_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ arm_ADD_l_ri8(dstreg+8,4); @@ -32932,7 +32953,7 @@ uae_u32 REGPARAM2 op_ca0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32950,7 +32971,7 @@ uae_u32 REGPARAM2 op_ca8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32966,9 +32987,9 @@ uae_u32 REGPARAM2 op_cb0_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -32985,7 +33006,7 @@ uae_u32 REGPARAM2 op_cb8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -33002,7 +33023,7 @@ uae_u32 REGPARAM2 op_cb9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -33022,7 +33043,7 @@ uae_u32 REGPARAM2 op_cba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -33041,9 +33062,9 @@ uae_u32 REGPARAM2 op_cbb_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -33074,7 +33095,7 @@ uae_u32 REGPARAM2 op_1010_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_b(dst, src); @@ -33091,7 +33112,7 @@ uae_u32 REGPARAM2 op_1018_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dst=dstreg; dont_care_flags(); @@ -33110,7 +33131,7 @@ uae_u32 REGPARAM2 op_1020_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_b(dst, src); @@ -33128,7 +33149,7 @@ uae_u32 REGPARAM2 op_1028_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_b(dst, src); @@ -33144,9 +33165,9 @@ uae_u32 REGPARAM2 op_1030_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_b(dst, src); @@ -33163,7 +33184,7 @@ uae_u32 REGPARAM2 op_1038_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_b(dst, src); @@ -33180,7 +33201,7 @@ uae_u32 REGPARAM2 op_1039_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_b(dst, src); @@ -33199,7 +33220,7 @@ uae_u32 REGPARAM2 op_103a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_b(dst, src); @@ -33217,9 +33238,9 @@ uae_u32 REGPARAM2 op_103b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_b(dst, src); @@ -33252,7 +33273,7 @@ uae_u32 REGPARAM2 op_1080_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33266,10 +33287,10 @@ uae_u32 REGPARAM2 op_1090_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33283,11 +33304,11 @@ uae_u32 REGPARAM2 op_1098_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33302,10 +33323,10 @@ uae_u32 REGPARAM2 op_10a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33320,10 +33341,10 @@ uae_u32 REGPARAM2 op_10a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33336,12 +33357,12 @@ uae_u32 REGPARAM2 op_10b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33355,10 +33376,10 @@ uae_u32 REGPARAM2 op_10b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33372,10 +33393,10 @@ uae_u32 REGPARAM2 op_10b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33391,10 +33412,10 @@ uae_u32 REGPARAM2 op_10ba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33409,12 +33430,12 @@ uae_u32 REGPARAM2 op_10bb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33429,7 +33450,7 @@ uae_u32 REGPARAM2 op_10bc_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33444,7 +33465,7 @@ uae_u32 REGPARAM2 op_10c0_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -33459,10 +33480,10 @@ uae_u32 REGPARAM2 op_10d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -33477,11 +33498,11 @@ uae_u32 REGPARAM2 op_10d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -33497,10 +33518,10 @@ uae_u32 REGPARAM2 op_10e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -33516,10 +33537,10 @@ uae_u32 REGPARAM2 op_10e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -33533,12 +33554,12 @@ uae_u32 REGPARAM2 op_10f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -33553,10 +33574,10 @@ uae_u32 REGPARAM2 op_10f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -33571,10 +33592,10 @@ uae_u32 REGPARAM2 op_10f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -33591,10 +33612,10 @@ uae_u32 REGPARAM2 op_10fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -33610,12 +33631,12 @@ uae_u32 REGPARAM2 op_10fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -33631,7 +33652,7 @@ uae_u32 REGPARAM2 op_10fc_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -33648,7 +33669,7 @@ uae_u32 REGPARAM2 op_1100_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33662,11 +33683,11 @@ uae_u32 REGPARAM2 op_1110_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33680,12 +33701,12 @@ uae_u32 REGPARAM2 op_1118_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33700,11 +33721,11 @@ uae_u32 REGPARAM2 op_1120_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33719,11 +33740,11 @@ uae_u32 REGPARAM2 op_1128_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33736,13 +33757,13 @@ uae_u32 REGPARAM2 op_1130_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33756,11 +33777,11 @@ uae_u32 REGPARAM2 op_1138_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33774,11 +33795,11 @@ uae_u32 REGPARAM2 op_1139_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33794,11 +33815,11 @@ uae_u32 REGPARAM2 op_113a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33813,13 +33834,13 @@ uae_u32 REGPARAM2 op_113b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33835,7 +33856,7 @@ uae_u32 REGPARAM2 op_113c_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33851,7 +33872,7 @@ uae_u32 REGPARAM2 op_1140_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33865,11 +33886,11 @@ uae_u32 REGPARAM2 op_1150_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33883,12 +33904,12 @@ uae_u32 REGPARAM2 op_1158_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33903,11 +33924,11 @@ uae_u32 REGPARAM2 op_1160_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33922,11 +33943,11 @@ uae_u32 REGPARAM2 op_1168_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33939,13 +33960,13 @@ uae_u32 REGPARAM2 op_1170_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33959,11 +33980,11 @@ uae_u32 REGPARAM2 op_1178_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33977,11 +33998,11 @@ uae_u32 REGPARAM2 op_1179_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -33997,11 +34018,11 @@ uae_u32 REGPARAM2 op_117a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34016,13 +34037,13 @@ uae_u32 REGPARAM2 op_117b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34038,7 +34059,7 @@ uae_u32 REGPARAM2 op_117c_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34052,9 +34073,9 @@ uae_u32 REGPARAM2 op_1180_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34068,11 +34089,11 @@ uae_u32 REGPARAM2 op_1190_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34086,12 +34107,12 @@ uae_u32 REGPARAM2 op_1198_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34106,11 +34127,11 @@ uae_u32 REGPARAM2 op_11a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34125,11 +34146,11 @@ uae_u32 REGPARAM2 op_11a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34142,13 +34163,13 @@ uae_u32 REGPARAM2 op_11b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34162,11 +34183,11 @@ uae_u32 REGPARAM2 op_11b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34180,11 +34201,11 @@ uae_u32 REGPARAM2 op_11b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34200,11 +34221,11 @@ uae_u32 REGPARAM2 op_11ba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34219,13 +34240,13 @@ uae_u32 REGPARAM2 op_11bb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34239,9 +34260,9 @@ uae_u32 REGPARAM2 op_11bc_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s8)comp_get_ibyte((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34256,7 +34277,7 @@ uae_u32 REGPARAM2 op_11c0_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34269,11 +34290,11 @@ uae_u32 REGPARAM2 op_11d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34286,12 +34307,12 @@ uae_u32 REGPARAM2 op_11d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34305,11 +34326,11 @@ uae_u32 REGPARAM2 op_11e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34323,11 +34344,11 @@ uae_u32 REGPARAM2 op_11e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34339,13 +34360,13 @@ uae_u32 REGPARAM2 op_11f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34358,11 +34379,11 @@ uae_u32 REGPARAM2 op_11f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34375,11 +34396,11 @@ uae_u32 REGPARAM2 op_11f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34394,11 +34415,11 @@ uae_u32 REGPARAM2 op_11fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34412,13 +34433,13 @@ uae_u32 REGPARAM2 op_11fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34433,7 +34454,7 @@ uae_u32 REGPARAM2 op_11fc_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34448,7 +34469,7 @@ uae_u32 REGPARAM2 op_13c0_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34461,11 +34482,11 @@ uae_u32 REGPARAM2 op_13d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34478,12 +34499,12 @@ uae_u32 REGPARAM2 op_13d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34497,11 +34518,11 @@ uae_u32 REGPARAM2 op_13e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34515,11 +34536,11 @@ uae_u32 REGPARAM2 op_13e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34531,13 +34552,13 @@ uae_u32 REGPARAM2 op_13f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34550,11 +34571,11 @@ uae_u32 REGPARAM2 op_13f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34567,11 +34588,11 @@ uae_u32 REGPARAM2 op_13f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34586,11 +34607,11 @@ uae_u32 REGPARAM2 op_13fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34604,13 +34625,13 @@ uae_u32 REGPARAM2 op_13fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34625,7 +34646,7 @@ uae_u32 REGPARAM2 op_13fc_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writebyte(dsta,src); + writebyte(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -34669,7 +34690,7 @@ uae_u32 REGPARAM2 op_2010_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_l(dst, src); @@ -34686,7 +34707,7 @@ uae_u32 REGPARAM2 op_2018_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg; dont_care_flags(); @@ -34705,7 +34726,7 @@ uae_u32 REGPARAM2 op_2020_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_l(dst, src); @@ -34723,7 +34744,7 @@ uae_u32 REGPARAM2 op_2028_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_l(dst, src); @@ -34739,9 +34760,9 @@ uae_u32 REGPARAM2 op_2030_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_l(dst, src); @@ -34758,7 +34779,7 @@ uae_u32 REGPARAM2 op_2038_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_l(dst, src); @@ -34775,7 +34796,7 @@ uae_u32 REGPARAM2 op_2039_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_l(dst, src); @@ -34794,7 +34815,7 @@ uae_u32 REGPARAM2 op_203a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_l(dst, src); @@ -34812,9 +34833,9 @@ uae_u32 REGPARAM2 op_203b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_l(dst, src); @@ -34874,7 +34895,7 @@ uae_u32 REGPARAM2 op_2050_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -34890,7 +34911,7 @@ uae_u32 REGPARAM2 op_2058_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg+8; jnf_MOVEA_l(dst, src); @@ -34908,7 +34929,7 @@ uae_u32 REGPARAM2 op_2060_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -34925,7 +34946,7 @@ uae_u32 REGPARAM2 op_2068_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -34940,9 +34961,9 @@ uae_u32 REGPARAM2 op_2070_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -34958,7 +34979,7 @@ uae_u32 REGPARAM2 op_2078_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -34974,7 +34995,7 @@ uae_u32 REGPARAM2 op_2079_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -34992,7 +35013,7 @@ uae_u32 REGPARAM2 op_207a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -35009,9 +35030,9 @@ uae_u32 REGPARAM2 op_207b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -35042,7 +35063,7 @@ uae_u32 REGPARAM2 op_2080_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35057,7 +35078,7 @@ uae_u32 REGPARAM2 op_2088_0_comp_nf(uae_u32 opcode) int src=srcreg+8; int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35071,10 +35092,10 @@ uae_u32 REGPARAM2 op_2090_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35088,11 +35109,11 @@ uae_u32 REGPARAM2 op_2098_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35107,10 +35128,10 @@ uae_u32 REGPARAM2 op_20a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35125,10 +35146,10 @@ uae_u32 REGPARAM2 op_20a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35141,12 +35162,12 @@ uae_u32 REGPARAM2 op_20b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35160,10 +35181,10 @@ uae_u32 REGPARAM2 op_20b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35177,10 +35198,10 @@ uae_u32 REGPARAM2 op_20b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35196,10 +35217,10 @@ uae_u32 REGPARAM2 op_20ba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35214,12 +35235,12 @@ uae_u32 REGPARAM2 op_20bb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35234,7 +35255,7 @@ uae_u32 REGPARAM2 op_20bc_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35249,7 +35270,7 @@ uae_u32 REGPARAM2 op_20c0_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -35269,7 +35290,7 @@ uae_u32 REGPARAM2 op_20c8_0_comp_nf(uae_u32 opcode) } int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -35284,10 +35305,10 @@ uae_u32 REGPARAM2 op_20d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -35302,11 +35323,11 @@ uae_u32 REGPARAM2 op_20d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -35322,10 +35343,10 @@ uae_u32 REGPARAM2 op_20e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -35341,10 +35362,10 @@ uae_u32 REGPARAM2 op_20e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -35358,12 +35379,12 @@ uae_u32 REGPARAM2 op_20f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -35378,10 +35399,10 @@ uae_u32 REGPARAM2 op_20f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -35396,10 +35417,10 @@ uae_u32 REGPARAM2 op_20f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -35416,10 +35437,10 @@ uae_u32 REGPARAM2 op_20fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -35435,12 +35456,12 @@ uae_u32 REGPARAM2 op_20fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -35456,7 +35477,7 @@ uae_u32 REGPARAM2 op_20fc_0_comp_nf(uae_u32 opcode) mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=dstreg+8; dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -35473,7 +35494,7 @@ uae_u32 REGPARAM2 op_2100_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35493,7 +35514,7 @@ uae_u32 REGPARAM2 op_2108_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35507,11 +35528,11 @@ uae_u32 REGPARAM2 op_2110_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35525,12 +35546,12 @@ uae_u32 REGPARAM2 op_2118_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35545,11 +35566,11 @@ uae_u32 REGPARAM2 op_2120_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35564,11 +35585,11 @@ uae_u32 REGPARAM2 op_2128_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35581,13 +35602,13 @@ uae_u32 REGPARAM2 op_2130_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35601,11 +35622,11 @@ uae_u32 REGPARAM2 op_2138_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35619,11 +35640,11 @@ uae_u32 REGPARAM2 op_2139_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35639,11 +35660,11 @@ uae_u32 REGPARAM2 op_213a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35658,13 +35679,13 @@ uae_u32 REGPARAM2 op_213b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35680,7 +35701,7 @@ uae_u32 REGPARAM2 op_213c_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35696,7 +35717,7 @@ uae_u32 REGPARAM2 op_2140_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35712,7 +35733,7 @@ uae_u32 REGPARAM2 op_2148_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35726,11 +35747,11 @@ uae_u32 REGPARAM2 op_2150_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35744,12 +35765,12 @@ uae_u32 REGPARAM2 op_2158_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35764,11 +35785,11 @@ uae_u32 REGPARAM2 op_2160_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35783,11 +35804,11 @@ uae_u32 REGPARAM2 op_2168_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35800,13 +35821,13 @@ uae_u32 REGPARAM2 op_2170_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35820,11 +35841,11 @@ uae_u32 REGPARAM2 op_2178_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35838,11 +35859,11 @@ uae_u32 REGPARAM2 op_2179_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35858,11 +35879,11 @@ uae_u32 REGPARAM2 op_217a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35877,13 +35898,13 @@ uae_u32 REGPARAM2 op_217b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35899,7 +35920,7 @@ uae_u32 REGPARAM2 op_217c_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35913,9 +35934,9 @@ uae_u32 REGPARAM2 op_2180_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35929,9 +35950,9 @@ uae_u32 REGPARAM2 op_2188_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg+8; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35945,11 +35966,11 @@ uae_u32 REGPARAM2 op_2190_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35963,12 +35984,12 @@ uae_u32 REGPARAM2 op_2198_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -35986,11 +36007,11 @@ uae_u32 REGPARAM2 op_21a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36005,11 +36026,11 @@ uae_u32 REGPARAM2 op_21a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36022,13 +36043,13 @@ uae_u32 REGPARAM2 op_21b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36042,11 +36063,11 @@ uae_u32 REGPARAM2 op_21b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36060,11 +36081,11 @@ uae_u32 REGPARAM2 op_21b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36080,11 +36101,11 @@ uae_u32 REGPARAM2 op_21ba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36099,13 +36120,13 @@ uae_u32 REGPARAM2 op_21bb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36119,9 +36140,9 @@ uae_u32 REGPARAM2 op_21bc_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,comp_get_ilong((m68k_pc_offset+=4)-4)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36136,7 +36157,7 @@ uae_u32 REGPARAM2 op_21c0_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36151,7 +36172,7 @@ uae_u32 REGPARAM2 op_21c8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36164,11 +36185,11 @@ uae_u32 REGPARAM2 op_21d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36181,12 +36202,12 @@ uae_u32 REGPARAM2 op_21d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36200,11 +36221,11 @@ uae_u32 REGPARAM2 op_21e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36218,11 +36239,11 @@ uae_u32 REGPARAM2 op_21e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36234,13 +36255,13 @@ uae_u32 REGPARAM2 op_21f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36253,11 +36274,11 @@ uae_u32 REGPARAM2 op_21f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36270,11 +36291,11 @@ uae_u32 REGPARAM2 op_21f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36289,11 +36310,11 @@ uae_u32 REGPARAM2 op_21fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36307,13 +36328,13 @@ uae_u32 REGPARAM2 op_21fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36328,7 +36349,7 @@ uae_u32 REGPARAM2 op_21fc_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36343,7 +36364,7 @@ uae_u32 REGPARAM2 op_23c0_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36358,7 +36379,7 @@ uae_u32 REGPARAM2 op_23c8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36371,11 +36392,11 @@ uae_u32 REGPARAM2 op_23d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36388,12 +36409,12 @@ uae_u32 REGPARAM2 op_23d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36407,11 +36428,11 @@ uae_u32 REGPARAM2 op_23e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36425,11 +36446,11 @@ uae_u32 REGPARAM2 op_23e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36441,13 +36462,13 @@ uae_u32 REGPARAM2 op_23f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36460,11 +36481,11 @@ uae_u32 REGPARAM2 op_23f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36477,11 +36498,11 @@ uae_u32 REGPARAM2 op_23f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36496,11 +36517,11 @@ uae_u32 REGPARAM2 op_23fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36514,13 +36535,13 @@ uae_u32 REGPARAM2 op_23fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36535,7 +36556,7 @@ uae_u32 REGPARAM2 op_23fc_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writelong(dsta,src); + writelong(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36579,7 +36600,7 @@ uae_u32 REGPARAM2 op_3010_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_w(dst, src); @@ -36596,7 +36617,7 @@ uae_u32 REGPARAM2 op_3018_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; dont_care_flags(); @@ -36615,7 +36636,7 @@ uae_u32 REGPARAM2 op_3020_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_w(dst, src); @@ -36633,7 +36654,7 @@ uae_u32 REGPARAM2 op_3028_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_w(dst, src); @@ -36649,9 +36670,9 @@ uae_u32 REGPARAM2 op_3030_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_w(dst, src); @@ -36668,7 +36689,7 @@ uae_u32 REGPARAM2 op_3038_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_w(dst, src); @@ -36685,7 +36706,7 @@ uae_u32 REGPARAM2 op_3039_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_w(dst, src); @@ -36704,7 +36725,7 @@ uae_u32 REGPARAM2 op_303a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_w(dst, src); @@ -36722,9 +36743,9 @@ uae_u32 REGPARAM2 op_303b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_MOVE_w(dst, src); @@ -36784,7 +36805,7 @@ uae_u32 REGPARAM2 op_3050_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -36800,7 +36821,7 @@ uae_u32 REGPARAM2 op_3058_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg+8; jnf_MOVEA_w(dst, src); @@ -36818,7 +36839,7 @@ uae_u32 REGPARAM2 op_3060_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -36835,7 +36856,7 @@ uae_u32 REGPARAM2 op_3068_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -36850,9 +36871,9 @@ uae_u32 REGPARAM2 op_3070_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -36868,7 +36889,7 @@ uae_u32 REGPARAM2 op_3078_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -36884,7 +36905,7 @@ uae_u32 REGPARAM2 op_3079_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -36902,7 +36923,7 @@ uae_u32 REGPARAM2 op_307a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -36919,9 +36940,9 @@ uae_u32 REGPARAM2 op_307b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_MOVEA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -36952,7 +36973,7 @@ uae_u32 REGPARAM2 op_3080_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36967,7 +36988,7 @@ uae_u32 REGPARAM2 op_3088_0_comp_nf(uae_u32 opcode) int src=srcreg+8; int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36981,10 +37002,10 @@ uae_u32 REGPARAM2 op_3090_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -36998,11 +37019,11 @@ uae_u32 REGPARAM2 op_3098_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37017,10 +37038,10 @@ uae_u32 REGPARAM2 op_30a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37035,10 +37056,10 @@ uae_u32 REGPARAM2 op_30a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37051,12 +37072,12 @@ uae_u32 REGPARAM2 op_30b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37070,10 +37091,10 @@ uae_u32 REGPARAM2 op_30b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37087,10 +37108,10 @@ uae_u32 REGPARAM2 op_30b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37106,10 +37127,10 @@ uae_u32 REGPARAM2 op_30ba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37124,12 +37145,12 @@ uae_u32 REGPARAM2 op_30bb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37144,7 +37165,7 @@ uae_u32 REGPARAM2 op_30bc_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37159,7 +37180,7 @@ uae_u32 REGPARAM2 op_30c0_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -37179,7 +37200,7 @@ uae_u32 REGPARAM2 op_30c8_0_comp_nf(uae_u32 opcode) } int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -37194,10 +37215,10 @@ uae_u32 REGPARAM2 op_30d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -37212,11 +37233,11 @@ uae_u32 REGPARAM2 op_30d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -37232,10 +37253,10 @@ uae_u32 REGPARAM2 op_30e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -37251,10 +37272,10 @@ uae_u32 REGPARAM2 op_30e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -37268,12 +37289,12 @@ uae_u32 REGPARAM2 op_30f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -37288,10 +37309,10 @@ uae_u32 REGPARAM2 op_30f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -37306,10 +37327,10 @@ uae_u32 REGPARAM2 op_30f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -37326,10 +37347,10 @@ uae_u32 REGPARAM2 op_30fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -37345,12 +37366,12 @@ uae_u32 REGPARAM2 op_30fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -37366,7 +37387,7 @@ uae_u32 REGPARAM2 op_30fc_0_comp_nf(uae_u32 opcode) mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=dstreg+8; dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -37383,7 +37404,7 @@ uae_u32 REGPARAM2 op_3100_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37403,7 +37424,7 @@ uae_u32 REGPARAM2 op_3108_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37417,11 +37438,11 @@ uae_u32 REGPARAM2 op_3110_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37435,12 +37456,12 @@ uae_u32 REGPARAM2 op_3118_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37455,11 +37476,11 @@ uae_u32 REGPARAM2 op_3120_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37474,11 +37495,11 @@ uae_u32 REGPARAM2 op_3128_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37491,13 +37512,13 @@ uae_u32 REGPARAM2 op_3130_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37511,11 +37532,11 @@ uae_u32 REGPARAM2 op_3138_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37529,11 +37550,11 @@ uae_u32 REGPARAM2 op_3139_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37549,11 +37570,11 @@ uae_u32 REGPARAM2 op_313a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37568,13 +37589,13 @@ uae_u32 REGPARAM2 op_313b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37590,7 +37611,7 @@ uae_u32 REGPARAM2 op_313c_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37606,7 +37627,7 @@ uae_u32 REGPARAM2 op_3140_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37622,7 +37643,7 @@ uae_u32 REGPARAM2 op_3148_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37636,11 +37657,11 @@ uae_u32 REGPARAM2 op_3150_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37654,12 +37675,12 @@ uae_u32 REGPARAM2 op_3158_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37674,11 +37695,11 @@ uae_u32 REGPARAM2 op_3160_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37693,11 +37714,11 @@ uae_u32 REGPARAM2 op_3168_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37710,13 +37731,13 @@ uae_u32 REGPARAM2 op_3170_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37730,11 +37751,11 @@ uae_u32 REGPARAM2 op_3178_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37748,11 +37769,11 @@ uae_u32 REGPARAM2 op_3179_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37768,11 +37789,11 @@ uae_u32 REGPARAM2 op_317a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37787,13 +37808,13 @@ uae_u32 REGPARAM2 op_317b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37809,7 +37830,7 @@ uae_u32 REGPARAM2 op_317c_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37823,9 +37844,9 @@ uae_u32 REGPARAM2 op_3180_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37839,9 +37860,9 @@ uae_u32 REGPARAM2 op_3188_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg+8; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37855,11 +37876,11 @@ uae_u32 REGPARAM2 op_3190_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37873,12 +37894,12 @@ uae_u32 REGPARAM2 op_3198_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37893,11 +37914,11 @@ uae_u32 REGPARAM2 op_31a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37912,11 +37933,11 @@ uae_u32 REGPARAM2 op_31a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37929,13 +37950,13 @@ uae_u32 REGPARAM2 op_31b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37949,11 +37970,11 @@ uae_u32 REGPARAM2 op_31b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37967,11 +37988,11 @@ uae_u32 REGPARAM2 op_31b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -37987,11 +38008,11 @@ uae_u32 REGPARAM2 op_31ba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38006,13 +38027,13 @@ uae_u32 REGPARAM2 op_31bb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38026,9 +38047,9 @@ uae_u32 REGPARAM2 op_31bc_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38043,7 +38064,7 @@ uae_u32 REGPARAM2 op_31c0_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38058,7 +38079,7 @@ uae_u32 REGPARAM2 op_31c8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38071,11 +38092,11 @@ uae_u32 REGPARAM2 op_31d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38088,12 +38109,12 @@ uae_u32 REGPARAM2 op_31d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38107,11 +38128,11 @@ uae_u32 REGPARAM2 op_31e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38125,11 +38146,11 @@ uae_u32 REGPARAM2 op_31e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38141,13 +38162,13 @@ uae_u32 REGPARAM2 op_31f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38160,11 +38181,11 @@ uae_u32 REGPARAM2 op_31f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38177,11 +38198,11 @@ uae_u32 REGPARAM2 op_31f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38196,11 +38217,11 @@ uae_u32 REGPARAM2 op_31fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38214,13 +38235,13 @@ uae_u32 REGPARAM2 op_31fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38235,7 +38256,7 @@ uae_u32 REGPARAM2 op_31fc_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38250,7 +38271,7 @@ uae_u32 REGPARAM2 op_33c0_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38265,7 +38286,7 @@ uae_u32 REGPARAM2 op_33c8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38278,11 +38299,11 @@ uae_u32 REGPARAM2 op_33d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38295,12 +38316,12 @@ uae_u32 REGPARAM2 op_33d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38314,11 +38335,11 @@ uae_u32 REGPARAM2 op_33e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38332,11 +38353,11 @@ uae_u32 REGPARAM2 op_33e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38348,13 +38369,13 @@ uae_u32 REGPARAM2 op_33f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38367,11 +38388,11 @@ uae_u32 REGPARAM2 op_33f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38384,11 +38405,11 @@ uae_u32 REGPARAM2 op_33f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38403,11 +38424,11 @@ uae_u32 REGPARAM2 op_33fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38421,13 +38442,13 @@ uae_u32 REGPARAM2 op_33fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38442,7 +38463,7 @@ uae_u32 REGPARAM2 op_33fc_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ dont_care_flags(); - writeword(dsta,src); + writeword(dsta,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38467,9 +38488,9 @@ uae_u32 REGPARAM2 op_4010_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEGX_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38482,9 +38503,9 @@ uae_u32 REGPARAM2 op_4018_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEGX_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -38499,9 +38520,9 @@ uae_u32 REGPARAM2 op_4020_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEGX_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38515,9 +38536,9 @@ uae_u32 REGPARAM2 op_4028_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEGX_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38529,11 +38550,11 @@ uae_u32 REGPARAM2 op_4030_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEGX_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38546,9 +38567,9 @@ uae_u32 REGPARAM2 op_4038_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEGX_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38561,9 +38582,9 @@ uae_u32 REGPARAM2 op_4039_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEGX_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38588,9 +38609,9 @@ uae_u32 REGPARAM2 op_4050_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEGX_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38603,9 +38624,9 @@ uae_u32 REGPARAM2 op_4058_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEGX_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -38620,9 +38641,9 @@ uae_u32 REGPARAM2 op_4060_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEGX_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38636,9 +38657,9 @@ uae_u32 REGPARAM2 op_4068_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEGX_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38650,11 +38671,11 @@ uae_u32 REGPARAM2 op_4070_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEGX_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38667,9 +38688,9 @@ uae_u32 REGPARAM2 op_4078_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEGX_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38682,9 +38703,9 @@ uae_u32 REGPARAM2 op_4079_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEGX_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38709,9 +38730,9 @@ uae_u32 REGPARAM2 op_4090_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEGX_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38724,9 +38745,9 @@ uae_u32 REGPARAM2 op_4098_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEGX_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -38741,9 +38762,9 @@ uae_u32 REGPARAM2 op_40a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEGX_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38757,9 +38778,9 @@ uae_u32 REGPARAM2 op_40a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEGX_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38771,11 +38792,11 @@ uae_u32 REGPARAM2 op_40b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEGX_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38788,9 +38809,9 @@ uae_u32 REGPARAM2 op_40b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEGX_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38803,9 +38824,9 @@ uae_u32 REGPARAM2 op_40b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEGX_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38849,7 +38870,7 @@ uae_u32 REGPARAM2 op_41f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int dst=dstreg+8; if(dstreg+8!=srca) mov_l_rr(dstreg+8,srca); @@ -38914,7 +38935,7 @@ uae_u32 REGPARAM2 op_41fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int dst=dstreg+8; if(dstreg+8!=srca) mov_l_rr(dstreg+8,srca); @@ -38945,7 +38966,7 @@ uae_u32 REGPARAM2 op_4210_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38960,7 +38981,7 @@ uae_u32 REGPARAM2 op_4218_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -38977,7 +38998,7 @@ uae_u32 REGPARAM2 op_4220_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -38993,7 +39014,7 @@ uae_u32 REGPARAM2 op_4228_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39005,11 +39026,11 @@ uae_u32 REGPARAM2 op_4230_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; dont_care_flags(); jnf_CLR_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39024,7 +39045,7 @@ uae_u32 REGPARAM2 op_4238_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39039,7 +39060,7 @@ uae_u32 REGPARAM2 op_4239_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39067,7 +39088,7 @@ uae_u32 REGPARAM2 op_4250_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39082,7 +39103,7 @@ uae_u32 REGPARAM2 op_4258_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -39099,7 +39120,7 @@ uae_u32 REGPARAM2 op_4260_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39115,7 +39136,7 @@ uae_u32 REGPARAM2 op_4268_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39127,11 +39148,11 @@ uae_u32 REGPARAM2 op_4270_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; dont_care_flags(); jnf_CLR_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39146,7 +39167,7 @@ uae_u32 REGPARAM2 op_4278_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39161,7 +39182,7 @@ uae_u32 REGPARAM2 op_4279_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39189,7 +39210,7 @@ uae_u32 REGPARAM2 op_4290_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39204,7 +39225,7 @@ uae_u32 REGPARAM2 op_4298_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -39221,7 +39242,7 @@ uae_u32 REGPARAM2 op_42a0_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39237,7 +39258,7 @@ uae_u32 REGPARAM2 op_42a8_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39249,11 +39270,11 @@ uae_u32 REGPARAM2 op_42b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; dont_care_flags(); jnf_CLR_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39268,7 +39289,7 @@ uae_u32 REGPARAM2 op_42b8_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39283,7 +39304,7 @@ uae_u32 REGPARAM2 op_42b9_0_comp_nf(uae_u32 opcode) int src=scratchie++; dont_care_flags(); jnf_CLR_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39311,9 +39332,9 @@ uae_u32 REGPARAM2 op_4410_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEG_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39326,9 +39347,9 @@ uae_u32 REGPARAM2 op_4418_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEG_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -39343,9 +39364,9 @@ uae_u32 REGPARAM2 op_4420_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEG_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39359,9 +39380,9 @@ uae_u32 REGPARAM2 op_4428_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEG_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39373,11 +39394,11 @@ uae_u32 REGPARAM2 op_4430_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEG_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39390,9 +39411,9 @@ uae_u32 REGPARAM2 op_4438_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEG_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39405,9 +39426,9 @@ uae_u32 REGPARAM2 op_4439_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); jnf_NEG_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39432,9 +39453,9 @@ uae_u32 REGPARAM2 op_4450_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEG_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39447,9 +39468,9 @@ uae_u32 REGPARAM2 op_4458_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEG_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -39464,9 +39485,9 @@ uae_u32 REGPARAM2 op_4460_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEG_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39480,9 +39501,9 @@ uae_u32 REGPARAM2 op_4468_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEG_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39494,11 +39515,11 @@ uae_u32 REGPARAM2 op_4470_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEG_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39511,9 +39532,9 @@ uae_u32 REGPARAM2 op_4478_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEG_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39526,9 +39547,9 @@ uae_u32 REGPARAM2 op_4479_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_NEG_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39553,9 +39574,9 @@ uae_u32 REGPARAM2 op_4490_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEG_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39568,9 +39589,9 @@ uae_u32 REGPARAM2 op_4498_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEG_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -39585,9 +39606,9 @@ uae_u32 REGPARAM2 op_44a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEG_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39601,9 +39622,9 @@ uae_u32 REGPARAM2 op_44a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEG_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39615,11 +39636,11 @@ uae_u32 REGPARAM2 op_44b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEG_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39632,9 +39653,9 @@ uae_u32 REGPARAM2 op_44b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEG_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39647,9 +39668,9 @@ uae_u32 REGPARAM2 op_44b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); jnf_NEG_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39675,10 +39696,10 @@ uae_u32 REGPARAM2 op_4610_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jnf_NOT_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39691,10 +39712,10 @@ uae_u32 REGPARAM2 op_4618_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jnf_NOT_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -39709,10 +39730,10 @@ uae_u32 REGPARAM2 op_4620_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jnf_NOT_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39726,10 +39747,10 @@ uae_u32 REGPARAM2 op_4628_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jnf_NOT_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39741,12 +39762,12 @@ uae_u32 REGPARAM2 op_4630_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jnf_NOT_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39759,10 +39780,10 @@ uae_u32 REGPARAM2 op_4638_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jnf_NOT_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39775,10 +39796,10 @@ uae_u32 REGPARAM2 op_4639_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); jnf_NOT_b(src); - writebyte(srca,src); + writebyte(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39804,10 +39825,10 @@ uae_u32 REGPARAM2 op_4650_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jnf_NOT_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39820,10 +39841,10 @@ uae_u32 REGPARAM2 op_4658_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jnf_NOT_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -39838,10 +39859,10 @@ uae_u32 REGPARAM2 op_4660_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jnf_NOT_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39855,10 +39876,10 @@ uae_u32 REGPARAM2 op_4668_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jnf_NOT_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39870,12 +39891,12 @@ uae_u32 REGPARAM2 op_4670_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jnf_NOT_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39888,10 +39909,10 @@ uae_u32 REGPARAM2 op_4678_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jnf_NOT_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39904,10 +39925,10 @@ uae_u32 REGPARAM2 op_4679_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); jnf_NOT_w(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39933,10 +39954,10 @@ uae_u32 REGPARAM2 op_4690_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jnf_NOT_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39949,10 +39970,10 @@ uae_u32 REGPARAM2 op_4698_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jnf_NOT_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -39967,10 +39988,10 @@ uae_u32 REGPARAM2 op_46a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jnf_NOT_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39984,10 +40005,10 @@ uae_u32 REGPARAM2 op_46a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jnf_NOT_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -39999,12 +40020,12 @@ uae_u32 REGPARAM2 op_46b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jnf_NOT_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -40017,10 +40038,10 @@ uae_u32 REGPARAM2 op_46b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jnf_NOT_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -40033,10 +40054,10 @@ uae_u32 REGPARAM2 op_46b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); jnf_NOT_l(src); - writelong(srca,src); + writelong(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -40051,7 +40072,7 @@ uae_u32 REGPARAM2 op_4808_0_comp_nf(uae_u32 opcode) int offs = scratchie++; mov_l_ri(offs,comp_get_ilong((m68k_pc_offset+=4)-4)); sub_l_ri(15,4); - writelong_clobber(15,src); + writelong_clobber(15,src,scratchie); mov_l_rr(src,15); arm_ADD_l(15,offs); if(srcreg+8!=src) @@ -40088,7 +40109,7 @@ if (srcreg==7) dodgy=1; arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -40107,7 +40128,7 @@ if (srcreg==7) dodgy=1; arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -40121,12 +40142,12 @@ uae_u32 REGPARAM2 op_4870_0_comp_nf(uae_u32 opcode) int dodgy=0; if (srcreg==7) dodgy=1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); { int dsta=dodgy?scratchie++:7+8; arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -40143,7 +40164,7 @@ uae_u32 REGPARAM2 op_4878_0_comp_nf(uae_u32 opcode) arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -40160,7 +40181,7 @@ uae_u32 REGPARAM2 op_4879_0_comp_nf(uae_u32 opcode) arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -40179,7 +40200,7 @@ uae_u32 REGPARAM2 op_487a_0_comp_nf(uae_u32 opcode) arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -40194,12 +40215,12 @@ uae_u32 REGPARAM2 op_487b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; { mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); { int dsta=dodgy?scratchie++:7+8; arm_SUB_l_ri8(7+8,4); if (dodgy) mov_l_rr(dsta,8+7); - writelong(dsta,srca); + writelong(dsta,srca,scratchie); }} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -40230,7 +40251,7 @@ uae_u32 REGPARAM2 op_4890_0_comp_nf(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_w(native,i,offset); @@ -40240,7 +40261,7 @@ uae_u32 REGPARAM2 op_4890_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writeword(tmp,i); + writeword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } } @@ -40261,7 +40282,7 @@ uae_u32 REGPARAM2 op_48a0_0_comp_nf(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { offset-=2; @@ -40272,7 +40293,7 @@ uae_u32 REGPARAM2 op_48a0_0_comp_nf(uae_u32 opcode) for (i=0;i<16;i++) { if ((mask>>i)&1) { arm_SUB_l_ri8(srca,2); - writeword(srca,15-i); + writeword(srca,15-i,scratchie); } } mov_l_rr(8+dstreg,srca); } @@ -40294,7 +40315,7 @@ uae_u32 REGPARAM2 op_48a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_w(native,i,offset); @@ -40304,7 +40325,7 @@ uae_u32 REGPARAM2 op_48a8_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writeword(tmp,i); + writeword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } } @@ -40324,9 +40345,9 @@ uae_u32 REGPARAM2 op_48b0_0_comp_nf(uae_u32 opcode) int tmp=scratchie++; signed char offset=0; int srca=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_w(native,i,offset); @@ -40336,7 +40357,7 @@ uae_u32 REGPARAM2 op_48b0_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writeword(tmp,i); + writeword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } } @@ -40357,7 +40378,7 @@ uae_u32 REGPARAM2 op_48b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_w(native,i,offset); @@ -40367,7 +40388,7 @@ uae_u32 REGPARAM2 op_48b8_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writeword(tmp,i); + writeword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } } @@ -40388,7 +40409,7 @@ uae_u32 REGPARAM2 op_48b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_w(native,i,offset); @@ -40398,7 +40419,7 @@ uae_u32 REGPARAM2 op_48b9_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writeword(tmp,i); + writeword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } } @@ -40432,7 +40453,7 @@ uae_u32 REGPARAM2 op_48d0_0_comp_nf(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_l(native,i,offset); @@ -40442,7 +40463,7 @@ uae_u32 REGPARAM2 op_48d0_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writelong(tmp,i); + writelong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } } @@ -40463,7 +40484,7 @@ uae_u32 REGPARAM2 op_48e0_0_comp_nf(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { offset-=4; @@ -40474,7 +40495,7 @@ uae_u32 REGPARAM2 op_48e0_0_comp_nf(uae_u32 opcode) for (i=0;i<16;i++) { if ((mask>>i)&1) { arm_SUB_l_ri8(srca,4); - writelong(srca,15-i); + writelong(srca,15-i,scratchie); } } mov_l_rr(8+dstreg,srca); } @@ -40496,7 +40517,7 @@ uae_u32 REGPARAM2 op_48e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_l(native,i,offset); @@ -40506,7 +40527,7 @@ uae_u32 REGPARAM2 op_48e8_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writelong(tmp,i); + writelong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } } @@ -40526,9 +40547,9 @@ uae_u32 REGPARAM2 op_48f0_0_comp_nf(uae_u32 opcode) int tmp=scratchie++; signed char offset=0; int srca=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_l(native,i,offset); @@ -40538,7 +40559,7 @@ uae_u32 REGPARAM2 op_48f0_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writelong(tmp,i); + writelong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } } @@ -40559,7 +40580,7 @@ uae_u32 REGPARAM2 op_48f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_l(native,i,offset); @@ -40569,7 +40590,7 @@ uae_u32 REGPARAM2 op_48f8_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writelong(tmp,i); + writelong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } } @@ -40590,7 +40611,7 @@ uae_u32 REGPARAM2 op_48f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMLE_l(native,i,offset); @@ -40600,7 +40621,7 @@ uae_u32 REGPARAM2 op_48f9_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - writelong(tmp,i); + writelong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } } @@ -40641,7 +40662,7 @@ uae_u32 REGPARAM2 op_4a10_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40655,7 +40676,7 @@ uae_u32 REGPARAM2 op_4a18_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -40671,7 +40692,7 @@ uae_u32 REGPARAM2 op_4a20_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40686,7 +40707,7 @@ uae_u32 REGPARAM2 op_4a28_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40699,9 +40720,9 @@ uae_u32 REGPARAM2 op_4a30_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40715,7 +40736,7 @@ uae_u32 REGPARAM2 op_4a38_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40729,7 +40750,7 @@ uae_u32 REGPARAM2 op_4a39_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40745,7 +40766,7 @@ uae_u32 REGPARAM2 op_4a3a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40760,9 +40781,9 @@ uae_u32 REGPARAM2 op_4a3b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40812,7 +40833,7 @@ uae_u32 REGPARAM2 op_4a50_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40826,7 +40847,7 @@ uae_u32 REGPARAM2 op_4a58_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -40842,7 +40863,7 @@ uae_u32 REGPARAM2 op_4a60_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40857,7 +40878,7 @@ uae_u32 REGPARAM2 op_4a68_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40870,9 +40891,9 @@ uae_u32 REGPARAM2 op_4a70_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40886,7 +40907,7 @@ uae_u32 REGPARAM2 op_4a78_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40900,7 +40921,7 @@ uae_u32 REGPARAM2 op_4a79_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40916,7 +40937,7 @@ uae_u32 REGPARAM2 op_4a7a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40931,9 +40952,9 @@ uae_u32 REGPARAM2 op_4a7b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40983,7 +41004,7 @@ uae_u32 REGPARAM2 op_4a90_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -40997,7 +41018,7 @@ uae_u32 REGPARAM2 op_4a98_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); arm_ADD_l_ri8(srcreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -41013,7 +41034,7 @@ uae_u32 REGPARAM2 op_4aa0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -41028,7 +41049,7 @@ uae_u32 REGPARAM2 op_4aa8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -41041,9 +41062,9 @@ uae_u32 REGPARAM2 op_4ab0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -41057,7 +41078,7 @@ uae_u32 REGPARAM2 op_4ab8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -41071,7 +41092,7 @@ uae_u32 REGPARAM2 op_4ab9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -41087,7 +41108,7 @@ uae_u32 REGPARAM2 op_4aba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -41102,9 +41123,9 @@ uae_u32 REGPARAM2 op_4abb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); dont_care_flags(); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -41160,7 +41181,7 @@ uae_u32 REGPARAM2 op_4c10_0_comp_nf(uae_u32 opcode) int r2=(extra>>12)&7; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -41190,7 +41211,7 @@ uae_u32 REGPARAM2 op_4c18_0_comp_nf(uae_u32 opcode) int r2=(extra>>12)&7; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (extra & 0x0400) { int r3=(extra & 7); @@ -41222,7 +41243,7 @@ uae_u32 REGPARAM2 op_4c20_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -41253,7 +41274,7 @@ uae_u32 REGPARAM2 op_4c28_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -41282,9 +41303,9 @@ uae_u32 REGPARAM2 op_4c30_0_comp_nf(uae_u32 opcode) uae_u16 extra=comp_get_iword((m68k_pc_offset+=2)-2); int r2=(extra>>12)&7; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -41314,7 +41335,7 @@ uae_u32 REGPARAM2 op_4c38_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -41344,7 +41365,7 @@ uae_u32 REGPARAM2 op_4c39_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -41377,7 +41398,7 @@ uae_u32 REGPARAM2 op_4c3a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -41409,9 +41430,9 @@ uae_u32 REGPARAM2 op_4c3b_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); if (extra & 0x0400) { int r3=(extra & 7); mov_l_rr(r3,dst); @@ -41507,7 +41528,7 @@ uae_u32 REGPARAM2 op_4c50_0_comp_nf(uae_u32 opcode) int r3=extra&7; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -41541,7 +41562,7 @@ uae_u32 REGPARAM2 op_4c58_0_comp_nf(uae_u32 opcode) int r3=extra&7; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); register_possible_exception(); if (extra & 0x0400) { @@ -41577,7 +41598,7 @@ uae_u32 REGPARAM2 op_4c60_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -41612,7 +41633,7 @@ uae_u32 REGPARAM2 op_4c68_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -41645,9 +41666,9 @@ uae_u32 REGPARAM2 op_4c70_0_comp_nf(uae_u32 opcode) int r2=(extra>>12)&7; int r3=extra&7; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -41681,7 +41702,7 @@ uae_u32 REGPARAM2 op_4c78_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -41715,7 +41736,7 @@ uae_u32 REGPARAM2 op_4c79_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -41752,7 +41773,7 @@ uae_u32 REGPARAM2 op_4c7a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(dsta,address+PC16off); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -41788,9 +41809,9 @@ uae_u32 REGPARAM2 op_4c7b_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); register_possible_exception(); if (extra & 0x0400) { FAIL(1); @@ -41852,7 +41873,7 @@ uae_u32 REGPARAM2 op_4c90_0_comp_nf(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -41863,7 +41884,7 @@ uae_u32 REGPARAM2 op_4c90_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -41884,7 +41905,7 @@ uae_u32 REGPARAM2 op_4c98_0_comp_nf(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -41896,7 +41917,7 @@ uae_u32 REGPARAM2 op_4c98_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -41919,7 +41940,7 @@ uae_u32 REGPARAM2 op_4ca8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -41930,7 +41951,7 @@ uae_u32 REGPARAM2 op_4ca8_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -41950,9 +41971,9 @@ uae_u32 REGPARAM2 op_4cb0_0_comp_nf(uae_u32 opcode) int i; signed char offset=0; int srca=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -41963,7 +41984,7 @@ uae_u32 REGPARAM2 op_4cb0_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -41984,7 +42005,7 @@ uae_u32 REGPARAM2 op_4cb8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -41995,7 +42016,7 @@ uae_u32 REGPARAM2 op_4cb8_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -42016,7 +42037,7 @@ uae_u32 REGPARAM2 op_4cb9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -42027,7 +42048,7 @@ uae_u32 REGPARAM2 op_4cb9_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -42051,7 +42072,7 @@ uae_u32 REGPARAM2 op_4cba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -42062,7 +42083,7 @@ uae_u32 REGPARAM2 op_4cba_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -42085,9 +42106,9 @@ uae_u32 REGPARAM2 op_4cbb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_w(i,native,offset); @@ -42098,7 +42119,7 @@ uae_u32 REGPARAM2 op_4cbb_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readword(tmp,i); + readword(tmp,i,scratchie); arm_ADD_l_ri8(tmp,2); } } @@ -42119,7 +42140,7 @@ uae_u32 REGPARAM2 op_4cd0_0_comp_nf(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -42130,7 +42151,7 @@ uae_u32 REGPARAM2 op_4cd0_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -42151,7 +42172,7 @@ uae_u32 REGPARAM2 op_4cd8_0_comp_nf(uae_u32 opcode) signed char offset=0; int srca=dstreg+8; if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -42163,7 +42184,7 @@ uae_u32 REGPARAM2 op_4cd8_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -42186,7 +42207,7 @@ uae_u32 REGPARAM2 op_4ce8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -42197,7 +42218,7 @@ uae_u32 REGPARAM2 op_4ce8_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -42217,9 +42238,9 @@ uae_u32 REGPARAM2 op_4cf0_0_comp_nf(uae_u32 opcode) int i; signed char offset=0; int srca=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -42230,7 +42251,7 @@ uae_u32 REGPARAM2 op_4cf0_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -42251,7 +42272,7 @@ uae_u32 REGPARAM2 op_4cf8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -42262,7 +42283,7 @@ uae_u32 REGPARAM2 op_4cf8_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -42283,7 +42304,7 @@ uae_u32 REGPARAM2 op_4cf9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -42294,7 +42315,7 @@ uae_u32 REGPARAM2 op_4cf9_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -42318,7 +42339,7 @@ uae_u32 REGPARAM2 op_4cfa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -42329,7 +42350,7 @@ uae_u32 REGPARAM2 op_4cfa_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -42352,9 +42373,9 @@ uae_u32 REGPARAM2 op_4cfb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); if (!special_mem) { - get_n_addr(srca,native); + get_n_addr(srca,native,scratchie); for (i=0;i<16;i++) { if ((mask>>i)&1) { jnf_MVMEL_l(i,native,offset); @@ -42365,7 +42386,7 @@ uae_u32 REGPARAM2 op_4cfb_0_comp_nf(uae_u32 opcode) mov_l_rr(tmp,srca); for (i=0;i<16;i++) { if ((mask>>i)&1) { - readlong(tmp,i); + readlong(tmp,i,scratchie); arm_ADD_l_ri8(tmp,4); } } @@ -42384,7 +42405,7 @@ uae_u32 REGPARAM2 op_4e50_0_comp_nf(uae_u32 opcode) int offs = scratchie++; mov_l_ri(offs,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); sub_l_ri(15,4); - writelong_clobber(15,src); + writelong_clobber(15,src,scratchie); mov_l_rr(src,15); arm_ADD_l(15,offs); if(srcreg+8!=src) @@ -42401,7 +42422,7 @@ uae_u32 REGPARAM2 op_4e58_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg+8; mov_l_rr(15,src); - readlong(15,src); + readlong(15,src,scratchie); arm_ADD_l_ri8(15,4); if(srcreg+8!=src) mov_l_rr(srcreg+8,src); @@ -42427,9 +42448,9 @@ uae_u32 REGPARAM2 op_4e74_0_comp_nf(uae_u32 opcode) mov_l_ri(offs,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); arm_ADD_l_ri8(offs,4); { int newad=scratchie++; - readlong(15,newad); + readlong(15,newad,scratchie); mov_l_mr((uintptr)®s.pc,newad); - get_n_addr_jmp(newad,PC_P); + get_n_addr_jmp(newad,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; arm_ADD_l(15,offs); @@ -42443,9 +42464,9 @@ uae_u32 REGPARAM2 op_4e75_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int newad=scratchie++; - readlong(15,newad); + readlong(15,newad,scratchie); mov_l_mr((uintptr)®s.pc,newad); - get_n_addr_jmp(newad,PC_P); + get_n_addr_jmp(newad,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; arm_ADD_l_ri8(15,4); @@ -42464,9 +42485,9 @@ uae_u32 REGPARAM2 op_4e90_0_comp_nf(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42485,9 +42506,9 @@ uae_u32 REGPARAM2 op_4ea8_0_comp_nf(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42501,14 +42522,14 @@ uae_u32 REGPARAM2 op_4eb0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); { uae_u32 retadd=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42526,9 +42547,9 @@ uae_u32 REGPARAM2 op_4eb8_0_comp_nf(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42546,9 +42567,9 @@ uae_u32 REGPARAM2 op_4eb9_0_comp_nf(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42568,9 +42589,9 @@ uae_u32 REGPARAM2 op_4eba_0_comp_nf(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42586,14 +42607,14 @@ uae_u32 REGPARAM2 op_4ebb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); { uae_u32 retadd=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; } if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42608,7 +42629,7 @@ uae_u32 REGPARAM2 op_4ed0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42624,7 +42645,7 @@ uae_u32 REGPARAM2 op_4ee8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42638,9 +42659,9 @@ uae_u32 REGPARAM2 op_4ef0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42655,7 +42676,7 @@ uae_u32 REGPARAM2 op_4ef8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42670,7 +42691,7 @@ uae_u32 REGPARAM2 op_4ef9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42687,7 +42708,7 @@ uae_u32 REGPARAM2 op_4efa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42703,9 +42724,9 @@ uae_u32 REGPARAM2 op_4efb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); mov_l_mr((uintptr)®s.pc,srca); - get_n_addr_jmp(srca,PC_P); + get_n_addr_jmp(srca,PC_P,scratchie); mov_l_mr((uintptr)®s.pc_oldp,PC_P); m68k_pc_offset=0; if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -42739,10 +42760,10 @@ uae_u32 REGPARAM2 op_5010_0_comp_nf(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -42758,10 +42779,10 @@ uae_u32 REGPARAM2 op_5018_0_comp_nf(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -42779,10 +42800,10 @@ uae_u32 REGPARAM2 op_5020_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -42799,10 +42820,10 @@ uae_u32 REGPARAM2 op_5028_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -42817,12 +42838,12 @@ uae_u32 REGPARAM2 op_5030_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,srcreg); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -42838,10 +42859,10 @@ uae_u32 REGPARAM2 op_5038_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -42857,10 +42878,10 @@ uae_u32 REGPARAM2 op_5039_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -42907,10 +42928,10 @@ uae_u32 REGPARAM2 op_5050_0_comp_nf(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -42926,10 +42947,10 @@ uae_u32 REGPARAM2 op_5058_0_comp_nf(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -42947,10 +42968,10 @@ uae_u32 REGPARAM2 op_5060_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -42967,10 +42988,10 @@ uae_u32 REGPARAM2 op_5068_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -42985,12 +43006,12 @@ uae_u32 REGPARAM2 op_5070_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,srcreg); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43006,10 +43027,10 @@ uae_u32 REGPARAM2 op_5078_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43025,10 +43046,10 @@ uae_u32 REGPARAM2 op_5079_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43075,10 +43096,10 @@ uae_u32 REGPARAM2 op_5090_0_comp_nf(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43094,10 +43115,10 @@ uae_u32 REGPARAM2 op_5098_0_comp_nf(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -43115,10 +43136,10 @@ uae_u32 REGPARAM2 op_50a0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43138,10 +43159,10 @@ uae_u32 REGPARAM2 op_50a8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43156,12 +43177,12 @@ uae_u32 REGPARAM2 op_50b0_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,srcreg); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43177,10 +43198,10 @@ uae_u32 REGPARAM2 op_50b8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43196,10 +43217,10 @@ uae_u32 REGPARAM2 op_50b9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43243,7 +43264,7 @@ uae_u32 REGPARAM2 op_50d0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43257,7 +43278,7 @@ uae_u32 REGPARAM2 op_50d8_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -43273,7 +43294,7 @@ uae_u32 REGPARAM2 op_50e0_0_comp_nf(uae_u32 opcode) arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43288,7 +43309,7 @@ uae_u32 REGPARAM2 op_50e8_0_comp_nf(uae_u32 opcode) lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43300,10 +43321,10 @@ uae_u32 REGPARAM2 op_50f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43317,7 +43338,7 @@ uae_u32 REGPARAM2 op_50f8_0_comp_nf(uae_u32 opcode) mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43331,7 +43352,7 @@ uae_u32 REGPARAM2 op_50f9_0_comp_nf(uae_u32 opcode) mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int val = scratchie++; mov_b_ri(val, 0xff); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43363,10 +43384,10 @@ uae_u32 REGPARAM2 op_5110_0_comp_nf(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43382,10 +43403,10 @@ uae_u32 REGPARAM2 op_5118_0_comp_nf(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -43403,10 +43424,10 @@ uae_u32 REGPARAM2 op_5120_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43423,10 +43444,10 @@ uae_u32 REGPARAM2 op_5128_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43441,12 +43462,12 @@ uae_u32 REGPARAM2 op_5130_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,srcreg); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43462,10 +43483,10 @@ uae_u32 REGPARAM2 op_5138_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43481,10 +43502,10 @@ uae_u32 REGPARAM2 op_5139_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43531,10 +43552,10 @@ uae_u32 REGPARAM2 op_5150_0_comp_nf(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43550,10 +43571,10 @@ uae_u32 REGPARAM2 op_5158_0_comp_nf(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -43571,10 +43592,10 @@ uae_u32 REGPARAM2 op_5160_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43591,10 +43612,10 @@ uae_u32 REGPARAM2 op_5168_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43609,12 +43630,12 @@ uae_u32 REGPARAM2 op_5170_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,srcreg); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43630,10 +43651,10 @@ uae_u32 REGPARAM2 op_5178_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43649,10 +43670,10 @@ uae_u32 REGPARAM2 op_5179_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43699,10 +43720,10 @@ uae_u32 REGPARAM2 op_5190_0_comp_nf(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43718,10 +43739,10 @@ uae_u32 REGPARAM2 op_5198_0_comp_nf(uae_u32 opcode) mov_l_ri(src,srcreg); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -43739,10 +43760,10 @@ uae_u32 REGPARAM2 op_51a0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43759,10 +43780,10 @@ uae_u32 REGPARAM2 op_51a8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43777,12 +43798,12 @@ uae_u32 REGPARAM2 op_51b0_0_comp_nf(uae_u32 opcode) int src = scratchie++; mov_l_ri(src,srcreg); int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43798,10 +43819,10 @@ uae_u32 REGPARAM2 op_51b8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43817,10 +43838,10 @@ uae_u32 REGPARAM2 op_51b9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43869,7 +43890,7 @@ uae_u32 REGPARAM2 op_51d0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43883,7 +43904,7 @@ uae_u32 REGPARAM2 op_51d8_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -43899,7 +43920,7 @@ uae_u32 REGPARAM2 op_51e0_0_comp_nf(uae_u32 opcode) arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43914,7 +43935,7 @@ uae_u32 REGPARAM2 op_51e8_0_comp_nf(uae_u32 opcode) lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43926,10 +43947,10 @@ uae_u32 REGPARAM2 op_51f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43943,7 +43964,7 @@ uae_u32 REGPARAM2 op_51f8_0_comp_nf(uae_u32 opcode) mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -43957,7 +43978,7 @@ uae_u32 REGPARAM2 op_51f9_0_comp_nf(uae_u32 opcode) mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int val = scratchie++; mov_b_ri(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44008,7 +44029,7 @@ uae_u32 REGPARAM2 op_52d0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44023,7 +44044,7 @@ uae_u32 REGPARAM2 op_52d8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -44040,7 +44061,7 @@ uae_u32 REGPARAM2 op_52e0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44056,7 +44077,7 @@ uae_u32 REGPARAM2 op_52e8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44068,11 +44089,11 @@ uae_u32 REGPARAM2 op_52f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44087,7 +44108,7 @@ uae_u32 REGPARAM2 op_52f8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44102,7 +44123,7 @@ uae_u32 REGPARAM2 op_52f9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 8); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44153,7 +44174,7 @@ uae_u32 REGPARAM2 op_53d0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44168,7 +44189,7 @@ uae_u32 REGPARAM2 op_53d8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -44185,7 +44206,7 @@ uae_u32 REGPARAM2 op_53e0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44201,7 +44222,7 @@ uae_u32 REGPARAM2 op_53e8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44213,11 +44234,11 @@ uae_u32 REGPARAM2 op_53f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44232,7 +44253,7 @@ uae_u32 REGPARAM2 op_53f8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44247,7 +44268,7 @@ uae_u32 REGPARAM2 op_53f9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 9); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44298,7 +44319,7 @@ uae_u32 REGPARAM2 op_54d0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44313,7 +44334,7 @@ uae_u32 REGPARAM2 op_54d8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -44330,7 +44351,7 @@ uae_u32 REGPARAM2 op_54e0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44346,7 +44367,7 @@ uae_u32 REGPARAM2 op_54e8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44358,11 +44379,11 @@ uae_u32 REGPARAM2 op_54f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44377,7 +44398,7 @@ uae_u32 REGPARAM2 op_54f8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44392,7 +44413,7 @@ uae_u32 REGPARAM2 op_54f9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 3); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44443,7 +44464,7 @@ uae_u32 REGPARAM2 op_55d0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44458,7 +44479,7 @@ uae_u32 REGPARAM2 op_55d8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -44475,7 +44496,7 @@ uae_u32 REGPARAM2 op_55e0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44491,7 +44512,7 @@ uae_u32 REGPARAM2 op_55e8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44503,11 +44524,11 @@ uae_u32 REGPARAM2 op_55f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44522,7 +44543,7 @@ uae_u32 REGPARAM2 op_55f8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44537,7 +44558,7 @@ uae_u32 REGPARAM2 op_55f9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 2); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44588,7 +44609,7 @@ uae_u32 REGPARAM2 op_56d0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44603,7 +44624,7 @@ uae_u32 REGPARAM2 op_56d8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -44620,7 +44641,7 @@ uae_u32 REGPARAM2 op_56e0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44636,7 +44657,7 @@ uae_u32 REGPARAM2 op_56e8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44648,11 +44669,11 @@ uae_u32 REGPARAM2 op_56f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44667,7 +44688,7 @@ uae_u32 REGPARAM2 op_56f8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44682,7 +44703,7 @@ uae_u32 REGPARAM2 op_56f9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 1); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44733,7 +44754,7 @@ uae_u32 REGPARAM2 op_57d0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44748,7 +44769,7 @@ uae_u32 REGPARAM2 op_57d8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -44765,7 +44786,7 @@ uae_u32 REGPARAM2 op_57e0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44781,7 +44802,7 @@ uae_u32 REGPARAM2 op_57e8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44793,11 +44814,11 @@ uae_u32 REGPARAM2 op_57f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44812,7 +44833,7 @@ uae_u32 REGPARAM2 op_57f8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44827,7 +44848,7 @@ uae_u32 REGPARAM2 op_57f9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 0); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44878,7 +44899,7 @@ uae_u32 REGPARAM2 op_58d0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44893,7 +44914,7 @@ uae_u32 REGPARAM2 op_58d8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -44910,7 +44931,7 @@ uae_u32 REGPARAM2 op_58e0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44926,7 +44947,7 @@ uae_u32 REGPARAM2 op_58e8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44938,11 +44959,11 @@ uae_u32 REGPARAM2 op_58f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44957,7 +44978,7 @@ uae_u32 REGPARAM2 op_58f8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -44972,7 +44993,7 @@ uae_u32 REGPARAM2 op_58f9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 7); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45023,7 +45044,7 @@ uae_u32 REGPARAM2 op_59d0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45038,7 +45059,7 @@ uae_u32 REGPARAM2 op_59d8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -45055,7 +45076,7 @@ uae_u32 REGPARAM2 op_59e0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45071,7 +45092,7 @@ uae_u32 REGPARAM2 op_59e8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45083,11 +45104,11 @@ uae_u32 REGPARAM2 op_59f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45102,7 +45123,7 @@ uae_u32 REGPARAM2 op_59f8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45117,7 +45138,7 @@ uae_u32 REGPARAM2 op_59f9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 6); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45168,7 +45189,7 @@ uae_u32 REGPARAM2 op_5ad0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45183,7 +45204,7 @@ uae_u32 REGPARAM2 op_5ad8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -45200,7 +45221,7 @@ uae_u32 REGPARAM2 op_5ae0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45216,7 +45237,7 @@ uae_u32 REGPARAM2 op_5ae8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45228,11 +45249,11 @@ uae_u32 REGPARAM2 op_5af0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45247,7 +45268,7 @@ uae_u32 REGPARAM2 op_5af8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45262,7 +45283,7 @@ uae_u32 REGPARAM2 op_5af9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 5); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45313,7 +45334,7 @@ uae_u32 REGPARAM2 op_5bd0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45328,7 +45349,7 @@ uae_u32 REGPARAM2 op_5bd8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -45345,7 +45366,7 @@ uae_u32 REGPARAM2 op_5be0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45361,7 +45382,7 @@ uae_u32 REGPARAM2 op_5be8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45373,11 +45394,11 @@ uae_u32 REGPARAM2 op_5bf0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45392,7 +45413,7 @@ uae_u32 REGPARAM2 op_5bf8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45407,7 +45428,7 @@ uae_u32 REGPARAM2 op_5bf9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 4); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45458,7 +45479,7 @@ uae_u32 REGPARAM2 op_5cd0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45473,7 +45494,7 @@ uae_u32 REGPARAM2 op_5cd8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -45490,7 +45511,7 @@ uae_u32 REGPARAM2 op_5ce0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45506,7 +45527,7 @@ uae_u32 REGPARAM2 op_5ce8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45518,11 +45539,11 @@ uae_u32 REGPARAM2 op_5cf0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45537,7 +45558,7 @@ uae_u32 REGPARAM2 op_5cf8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45552,7 +45573,7 @@ uae_u32 REGPARAM2 op_5cf9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 10); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45603,7 +45624,7 @@ uae_u32 REGPARAM2 op_5dd0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45618,7 +45639,7 @@ uae_u32 REGPARAM2 op_5dd8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -45635,7 +45656,7 @@ uae_u32 REGPARAM2 op_5de0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45651,7 +45672,7 @@ uae_u32 REGPARAM2 op_5de8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45663,11 +45684,11 @@ uae_u32 REGPARAM2 op_5df0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45682,7 +45703,7 @@ uae_u32 REGPARAM2 op_5df8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45697,7 +45718,7 @@ uae_u32 REGPARAM2 op_5df9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 11); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45748,7 +45769,7 @@ uae_u32 REGPARAM2 op_5ed0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45763,7 +45784,7 @@ uae_u32 REGPARAM2 op_5ed8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -45780,7 +45801,7 @@ uae_u32 REGPARAM2 op_5ee0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45796,7 +45817,7 @@ uae_u32 REGPARAM2 op_5ee8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45808,11 +45829,11 @@ uae_u32 REGPARAM2 op_5ef0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45827,7 +45848,7 @@ uae_u32 REGPARAM2 op_5ef8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45842,7 +45863,7 @@ uae_u32 REGPARAM2 op_5ef9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 12); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45893,7 +45914,7 @@ uae_u32 REGPARAM2 op_5fd0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45908,7 +45929,7 @@ uae_u32 REGPARAM2 op_5fd8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -45925,7 +45946,7 @@ uae_u32 REGPARAM2 op_5fe0_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45941,7 +45962,7 @@ uae_u32 REGPARAM2 op_5fe8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45953,11 +45974,11 @@ uae_u32 REGPARAM2 op_5ff0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45972,7 +45993,7 @@ uae_u32 REGPARAM2 op_5ff8_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -45987,7 +46008,7 @@ uae_u32 REGPARAM2 op_5ff9_0_comp_nf(uae_u32 opcode) int val = scratchie++; make_flags_live(); jnf_SCC(val, 13); - writebyte(srca,val); + writebyte(srca,val,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -46064,7 +46085,7 @@ uae_u32 REGPARAM2 op_6100_0_comp_nf(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); arm_ADD_l_ri(src,m68k_pc_offset_thisinst+2); m68k_pc_offset=0; arm_ADD_l(PC_P,src); @@ -46085,7 +46106,7 @@ uae_u32 REGPARAM2 op_6101_0_comp_nf(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); arm_ADD_l_ri(src,m68k_pc_offset_thisinst+2); m68k_pc_offset=0; arm_ADD_l(PC_P,src); @@ -46105,7 +46126,7 @@ uae_u32 REGPARAM2 op_61ff_0_comp_nf(uae_u32 opcode) int ret=scratchie++; mov_l_ri(ret,retadd); sub_l_ri(15,4); - writelong_clobber(15,ret); + writelong_clobber(15,ret,scratchie); arm_ADD_l_ri(src,m68k_pc_offset_thisinst+2); m68k_pc_offset=0; arm_ADD_l(PC_P,src); @@ -46961,7 +46982,7 @@ uae_u32 REGPARAM2 op_8010_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_b(dst,src); @@ -46978,7 +46999,7 @@ uae_u32 REGPARAM2 op_8018_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dst=dstreg; dont_care_flags(); @@ -46997,7 +47018,7 @@ uae_u32 REGPARAM2 op_8020_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_b(dst,src); @@ -47015,7 +47036,7 @@ uae_u32 REGPARAM2 op_8028_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_b(dst,src); @@ -47031,9 +47052,9 @@ uae_u32 REGPARAM2 op_8030_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_b(dst,src); @@ -47050,7 +47071,7 @@ uae_u32 REGPARAM2 op_8038_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_b(dst,src); @@ -47067,7 +47088,7 @@ uae_u32 REGPARAM2 op_8039_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_b(dst,src); @@ -47086,7 +47107,7 @@ uae_u32 REGPARAM2 op_803a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_b(dst,src); @@ -47104,9 +47125,9 @@ uae_u32 REGPARAM2 op_803b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_b(dst,src); @@ -47153,7 +47174,7 @@ uae_u32 REGPARAM2 op_8050_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_w(dst,src); @@ -47170,7 +47191,7 @@ uae_u32 REGPARAM2 op_8058_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; dont_care_flags(); @@ -47189,7 +47210,7 @@ uae_u32 REGPARAM2 op_8060_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_w(dst,src); @@ -47207,7 +47228,7 @@ uae_u32 REGPARAM2 op_8068_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_w(dst,src); @@ -47223,9 +47244,9 @@ uae_u32 REGPARAM2 op_8070_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_w(dst,src); @@ -47242,7 +47263,7 @@ uae_u32 REGPARAM2 op_8078_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_w(dst,src); @@ -47259,7 +47280,7 @@ uae_u32 REGPARAM2 op_8079_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_w(dst,src); @@ -47278,7 +47299,7 @@ uae_u32 REGPARAM2 op_807a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_w(dst,src); @@ -47296,9 +47317,9 @@ uae_u32 REGPARAM2 op_807b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_w(dst,src); @@ -47345,7 +47366,7 @@ uae_u32 REGPARAM2 op_8090_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_l(dst,src); @@ -47362,7 +47383,7 @@ uae_u32 REGPARAM2 op_8098_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg; dont_care_flags(); @@ -47381,7 +47402,7 @@ uae_u32 REGPARAM2 op_80a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_l(dst,src); @@ -47399,7 +47420,7 @@ uae_u32 REGPARAM2 op_80a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_l(dst,src); @@ -47415,9 +47436,9 @@ uae_u32 REGPARAM2 op_80b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_l(dst,src); @@ -47434,7 +47455,7 @@ uae_u32 REGPARAM2 op_80b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_l(dst,src); @@ -47451,7 +47472,7 @@ uae_u32 REGPARAM2 op_80b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_l(dst,src); @@ -47470,7 +47491,7 @@ uae_u32 REGPARAM2 op_80ba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_l(dst,src); @@ -47488,9 +47509,9 @@ uae_u32 REGPARAM2 op_80bb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_OR_l(dst,src); @@ -47548,7 +47569,7 @@ uae_u32 REGPARAM2 op_80d0_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVU(dst,src); @@ -47571,7 +47592,7 @@ uae_u32 REGPARAM2 op_80d8_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; register_possible_exception(); @@ -47596,7 +47617,7 @@ uae_u32 REGPARAM2 op_80e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVU(dst,src); @@ -47620,7 +47641,7 @@ uae_u32 REGPARAM2 op_80e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVU(dst,src); @@ -47642,9 +47663,9 @@ uae_u32 REGPARAM2 op_80f0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVU(dst,src); @@ -47667,7 +47688,7 @@ uae_u32 REGPARAM2 op_80f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVU(dst,src); @@ -47690,7 +47711,7 @@ uae_u32 REGPARAM2 op_80f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVU(dst,src); @@ -47715,7 +47736,7 @@ uae_u32 REGPARAM2 op_80fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVU(dst,src); @@ -47739,9 +47760,9 @@ uae_u32 REGPARAM2 op_80fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVU(dst,src); @@ -47781,10 +47802,10 @@ uae_u32 REGPARAM2 op_8110_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -47799,10 +47820,10 @@ uae_u32 REGPARAM2 op_8118_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -47819,10 +47840,10 @@ uae_u32 REGPARAM2 op_8120_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -47838,10 +47859,10 @@ uae_u32 REGPARAM2 op_8128_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -47855,12 +47876,12 @@ uae_u32 REGPARAM2 op_8130_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -47875,10 +47896,10 @@ uae_u32 REGPARAM2 op_8138_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -47893,10 +47914,10 @@ uae_u32 REGPARAM2 op_8139_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_OR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -47911,10 +47932,10 @@ uae_u32 REGPARAM2 op_8150_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -47929,10 +47950,10 @@ uae_u32 REGPARAM2 op_8158_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -47949,10 +47970,10 @@ uae_u32 REGPARAM2 op_8160_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -47968,10 +47989,10 @@ uae_u32 REGPARAM2 op_8168_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -47985,12 +48006,12 @@ uae_u32 REGPARAM2 op_8170_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -48005,10 +48026,10 @@ uae_u32 REGPARAM2 op_8178_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -48023,10 +48044,10 @@ uae_u32 REGPARAM2 op_8179_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_OR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -48041,10 +48062,10 @@ uae_u32 REGPARAM2 op_8190_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -48059,10 +48080,10 @@ uae_u32 REGPARAM2 op_8198_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -48079,10 +48100,10 @@ uae_u32 REGPARAM2 op_81a0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -48098,10 +48119,10 @@ uae_u32 REGPARAM2 op_81a8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -48115,12 +48136,12 @@ uae_u32 REGPARAM2 op_81b0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -48135,10 +48156,10 @@ uae_u32 REGPARAM2 op_81b8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -48153,10 +48174,10 @@ uae_u32 REGPARAM2 op_81b9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_OR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -48196,7 +48217,7 @@ uae_u32 REGPARAM2 op_81d0_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVS(dst,src); @@ -48219,7 +48240,7 @@ uae_u32 REGPARAM2 op_81d8_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; register_possible_exception(); @@ -48244,7 +48265,7 @@ uae_u32 REGPARAM2 op_81e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVS(dst,src); @@ -48268,7 +48289,7 @@ uae_u32 REGPARAM2 op_81e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVS(dst,src); @@ -48290,9 +48311,9 @@ uae_u32 REGPARAM2 op_81f0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVS(dst,src); @@ -48315,7 +48336,7 @@ uae_u32 REGPARAM2 op_81f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVS(dst,src); @@ -48338,7 +48359,7 @@ uae_u32 REGPARAM2 op_81f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVS(dst,src); @@ -48363,7 +48384,7 @@ uae_u32 REGPARAM2 op_81fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVS(dst,src); @@ -48387,9 +48408,9 @@ uae_u32 REGPARAM2 op_81fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; register_possible_exception(); jnf_DIVS(dst,src); @@ -48443,7 +48464,7 @@ uae_u32 REGPARAM2 op_9010_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_b(dst,src); @@ -48460,7 +48481,7 @@ uae_u32 REGPARAM2 op_9018_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dst=dstreg; dont_care_flags(); @@ -48479,7 +48500,7 @@ uae_u32 REGPARAM2 op_9020_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_b(dst,src); @@ -48497,7 +48518,7 @@ uae_u32 REGPARAM2 op_9028_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_b(dst,src); @@ -48513,9 +48534,9 @@ uae_u32 REGPARAM2 op_9030_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_b(dst,src); @@ -48532,7 +48553,7 @@ uae_u32 REGPARAM2 op_9038_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_b(dst,src); @@ -48549,7 +48570,7 @@ uae_u32 REGPARAM2 op_9039_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_b(dst,src); @@ -48568,7 +48589,7 @@ uae_u32 REGPARAM2 op_903a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_b(dst,src); @@ -48586,9 +48607,9 @@ uae_u32 REGPARAM2 op_903b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_b(dst,src); @@ -48650,7 +48671,7 @@ uae_u32 REGPARAM2 op_9050_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_w(dst,src); @@ -48667,7 +48688,7 @@ uae_u32 REGPARAM2 op_9058_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; dont_care_flags(); @@ -48686,7 +48707,7 @@ uae_u32 REGPARAM2 op_9060_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_w(dst,src); @@ -48704,7 +48725,7 @@ uae_u32 REGPARAM2 op_9068_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_w(dst,src); @@ -48720,9 +48741,9 @@ uae_u32 REGPARAM2 op_9070_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_w(dst,src); @@ -48739,7 +48760,7 @@ uae_u32 REGPARAM2 op_9078_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_w(dst,src); @@ -48756,7 +48777,7 @@ uae_u32 REGPARAM2 op_9079_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_w(dst,src); @@ -48775,7 +48796,7 @@ uae_u32 REGPARAM2 op_907a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_w(dst,src); @@ -48793,9 +48814,9 @@ uae_u32 REGPARAM2 op_907b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_w(dst,src); @@ -48857,7 +48878,7 @@ uae_u32 REGPARAM2 op_9090_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_l(dst,src); @@ -48874,7 +48895,7 @@ uae_u32 REGPARAM2 op_9098_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg; dont_care_flags(); @@ -48893,7 +48914,7 @@ uae_u32 REGPARAM2 op_90a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_l(dst,src); @@ -48911,7 +48932,7 @@ uae_u32 REGPARAM2 op_90a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_l(dst,src); @@ -48927,9 +48948,9 @@ uae_u32 REGPARAM2 op_90b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_l(dst,src); @@ -48946,7 +48967,7 @@ uae_u32 REGPARAM2 op_90b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_l(dst,src); @@ -48963,7 +48984,7 @@ uae_u32 REGPARAM2 op_90b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_l(dst,src); @@ -48982,7 +49003,7 @@ uae_u32 REGPARAM2 op_90ba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_l(dst,src); @@ -49000,9 +49021,9 @@ uae_u32 REGPARAM2 op_90bb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_SUB_l(dst,src); @@ -49062,7 +49083,7 @@ uae_u32 REGPARAM2 op_90d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49078,7 +49099,7 @@ uae_u32 REGPARAM2 op_90d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg+8; jnf_SUBA_w(dst, src); @@ -49096,7 +49117,7 @@ uae_u32 REGPARAM2 op_90e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49113,7 +49134,7 @@ uae_u32 REGPARAM2 op_90e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49128,9 +49149,9 @@ uae_u32 REGPARAM2 op_90f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49146,7 +49167,7 @@ uae_u32 REGPARAM2 op_90f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49162,7 +49183,7 @@ uae_u32 REGPARAM2 op_90f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49180,7 +49201,7 @@ uae_u32 REGPARAM2 op_90fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49197,9 +49218,9 @@ uae_u32 REGPARAM2 op_90fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49245,14 +49266,14 @@ uae_u32 REGPARAM2 op_9108_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUBX_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49267,10 +49288,10 @@ uae_u32 REGPARAM2 op_9110_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49285,10 +49306,10 @@ uae_u32 REGPARAM2 op_9118_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -49305,10 +49326,10 @@ uae_u32 REGPARAM2 op_9120_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49324,10 +49345,10 @@ uae_u32 REGPARAM2 op_9128_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49341,12 +49362,12 @@ uae_u32 REGPARAM2 op_9130_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49361,10 +49382,10 @@ uae_u32 REGPARAM2 op_9138_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49379,10 +49400,10 @@ uae_u32 REGPARAM2 op_9139_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49412,14 +49433,14 @@ uae_u32 REGPARAM2 op_9148_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUBX_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49434,10 +49455,10 @@ uae_u32 REGPARAM2 op_9150_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49452,10 +49473,10 @@ uae_u32 REGPARAM2 op_9158_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -49472,10 +49493,10 @@ uae_u32 REGPARAM2 op_9160_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49491,10 +49512,10 @@ uae_u32 REGPARAM2 op_9168_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49508,12 +49529,12 @@ uae_u32 REGPARAM2 op_9170_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49528,10 +49549,10 @@ uae_u32 REGPARAM2 op_9178_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49546,10 +49567,10 @@ uae_u32 REGPARAM2 op_9179_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49579,14 +49600,14 @@ uae_u32 REGPARAM2 op_9188_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUBX_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49601,10 +49622,10 @@ uae_u32 REGPARAM2 op_9190_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49619,10 +49640,10 @@ uae_u32 REGPARAM2 op_9198_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -49639,10 +49660,10 @@ uae_u32 REGPARAM2 op_91a0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49658,10 +49679,10 @@ uae_u32 REGPARAM2 op_91a8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49675,12 +49696,12 @@ uae_u32 REGPARAM2 op_91b0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49695,10 +49716,10 @@ uae_u32 REGPARAM2 op_91b8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49713,10 +49734,10 @@ uae_u32 REGPARAM2 op_91b9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_SUB_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -49758,7 +49779,7 @@ uae_u32 REGPARAM2 op_91d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49774,7 +49795,7 @@ uae_u32 REGPARAM2 op_91d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg+8; jnf_SUBA_l(dst, src); @@ -49792,7 +49813,7 @@ uae_u32 REGPARAM2 op_91e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49809,7 +49830,7 @@ uae_u32 REGPARAM2 op_91e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49824,9 +49845,9 @@ uae_u32 REGPARAM2 op_91f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49842,7 +49863,7 @@ uae_u32 REGPARAM2 op_91f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49858,7 +49879,7 @@ uae_u32 REGPARAM2 op_91f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49876,7 +49897,7 @@ uae_u32 REGPARAM2 op_91fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49893,9 +49914,9 @@ uae_u32 REGPARAM2 op_91fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_SUBA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -49940,7 +49961,7 @@ uae_u32 REGPARAM2 op_b010_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -49957,7 +49978,7 @@ uae_u32 REGPARAM2 op_b018_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dst=dstreg; dont_care_flags(); @@ -49976,7 +49997,7 @@ uae_u32 REGPARAM2 op_b020_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -49994,7 +50015,7 @@ uae_u32 REGPARAM2 op_b028_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50010,9 +50031,9 @@ uae_u32 REGPARAM2 op_b030_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50029,7 +50050,7 @@ uae_u32 REGPARAM2 op_b038_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50046,7 +50067,7 @@ uae_u32 REGPARAM2 op_b039_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50065,7 +50086,7 @@ uae_u32 REGPARAM2 op_b03a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50083,9 +50104,9 @@ uae_u32 REGPARAM2 op_b03b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50147,7 +50168,7 @@ uae_u32 REGPARAM2 op_b050_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50164,7 +50185,7 @@ uae_u32 REGPARAM2 op_b058_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; dont_care_flags(); @@ -50183,7 +50204,7 @@ uae_u32 REGPARAM2 op_b060_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50201,7 +50222,7 @@ uae_u32 REGPARAM2 op_b068_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50217,9 +50238,9 @@ uae_u32 REGPARAM2 op_b070_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50236,7 +50257,7 @@ uae_u32 REGPARAM2 op_b078_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50253,7 +50274,7 @@ uae_u32 REGPARAM2 op_b079_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50272,7 +50293,7 @@ uae_u32 REGPARAM2 op_b07a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50290,9 +50311,9 @@ uae_u32 REGPARAM2 op_b07b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50354,7 +50375,7 @@ uae_u32 REGPARAM2 op_b090_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50371,7 +50392,7 @@ uae_u32 REGPARAM2 op_b098_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg; dont_care_flags(); @@ -50390,7 +50411,7 @@ uae_u32 REGPARAM2 op_b0a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50411,7 +50432,7 @@ uae_u32 REGPARAM2 op_b0a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50427,9 +50448,9 @@ uae_u32 REGPARAM2 op_b0b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50446,7 +50467,7 @@ uae_u32 REGPARAM2 op_b0b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50463,7 +50484,7 @@ uae_u32 REGPARAM2 op_b0b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50482,7 +50503,7 @@ uae_u32 REGPARAM2 op_b0ba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50500,9 +50521,9 @@ uae_u32 REGPARAM2 op_b0bb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50564,7 +50585,7 @@ uae_u32 REGPARAM2 op_b0d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50581,7 +50602,7 @@ uae_u32 REGPARAM2 op_b0d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg+8; dont_care_flags(); @@ -50600,7 +50621,7 @@ uae_u32 REGPARAM2 op_b0e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50618,7 +50639,7 @@ uae_u32 REGPARAM2 op_b0e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50634,9 +50655,9 @@ uae_u32 REGPARAM2 op_b0f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50653,7 +50674,7 @@ uae_u32 REGPARAM2 op_b0f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50670,7 +50691,7 @@ uae_u32 REGPARAM2 op_b0f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50689,7 +50710,7 @@ uae_u32 REGPARAM2 op_b0fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50707,9 +50728,9 @@ uae_u32 REGPARAM2 op_b0fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -50756,11 +50777,11 @@ uae_u32 REGPARAM2 op_b108_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); @@ -50778,10 +50799,10 @@ uae_u32 REGPARAM2 op_b110_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -50796,10 +50817,10 @@ uae_u32 REGPARAM2 op_b118_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -50816,10 +50837,10 @@ uae_u32 REGPARAM2 op_b120_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -50835,10 +50856,10 @@ uae_u32 REGPARAM2 op_b128_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -50852,12 +50873,12 @@ uae_u32 REGPARAM2 op_b130_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -50872,10 +50893,10 @@ uae_u32 REGPARAM2 op_b138_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -50890,10 +50911,10 @@ uae_u32 REGPARAM2 op_b139_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -50922,11 +50943,11 @@ uae_u32 REGPARAM2 op_b148_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ arm_ADD_l_ri8(dstreg+8,2); @@ -50944,10 +50965,10 @@ uae_u32 REGPARAM2 op_b150_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -50962,10 +50983,10 @@ uae_u32 REGPARAM2 op_b158_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -50982,10 +51003,10 @@ uae_u32 REGPARAM2 op_b160_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -51001,10 +51022,10 @@ uae_u32 REGPARAM2 op_b168_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -51018,12 +51039,12 @@ uae_u32 REGPARAM2 op_b170_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -51038,10 +51059,10 @@ uae_u32 REGPARAM2 op_b178_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -51056,10 +51077,10 @@ uae_u32 REGPARAM2 op_b179_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -51088,11 +51109,11 @@ uae_u32 REGPARAM2 op_b188_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); /* Weird --- CMP with noflags ;-) */ arm_ADD_l_ri8(dstreg+8,4); @@ -51110,10 +51131,10 @@ uae_u32 REGPARAM2 op_b190_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -51128,10 +51149,10 @@ uae_u32 REGPARAM2 op_b198_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -51148,10 +51169,10 @@ uae_u32 REGPARAM2 op_b1a0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -51167,10 +51188,10 @@ uae_u32 REGPARAM2 op_b1a8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -51184,12 +51205,12 @@ uae_u32 REGPARAM2 op_b1b0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -51204,10 +51225,10 @@ uae_u32 REGPARAM2 op_b1b8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -51222,10 +51243,10 @@ uae_u32 REGPARAM2 op_b1b9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_EOR_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -51269,7 +51290,7 @@ uae_u32 REGPARAM2 op_b1d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -51286,7 +51307,7 @@ uae_u32 REGPARAM2 op_b1d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg+8; dont_care_flags(); @@ -51305,7 +51326,7 @@ uae_u32 REGPARAM2 op_b1e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -51323,7 +51344,7 @@ uae_u32 REGPARAM2 op_b1e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -51339,9 +51360,9 @@ uae_u32 REGPARAM2 op_b1f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -51358,7 +51379,7 @@ uae_u32 REGPARAM2 op_b1f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -51375,7 +51396,7 @@ uae_u32 REGPARAM2 op_b1f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -51394,7 +51415,7 @@ uae_u32 REGPARAM2 op_b1fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -51412,9 +51433,9 @@ uae_u32 REGPARAM2 op_b1fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; dont_care_flags(); /* Weird --- CMP with noflags ;-) */ @@ -51461,7 +51482,7 @@ uae_u32 REGPARAM2 op_c010_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_b(dst,src); @@ -51478,7 +51499,7 @@ uae_u32 REGPARAM2 op_c018_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dst=dstreg; dont_care_flags(); @@ -51497,7 +51518,7 @@ uae_u32 REGPARAM2 op_c020_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_b(dst,src); @@ -51515,7 +51536,7 @@ uae_u32 REGPARAM2 op_c028_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_b(dst,src); @@ -51531,9 +51552,9 @@ uae_u32 REGPARAM2 op_c030_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_b(dst,src); @@ -51550,7 +51571,7 @@ uae_u32 REGPARAM2 op_c038_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_b(dst,src); @@ -51567,7 +51588,7 @@ uae_u32 REGPARAM2 op_c039_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_b(dst,src); @@ -51586,7 +51607,7 @@ uae_u32 REGPARAM2 op_c03a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_b(dst,src); @@ -51604,9 +51625,9 @@ uae_u32 REGPARAM2 op_c03b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_b(dst,src); @@ -51653,7 +51674,7 @@ uae_u32 REGPARAM2 op_c050_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_w(dst,src); @@ -51670,7 +51691,7 @@ uae_u32 REGPARAM2 op_c058_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; dont_care_flags(); @@ -51689,7 +51710,7 @@ uae_u32 REGPARAM2 op_c060_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_w(dst,src); @@ -51707,7 +51728,7 @@ uae_u32 REGPARAM2 op_c068_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_w(dst,src); @@ -51723,9 +51744,9 @@ uae_u32 REGPARAM2 op_c070_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_w(dst,src); @@ -51742,7 +51763,7 @@ uae_u32 REGPARAM2 op_c078_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_w(dst,src); @@ -51759,7 +51780,7 @@ uae_u32 REGPARAM2 op_c079_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_w(dst,src); @@ -51778,7 +51799,7 @@ uae_u32 REGPARAM2 op_c07a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_w(dst,src); @@ -51796,9 +51817,9 @@ uae_u32 REGPARAM2 op_c07b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_w(dst,src); @@ -51845,7 +51866,7 @@ uae_u32 REGPARAM2 op_c090_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_l(dst,src); @@ -51862,7 +51883,7 @@ uae_u32 REGPARAM2 op_c098_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg; dont_care_flags(); @@ -51881,7 +51902,7 @@ uae_u32 REGPARAM2 op_c0a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_l(dst,src); @@ -51899,7 +51920,7 @@ uae_u32 REGPARAM2 op_c0a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_l(dst,src); @@ -51915,9 +51936,9 @@ uae_u32 REGPARAM2 op_c0b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_l(dst,src); @@ -51934,7 +51955,7 @@ uae_u32 REGPARAM2 op_c0b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_l(dst,src); @@ -51951,7 +51972,7 @@ uae_u32 REGPARAM2 op_c0b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_l(dst,src); @@ -51970,7 +51991,7 @@ uae_u32 REGPARAM2 op_c0ba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_l(dst,src); @@ -51988,9 +52009,9 @@ uae_u32 REGPARAM2 op_c0bb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_AND_l(dst,src); @@ -52038,7 +52059,7 @@ uae_u32 REGPARAM2 op_c0d0_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULU(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52055,7 +52076,7 @@ uae_u32 REGPARAM2 op_c0d8_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; jnf_MULU(dst,src); @@ -52074,7 +52095,7 @@ uae_u32 REGPARAM2 op_c0e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULU(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52092,7 +52113,7 @@ uae_u32 REGPARAM2 op_c0e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULU(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52108,9 +52129,9 @@ uae_u32 REGPARAM2 op_c0f0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULU(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52127,7 +52148,7 @@ uae_u32 REGPARAM2 op_c0f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULU(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52144,7 +52165,7 @@ uae_u32 REGPARAM2 op_c0f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULU(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52163,7 +52184,7 @@ uae_u32 REGPARAM2 op_c0fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULU(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52181,9 +52202,9 @@ uae_u32 REGPARAM2 op_c0fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULU(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52215,10 +52236,10 @@ uae_u32 REGPARAM2 op_c110_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52233,10 +52254,10 @@ uae_u32 REGPARAM2 op_c118_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -52253,10 +52274,10 @@ uae_u32 REGPARAM2 op_c120_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52272,10 +52293,10 @@ uae_u32 REGPARAM2 op_c128_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52289,12 +52310,12 @@ uae_u32 REGPARAM2 op_c130_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52309,10 +52330,10 @@ uae_u32 REGPARAM2 op_c138_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52327,10 +52348,10 @@ uae_u32 REGPARAM2 op_c139_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_AND_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52383,10 +52404,10 @@ uae_u32 REGPARAM2 op_c150_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52401,10 +52422,10 @@ uae_u32 REGPARAM2 op_c158_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -52421,10 +52442,10 @@ uae_u32 REGPARAM2 op_c160_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52440,10 +52461,10 @@ uae_u32 REGPARAM2 op_c168_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52457,12 +52478,12 @@ uae_u32 REGPARAM2 op_c170_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52477,10 +52498,10 @@ uae_u32 REGPARAM2 op_c178_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52495,10 +52516,10 @@ uae_u32 REGPARAM2 op_c179_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_AND_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52532,10 +52553,10 @@ uae_u32 REGPARAM2 op_c190_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52550,10 +52571,10 @@ uae_u32 REGPARAM2 op_c198_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -52570,10 +52591,10 @@ uae_u32 REGPARAM2 op_c1a0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52589,10 +52610,10 @@ uae_u32 REGPARAM2 op_c1a8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52606,12 +52627,12 @@ uae_u32 REGPARAM2 op_c1b0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52626,10 +52647,10 @@ uae_u32 REGPARAM2 op_c1b8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52644,10 +52665,10 @@ uae_u32 REGPARAM2 op_c1b9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_AND_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -52677,7 +52698,7 @@ uae_u32 REGPARAM2 op_c1d0_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULS(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52694,7 +52715,7 @@ uae_u32 REGPARAM2 op_c1d8_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; jnf_MULS(dst,src); @@ -52713,7 +52734,7 @@ uae_u32 REGPARAM2 op_c1e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULS(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52731,7 +52752,7 @@ uae_u32 REGPARAM2 op_c1e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULS(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52747,9 +52768,9 @@ uae_u32 REGPARAM2 op_c1f0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULS(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52766,7 +52787,7 @@ uae_u32 REGPARAM2 op_c1f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULS(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52783,7 +52804,7 @@ uae_u32 REGPARAM2 op_c1f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULS(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52802,7 +52823,7 @@ uae_u32 REGPARAM2 op_c1fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULS(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52820,9 +52841,9 @@ uae_u32 REGPARAM2 op_c1fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; jnf_MULS(dst,src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -52868,7 +52889,7 @@ uae_u32 REGPARAM2 op_d010_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_b(dst,src); @@ -52885,7 +52906,7 @@ uae_u32 REGPARAM2 op_d018_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,areg_byteinc[srcreg]); int dst=dstreg; dont_care_flags(); @@ -52904,7 +52925,7 @@ uae_u32 REGPARAM2 op_d020_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_b(dst,src); @@ -52922,7 +52943,7 @@ uae_u32 REGPARAM2 op_d028_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_b(dst,src); @@ -52938,9 +52959,9 @@ uae_u32 REGPARAM2 op_d030_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_b(dst,src); @@ -52957,7 +52978,7 @@ uae_u32 REGPARAM2 op_d038_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_b(dst,src); @@ -52974,7 +52995,7 @@ uae_u32 REGPARAM2 op_d039_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_b(dst,src); @@ -52993,7 +53014,7 @@ uae_u32 REGPARAM2 op_d03a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_b(dst,src); @@ -53011,9 +53032,9 @@ uae_u32 REGPARAM2 op_d03b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_b(dst,src); @@ -53075,7 +53096,7 @@ uae_u32 REGPARAM2 op_d050_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_w(dst,src); @@ -53092,7 +53113,7 @@ uae_u32 REGPARAM2 op_d058_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg; dont_care_flags(); @@ -53111,7 +53132,7 @@ uae_u32 REGPARAM2 op_d060_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_w(dst,src); @@ -53129,7 +53150,7 @@ uae_u32 REGPARAM2 op_d068_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_w(dst,src); @@ -53145,9 +53166,9 @@ uae_u32 REGPARAM2 op_d070_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_w(dst,src); @@ -53164,7 +53185,7 @@ uae_u32 REGPARAM2 op_d078_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_w(dst,src); @@ -53181,7 +53202,7 @@ uae_u32 REGPARAM2 op_d079_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_w(dst,src); @@ -53200,7 +53221,7 @@ uae_u32 REGPARAM2 op_d07a_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_w(dst,src); @@ -53218,9 +53239,9 @@ uae_u32 REGPARAM2 op_d07b_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_w(dst,src); @@ -53282,7 +53303,7 @@ uae_u32 REGPARAM2 op_d090_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_l(dst,src); @@ -53299,7 +53320,7 @@ uae_u32 REGPARAM2 op_d098_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg; dont_care_flags(); @@ -53318,7 +53339,7 @@ uae_u32 REGPARAM2 op_d0a0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_l(dst,src); @@ -53336,7 +53357,7 @@ uae_u32 REGPARAM2 op_d0a8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_l(dst,src); @@ -53352,9 +53373,9 @@ uae_u32 REGPARAM2 op_d0b0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_l(dst,src); @@ -53371,7 +53392,7 @@ uae_u32 REGPARAM2 op_d0b8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_l(dst,src); @@ -53388,7 +53409,7 @@ uae_u32 REGPARAM2 op_d0b9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_l(dst,src); @@ -53407,7 +53428,7 @@ uae_u32 REGPARAM2 op_d0ba_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_l(dst,src); @@ -53425,9 +53446,9 @@ uae_u32 REGPARAM2 op_d0bb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg; dont_care_flags(); jnf_ADD_l(dst,src); @@ -53487,7 +53508,7 @@ uae_u32 REGPARAM2 op_d0d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -53503,7 +53524,7 @@ uae_u32 REGPARAM2 op_d0d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); int dst=dstreg+8; jnf_ADDA_w(dst, src); @@ -53521,7 +53542,7 @@ uae_u32 REGPARAM2 op_d0e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -53538,7 +53559,7 @@ uae_u32 REGPARAM2 op_d0e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -53553,9 +53574,9 @@ uae_u32 REGPARAM2 op_d0f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -53571,7 +53592,7 @@ uae_u32 REGPARAM2 op_d0f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -53587,7 +53608,7 @@ uae_u32 REGPARAM2 op_d0f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -53605,7 +53626,7 @@ uae_u32 REGPARAM2 op_d0fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -53622,9 +53643,9 @@ uae_u32 REGPARAM2 op_d0fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_w(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -53670,14 +53691,14 @@ uae_u32 REGPARAM2 op_d108_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,areg_byteinc[srcreg]); int src=scratchie++; - readbyte(srca,src); + readbyte(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADDX_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -53692,10 +53713,10 @@ uae_u32 REGPARAM2 op_d110_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -53710,10 +53731,10 @@ uae_u32 REGPARAM2 op_d118_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,areg_byteinc[dstreg]); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -53730,10 +53751,10 @@ uae_u32 REGPARAM2 op_d120_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,areg_byteinc[dstreg]); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -53749,10 +53770,10 @@ uae_u32 REGPARAM2 op_d128_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -53766,12 +53787,12 @@ uae_u32 REGPARAM2 op_d130_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -53786,10 +53807,10 @@ uae_u32 REGPARAM2 op_d138_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -53804,10 +53825,10 @@ uae_u32 REGPARAM2 op_d139_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readbyte(dsta,dst); + readbyte(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_b(dst,src); - writebyte(dsta,dst); + writebyte(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -53837,14 +53858,14 @@ uae_u32 REGPARAM2 op_d148_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADDX_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -53859,10 +53880,10 @@ uae_u32 REGPARAM2 op_d150_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -53877,10 +53898,10 @@ uae_u32 REGPARAM2 op_d158_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -53897,10 +53918,10 @@ uae_u32 REGPARAM2 op_d160_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,2); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -53916,10 +53937,10 @@ uae_u32 REGPARAM2 op_d168_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -53933,12 +53954,12 @@ uae_u32 REGPARAM2 op_d170_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -53953,10 +53974,10 @@ uae_u32 REGPARAM2 op_d178_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -53971,10 +53992,10 @@ uae_u32 REGPARAM2 op_d179_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readword(dsta,dst); + readword(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_w(dst,src); - writeword(dsta,dst); + writeword(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54004,14 +54025,14 @@ uae_u32 REGPARAM2 op_d188_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADDX_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54026,10 +54047,10 @@ uae_u32 REGPARAM2 op_d190_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54044,10 +54065,10 @@ uae_u32 REGPARAM2 op_d198_0_comp_nf(uae_u32 opcode) int src=srcreg; int dsta=dstreg+8; int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); arm_ADD_l_ri8(dstreg+8,4); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -54064,10 +54085,10 @@ uae_u32 REGPARAM2 op_d1a0_0_comp_nf(uae_u32 opcode) int dsta=dstreg+8; arm_SUB_l_ri8(dstreg+8,4); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54083,10 +54104,10 @@ uae_u32 REGPARAM2 op_d1a8_0_comp_nf(uae_u32 opcode) int dsta=scratchie++; lea_l_brr(dsta,8+dstreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54100,12 +54121,12 @@ uae_u32 REGPARAM2 op_d1b0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int src=srcreg; int dsta=scratchie++; - calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta); + calc_disp_ea_020(dstreg+8,comp_get_iword((m68k_pc_offset+=2)-2),dsta,scratchie); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54120,10 +54141,10 @@ uae_u32 REGPARAM2 op_d1b8_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54138,10 +54159,10 @@ uae_u32 REGPARAM2 op_d1b9_0_comp_nf(uae_u32 opcode) int dsta = scratchie++; mov_l_ri(dsta,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int dst=scratchie++; - readlong(dsta,dst); + readlong(dsta,dst,scratchie); dont_care_flags(); jnf_ADD_l(dst,src); - writelong(dsta,dst); + writelong(dsta,dst,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54183,7 +54204,7 @@ uae_u32 REGPARAM2 op_d1d0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -54199,7 +54220,7 @@ uae_u32 REGPARAM2 op_d1d8_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; int srca=srcreg+8; int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,4); int dst=dstreg+8; jnf_ADDA_l(dst, src); @@ -54217,7 +54238,7 @@ uae_u32 REGPARAM2 op_d1e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,4); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -54234,7 +54255,7 @@ uae_u32 REGPARAM2 op_d1e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -54249,9 +54270,9 @@ uae_u32 REGPARAM2 op_d1f0_0_comp_nf(uae_u32 opcode) m68k_pc_offset+=2; uae_u8 scratchie=S1; int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -54267,7 +54288,7 @@ uae_u32 REGPARAM2 op_d1f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -54283,7 +54304,7 @@ uae_u32 REGPARAM2 op_d1f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -54301,7 +54322,7 @@ uae_u32 REGPARAM2 op_d1fa_0_comp_nf(uae_u32 opcode) uae_s32 PC16off = (uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2); mov_l_ri(srca,address+PC16off); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -54318,9 +54339,9 @@ uae_u32 REGPARAM2 op_d1fb_0_comp_nf(uae_u32 opcode) int srca=scratchie++; uae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset; mov_l_ri(pctmp,address); - calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(pctmp,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readlong(srca,src); + readlong(srca,src,scratchie); int dst=dstreg+8; jnf_ADDA_l(dst, src); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); @@ -54352,6 +54373,7 @@ uae_u32 REGPARAM2 op_e000_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_ASR_b_imm(data,srcreg); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSRQ.B #,Dn */ @@ -54366,22 +54388,7 @@ uae_u32 REGPARAM2 op_e008_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_LSR_b_imm(data,srcreg); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); -return 0; -} -/* ROXRQ.B #,Dn */ -uae_u32 REGPARAM2 op_e010_0_comp_nf(uae_u32 opcode) -{ - uae_s32 srcreg = imm8_table[((opcode >> 9) & 7)]; - uae_u32 dstreg = opcode & 7; - uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; - m68k_pc_offset+=2; - uae_u8 scratchie=S1; - dont_care_flags(); - int cnt = scratchie++; - mov_l_ri(cnt,srcreg); - int data=dstreg; - jnf_ROXR_b(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* RORQ.B #,Dn */ @@ -54398,6 +54405,7 @@ uae_u32 REGPARAM2 op_e018_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_ROR_b(data,cnt); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASR.B Dn,Dn */ @@ -54408,10 +54416,15 @@ uae_u32 REGPARAM2 op_e020_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jnf_ASR_b_reg(data,srcreg); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSR.B Dn,Dn */ @@ -54422,25 +54435,15 @@ uae_u32 REGPARAM2 op_e028_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jnf_LSR_b_reg(data,srcreg); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); -return 0; -} -/* ROXR.B Dn,Dn */ -uae_u32 REGPARAM2 op_e030_0_comp_nf(uae_u32 opcode) -{ - uae_s32 srcreg = ((opcode >> 9) & 7); - uae_u32 dstreg = opcode & 7; - uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; - m68k_pc_offset+=2; - uae_u8 scratchie=S1; - dont_care_flags(); - int cnt=srcreg; - int data=dstreg; - jnf_ROXR_b(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROR.B Dn,Dn */ @@ -54451,11 +54454,16 @@ uae_u32 REGPARAM2 op_e038_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jnf_ROR_b(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASRQ.W #,Dn */ @@ -54470,6 +54478,7 @@ uae_u32 REGPARAM2 op_e040_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_ASR_w_imm(data,srcreg); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } #endif @@ -54487,22 +54496,7 @@ uae_u32 REGPARAM2 op_e048_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_LSR_w_imm(data,srcreg); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); -return 0; -} -/* ROXRQ.W #,Dn */ -uae_u32 REGPARAM2 op_e050_0_comp_nf(uae_u32 opcode) -{ - uae_s32 srcreg = imm8_table[((opcode >> 9) & 7)]; - uae_u32 dstreg = opcode & 7; - uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; - m68k_pc_offset+=2; - uae_u8 scratchie=S1; - dont_care_flags(); - int cnt = scratchie++; - mov_l_ri(cnt,srcreg); - int data=dstreg; - jnf_ROXR_w(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* RORQ.W #,Dn */ @@ -54519,6 +54513,7 @@ uae_u32 REGPARAM2 op_e058_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_ROR_w(data,cnt); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASR.W Dn,Dn */ @@ -54529,10 +54524,15 @@ uae_u32 REGPARAM2 op_e060_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jnf_ASR_w_reg(data,srcreg); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSR.W Dn,Dn */ @@ -54543,25 +54543,15 @@ uae_u32 REGPARAM2 op_e068_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jnf_LSR_w_reg(data,srcreg); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); -return 0; -} -/* ROXR.W Dn,Dn */ -uae_u32 REGPARAM2 op_e070_0_comp_nf(uae_u32 opcode) -{ - uae_s32 srcreg = ((opcode >> 9) & 7); - uae_u32 dstreg = opcode & 7; - uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; - m68k_pc_offset+=2; - uae_u8 scratchie=S1; - dont_care_flags(); - int cnt=srcreg; - int data=dstreg; - jnf_ROXR_w(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROR.W Dn,Dn */ @@ -54572,11 +54562,16 @@ uae_u32 REGPARAM2 op_e078_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jnf_ROR_w(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASRQ.L #,Dn */ @@ -54591,6 +54586,7 @@ uae_u32 REGPARAM2 op_e080_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_ASR_l_imm(data,srcreg); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSRQ.L #,Dn */ @@ -54605,22 +54601,7 @@ uae_u32 REGPARAM2 op_e088_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_LSR_l_imm(data,srcreg); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); -return 0; -} -/* ROXRQ.L #,Dn */ -uae_u32 REGPARAM2 op_e090_0_comp_nf(uae_u32 opcode) -{ - uae_s32 srcreg = imm8_table[((opcode >> 9) & 7)]; - uae_u32 dstreg = opcode & 7; - uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; - m68k_pc_offset+=2; - uae_u8 scratchie=S1; - dont_care_flags(); - int cnt = scratchie++; - mov_l_ri(cnt,srcreg); - int data=dstreg; - jnf_ROXR_l(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* RORQ.L #,Dn */ @@ -54637,6 +54618,7 @@ uae_u32 REGPARAM2 op_e098_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_ROR_l(data,cnt); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASR.L Dn,Dn */ @@ -54647,10 +54629,15 @@ uae_u32 REGPARAM2 op_e0a0_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jnf_ASR_l_reg(data,srcreg); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSR.L Dn,Dn */ @@ -54661,25 +54648,15 @@ uae_u32 REGPARAM2 op_e0a8_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jnf_LSR_l_reg(data,srcreg); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); -return 0; -} -/* ROXR.L Dn,Dn */ -uae_u32 REGPARAM2 op_e0b0_0_comp_nf(uae_u32 opcode) -{ - uae_s32 srcreg = ((opcode >> 9) & 7); - uae_u32 dstreg = opcode & 7; - uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; - m68k_pc_offset+=2; - uae_u8 scratchie=S1; - dont_care_flags(); - int cnt=srcreg; - int data=dstreg; - jnf_ROXR_l(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROR.L Dn,Dn */ @@ -54690,11 +54667,16 @@ uae_u32 REGPARAM2 op_e0b8_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jnf_ROR_l(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASRW.W (An) */ @@ -54707,9 +54689,9 @@ uae_u32 REGPARAM2 op_e0d0_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54723,9 +54705,9 @@ uae_u32 REGPARAM2 op_e0d8_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -54741,9 +54723,9 @@ uae_u32 REGPARAM2 op_e0e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54758,9 +54740,9 @@ uae_u32 REGPARAM2 op_e0e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54773,11 +54755,11 @@ uae_u32 REGPARAM2 op_e0f0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54791,9 +54773,9 @@ uae_u32 REGPARAM2 op_e0f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54807,9 +54789,9 @@ uae_u32 REGPARAM2 op_e0f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -54825,6 +54807,7 @@ uae_u32 REGPARAM2 op_e100_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_LSL_b_imm(data,srcreg); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSLQ.B #,Dn */ @@ -54839,6 +54822,7 @@ uae_u32 REGPARAM2 op_e108_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_LSL_b_imm(data,srcreg); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROXLQ.B #,Dn */ @@ -54855,6 +54839,7 @@ uae_u32 REGPARAM2 op_e110_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_ROXL_b(data,cnt); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROLQ.B #,Dn */ @@ -54871,6 +54856,7 @@ uae_u32 REGPARAM2 op_e118_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_ROL_b(data,cnt); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASL.B Dn,Dn */ @@ -54881,10 +54867,15 @@ uae_u32 REGPARAM2 op_e120_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jnf_LSL_b_reg(data,srcreg); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSL.B Dn,Dn */ @@ -54895,10 +54886,15 @@ uae_u32 REGPARAM2 op_e128_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jnf_LSL_b_reg(data,srcreg); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROXL.B Dn,Dn */ @@ -54909,11 +54905,16 @@ uae_u32 REGPARAM2 op_e130_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jnf_ROXL_b(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROL.B Dn,Dn */ @@ -54924,11 +54925,16 @@ uae_u32 REGPARAM2 op_e138_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jnf_ROL_b(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASLQ.W #,Dn */ @@ -54943,6 +54949,7 @@ uae_u32 REGPARAM2 op_e140_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_LSL_w_imm(data,srcreg); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSLQ.W #,Dn */ @@ -54957,6 +54964,7 @@ uae_u32 REGPARAM2 op_e148_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_LSL_w_imm(data,srcreg); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROXLQ.W #,Dn */ @@ -54973,6 +54981,7 @@ uae_u32 REGPARAM2 op_e150_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_ROXL_w(data,cnt); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROLQ.W #,Dn */ @@ -54989,6 +54998,7 @@ uae_u32 REGPARAM2 op_e158_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_ROL_w(data,cnt); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASL.W Dn,Dn */ @@ -54999,10 +55009,15 @@ uae_u32 REGPARAM2 op_e160_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jnf_LSL_w_reg(data,srcreg); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSL.W Dn,Dn */ @@ -55013,10 +55028,15 @@ uae_u32 REGPARAM2 op_e168_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jnf_LSL_w_reg(data,srcreg); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROXL.W Dn,Dn */ @@ -55027,11 +55047,16 @@ uae_u32 REGPARAM2 op_e170_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jnf_ROXL_w(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROL.W Dn,Dn */ @@ -55042,11 +55067,16 @@ uae_u32 REGPARAM2 op_e178_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jnf_ROL_w(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASLQ.L #,Dn */ @@ -55061,6 +55091,7 @@ uae_u32 REGPARAM2 op_e180_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_LSL_l_imm(data,srcreg); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSLQ.L #,Dn */ @@ -55075,6 +55106,7 @@ uae_u32 REGPARAM2 op_e188_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_LSL_l_imm(data,srcreg); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROXLQ.L #,Dn */ @@ -55091,6 +55123,7 @@ uae_u32 REGPARAM2 op_e190_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_ROXL_l(data,cnt); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROLQ.L #,Dn */ @@ -55107,6 +55140,7 @@ uae_u32 REGPARAM2 op_e198_0_comp_nf(uae_u32 opcode) int data=dstreg; jnf_ROL_l(data,cnt); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASL.L Dn,Dn */ @@ -55117,10 +55151,15 @@ uae_u32 REGPARAM2 op_e1a0_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jnf_LSL_l_reg(data,srcreg); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* LSL.L Dn,Dn */ @@ -55131,10 +55170,15 @@ uae_u32 REGPARAM2 op_e1a8_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int data=dstreg; jnf_LSL_l_reg(data,srcreg); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROXL.L Dn,Dn */ @@ -55145,11 +55189,16 @@ uae_u32 REGPARAM2 op_e1b0_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jnf_ROXL_l(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ROL.L Dn,Dn */ @@ -55160,11 +55209,16 @@ uae_u32 REGPARAM2 op_e1b8_0_comp_nf(uae_u32 opcode) uae_u32 m68k_pc_offset_thisinst=m68k_pc_offset; m68k_pc_offset+=2; uae_u8 scratchie=S1; - dont_care_flags(); +if ((uae_u32)srcreg==(uae_u32)dstreg) { + FAIL(1); + return 0; +} +{ dont_care_flags(); int cnt=srcreg; int data=dstreg; jnf_ROL_l(data,cnt); - if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); +} if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); + if (failure) m68k_pc_offset=m68k_pc_offset_thisinst; return 0; } /* ASLW.W (An) */ @@ -55177,9 +55231,9 @@ uae_u32 REGPARAM2 op_e1d0_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55193,9 +55247,9 @@ uae_u32 REGPARAM2 op_e1d8_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -55211,9 +55265,9 @@ uae_u32 REGPARAM2 op_e1e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55228,9 +55282,9 @@ uae_u32 REGPARAM2 op_e1e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55243,11 +55297,11 @@ uae_u32 REGPARAM2 op_e1f0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55261,9 +55315,9 @@ uae_u32 REGPARAM2 op_e1f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55277,9 +55331,9 @@ uae_u32 REGPARAM2 op_e1f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ASLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55293,9 +55347,9 @@ uae_u32 REGPARAM2 op_e2d0_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55309,9 +55363,9 @@ uae_u32 REGPARAM2 op_e2d8_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -55327,9 +55381,9 @@ uae_u32 REGPARAM2 op_e2e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55344,9 +55398,9 @@ uae_u32 REGPARAM2 op_e2e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55359,11 +55413,11 @@ uae_u32 REGPARAM2 op_e2f0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55377,9 +55431,9 @@ uae_u32 REGPARAM2 op_e2f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55393,9 +55447,9 @@ uae_u32 REGPARAM2 op_e2f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSRW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55409,9 +55463,9 @@ uae_u32 REGPARAM2 op_e3d0_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55425,9 +55479,9 @@ uae_u32 REGPARAM2 op_e3d8_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -55443,9 +55497,9 @@ uae_u32 REGPARAM2 op_e3e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55460,9 +55514,9 @@ uae_u32 REGPARAM2 op_e3e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55475,11 +55529,11 @@ uae_u32 REGPARAM2 op_e3f0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55493,9 +55547,9 @@ uae_u32 REGPARAM2 op_e3f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55509,9 +55563,9 @@ uae_u32 REGPARAM2 op_e3f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_LSLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55525,9 +55579,9 @@ uae_u32 REGPARAM2 op_e6d0_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_RORW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55541,9 +55595,9 @@ uae_u32 REGPARAM2 op_e6d8_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_RORW(src); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -55559,9 +55613,9 @@ uae_u32 REGPARAM2 op_e6e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_RORW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55576,9 +55630,9 @@ uae_u32 REGPARAM2 op_e6e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_RORW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55591,11 +55645,11 @@ uae_u32 REGPARAM2 op_e6f0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_RORW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55609,9 +55663,9 @@ uae_u32 REGPARAM2 op_e6f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_RORW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55625,9 +55679,9 @@ uae_u32 REGPARAM2 op_e6f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_RORW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55641,9 +55695,9 @@ uae_u32 REGPARAM2 op_e7d0_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ROLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55657,9 +55711,9 @@ uae_u32 REGPARAM2 op_e7d8_0_comp_nf(uae_u32 opcode) dont_care_flags(); int srca=srcreg+8; int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ROLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); arm_ADD_l_ri8(srcreg+8,2); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; @@ -55675,9 +55729,9 @@ uae_u32 REGPARAM2 op_e7e0_0_comp_nf(uae_u32 opcode) int srca=srcreg+8; arm_SUB_l_ri8(srcreg+8,2); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ROLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55692,9 +55746,9 @@ uae_u32 REGPARAM2 op_e7e8_0_comp_nf(uae_u32 opcode) int srca=scratchie++; lea_l_brr(srca,8+srcreg,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ROLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55707,11 +55761,11 @@ uae_u32 REGPARAM2 op_e7f0_0_comp_nf(uae_u32 opcode) uae_u8 scratchie=S1; dont_care_flags(); int srca=scratchie++; - calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca); + calc_disp_ea_020(srcreg+8,comp_get_iword((m68k_pc_offset+=2)-2),srca,scratchie); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ROLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55725,9 +55779,9 @@ uae_u32 REGPARAM2 op_e7f8_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,(uae_s32)(uae_s16)comp_get_iword((m68k_pc_offset+=2)-2)); int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ROLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } @@ -55741,9 +55795,9 @@ uae_u32 REGPARAM2 op_e7f9_0_comp_nf(uae_u32 opcode) int srca = scratchie++; mov_l_ri(srca,comp_get_ilong((m68k_pc_offset+=4)-4)); /* absl */ int src=scratchie++; - readword(srca,src); + readword(srca,src,scratchie); jnf_ROLW(src); - writeword(srca,src); + writeword(srca,src,scratchie); if (m68k_pc_offset>SYNC_PC_OFFSET) sync_m68k_pc(); return 0; } diff --git a/src/jit/compemu.h b/src/jit/compemu.h index 723bc1cd..2f8df205 100644 --- a/src/jit/compemu.h +++ b/src/jit/compemu.h @@ -123,7 +123,7 @@ typedef union { #if defined(CPU_arm) //#define DEBUG_DATA_BUFFER #define ALIGN_NOT_NEEDED -#define N_REGS 10 /* really 16, but 13 to 15 are SP, LR, PC; 12 is scratch reg, 10 holds memstart and 11 holds regs-struct */ +#define N_REGS 11 /* really 16, but 13 to 15 are SP, LR, PC; 12 is scratch reg and 11 holds regs-struct */ #else #define N_REGS 8 /* really only 7, but they are numbered 0,1,2,3,5,6,7 */ #endif @@ -298,17 +298,17 @@ extern int failure; /* Convenience functions exposed to gencomp */ extern uae_u32 m68k_pc_offset; -extern void readbyte(int address, int dest); -extern void readword(int address, int dest); -extern void readlong(int address, int dest); -extern void writebyte(int address, int source); -extern void writeword(int address, int source); -extern void writelong(int address, int source); -extern void writeword_clobber(int address, int source); -extern void writelong_clobber(int address, int source); -extern void get_n_addr(int address, int dest); -extern void get_n_addr_jmp(int address, int dest); -extern void calc_disp_ea_020(int base, uae_u32 dp, int target); +extern void readbyte(int address, int dest, int tmp); +extern void readword(int address, int dest, int tmp); +extern void readlong(int address, int dest, int tmp); +extern void writebyte(int address, int source, int tmp); +extern void writeword(int address, int source, int tmp); +extern void writelong(int address, int source, int tmp); +extern void writeword_clobber(int address, int source, int tmp); +extern void writelong_clobber(int address, int source, int tmp); +extern void get_n_addr(int address, int dest, int tmp); +extern void get_n_addr_jmp(int address, int dest, int tmp); +extern void calc_disp_ea_020(int base, uae_u32 dp, int target, int tmp); #define SYNC_PC_OFFSET 124 extern void sync_m68k_pc(void); extern uae_u32 get_const(int r); diff --git a/src/jit/compemu_fpp.cpp b/src/jit/compemu_fpp.cpp index ea7a0098..0a8ded87 100644 --- a/src/jit/compemu_fpp.cpp +++ b/src/jit/compemu_fpp.cpp @@ -8,7 +8,7 @@ * Modified 2005 Peter Keunecke */ -#include +#include #include "sysconfig.h" #include "sysdeps.h" @@ -77,7 +77,7 @@ STATIC_INLINE int comp_fp_get (uae_u32 opcode, uae_u16 extra, int treg) case 6: /* (d8,An,Xn) or (bd,An,Xn) or ([bd,An,Xn],od) or ([bd,An],Xn,od) */ { uae_u32 dp = comp_get_iword ((m68k_pc_offset += 2) - 2); - calc_disp_ea_020 (reg + 8, dp, S1); + calc_disp_ea_020 (reg + 8, dp, S1, S2); break; } case 7: @@ -173,25 +173,25 @@ STATIC_INLINE int comp_fp_get (uae_u32 opcode, uae_u16 extra, int treg) switch (size) { case 0: /* Long */ - readlong (S1, S2); + readlong (S1, S2, S3); fmov_l_rr (treg, S2); return 2; case 1: /* Single */ - readlong (S1, S2); + readlong (S1, S2, S3); fmov_s_rr (treg, S2); return 1; case 2: /* Long Double */ fp_to_exten_rm (treg, S1); return 0; case 4: /* Word */ - readword (S1, S2); + readword (S1, S2, S3); fmov_w_rr (treg, S2); return 1; case 5: /* Double */ fp_to_double_rm (treg, S1); return 2; case 6: /* Byte */ - readbyte (S1, S2); + readbyte (S1, S2, S3); fmov_b_rr (treg, S2); return 1; default: @@ -251,7 +251,7 @@ STATIC_INLINE int comp_fp_put (uae_u32 opcode, uae_u16 extra) case 6: /* (d8,An,Xn) or (bd,An,Xn) or ([bd,An,Xn],od) or ([bd,An],Xn,od) */ { uae_u32 dp = comp_get_iword ((m68k_pc_offset += 2) - 2); - calc_disp_ea_020 (reg + 8, dp, S1); + calc_disp_ea_020 (reg + 8, dp, S1, S2); break; } case 7: @@ -276,25 +276,25 @@ STATIC_INLINE int comp_fp_put (uae_u32 opcode, uae_u16 extra) switch (size) { case 0: /* Long */ fmov_to_l_rr(S2, sreg); - writelong_clobber (S1, S2); + writelong_clobber (S1, S2, S3); return 0; case 1: /* Single */ fmov_to_s_rr(S2, sreg); - writelong_clobber (S1, S2); + writelong_clobber (S1, S2, S3); return 0; case 2:/* Long Double */ fp_from_exten_mr (S1, sreg); return 0; case 4: /* Word */ fmov_to_w_rr(S2, sreg); - writeword_clobber (S1, S2); + writeword_clobber (S1, S2, S3); return 0; case 5: /* Double */ fp_from_double_mr(S1, sreg); return 0; case 6: /* Byte */ fmov_to_b_rr(S2, sreg); - writebyte (S1, S2); + writebyte (S1, S2, S3); return 0; default: return -1; diff --git a/src/jit/compemu_midfunc_arm.cpp b/src/jit/compemu_midfunc_arm.cpp index fcec7332..2ddeee3a 100644 --- a/src/jit/compemu_midfunc_arm.cpp +++ b/src/jit/compemu_midfunc_arm.cpp @@ -200,55 +200,23 @@ MIDFUNC(2,mov_l_mi,(IMM d, IMM s)) } MENDFUNC(2,mov_l_mi,(IMM d, IMM s)) -MIDFUNC(4,disp_ea20_target_add,(RW4 target, RR4 reg, IMM shift, IMM extend)) +MIDFUNC(2,shll_l_ri,(RW4 r, IMM i)) { - if(isconst(target) && isconst(reg)) { - if(extend) - set_const(target, live.state[target].val + (((uae_s32)(uae_s16)live.state[reg].val) << (shift & 0x1f))); - else - set_const(target, live.state[target].val + (live.state[reg].val << (shift & 0x1f))); + // Only used in calc_disp_ea_020() -> flags not relevant and never modified + if (!i) + return; + if (isconst(r)) { + live.state[r].val <<= i; return; } - reg = readreg(reg); - target = rmw(target); - - if(extend) { - SIGNED16_REG_2_REG(REG_WORK1, reg); - ADD_rrrLSLi(target, target, REG_WORK1, shift & 0x1f); - } else { - ADD_rrrLSLi(target, target, reg, shift & 0x1f); - } - - unlock2(target); - unlock2(reg); -} -MENDFUNC(4,disp_ea20_target_add,(RW4 target, RR4 reg, IMM shift, IMM extend)) + r = rmw(r); -MIDFUNC(4,disp_ea20_target_mov,(W4 target, RR4 reg, IMM shift, IMM extend)) -{ - if(isconst(reg)) { - if(extend) - set_const(target, ((uae_s32)(uae_s16)live.state[reg].val) << (shift & 0x1f)); - else - set_const(target, live.state[reg].val << (shift & 0x1f)); - return; - } + LSL_rri(r,r, i & 0x1f); - reg = readreg(reg); - target = writereg(target); - - if(extend) { - SIGNED16_REG_2_REG(REG_WORK1, reg); - LSL_rri(target, REG_WORK1, shift & 0x1f); - } else { - LSL_rri(target, reg, shift & 0x1f); - } - - unlock2(target); - unlock2(reg); + unlock2(r); } -MENDFUNC(4,disp_ea20_target_mov,(W4 target, RR4 reg, IMM shift, IMM extend)) +MENDFUNC(2,shll_l_ri,(RW4 r, IMM i)) MIDFUNC(2,sign_extend_16_rr,(W4 d, RR2 s)) { @@ -510,6 +478,49 @@ MIDFUNC(2,sub_w_ri,(RW2 d, IMM i)) } MENDFUNC(2,sub_w_ri,(RW2 d, IMM i)) +MIDFUNC(3,call_r_02,(RR4 r, RR4 in1, RR4 in2)) +{ + clobber_flags(); + in1 = readreg_specific(in1, REG_PAR1); + in2 = readreg_specific(in2, REG_PAR2); + r = readreg(r); + prepare_for_call_1(); + unlock2(r); + unlock2(in1); + unlock2(in2); + prepare_for_call_2(); + compemu_raw_call_r(r); +} +MENDFUNC(3,call_r_02,(RR4 r, RR4 in1, RR4 in2)) + +MIDFUNC(3,call_r_11,(W4 out1, RR4 r, RR4 in1)) +{ + clobber_flags(); + if (out1 != in1 && out1 != r) { + COMPCALL(forget_about)(out1); + } + + in1 = readreg_specific(in1, REG_PAR1); + r = readreg(r); + prepare_for_call_1(); + + unlock2(in1); + unlock2(r); + + prepare_for_call_2(); + compemu_raw_call_r(r); + + live.nat[REG_RESULT].holds[0] = out1; + live.nat[REG_RESULT].nholds = 1; + live.nat[REG_RESULT].touched = touchcnt++; + + live.state[out1].realreg = REG_RESULT; + live.state[out1].realind = 0; + live.state[out1].val = 0; + live.state[out1].validsize = 4; + set_status(out1, DIRTY); +} +MENDFUNC(3,call_r_11,(W4 out1, RR4 r, RR4 in1)) /* forget_about() takes a mid-layer register */ MIDFUNC(1,forget_about,(W4 r)) diff --git a/src/jit/compemu_midfunc_arm.h b/src/jit/compemu_midfunc_arm.h index 847587c1..77e1f856 100644 --- a/src/jit/compemu_midfunc_arm.h +++ b/src/jit/compemu_midfunc_arm.h @@ -38,10 +38,8 @@ DECLARE_MIDFUNC(arm_ADD_l_ri8(RW4 d, IMM i)); DECLARE_MIDFUNC(arm_SUB_l_ri8(RW4 d, IMM i)); // Emulated midfunc -DECLARE_MIDFUNC(disp_ea20_target_add(RW4 target, RR4 reg, IMM shift, IMM extend)); -DECLARE_MIDFUNC(disp_ea20_target_mov(W4 target, RR4 reg, IMM shift, IMM extend)); - DECLARE_MIDFUNC(mov_l_mi(IMM d, IMM s)); +DECLARE_MIDFUNC(shll_l_ri(RW4 r, IMM i)); DECLARE_MIDFUNC(pop_l(W4 d)); DECLARE_MIDFUNC(push_l(RR4 s)); DECLARE_MIDFUNC(sign_extend_16_rr(W4 d, RR2 s)); @@ -56,6 +54,8 @@ DECLARE_MIDFUNC(mov_l_ri(W4 d, IMM s)); DECLARE_MIDFUNC(mov_b_ri(W1 d, IMM s)); DECLARE_MIDFUNC(sub_l_ri(RW4 d, IMM i)); DECLARE_MIDFUNC(sub_w_ri(RW2 d, IMM i)); +DECLARE_MIDFUNC(call_r_02(RR4 r, RR4 in1, RR4 in2)); +DECLARE_MIDFUNC(call_r_11(W4 out1, RR4 r, RR4 in1)); DECLARE_MIDFUNC(live_flags(void)); DECLARE_MIDFUNC(dont_care_flags(void)); DECLARE_MIDFUNC(make_flags_live(void)); diff --git a/src/jit/compemu_midfunc_arm2.cpp b/src/jit/compemu_midfunc_arm2.cpp index e8a3c068..c006d9a3 100644 --- a/src/jit/compemu_midfunc_arm2.cpp +++ b/src/jit/compemu_midfunc_arm2.cpp @@ -4064,8 +4064,11 @@ MIDFUNC(2,jnf_MOVE16,(RR4 d, RR4 s)) BIC_rri(s, s, 0x0000000F); BIC_rri(d, d, 0x0000000F); - ADD_rrr(s, s, R_MEMSTART); - ADD_rrr(d, d, R_MEMSTART); + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK1, R_REGSTRUCT, offs); + + ADD_rrr(s, s, REG_WORK1); + ADD_rrr(d, d, REG_WORK1); #ifdef ARMV6T2 LDRD_rR(REG_WORK1, s); @@ -5588,11 +5591,10 @@ MIDFUNC(2,jff_ROXL_b,(RW1 d, RR4 i)) CMP_ri(REG_WORK1, 8); CC_SUB_rri(NATIVE_CC_GT, REG_WORK1, REG_WORK1, 9); TST_rr(REG_WORK1, REG_WORK1); - BNE_i(3); // need to rotate + BNE_i(2); // need to rotate MSR_CPSRf_i(0); - AND_rri(REG_WORK1, d, 0xff); // make sure to clear carry - MOVS_rrLSLi(REG_WORK1, REG_WORK1, 24); + MOVS_rrLSLi(REG_WORK1, d, 24); #ifdef ARMV6T2 B_i(13); // end of op #else @@ -5654,8 +5656,7 @@ MIDFUNC(2,jff_ROXL_w,(RW2 d, RR4 i)) BNE_i(3); // need to rotate MSR_CPSRf_i(0); - BIC_rri(REG_WORK1, d, 0x00ff0000); // make sure to clear carry - MOVS_rrLSLi(REG_WORK1, REG_WORK1, 16); + MOVS_rrLSLi(REG_WORK1, d, 16); #ifdef ARMV6T2 B_i(13); // end of op #else @@ -6036,282 +6037,6 @@ MIDFUNC(1,jff_RORW,(RW2 d)) } MENDFUNC(1,jff_RORW,(RW2 d)) - -/* - * ROXR - * Operand Syntax: Dx, Dy - * #, Dy - * - * Operand Size: 8,16,32 - * - * X Set according to the last bit rotated out of the operand. Unchanged when the rotate count is zero. - * N Set if the most significant bit of the result is set. Cleared otherwise. - * Z Set if the result is zero. Cleared otherwise. - * V Always cleared. - * C Set according to the last bit rotated out of the operand. Cleared when the rotate count is zero. - * - */ -MIDFUNC(2,jnf_ROXR_b,(RW1 d, RR4 i)) -{ - int x = readreg(FLAGX); - INIT_REGS_b(d, i); - - clobber_flags(); - - AND_rri(REG_WORK1, i, 63); - CMP_ri(REG_WORK1, 35); - CC_SUB_rri(NATIVE_CC_GT, REG_WORK1, REG_WORK1, 36); - CMP_ri(REG_WORK1, 17); - CC_SUB_rri(NATIVE_CC_GT, REG_WORK1, REG_WORK1, 18); - CMP_ri(REG_WORK1, 8); - CC_SUB_rri(NATIVE_CC_GT, REG_WORK1, REG_WORK1, 9); - TST_rr(REG_WORK1, REG_WORK1); -#ifdef ARMV6T2 - BEQ_i(4); // end of op -#else - BEQ_i(6); // end of op -#endif - -// need to rotate - AND_rri(REG_WORK2, d, 0xff); // val = val & 0xff - ORR_rrrLSLi(REG_WORK2, REG_WORK2, REG_WORK2, 9); // val = val | (val << 9) - ORR_rrrLSLi(REG_WORK2, REG_WORK2, x, 8); // val = val | (x << 8) - MOV_rrLSRr(REG_WORK2, REG_WORK2, REG_WORK1); // val = val >> cnt - -#ifdef ARMV6T2 - BFI_rrii(d, REG_WORK2, 0, 7); -#else - AND_rri(REG_WORK2, REG_WORK2, 0xff); - BIC_rri(d, d, 0xff); - ORR_rrr(d, d, REG_WORK2); -#endif - -// end of op - - unlock2(x); - EXIT_REGS(d, i); -} -MENDFUNC(2,jnf_ROXR_b,(RW1 d, RR4 i)) - -MIDFUNC(2,jnf_ROXR_w,(RW2 d, RR4 i)) -{ - int x = readreg(FLAGX); - INIT_REGS_w(d, i); - - clobber_flags(); - - AND_rri(REG_WORK1, i, 63); - CMP_ri(REG_WORK1, 33); - CC_SUB_rri(NATIVE_CC_GT, REG_WORK1, REG_WORK1, 34); - CMP_ri(REG_WORK1, 16); - CC_SUB_rri(NATIVE_CC_GT, REG_WORK1, REG_WORK1, 17); - TST_rr(REG_WORK1, REG_WORK1); - BEQ_i(5); // end of op - -// need to rotate - BIC_rri(REG_WORK2, d, 0xff000000); - BIC_rri(REG_WORK2, REG_WORK2, 0x00ff0000); // val = val & 0xffff - ORR_rrrLSLi(REG_WORK2, REG_WORK2, REG_WORK2, 17); // val = val | (val << 17) - ORR_rrrLSLi(REG_WORK2, REG_WORK2, x, 16); // val = val | (x << 16) - MOV_rrLSRr(REG_WORK2, REG_WORK2, REG_WORK1); // val = val >> cnt - - PKHTB_rrr(d, d, REG_WORK2); - -// end of op - - unlock2(x); - EXIT_REGS(d, i); -} -MENDFUNC(2,jnf_ROXR_w,(RW2 d, RR4 i)) - -MIDFUNC(2,jnf_ROXR_l,(RW4 d, RR4 i)) -{ - int x = readreg(FLAGX); - INIT_REGS_l(d, i); - - clobber_flags(); - - AND_rri(REG_WORK1, i, 63); - CMP_ri(REG_WORK1, 32); - CC_SUB_rri(NATIVE_CC_GT, REG_WORK1, REG_WORK1, 33); - TST_rr(REG_WORK1, REG_WORK1); - BEQ_i(6); // end of op - -// need to rotate - CMP_ri(REG_WORK1, 32); - CC_MOV_rrLSRr(NATIVE_CC_NE, REG_WORK2, d, REG_WORK1); - CC_MOV_ri(NATIVE_CC_EQ, REG_WORK2, 0); - - RSB_rri(REG_WORK3, REG_WORK1, 32); - ORR_rrrLSLr(REG_WORK2, REG_WORK2, x, REG_WORK3); - - ADD_rri(REG_WORK3, REG_WORK1, 1); - ORR_rrrLSLr(d, REG_WORK2, d, REG_WORK3); - -// end of op - - unlock2(x); - EXIT_REGS(d, i); -} -MENDFUNC(2,jnf_ROXR_l,(RW4 d, RR4 i)) - -MIDFUNC(2,jff_ROXR_b,(RW1 d, RR4 i)) -{ - INIT_REGS_b(d, i); - int x = rmw(FLAGX); - - AND_rri(REG_WORK1, i, 63); - CMP_ri(REG_WORK1, 35); - CC_SUB_rri(NATIVE_CC_GT, REG_WORK1, REG_WORK1, 36); - CMP_ri(REG_WORK1, 17); - CC_SUB_rri(NATIVE_CC_GT, REG_WORK1, REG_WORK1, 18); - CMP_ri(REG_WORK1, 8); - CC_SUB_rri(NATIVE_CC_GT, REG_WORK1, REG_WORK1, 9); - TST_rr(REG_WORK1, REG_WORK1); - BNE_i(3); // need to rotate - - MSR_CPSRf_i(0); - BIC_rri(REG_WORK1, d, 0x0000ff00); // make sure to clear carry - MOVS_rrLSLi(REG_WORK1, REG_WORK1, 24); -#ifdef ARMV6T2 - B_i(9); // end of op -#else - B_i(12); // end of op -#endif - -// need to rotate - AND_rri(REG_WORK2, d, 0xff); // val = val & 0xff - ORR_rrrLSLi(REG_WORK2, REG_WORK2, REG_WORK2, 9); // val = val | (val << 9) - ORR_rrrLSLi(REG_WORK2, REG_WORK2, x, 8); // val = val | (x << 8) - MSR_CPSRf_i(0); - MOVS_rrLSRr(REG_WORK2, REG_WORK2, REG_WORK1); // val = val >> cnt - - // Duplicate carry - MOV_ri(x, 1); - CC_MOV_ri(NATIVE_CC_CC, x, 0); - - // Calc N and Z -#ifdef ARMV6T2 - BFI_rrii(REG_WORK2, x, 8, 8); // Make sure to set carry (last bit shifted out) -#else - BIC_rri(REG_WORK2, REG_WORK2, 0x100); - ORR_rrrLSLi(REG_WORK2, REG_WORK2, x, 8); -#endif - LSLS_rri(REG_WORK1, REG_WORK2, 24); - -#ifdef ARMV6T2 - BFI_rrii(d, REG_WORK2, 0, 7); -#else - AND_rri(REG_WORK2, REG_WORK2, 0xff); - BIC_rri(d, d, 0xff); - ORR_rrr(d, d, REG_WORK2); -#endif - -// end of op - - unlock2(x); - EXIT_REGS(d, i); -} -MENDFUNC(2,jff_ROXR_b,(RW1 d, RR4 i)) - -MIDFUNC(2,jff_ROXR_w,(RW2 d, RR4 i)) -{ - INIT_REGS_w(d, i); - int x = rmw(FLAGX); - - AND_rri(REG_WORK1, i, 63); - CMP_ri(REG_WORK1, 33); - CC_SUB_rri(NATIVE_CC_GT, REG_WORK1, REG_WORK1, 34); - CMP_ri(REG_WORK1, 16); - CC_SUB_rri(NATIVE_CC_GT, REG_WORK1, REG_WORK1, 17); - TST_rr(REG_WORK1, REG_WORK1); - BNE_i(3); // need to rotate - - MSR_CPSRf_i(0); - BIC_rri(REG_WORK1, d, 0x00ff0000); // make sure to clear carry - MOVS_rrLSLi(REG_WORK1, REG_WORK1, 16); -#ifdef ARMV6T2 - B_i(10); // end of op -#else - B_i(11); // end of op -#endif - -// need to rotate - BIC_rri(REG_WORK2, d, 0xff000000); - BIC_rri(REG_WORK2, REG_WORK2, 0x00ff0000); // val = val & 0xffff - ORR_rrrLSLi(REG_WORK2, REG_WORK2, REG_WORK2, 17); // val = val | (val << 17) - ORR_rrrLSLi(REG_WORK2, REG_WORK2, x, 16); // val = val | (x << 16) - MSR_CPSRf_i(0); - MOVS_rrLSRr(REG_WORK2, REG_WORK2, REG_WORK1); // val = val >> cnt - - // Duplicate carry - MOV_ri(x, 1); - CC_MOV_ri(NATIVE_CC_CC, x, 0); - - // Calc N and Z -#ifdef ARMV6T2 - BFI_rrii(REG_WORK2, x, 16, 16); // Make sure to set carry (last bit shifted out) -#else - BIC_rri(REG_WORK2, REG_WORK2, 0x10000); - ORR_rrrLSLi(REG_WORK2, REG_WORK2, x, 16); -#endif - LSLS_rri(REG_WORK1, REG_WORK2, 16); - - PKHTB_rrr(d, d, REG_WORK2); - -// end of op - - unlock2(x); - EXIT_REGS(d, i); -} -MENDFUNC(2,jff_ROXR_w,(RW2 d, RR4 i)) - -MIDFUNC(2,jff_ROXR_l,(RW4 d, RR4 i)) -{ - INIT_REGS_l(d, i); - int x = rmw(FLAGX); - - AND_rri(REG_WORK1, i, 63); - CMP_ri(REG_WORK1, 32); - CC_SUB_rri(NATIVE_CC_GT, REG_WORK1, REG_WORK1, 33); - TST_rr(REG_WORK1, REG_WORK1); - BNE_i(2); // need to rotate - - MSR_CPSRf_i(0); - TST_rr(d, d); - B_i(13); // end of op - -// need to rotate - CMP_ri(REG_WORK1, 32); - BNE_i(3); // rotate 1-31 - -// rotate 32 - MSR_CPSRf_i(0); - LSLS_rri(d, d, 1); - ORRS_rrr(d, d, x); - B_i(5); // duplicate carry - -// rotate 1-31 - MSR_CPSRf_i(0); - MOVS_rrLSRr(REG_WORK2, d, REG_WORK1); - - RSB_rri(REG_WORK3, REG_WORK1, 32); - ORR_rrrLSLr(REG_WORK2, REG_WORK2, x, REG_WORK3); - - ADD_rri(REG_WORK3, REG_WORK1, 1); - ORR_rrrLSLr(d, REG_WORK2, d, REG_WORK3); - - // Duplicate carry - MOV_ri(x, 1); - CC_MOV_ri(NATIVE_CC_CC, x, 0); - -// end of op - - unlock2(x); - EXIT_REGS(d, i); -} -MENDFUNC(2,jff_ROXR_l,(RW4 d, RR4 i)) - /* * SCC * @@ -6929,10 +6654,13 @@ MENDFUNC(1,jff_TST_l,(RR4 s)) */ MIDFUNC(2,jnf_MEM_WRITE_OFF_b,(RR4 adr, RR4 b)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); b = readreg(b); - STRB_rRR(b, adr, R_MEMSTART); + STRB_rRR(b, adr, REG_WORK2); unlock2(b); unlock2(adr); @@ -6941,11 +6669,14 @@ MENDFUNC(2,jnf_MEM_WRITE_OFF_b,(RR4 adr, RR4 b)) MIDFUNC(2,jnf_MEM_WRITE_OFF_w,(RR4 adr, RR4 w)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); w = readreg(w); REV16_rr(REG_WORK1, w); - STRH_rRR(REG_WORK1, adr, R_MEMSTART); + STRH_rRR(REG_WORK1, adr, REG_WORK2); unlock2(w); unlock2(adr); @@ -6954,11 +6685,14 @@ MENDFUNC(2,jnf_MEM_WRITE_OFF_w,(RR4 adr, RR4 w)) MIDFUNC(2,jnf_MEM_WRITE_OFF_l,(RR4 adr, RR4 l)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); l = readreg(l); REV_rr(REG_WORK1, l); - STR_rRR(REG_WORK1, adr, R_MEMSTART); + STR_rRR(REG_WORK1, adr, REG_WORK2); unlock2(l); unlock2(adr); @@ -6968,10 +6702,13 @@ MENDFUNC(2,jnf_MEM_WRITE_OFF_l,(RR4 adr, RR4 l)) MIDFUNC(2,jnf_MEM_READ_OFF_b,(W4 d, RR4 adr)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); d = writereg(d); - LDRB_rRR(d, adr, R_MEMSTART); + LDRB_rRR(d, adr, REG_WORK2); unlock2(d); unlock2(adr); @@ -6980,10 +6717,13 @@ MENDFUNC(2,jnf_MEM_READ_OFF_b,(W4 d, RR4 adr)) MIDFUNC(2,jnf_MEM_READ_OFF_w,(W4 d, RR4 adr)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); d = writereg(d); - LDRH_rRR(REG_WORK1, adr, R_MEMSTART); + LDRH_rRR(REG_WORK1, adr, REG_WORK2); REV16_rr(d, REG_WORK1); unlock2(d); @@ -6993,10 +6733,13 @@ MENDFUNC(2,jnf_MEM_READ_OFF_w,(W4 d, RR4 adr)) MIDFUNC(2,jnf_MEM_READ_OFF_l,(W4 d, RR4 adr)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); d = writereg(d); - LDR_rRR(REG_WORK1, adr, R_MEMSTART); + LDR_rRR(REG_WORK1, adr, REG_WORK2); REV_rr(d, REG_WORK1); unlock2(d); @@ -7007,11 +6750,14 @@ MENDFUNC(2,jnf_MEM_READ_OFF_l,(W4 d, RR4 adr)) MIDFUNC(2,jnf_MEM_WRITE24_OFF_b,(RR4 adr, RR4 b)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); b = readreg(b); BIC_rri(REG_WORK1, adr, 0xff000000); - STRB_rRR(b, REG_WORK1, R_MEMSTART); + STRB_rRR(b, REG_WORK1, REG_WORK2); unlock2(b); unlock2(adr); @@ -7020,12 +6766,15 @@ MENDFUNC(2,jnf_MEM_WRITE24_OFF_b,(RR4 adr, RR4 b)) MIDFUNC(2,jnf_MEM_WRITE24_OFF_w,(RR4 adr, RR4 w)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); w = readreg(w); BIC_rri(REG_WORK1, adr, 0xff000000); REV16_rr(REG_WORK3, w); - STRH_rRR(REG_WORK3, REG_WORK1, R_MEMSTART); + STRH_rRR(REG_WORK3, REG_WORK1, REG_WORK2); unlock2(w); unlock2(adr); @@ -7034,12 +6783,15 @@ MENDFUNC(2,jnf_MEM_WRITE24_OFF_w,(RR4 adr, RR4 w)) MIDFUNC(2,jnf_MEM_WRITE24_OFF_l,(RR4 adr, RR4 l)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); l = readreg(l); BIC_rri(REG_WORK1, adr, 0xff000000); REV_rr(REG_WORK3, l); - STR_rRR(REG_WORK3, REG_WORK1, R_MEMSTART); + STR_rRR(REG_WORK3, REG_WORK1, REG_WORK2); unlock2(l); unlock2(adr); @@ -7049,11 +6801,14 @@ MENDFUNC(2,jnf_MEM_WRITE24_OFF_l,(RR4 adr, RR4 l)) MIDFUNC(2,jnf_MEM_READ24_OFF_b,(W4 d, RR4 adr)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); d = writereg(d); BIC_rri(REG_WORK1, adr, 0xff000000); - LDRB_rRR(d, REG_WORK1, R_MEMSTART); + LDRB_rRR(d, REG_WORK1, REG_WORK2); unlock2(d); unlock2(adr); @@ -7062,11 +6817,14 @@ MENDFUNC(2,jnf_MEM_READ24_OFF_b,(W4 d, RR4 adr)) MIDFUNC(2,jnf_MEM_READ24_OFF_w,(W4 d, RR4 adr)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); d = writereg(d); BIC_rri(REG_WORK1, adr, 0xff000000); - LDRH_rRR(REG_WORK1, REG_WORK1, R_MEMSTART); + LDRH_rRR(REG_WORK1, REG_WORK1, REG_WORK2); REV16_rr(d, REG_WORK1); unlock2(d); @@ -7076,11 +6834,14 @@ MENDFUNC(2,jnf_MEM_READ24_OFF_w,(W4 d, RR4 adr)) MIDFUNC(2,jnf_MEM_READ24_OFF_l,(W4 d, RR4 adr)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); d = writereg(d); BIC_rri(REG_WORK1, adr, 0xff000000); - LDR_rRR(d, REG_WORK1, R_MEMSTART); + LDR_rRR(d, REG_WORK1, REG_WORK2); REV_rr(d, d); unlock2(d); @@ -7091,10 +6852,13 @@ MENDFUNC(2,jnf_MEM_READ24_OFF_l,(W4 d, RR4 adr)) MIDFUNC(2,jnf_MEM_GETADR_OFF,(W4 d, RR4 adr)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); d = writereg(d); - ADD_rrr(d, adr, R_MEMSTART); + ADD_rrr(d, adr, REG_WORK2); unlock2(d); unlock2(adr); @@ -7103,11 +6867,14 @@ MENDFUNC(2,jnf_MEM_GETADR_OFF,(W4 d, RR4 adr)) MIDFUNC(2,jnf_MEM_GETADR24_OFF,(W4 d, RR4 adr)) { + uae_s32 offs = (uae_u32)&NATMEM_OFFSETX - (uae_u32) ®s; + LDR_rRI(REG_WORK2, R_REGSTRUCT, offs); + adr = readreg(adr); d = writereg(d); BIC_rri(REG_WORK1, adr, 0xff000000); - ADD_rrr(d, REG_WORK1, R_MEMSTART); + ADD_rrr(d, REG_WORK1, REG_WORK2); unlock2(d); unlock2(adr); @@ -7115,17 +6882,10 @@ MIDFUNC(2,jnf_MEM_GETADR24_OFF,(W4 d, RR4 adr)) MENDFUNC(2,jnf_MEM_GETADR24_OFF,(W4 d, RR4 adr)) -MIDFUNC(3,jnf_MEM_READMEMBANK,(W4 dest, RR4 adr, IMM offset)) +MIDFUNC(2,jnf_MEM_GETBANKFUNC,(W4 d, RR4 adr, IMM offset)) { - clobber_flags(); - if (dest != adr) { - COMPCALL(forget_about)(dest); - } - - adr = readreg_specific(adr, REG_PAR1); - prepare_for_call_1(); - unlock2(adr); - prepare_for_call_2(); + adr = readreg(adr); + d = writereg(d); #ifdef ARMV6T2 MOVW_ri16(REG_WORK2, (uae_u32)mem_banks); @@ -7135,47 +6895,10 @@ MIDFUNC(3,jnf_MEM_READMEMBANK,(W4 dest, RR4 adr, IMM offset)) LDR_rRI(REG_WORK2, RPC_INDEX, offs); #endif LSR_rri(REG_WORK1, adr, 16); - LDR_rRR_LSLi(REG_WORK3, REG_WORK2, REG_WORK1, 2); - LDR_rRI(REG_WORK3, REG_WORK3, offset); - - compemu_raw_call_r(REG_WORK3); - - live.nat[REG_RESULT].holds[0] = dest; - live.nat[REG_RESULT].nholds = 1; - live.nat[REG_RESULT].touched = touchcnt++; - - live.state[dest].realreg = REG_RESULT; - live.state[dest].realind = 0; - live.state[dest].val = 0; - live.state[dest].validsize = 4; - set_status(dest, DIRTY); -} -MENDFUNC(3,jnf_MEM_READMEMBANK,(W4 dest, RR4 adr, IMM offset)) - - -MIDFUNC(3,jnf_MEM_WRITEMEMBANK,(RR4 adr, RR4 source, IMM offset)) -{ - clobber_flags(); - - adr = readreg_specific(adr, REG_PAR1); - source = readreg_specific(source, REG_PAR2); - prepare_for_call_1(); + LDR_rRR_LSLi(d, REG_WORK2, REG_WORK1, 2); + LDR_rRI(d, d, offset); + + unlock2(d); unlock2(adr); - unlock2(source); - prepare_for_call_2(); - -#ifdef ARMV6T2 - MOVW_ri16(REG_WORK2, (uae_u32)mem_banks); - MOVT_ri16(REG_WORK2, (uae_u32)mem_banks >> 16); -#else - uae_s32 offs = data_long_offs((uae_u32)mem_banks); - LDR_rRI(REG_WORK2, RPC_INDEX, offs); -#endif - LSR_rri(REG_WORK1, adr, 16); - LDR_rRR_LSLi(REG_WORK3, REG_WORK2, REG_WORK1, 2); - LDR_rRI(REG_WORK3, REG_WORK3, offset); - - compemu_raw_call_r(REG_WORK3); } -MENDFUNC(3,jnf_MEM_WRITEMEMBANK,(RR4 adr, RR4 source, IMM offset)) - +MENDFUNC(2,jnf_MEM_GETBANKFUNC,(W4 d, RR4 adr, IMM offset)) diff --git a/src/jit/compemu_midfunc_arm2.h b/src/jit/compemu_midfunc_arm2.h index a901f7d2..6959d4c0 100644 --- a/src/jit/compemu_midfunc_arm2.h +++ b/src/jit/compemu_midfunc_arm2.h @@ -357,14 +357,6 @@ DECLARE_MIDFUNC(jff_ROR_b(RW1 d, RR4 i)); DECLARE_MIDFUNC(jff_ROR_w(RW2 d, RR4 i)); DECLARE_MIDFUNC(jff_ROR_l(RW4 d, RR4 i)); -// ROXR -DECLARE_MIDFUNC(jnf_ROXR_b(RW1 d, RR4 i)); -DECLARE_MIDFUNC(jnf_ROXR_w(RW2 d, RR4 i)); -DECLARE_MIDFUNC(jnf_ROXR_l(RW4 d, RR4 i)); -DECLARE_MIDFUNC(jff_ROXR_b(RW1 d, RR4 i)); -DECLARE_MIDFUNC(jff_ROXR_w(RW2 d, RR4 i)); -DECLARE_MIDFUNC(jff_ROXR_l(RW4 d, RR4 i)); - // Scc DECLARE_MIDFUNC(jnf_SCC(W1 d, IMM cc)); @@ -420,6 +412,4 @@ DECLARE_MIDFUNC(jnf_MEM_READ24_OFF_l(W4 d, RR4 adr)); DECLARE_MIDFUNC(jnf_MEM_GETADR_OFF(W4 d, RR4 adr)); DECLARE_MIDFUNC(jnf_MEM_GETADR24_OFF(W4 d, RR4 adr)); - -DECLARE_MIDFUNC(jnf_MEM_READMEMBANK(W4 dest, RR4 adr, IMM offset)); -DECLARE_MIDFUNC(jnf_MEM_WRITEMEMBANK(RR4 adr, RR4 source, IMM offset)); +DECLARE_MIDFUNC(jnf_MEM_GETBANKFUNC(W4 d, RR4 adr, IMM offset)); diff --git a/src/jit/compemu_support.cpp b/src/jit/compemu_support.cpp index e9372f90..3a2c0914 100644 --- a/src/jit/compemu_support.cpp +++ b/src/jit/compemu_support.cpp @@ -1544,7 +1544,7 @@ void freescratch(void) int i; for (i=0; i> 12) & 15; int regd_shift=(dp >> 9) & 3; @@ -1818,7 +1843,11 @@ void calc_disp_ea_020(int base, uae_u32 dp, int target) if ((dp & 0x4) == 0) { /* add regd *before* the get_long */ if (!ignorereg) { - disp_ea20_target_mov(target, reg, regd_shift, ((dp & 0x800) == 0)); + if ((dp & 0x800) == 0) + sign_extend_16_rr(target, reg); + else + mov_l_rr(target, reg); + shll_l_ri(target, regd_shift); } else mov_l_ri(target, 0); @@ -1827,7 +1856,7 @@ void calc_disp_ea_020(int base, uae_u32 dp, int target) if (!ignorebase) arm_ADD_l(target, base); arm_ADD_l_ri(target, addbase); - if (dp&0x03) readlong(target, target); + if (dp&0x03) readlong(target, target, tmp); } else { /* do the getlong first, then add regd */ if (!ignorebase) { mov_l_rr(target, base); @@ -1835,10 +1864,16 @@ void calc_disp_ea_020(int base, uae_u32 dp, int target) } else mov_l_ri(target, addbase); - if (dp&0x03) readlong(target, target); + if (dp&0x03) readlong(target, target, tmp); if (!ignorereg) { - disp_ea20_target_add(target, reg, regd_shift, ((dp & 0x800) == 0)); + if ((dp & 0x800) == 0) + sign_extend_16_rr(tmp, reg); + else + mov_l_rr(tmp, reg); + shll_l_ri(tmp, regd_shift); + /* tmp is now regd */ + arm_ADD_l(target, tmp); } } arm_ADD_l_ri(target, outer); @@ -1852,6 +1887,7 @@ void calc_disp_ea_020(int base, uae_u32 dp, int target) lea_l_brr_indexed(target, base, reg, 1 << regd_shift, (uae_s8)dp); } } + forget_about(tmp); } void set_cache_state(int enabled) @@ -1991,6 +2027,7 @@ STATIC_INLINE int block_check_checksum(blockinfo* bi) means we have to move it into the needs-to-be-flushed list */ bi->handler_to_use = bi->handler; set_dhtu(bi, bi->direct_handler); + bi->status = BI_CHECKING; isgood = called_check_checksum(bi) != 0; } diff --git a/src/jit/compstbl.cpp b/src/jit/compstbl.cpp index 52d80309..4580e2c2 100644 --- a/src/jit/compstbl.cpp +++ b/src/jit/compstbl.cpp @@ -1636,27 +1636,27 @@ extern const struct comptbl op_smalltbl_0_comp_ff[] = { { op_d1fc_0_comp_ff, 0x00000002, 53756 }, /* ADDA */ { op_e000_0_comp_ff, 0x00000000, 57344 }, /* ASR */ { op_e008_0_comp_ff, 0x00000000, 57352 }, /* LSR */ -{ op_e010_0_comp_ff, 0x00000008, 57360 }, /* ROXR */ +{ NULL, 0x00000008, 57360 }, /* ROXR */ { op_e018_0_comp_ff, 0x00000000, 57368 }, /* ROR */ { op_e020_0_comp_ff, 0x00000000, 57376 }, /* ASR */ { op_e028_0_comp_ff, 0x00000000, 57384 }, /* LSR */ -{ op_e030_0_comp_ff, 0x00000008, 57392 }, /* ROXR */ +{ NULL, 0x00000008, 57392 }, /* ROXR */ { op_e038_0_comp_ff, 0x00000000, 57400 }, /* ROR */ { op_e040_0_comp_ff, 0x00000000, 57408 }, /* ASR */ { op_e048_0_comp_ff, 0x00000000, 57416 }, /* LSR */ -{ op_e050_0_comp_ff, 0x00000008, 57424 }, /* ROXR */ +{ NULL, 0x00000008, 57424 }, /* ROXR */ { op_e058_0_comp_ff, 0x00000000, 57432 }, /* ROR */ { op_e060_0_comp_ff, 0x00000000, 57440 }, /* ASR */ { op_e068_0_comp_ff, 0x00000000, 57448 }, /* LSR */ -{ op_e070_0_comp_ff, 0x00000008, 57456 }, /* ROXR */ +{ NULL, 0x00000008, 57456 }, /* ROXR */ { op_e078_0_comp_ff, 0x00000000, 57464 }, /* ROR */ { op_e080_0_comp_ff, 0x00000000, 57472 }, /* ASR */ { op_e088_0_comp_ff, 0x00000000, 57480 }, /* LSR */ -{ op_e090_0_comp_ff, 0x00000008, 57488 }, /* ROXR */ +{ NULL, 0x00000008, 57488 }, /* ROXR */ { op_e098_0_comp_ff, 0x00000000, 57496 }, /* ROR */ { op_e0a0_0_comp_ff, 0x00000000, 57504 }, /* ASR */ { op_e0a8_0_comp_ff, 0x00000000, 57512 }, /* LSR */ -{ op_e0b0_0_comp_ff, 0x00000008, 57520 }, /* ROXR */ +{ NULL, 0x00000008, 57520 }, /* ROXR */ { op_e0b8_0_comp_ff, 0x00000000, 57528 }, /* ROR */ { op_e0d0_0_comp_ff, 0x00000000, 57552 }, /* ASRW */ { op_e0d8_0_comp_ff, 0x00000000, 57560 }, /* ASRW */ @@ -3508,27 +3508,27 @@ extern const struct comptbl op_smalltbl_0_comp_nf[] = { { op_d1fc_0_comp_nf, 0x00000002, 53756 }, /* ADDA */ { op_e000_0_comp_nf, 0x00000000, 57344 }, /* ASR */ { op_e008_0_comp_nf, 0x00000000, 57352 }, /* LSR */ -{ op_e010_0_comp_nf, 0x00000008, 57360 }, /* ROXR */ +{ NULL, 0x00000008, 57360 }, /* ROXR */ { op_e018_0_comp_nf, 0x00000000, 57368 }, /* ROR */ { op_e020_0_comp_nf, 0x00000000, 57376 }, /* ASR */ { op_e028_0_comp_nf, 0x00000000, 57384 }, /* LSR */ -{ op_e030_0_comp_nf, 0x00000008, 57392 }, /* ROXR */ +{ NULL, 0x00000008, 57392 }, /* ROXR */ { op_e038_0_comp_nf, 0x00000000, 57400 }, /* ROR */ { op_e040_0_comp_nf, 0x00000000, 57408 }, /* ASR */ { op_e048_0_comp_nf, 0x00000000, 57416 }, /* LSR */ -{ op_e050_0_comp_nf, 0x00000008, 57424 }, /* ROXR */ +{ NULL, 0x00000008, 57424 }, /* ROXR */ { op_e058_0_comp_nf, 0x00000000, 57432 }, /* ROR */ { op_e060_0_comp_nf, 0x00000000, 57440 }, /* ASR */ { op_e068_0_comp_nf, 0x00000000, 57448 }, /* LSR */ -{ op_e070_0_comp_nf, 0x00000008, 57456 }, /* ROXR */ +{ NULL, 0x00000008, 57456 }, /* ROXR */ { op_e078_0_comp_nf, 0x00000000, 57464 }, /* ROR */ { op_e080_0_comp_nf, 0x00000000, 57472 }, /* ASR */ { op_e088_0_comp_nf, 0x00000000, 57480 }, /* LSR */ -{ op_e090_0_comp_nf, 0x00000008, 57488 }, /* ROXR */ +{ NULL, 0x00000008, 57488 }, /* ROXR */ { op_e098_0_comp_nf, 0x00000000, 57496 }, /* ROR */ { op_e0a0_0_comp_nf, 0x00000000, 57504 }, /* ASR */ { op_e0a8_0_comp_nf, 0x00000000, 57512 }, /* LSR */ -{ op_e0b0_0_comp_nf, 0x00000008, 57520 }, /* ROXR */ +{ NULL, 0x00000008, 57520 }, /* ROXR */ { op_e0b8_0_comp_nf, 0x00000000, 57528 }, /* ROR */ { op_e0d0_0_comp_nf, 0x00000000, 57552 }, /* ASRW */ { op_e0d8_0_comp_nf, 0x00000000, 57560 }, /* ASRW */ diff --git a/src/jit/comptbl.h b/src/jit/comptbl.h index 05b5beb9..636491c7 100644 --- a/src/jit/comptbl.h +++ b/src/jit/comptbl.h @@ -1399,27 +1399,21 @@ extern compop_func op_d1fb_0_comp_ff; extern compop_func op_d1fc_0_comp_ff; extern compop_func op_e000_0_comp_ff; extern compop_func op_e008_0_comp_ff; -extern compop_func op_e010_0_comp_ff; extern compop_func op_e018_0_comp_ff; extern compop_func op_e020_0_comp_ff; extern compop_func op_e028_0_comp_ff; -extern compop_func op_e030_0_comp_ff; extern compop_func op_e038_0_comp_ff; extern compop_func op_e040_0_comp_ff; extern compop_func op_e048_0_comp_ff; -extern compop_func op_e050_0_comp_ff; extern compop_func op_e058_0_comp_ff; extern compop_func op_e060_0_comp_ff; extern compop_func op_e068_0_comp_ff; -extern compop_func op_e070_0_comp_ff; extern compop_func op_e078_0_comp_ff; extern compop_func op_e080_0_comp_ff; extern compop_func op_e088_0_comp_ff; -extern compop_func op_e090_0_comp_ff; extern compop_func op_e098_0_comp_ff; extern compop_func op_e0a0_0_comp_ff; extern compop_func op_e0a8_0_comp_ff; -extern compop_func op_e0b0_0_comp_ff; extern compop_func op_e0b8_0_comp_ff; extern compop_func op_e0d0_0_comp_ff; extern compop_func op_e0d8_0_comp_ff; @@ -2913,27 +2907,21 @@ extern compop_func op_d1fb_0_comp_nf; extern compop_func op_d1fc_0_comp_nf; extern compop_func op_e000_0_comp_nf; extern compop_func op_e008_0_comp_nf; -extern compop_func op_e010_0_comp_nf; extern compop_func op_e018_0_comp_nf; extern compop_func op_e020_0_comp_nf; extern compop_func op_e028_0_comp_nf; -extern compop_func op_e030_0_comp_nf; extern compop_func op_e038_0_comp_nf; extern compop_func op_e040_0_comp_nf; extern compop_func op_e048_0_comp_nf; -extern compop_func op_e050_0_comp_nf; extern compop_func op_e058_0_comp_nf; extern compop_func op_e060_0_comp_nf; extern compop_func op_e068_0_comp_nf; -extern compop_func op_e070_0_comp_nf; extern compop_func op_e078_0_comp_nf; extern compop_func op_e080_0_comp_nf; extern compop_func op_e088_0_comp_nf; -extern compop_func op_e090_0_comp_nf; extern compop_func op_e098_0_comp_nf; extern compop_func op_e0a0_0_comp_nf; extern compop_func op_e0a8_0_comp_nf; -extern compop_func op_e0b0_0_comp_nf; extern compop_func op_e0b8_0_comp_nf; extern compop_func op_e0d0_0_comp_nf; extern compop_func op_e0d8_0_comp_nf; diff --git a/src/jit/gencomp_arm.cpp b/src/jit/gencomp_arm.cpp index 15049bd0..1088cf68 100644 --- a/src/jit/gencomp_arm.cpp +++ b/src/jit/gencomp_arm.cpp @@ -108,7 +108,7 @@ //#define DISABLE_I_ROL //#define DISABLE_I_ROR //#define DISABLE_I_ROXL -//#define DISABLE_I_ROXR +#define DISABLE_I_ROXR //#define DISABLE_I_ASRW //#define DISABLE_I_ASLW //#define DISABLE_I_LSRW @@ -275,32 +275,32 @@ static inline void gen_update_next_handler(void) static void gen_writebyte(const char* address, const char* source) { - comprintf("\twritebyte(%s,%s);\n", address, source); + comprintf("\twritebyte(%s,%s,scratchie);\n", address, source); } static void gen_writeword(const char* address, const char* source) { - comprintf("\twriteword(%s,%s);\n", address, source); + comprintf("\twriteword(%s,%s,scratchie);\n", address, source); } static void gen_writelong(const char* address, const char* source) { - comprintf("\twritelong(%s,%s);\n", address, source); + comprintf("\twritelong(%s,%s,scratchie);\n", address, source); } static void gen_readbyte(const char* address, const char* dest) { - comprintf("\treadbyte(%s,%s);\n", address, dest); + comprintf("\treadbyte(%s,%s,scratchie);\n", address, dest); } static void gen_readword(const char* address, const char* dest) { - comprintf("\treadword(%s,%s);\n", address, dest); + comprintf("\treadword(%s,%s,scratchie);\n", address, dest); } static void gen_readlong(const char* address, const char* dest) { - comprintf("\treadlong(%s,%s);\n", address, dest); + comprintf("\treadlong(%s,%s,scratchie);\n", address, dest); } @@ -443,7 +443,7 @@ static void genamode(amodes mode, const char *reg, wordsizes size, const char *n break; case Ad8r: comprintf("\tint %sa=scratchie++;\n", name); - comprintf("\tcalc_disp_ea_020(%s+8,%s,%sa);\n", reg, gen_nextiword(), name); + comprintf("\tcalc_disp_ea_020(%s+8,%s,%sa,scratchie);\n", reg, gen_nextiword(), name); break; case PC16: @@ -460,7 +460,7 @@ static void genamode(amodes mode, const char *reg, wordsizes size, const char *n start_brace(); comprintf("\tmov_l_ri(pctmp,address);\n"); - comprintf("\tcalc_disp_ea_020(pctmp,%s,%sa);\n", gen_nextiword(), name); + comprintf("\tcalc_disp_ea_020(pctmp,%s,%sa,scratchie);\n", gen_nextiword(), name); break; case absw: comprintf("\tint %sa = scratchie++;\n", name); @@ -659,7 +659,7 @@ static void genamode_new(amodes mode, const char *reg, wordsizes size, const cha break; case Ad8r: comprintf("\tint %sa=scratchie++;\n", name); - comprintf("\tcalc_disp_ea_020(%s+8,%s,%sa);\n", reg, gen_nextiword(), name); + comprintf("\tcalc_disp_ea_020(%s+8,%s,%sa,scratchie);\n", reg, gen_nextiword(), name); break; case PC16: @@ -675,7 +675,7 @@ static void genamode_new(amodes mode, const char *reg, wordsizes size, const cha comprintf("\tuae_u32 address=start_pc+((char *)comp_pc_p-(char *)start_pc_p)+m68k_pc_offset;\n"); comprintf("\tmov_l_ri(pctmp,address);\n"); - comprintf("\tcalc_disp_ea_020(pctmp,%s,%sa);\n", gen_nextiword(), name); + comprintf("\tcalc_disp_ea_020(pctmp,%s,%sa,scratchie);\n", gen_nextiword(), name); break; case absw: comprintf("\tint %sa = scratchie++;\n", name); @@ -1006,7 +1006,7 @@ static void genmovemel(uae_u16 opcode) comprintf("\tif (!special_mem) {\n"); /* Fast but unsafe... */ - comprintf("\tget_n_addr(srca,native);\n"); + comprintf("\tget_n_addr(srca,native,scratchie);\n"); comprintf("\tfor (i=0;i<16;i++) {\n" "\t\tif ((mask>>i)&1) {\n"); @@ -1037,11 +1037,11 @@ static void genmovemel(uae_u16 opcode) "\t\t\tif ((mask>>i)&1) {\n"); switch(table68k[opcode].size) { case sz_long: - comprintf("\t\t\t\treadlong(tmp,i);\n" + comprintf("\t\t\t\treadlong(tmp,i,scratchie);\n" "\t\t\t\tarm_ADD_l_ri8(tmp,4);\n"); break; case sz_word: - comprintf("\t\t\t\treadword(tmp,i);\n" + comprintf("\t\t\t\treadword(tmp,i,scratchie);\n" "\t\t\t\tarm_ADD_l_ri8(tmp,2);\n"); break; default: abort(); @@ -1071,7 +1071,7 @@ static void genmovemle(uae_u16 opcode) act of cleverness means that movmle must pay attention to special_mem, or Genetic Species is a rather boring-looking game ;-) */ comprintf("\tif (!special_mem) {\n"); - comprintf("\tget_n_addr(srca,native);\n"); + comprintf("\tget_n_addr(srca,native,scratchie);\n"); if (table68k[opcode].dmode != Apdi) { comprintf("\tfor (i=0;i<16;i++) {\n" @@ -1120,11 +1120,11 @@ static void genmovemle(uae_u16 opcode) "\t\tif ((mask>>i)&1) {\n"); switch(table68k[opcode].size) { case sz_long: - comprintf("\t\t\twritelong(tmp,i);\n" + comprintf("\t\t\twritelong(tmp,i,scratchie);\n" "\t\t\tarm_ADD_l_ri8(tmp,4);\n"); break; case sz_word: - comprintf("\t\t\twriteword(tmp,i);\n" + comprintf("\t\t\twriteword(tmp,i,scratchie);\n" "\t\t\tarm_ADD_l_ri8(tmp,2);\n"); break; default: abort(); @@ -1136,11 +1136,11 @@ static void genmovemle(uae_u16 opcode) switch(table68k[opcode].size) { case sz_long: comprintf("\t\t\tarm_SUB_l_ri8(srca,4);\n" - "\t\t\twritelong(srca,15-i);\n"); + "\t\t\twritelong(srca,15-i,scratchie);\n"); break; case sz_word: comprintf("\t\t\tarm_SUB_l_ri8(srca,2);\n" - "\t\t\twriteword(srca,15-i);\n"); + "\t\t\twriteword(srca,15-i,scratchie);\n"); break; default: abort(); } @@ -1245,6 +1245,14 @@ static void gen_andsr(uae_u32 opcode, struct instr *curi, char* ssize) { static void gen_asl(uae_u32 opcode, struct instr *curi, char* ssize) { (void) opcode; + mayfail; + if (curi->smode == Dreg) { + comprintf("if ((uae_u32)srcreg==(uae_u32)dstreg) {\n" + " FAIL(1);\n" + " " RETURN "\n" + "} \n"); + start_brace(); + } comprintf("\t dont_care_flags();\n"); genamode_new(curi->smode, "srcreg", curi->size, "", 1, 0); @@ -1289,6 +1297,15 @@ static void gen_aslw(uae_u32 opcode, struct instr *curi, char* ssize) { static void gen_asr(uae_u32 opcode, struct instr *curi, char* ssize) { (void)opcode; + + mayfail; + if (curi->smode == Dreg) { + comprintf("if ((uae_u32)srcreg==(uae_u32)dstreg) {\n" + " FAIL(1);\n" + " " RETURN "\n" + "} \n"); + start_brace(); + } comprintf("\t dont_care_flags();\n"); genamode_new(curi->smode, "srcreg", curi->size, "", 1, 0); @@ -1647,6 +1664,14 @@ static void gen_ext(uae_u32 opcode, struct instr *curi, char* ssize) { static void gen_lsl(uae_u32 opcode, struct instr *curi, char* ssize) { (void) opcode; + mayfail; + if (curi->smode == Dreg) { + comprintf("if ((uae_u32)srcreg==(uae_u32)dstreg) {\n" + " FAIL(1);\n" + " " RETURN "\n" + "} \n"); + start_brace(); + } comprintf("\tdont_care_flags();\n"); genamode_new(curi->smode, "srcreg", curi->size, "", 1, 0); @@ -1690,6 +1715,14 @@ static void gen_lslw(uae_u32 opcode, struct instr *curi, char* ssize) { static void gen_lsr(uae_u32 opcode, struct instr *curi, char* ssize) { (void) opcode; + mayfail; + if (curi->smode == Dreg) { + comprintf("if ((uae_u32)srcreg==(uae_u32)dstreg) {\n" + " FAIL(1);\n" + " " RETURN "\n" + "} \n"); + start_brace(); + } comprintf("\t dont_care_flags();\n"); genamode_new(curi->smode, "srcreg", curi->size, "", 1, 0); @@ -1937,6 +1970,14 @@ static void gen_orsr(uae_u32 opcode, struct instr *curi, char* ssize) { static void gen_rol(uae_u32 opcode, struct instr *curi, char* ssize) { (void) opcode; + mayfail; + if (curi->smode == Dreg) { + comprintf("if ((uae_u32)srcreg==(uae_u32)dstreg) {\n" + " FAIL(1);\n" + " " RETURN "\n" + "} \n"); + start_brace(); + } comprintf("\t dont_care_flags();\n"); genamode_new(curi->smode, "srcreg", curi->size, "cnt", 1, 0); genamode_new(curi->dmode, "dstreg", curi->size, "data", 1, 0); @@ -1968,6 +2009,14 @@ static void gen_rolw(uae_u32 opcode, struct instr *curi, char* ssize) { static void gen_ror(uae_u32 opcode, struct instr *curi, char* ssize) { (void) opcode; + mayfail; + if (curi->smode == Dreg) { + comprintf("if ((uae_u32)srcreg==(uae_u32)dstreg) {\n" + " FAIL(1);\n" + " " RETURN "\n" + "} \n"); + start_brace(); + } comprintf("\t dont_care_flags();\n"); genamode_new(curi->smode, "srcreg", curi->size, "cnt", 1, 0); genamode_new(curi->dmode, "dstreg", curi->size, "data", 1, 0); @@ -1999,6 +2048,14 @@ static void gen_rorw(uae_u32 opcode, struct instr *curi, char* ssize) { static void gen_roxl(uae_u32 opcode, struct instr *curi, char* ssize) { (void) opcode; + mayfail; + if (curi->smode == Dreg) { + comprintf("if ((uae_u32)srcreg==(uae_u32)dstreg) {\n" + " FAIL(1);\n" + " " RETURN "\n" + "} \n"); + start_brace(); + } isaddx; comprintf("\t dont_care_flags();\n"); genamode_new(curi->smode, "srcreg", curi->size, "cnt", 1, 0); @@ -2034,6 +2091,15 @@ static void gen_roxlw(uae_u32 opcode, struct instr *curi, char* ssize) { static void gen_roxr(uae_u32 opcode, struct instr *curi, char* ssize) { (void) opcode; + (void) ssize; + mayfail; + if (curi->smode == Dreg) { + comprintf("if ((uae_u32)srcreg==(uae_u32)dstreg) {\n" + " FAIL(1);\n" + " " RETURN "\n" + "} \n"); + start_brace(); + } isaddx; comprintf("\t dont_care_flags();\n"); genamode_new(curi->smode, "srcreg", curi->size, "cnt", 1, 0); @@ -2531,9 +2597,9 @@ static int gen_opcode(unsigned long int opcode) comprintf("\tarm_ADD_l_ri8(offs,4);\n"); start_brace(); comprintf("\tint newad=scratchie++;\n" - "\treadlong(15,newad);\n" + "\treadlong(15,newad,scratchie);\n" "\tmov_l_mr((uintptr)®s.pc,newad);\n" - "\tget_n_addr_jmp(newad,PC_P);\n" + "\tget_n_addr_jmp(newad,PC_P,scratchie);\n" "\tmov_l_mr((uintptr)®s.pc_oldp,PC_P);\n" "\tm68k_pc_offset=0;\n" "\tarm_ADD_l(15,offs);\n"); @@ -2548,7 +2614,7 @@ static int gen_opcode(unsigned long int opcode) genamode_new(curi->smode, "srcreg", sz_long, "src", 1, 0); genamode_new(curi->dmode, "dstreg", curi->size, "offs", 1, 0); comprintf("\tsub_l_ri(15,4);\n" - "\twritelong_clobber(15,src);\n" + "\twritelong_clobber(15,src,scratchie);\n" "\tmov_l_rr(src,15);\n"); comprintf("\tarm_ADD_l(15,offs);\n"); genastore("src", curi->smode, "srcreg", sz_long, "src"); @@ -2560,7 +2626,7 @@ static int gen_opcode(unsigned long int opcode) #endif genamode_new(curi->smode, "srcreg", curi->size, "src", 1, 0); comprintf("\tmov_l_rr(15,src);\n" - "\treadlong(15,src);\n" + "\treadlong(15,src,scratchie);\n" "\tarm_ADD_l_ri8(15,4);\n"); genastore("src", curi->smode, "srcreg", curi->size, "src"); break; @@ -2570,9 +2636,9 @@ static int gen_opcode(unsigned long int opcode) failure; #endif comprintf("\tint newad=scratchie++;\n" - "\treadlong(15,newad);\n" + "\treadlong(15,newad,scratchie);\n" "\tmov_l_mr((uintptr)®s.pc,newad);\n" - "\tget_n_addr_jmp(newad,PC_P);\n" + "\tget_n_addr_jmp(newad,PC_P,scratchie);\n" "\tmov_l_mr((uintptr)®s.pc_oldp,PC_P);\n" "\tm68k_pc_offset=0;\n" "\tarm_ADD_l_ri8(15,4);\n"); @@ -2602,9 +2668,9 @@ static int gen_opcode(unsigned long int opcode) comprintf("\tint ret=scratchie++;\n" "\tmov_l_ri(ret,retadd);\n" "\tsub_l_ri(15,4);\n" - "\twritelong_clobber(15,ret);\n"); + "\twritelong_clobber(15,ret,scratchie);\n"); comprintf("\tmov_l_mr((uintptr)®s.pc,srca);\n" - "\tget_n_addr_jmp(srca,PC_P);\n" + "\tget_n_addr_jmp(srca,PC_P,scratchie);\n" "\tmov_l_mr((uintptr)®s.pc_oldp,PC_P);\n" "\tm68k_pc_offset=0;\n"); gen_update_next_handler(); @@ -2617,7 +2683,7 @@ static int gen_opcode(unsigned long int opcode) isjump; genamode_new(curi->smode, "srcreg", curi->size, "src", 0, 0); comprintf("\tmov_l_mr((uintptr)®s.pc,srca);\n" - "\tget_n_addr_jmp(srca,PC_P);\n" + "\tget_n_addr_jmp(srca,PC_P,scratchie);\n" "\tmov_l_mr((uintptr)®s.pc_oldp,PC_P);\n" "\tm68k_pc_offset=0;\n"); gen_update_next_handler(); @@ -2636,7 +2702,7 @@ static int gen_opcode(unsigned long int opcode) comprintf("\tint ret=scratchie++;\n" "\tmov_l_ri(ret,retadd);\n" "\tsub_l_ri(15,4);\n" - "\twritelong_clobber(15,ret);\n"); + "\twritelong_clobber(15,ret,scratchie);\n"); comprintf("\tarm_ADD_l_ri(src,m68k_pc_offset_thisinst+2);\n"); comprintf("\tm68k_pc_offset=0;\n"); comprintf("\tarm_ADD_l(PC_P,src);\n"); diff --git a/src/osdep/gui/PanelAbout.cpp b/src/osdep/gui/PanelAbout.cpp index 6fba5f55..359c38a7 100644 --- a/src/osdep/gui/PanelAbout.cpp +++ b/src/osdep/gui/PanelAbout.cpp @@ -29,7 +29,7 @@ void InitPanelAbout(const struct _ConfigCategory& category) { amiberryLogoImage = gcn::Image::load("data/amiberry-logo.png"); icon = new gcn::Icon(amiberryLogoImage); - lblEmulatorVersion = new gcn::Label("Amiberry v2.19"); + lblEmulatorVersion = new gcn::Label("Amiberry v2.20 beta"); textBox = new gcn::TextBox( "Dimitris Panokostas (MiDWaN) - Amiberry author\n"