From: notaz Date: Sat, 20 Jul 2013 17:32:54 +0000 (+0300) Subject: sh2: minor fixes X-Git-Tag: v1.85~44 X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=picodrive.git;a=commitdiff_plain;h=8cc76b48865096cff1024d1d7cfb4123bf7daba7 sh2: minor fixes --- diff --git a/cpu/sh2/sh2.c b/cpu/sh2/sh2.c index 5736908..1f034cd 100644 --- a/cpu/sh2/sh2.c +++ b/cpu/sh2/sh2.c @@ -45,6 +45,8 @@ void sh2_reset(SH2 *sh2) void sh2_do_irq(SH2 *sh2, int level, int vector) { + sh2->sr &= 0x3f3; + sh2->r[15] -= 4; p32x_sh2_write32(sh2->r[15], sh2->sr, sh2); /* push SR onto stack */ sh2->r[15] -= 4; @@ -127,6 +129,7 @@ void sh2_unpack(SH2 *sh2, const unsigned char *buff) #include #include #include +#include static SH2 sh2ref[2]; static int current_slave = -1; @@ -307,6 +310,7 @@ end: i, sh2o->r[i], i+8, sh2o->r[i+8]); printf("%csh2 PC: %08x , %08x\n", csh2, sh2o->pc, sh2o->ppc); printf("%csh2 SR: %03x PR: %08x\n", csh2, sh2o->sr, sh2o->pr); + PDebugDumpMem(); exit(1); }