diff options
Diffstat (limited to 'sim/h8300/p3.c')
-rw-r--r-- | sim/h8300/p3.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/sim/h8300/p3.c b/sim/h8300/p3.c index 7d4d481..0eb5543 100644 --- a/sim/h8300/p3.c +++ b/sim/h8300/p3.c @@ -1,24 +1,20 @@ movflags8: -if (dst == 0xfeedface) abort(); n = dst & 0x80; z = !(dst & 0xff); v = 0; goto next; movflags16: -if (dst == 0xfeedface) abort(); n = dst & 0x8000; z = !(dst & 0xffff); v = 0; goto next; aluflags8: -if (dst == 0xfeedface) abort(); n = dst & 0x80; z = !(dst & 0xff); v = ((srca & 0x80) == (srcb & 0x80)) && ((srca & 0x80) != (dst & 0x80)); c = dst & 0x100; goto next; aluflags16: -if (dst == 0xfeedface) abort(); n = dst & 0x8000; z = !(dst & 0xffff); v = ((srca & 0x8000) == (srcb & 0x8000)) && ((srca & 0x8000) != (dst & 0x8000)); @@ -31,12 +27,15 @@ break; shiftflags: v = 0; incflags: -if (dst == 0xfeedface) abort(); z = !(dst & 0xff); n = dst & 0x80; goto next; next: ; pc = npc; +#ifdef __GO32__ +if (kbhit()) + exception = SIGINT; +#endif } while (!exception); saved_state.cycles = cycles; |