/** * Emulator Native Features call opcode interception. */ unsigned long OpCode_NatFeat_Call(uae_u32 opcode) { Uint32 stack = Regs[REG_A7] + SIZE_LONG; /* skip return address */ Uint16 SR = M68000_GetSR(); bool super; super = ((SR & SR_SUPERMODE) == SR_SUPERMODE); if (NatFeat_Call(stack, super, &(Regs[REG_D0]))) { CpuDoNOP (); } return 4; }
/** * Emulator Native Features call opcode interception. */ unsigned long OpCode_NatFeat_Call(uae_u32 opcode) { Uint32 stack = Regs[REG_A7] + SIZE_LONG; /* skip return address */ Uint16 SR = M68000_GetSR(); bool super; super = ((SR & SR_SUPERMODE) == SR_SUPERMODE); if (NatFeat_Call(stack, super, &(Regs[REG_D0]))) { m68k_incpc(2); regs.ir = regs.irc; get_word_prefetch(2); } return 4 * CYCLE_UNIT / 2; }