diff trace.c @ 24:7104ad38bed3

fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Tue, 10 Jul 2018 10:49:07 +0900
parents 5217f23f2f9e
children d34482fd6945
line wrap: on
line diff
--- a/trace.c	Mon Jul 09 14:54:43 2018 +0900
+++ b/trace.c	Tue Jul 10 10:49:07 2018 +0900
@@ -107,10 +107,10 @@
         int adr,skip;
         if (bpskip) { // skip unbreak instruction
             bpskip--;
-            int lpc = paddr(pcreg,mmu);
+            int ppc = paddr(pcreg,mmu);
             BPTR *prev = &breakpoint;
             for(BPTR b = breakpoint; b ; prev=&b->next, b=b->next ) {
-                if (lpc==b->address) {
+                if (ppc==b->address /* || pcreg==b->laddr */) {
                     if (b->count==-1) {  // temporaly break point
                         BPTR next = b->next;
                         free(b);
@@ -335,6 +335,9 @@
         case 'R':
                 pcreg = (mem[0xfffe] << 8) + mem[0xffff];
                 bpskip = 0;
+#ifdef USE_MMU
+                mmu = &mem[0xffa0];
+#endif
                 attention = escape = 1;
                 break;
         }