1
0
Fork 0

Debugger is activated via callback now

Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@1168
This commit is contained in:
Ulf Wohlers 2003-07-27 20:20:40 +00:00
parent 09ed20abec
commit a1fe43c151
7 changed files with 39 additions and 24 deletions

View file

@ -798,8 +798,9 @@ restart:
#if C_DEBUG
SAVEIP;
if (DEBUG_Breakpoint()) {
LOADIP;
LEAVECORE;
return -1;
return debugCallback;
}
LOADIP;
#endif
@ -811,8 +812,9 @@ restart:
#if C_DEBUG
SAVEIP;
if (DEBUG_IntBreakpoint(num)) {
LOADIP;
LEAVECORE;
return -1;
return debugCallback;
}
#endif
EXCEPTION(num);

View file

@ -55,7 +55,6 @@ static EAPoint IPPoint;
#include "core_full/ea_lookup.h"
#include "instructions.h"
static INLINE void DecodeModRM(void) {
inst.rm=Fetchb();
inst.rm_index=(inst.rm >> 3) & 7;
@ -89,7 +88,7 @@ Bits Full_DeCode(void) {
SaveIP();
if (DEBUG_HeavyIsBreakpoint()) {
LEAVECORE;
return 1;
return debugCallback;
};
#endif
#endif

View file

@ -341,8 +341,8 @@ switch (inst.code.op) {
case O_INT:
LEAVECORE;
#if C_DEBUG
if (((inst.entry & 0xFF)==0xcc) && DEBUG_Breakpoint()) return -1;
else if (DEBUG_IntBreakpoint(inst.op1.b)) return -1;
if (((inst.entry & 0xFF)==0xcc) && DEBUG_Breakpoint()) return debugCallback;
else if (DEBUG_IntBreakpoint(inst.op1.b)) return debugCallback;
#endif
Interrupt(inst.op1.b);
LoadIP();

View file

@ -84,7 +84,7 @@ decode_start:
cycle_count++;
#if C_HEAVY_DEBUG
LEAVECORE;
if (DEBUG_HeavyIsBreakpoint()) return 1;
if (DEBUG_HeavyIsBreakpoint()) return debugCallback;
#endif
#endif
core_16.ip_start=core_16.ip_lookup;