--- np2/i286c/i286c.c 2005/02/07 14:46:10 1.25 +++ np2/i286c/i286c.c 2005/03/05 06:02:29 1.27 @@ -4,8 +4,11 @@ #include "v30patch.h" #include "pccore.h" #include "iocore.h" -#include "dmap.h" +#include "dmax86.h" #include "i286c.mcr" +#if defined(ENABLE_TRAP) +#include "steptrap.h" +#endif I286CORE i286core; @@ -263,23 +266,32 @@ void i286c(void) { if (I286_TRAP) { do { +#if defined(ENABLE_TRAP) + steptrap(CPU_CS, CPU_IP); +#endif GET_PCBYTE(opcode); i286op[opcode](); if (I286_TRAP) { i286c_interrupt(1); } - dmap_i286(); + dmax86(); } while(I286_REMCLOCK > 0); } else if (dmac.working) { do { +#if defined(ENABLE_TRAP) + steptrap(CPU_CS, CPU_IP); +#endif GET_PCBYTE(opcode); i286op[opcode](); - dmap_i286(); + dmax86(); } while(I286_REMCLOCK > 0); } else { do { +#if defined(ENABLE_TRAP) + steptrap(CPU_CS, CPU_IP); +#endif GET_PCBYTE(opcode); i286op[opcode](); } while(I286_REMCLOCK > 0); @@ -300,7 +312,7 @@ void i286c_step(void) { if (I286_OV) { I286_FLAG |= (O_FLAG); } - dmap_i286(); + dmax86(); }