forked from Imagelibrary/binutils-gdb
* nlm/gdbserve.c (putDebugChar): Install bug fix from i386-nlmstub.
* (hex2mem): Init ptr. * General cleanups to use ConsolePrintf, standard prologues, etc...
This commit is contained in:
@@ -195,12 +195,12 @@ putDebugChar (c)
|
|||||||
int err;
|
int err;
|
||||||
LONG put;
|
LONG put;
|
||||||
|
|
||||||
err = AIOWriteData (AIOhandle, (char *) &c, 1, &put);
|
put = 0;
|
||||||
if (err != 0 || put != 1)
|
while (put < 1)
|
||||||
{
|
{
|
||||||
error_message = "AIOWriteData failed";
|
err = AIOWriteData (AIOhandle, (char *) &c, 1, &put);
|
||||||
ResumeThread (mainthread);
|
if (err != 0)
|
||||||
return 0;
|
ConsolePrintf ("AIOWriteData: err = %d, put = %d\r\n", err, put);
|
||||||
}
|
}
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
@@ -212,7 +212,7 @@ frame_to_registers (frame, regs)
|
|||||||
struct StackFrame *frame;
|
struct StackFrame *frame;
|
||||||
char *regs;
|
char *regs;
|
||||||
{
|
{
|
||||||
mem2hex (&frame->ExceptionRegs[SF_REG_PC], ®s[PC_REGNUM * 8 * 2], 8, 0);
|
mem2hex (&frame->ExceptionRegs[SF_REG_PC], ®s[PC_REGNUM * 8 * 2], 8 * 1, 0);
|
||||||
|
|
||||||
mem2hex (&frame->ExceptionRegs[SF_IREG_OFFSET], ®s[V0_REGNUM * 8 * 2], 8 * 64, 0);
|
mem2hex (&frame->ExceptionRegs[SF_IREG_OFFSET], ®s[V0_REGNUM * 8 * 2], 8 * 64, 0);
|
||||||
}
|
}
|
||||||
@@ -224,7 +224,7 @@ registers_to_frame (regs, frame)
|
|||||||
char *regs;
|
char *regs;
|
||||||
struct StackFrame *frame;
|
struct StackFrame *frame;
|
||||||
{
|
{
|
||||||
hex2mem (®s[PC_REGNUM * 8 * 2], &frame->ExceptionRegs[SF_REG_PC], 8, 0);
|
hex2mem (®s[PC_REGNUM * 8 * 2], &frame->ExceptionRegs[SF_REG_PC], 8 * 1, 0);
|
||||||
|
|
||||||
hex2mem (®s[V0_REGNUM * 8 * 2], &frame->ExceptionRegs[SF_IREG_OFFSET], 8 * 64, 0);
|
hex2mem (®s[V0_REGNUM * 8 * 2], &frame->ExceptionRegs[SF_IREG_OFFSET], 8 * 64, 0);
|
||||||
}
|
}
|
||||||
@@ -473,7 +473,7 @@ hex2mem (buf, mem, count, may_fault)
|
|||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
unsigned char ch;
|
unsigned char ch;
|
||||||
char *ptr;
|
char *ptr = mem;
|
||||||
|
|
||||||
mem_may_fault = may_fault;
|
mem_may_fault = may_fault;
|
||||||
for (i=0;i<count;i++)
|
for (i=0;i<count;i++)
|
||||||
@@ -482,7 +482,7 @@ hex2mem (buf, mem, count, may_fault)
|
|||||||
ch = ch + hex(*buf++);
|
ch = ch + hex(*buf++);
|
||||||
set_char (ptr++, ch);
|
set_char (ptr++, ch);
|
||||||
if (may_fault && mem_err)
|
if (may_fault && mem_err)
|
||||||
return (mem);
|
return (ptr);
|
||||||
}
|
}
|
||||||
mem_may_fault = 0;
|
mem_may_fault = 0;
|
||||||
return(mem);
|
return(mem);
|
||||||
@@ -681,7 +681,8 @@ do_status (ptr, frame)
|
|||||||
debugged. */
|
debugged. */
|
||||||
|
|
||||||
static LONG
|
static LONG
|
||||||
handle_exception (struct StackFrame *frame)
|
handle_exception (frame)
|
||||||
|
struct StackFrame *frame;
|
||||||
{
|
{
|
||||||
int addr, length;
|
int addr, length;
|
||||||
char *ptr;
|
char *ptr;
|
||||||
@@ -1070,8 +1071,8 @@ main (argc, argv)
|
|||||||
mainthread = GetThreadID ();
|
mainthread = GetThreadID ();
|
||||||
|
|
||||||
if (remote_debug > 0)
|
if (remote_debug > 0)
|
||||||
fprintf (stderr, "About to call LoadModule with \"%s\" %08x\r\n",
|
ConsolePrintf ("About to call LoadModule with \"%s\" %08x\r\n",
|
||||||
cmdlin, __GetScreenID (GetCurrentScreen()));
|
cmdlin, __GetScreenID (GetCurrentScreen()));
|
||||||
|
|
||||||
/* Start up the module to be debugged. */
|
/* Start up the module to be debugged. */
|
||||||
err = LoadModule ((struct ScreenStruct *) __GetScreenID (GetCurrentScreen()),
|
err = LoadModule ((struct ScreenStruct *) __GetScreenID (GetCurrentScreen()),
|
||||||
@@ -1086,10 +1087,10 @@ main (argc, argv)
|
|||||||
|
|
||||||
/* Wait for the debugger to wake us up. */
|
/* Wait for the debugger to wake us up. */
|
||||||
if (remote_debug > 0)
|
if (remote_debug > 0)
|
||||||
fprintf (stderr, "Suspending main thread (%08x)\r\n", mainthread);
|
ConsolePrintf ("Suspending main thread (%08x)\r\n", mainthread);
|
||||||
SuspendThread (mainthread);
|
SuspendThread (mainthread);
|
||||||
if (remote_debug > 0)
|
if (remote_debug > 0)
|
||||||
fprintf (stderr, "Resuming main thread (%08x)\r\n", mainthread);
|
ConsolePrintf ("Resuming main thread (%08x)\r\n", mainthread);
|
||||||
|
|
||||||
/* If we are woken up, print an optional error message, deregister
|
/* If we are woken up, print an optional error message, deregister
|
||||||
ourselves and exit. */
|
ourselves and exit. */
|
||||||
|
|||||||
Reference in New Issue
Block a user