--- np2/trap/steptrap.c 2005/04/05 13:48:09 1.3 +++ np2/trap/steptrap.c 2005/04/08 19:39:09 1.5 @@ -1,11 +1,14 @@ -// #define IPTRACE (1 << 12) +#define IPTRACE (1 << 12) #include "compiler.h" #if defined(ENABLE_TRAP) #include "dosio.h" +#include "pccore.h" #include "cpucore.h" +#include "sound.h" +#include "fmboard.h" #include "steptrap.h" @@ -17,7 +20,7 @@ static UINT32 treip[IPTRACE]; void CPUCALL steptrap(UINT cs, UINT32 eip) { -// TRACEOUT(("%.4x:%.4x", CPU_CS, CPU_IP)); +// TRACEOUT(("%.4x:%.4x", cs, eip)); #if IPTRACE trcs[trpos & (IPTRACE - 1)] = cs; @@ -29,6 +32,25 @@ void CPUCALL steptrap(UINT cs, UINT32 ei // ---- ここにトラップ条件コードを書きます // return; +// if (cs4231.intflag) TRACEOUT(("%.4x:%.4x", cs, eip)); + if (cs == 0x1311) TRACEOUT(("%.4x:%.4x", cs, eip)); + if (cs == 0x0d77) TRACEOUT(("%.4x:%.4x", cs, eip)); + if (cs == 0x0f5d) TRACEOUT(("%.4x:%.4x", cs, eip)); + if (cs == 0x0e91) TRACEOUT(("%.4x:%.4x", cs, eip)); + +#if 0 +{ + static UINT tmp = 0; + if (tmp != *(UINT16 *)(mem + 0xa0000 + 18 * 2)) { + TRACEOUT(("change text %.4x -> %.4x at %.4x:%.4x", tmp, *(UINT16 *)(mem + 0xa0000 + 18 * 2), cs, eip)); + tmp = *(UINT16 *)(mem + 0xa0000 + 18 * 2); + if (tmp == 0x4303) { + steptrap_hisfileout(); + } + } +} +#endif + // IDEテスト用 #if 0