223 |
|
#define m68k_setpc_rte m68k_setpc |
224 |
|
#endif |
225 |
|
|
226 |
+ |
static __inline__ void m68k_do_rts(void) |
227 |
+ |
{ |
228 |
+ |
m68k_setpc(get_long(m68k_areg(regs, 7))); |
229 |
+ |
m68k_areg(regs, 7) += 4; |
230 |
+ |
} |
231 |
+ |
|
232 |
+ |
static __inline__ void m68k_do_bsr(uaecptr oldpc, uae_s32 offset) |
233 |
+ |
{ |
234 |
+ |
m68k_areg(regs, 7) -= 4; |
235 |
+ |
put_long(m68k_areg(regs, 7), oldpc); |
236 |
+ |
m68k_incpc(offset); |
237 |
+ |
} |
238 |
+ |
|
239 |
+ |
static __inline__ void m68k_do_jsr(uaecptr oldpc, uaecptr dest) |
240 |
+ |
{ |
241 |
+ |
m68k_areg(regs, 7) -= 4; |
242 |
+ |
put_long(m68k_areg(regs, 7), oldpc); |
243 |
+ |
m68k_setpc(dest); |
244 |
+ |
} |
245 |
+ |
|
246 |
|
static __inline__ void m68k_setstopped (int stop) |
247 |
|
{ |
248 |
|
regs.stopped = stop; |