Fixed %p in printf (now using wsprintf which doesn't support it).
Added ThreadId and ProcessId internal vars.
Allow at startup to pick up a process to debug.
diff --git a/debugger/stack.c b/debugger/stack.c
index 2142f53..9139a97 100644
--- a/debugger/stack.c
+++ b/debugger/stack.c
@@ -273,8 +273,8 @@
if (is16) {
if (!DEBUG_READ_MEM((void*)next_switch, &frame32, sizeof(STACK32FRAME))) {
- if (noisy) DEBUG_Printf( DBG_CHN_MESG, "Bad stack frame %p\n",
- (STACK32FRAME*)next_switch );
+ if (noisy) DEBUG_Printf( DBG_CHN_MESG, "Bad stack frame 0x%08lx\n",
+ (unsigned long)(STACK32FRAME*)next_switch );
return;
}
cur_switch = (DWORD)frame32.frame16;
@@ -286,7 +286,8 @@
p = DEBUG_ToLinear(&tmp);
if (!DEBUG_READ_MEM((void*)p, &frame16, sizeof(STACK16FRAME))) {
- if (noisy) DEBUG_Printf( DBG_CHN_MESG, "Bad stack frame %p\n", (STACK16FRAME*)p );
+ if (noisy) DEBUG_Printf( DBG_CHN_MESG, "Bad stack frame 0x%08lx\n",
+ (unsigned long)(STACK16FRAME*)p );
return;
}
cur_switch = (DWORD)frame16.frame32;
@@ -306,7 +307,8 @@
if (is16) {
if (!DEBUG_READ_MEM((void*)next_switch, &frame32, sizeof(STACK32FRAME))) {
- if (noisy) DEBUG_Printf( DBG_CHN_MESG, "Bad stack frame %p\n", (STACK32FRAME*)next_switch );
+ if (noisy) DEBUG_Printf( DBG_CHN_MESG, "Bad stack frame 0x%08lx\n",
+ (unsigned long)(STACK32FRAME*)next_switch );
return;
}
@@ -324,8 +326,8 @@
p = DEBUG_ToLinear(&tmp);
if (!DEBUG_READ_MEM((void*)p, &frame16, sizeof(STACK16FRAME))) {
- if (noisy) DEBUG_Printf( DBG_CHN_MESG, "Bad stack frame %p\n",
- (STACK16FRAME*)p );
+ if (noisy) DEBUG_Printf( DBG_CHN_MESG, "Bad stack frame 0x%08lx\n",
+ (unsigned long)(STACK16FRAME*)p );
return;
}
cur_switch = (DWORD)frame16.frame32;
@@ -339,8 +341,8 @@
p = DEBUG_ToLinear(&tmp);
if (!DEBUG_READ_MEM((void*)p, &frame16, sizeof(STACK16FRAME))) {
- if (noisy) DEBUG_Printf( DBG_CHN_MESG, "Bad stack frame %p\n",
- (STACK16FRAME*)p );
+ if (noisy) DEBUG_Printf( DBG_CHN_MESG, "Bad stack frame 0x%08lx\n",
+ (unsigned long)(STACK16FRAME*)p );
return;
}
@@ -354,8 +356,8 @@
next_switch = cur_switch;
if (!DEBUG_READ_MEM((void*)next_switch, &frame32, sizeof(STACK32FRAME))) {
- if (noisy) DEBUG_Printf( DBG_CHN_MESG, "Bad stack frame %p\n",
- (STACK32FRAME*)next_switch );
+ if (noisy) DEBUG_Printf( DBG_CHN_MESG, "Bad stack frame 0x%08lx\n",
+ (unsigned long)(STACK32FRAME*)next_switch );
return;
}
cur_switch = (DWORD)frame32.frame16;