trunk/src/emu/cpu/sh2/sh2.c
| r20604 | r20605 | |
| 848 | 848 | /* ILLEGAL */ |
| 849 | 849 | INLINE void ILLEGAL(sh2_state *sh2) |
| 850 | 850 | { |
| 851 | | logerror("SH2.%s: Illegal opcode at %08x\n", sh2->device->tag(), sh2->pc); |
| 851 | logerror("SH2.%s: Illegal opcode at %08x\n", sh2->device->tag(), sh2->pc - 2); |
| 852 | 852 | sh2->r[15] -= 4; |
| 853 | 853 | WL( sh2, sh2->r[15], sh2->sr ); /* push SR onto stack */ |
| 854 | 854 | sh2->r[15] -= 4; |
| 855 | | WL( sh2, sh2->r[15], sh2->pc ); /* push PC onto stack */ |
| 855 | WL( sh2, sh2->r[15], sh2->pc - 2 ); /* push PC onto stack */ |
| 856 | 856 | |
| 857 | 857 | /* fetch PC */ |
| 858 | 858 | sh2->pc = RL( sh2, sh2->vbr + 4 * 4 ); |