/* Remote debugging for the ARM RDP interface.
- Copyright 1994, 1995 Free Software Foundation, Inc.
+ Copyright 1994, 1995, 2001 Free Software Foundation, Inc.
This file is part of GDB.
#include "defs.h"
#include "inferior.h"
-#include "gdb_wait.h"
#include "value.h"
#include "callback.h"
#include "command.h"
static char *commandline = NULL;
static int
-remote_rdp_xfer_inferior_memory (CORE_ADDR memaddr,
- char *myaddr,
- int len,
- int write, struct target_ops *target);
+remote_rdp_xfer_inferior_memory (CORE_ADDR memaddr, char *myaddr, int len,
+ int write,
+ struct mem_attrib *attrib,
+ struct target_ops *target);
/* Stuff for talking to the serial layer. */
*/
if (commandline != NULL)
- free (commandline);
+ xfree (commandline);
commandline = malloc (strlen (command) + strlen (args) + 2);
if (commandline != NULL)
char *copy = alloca (args[2].n);
int done = callback->read (callback, args[0].n, copy, args[2].n);
if (done > 0)
- remote_rdp_xfer_inferior_memory (args[1].n, copy, done, 1, 0);
+ remote_rdp_xfer_inferior_memory (args[1].n, copy, done, 1, 0, 0);
args->n = args[2].n - done;
return 1;
}
commandline[255] = '\0';
}
remote_rdp_xfer_inferior_memory (args[0].n,
- commandline, len + 1, 1, 0);
+ commandline, len + 1, 1, 0, 0);
}
else
- remote_rdp_xfer_inferior_memory (args[0].n, "", 1, 1, 0);
+ remote_rdp_xfer_inferior_memory (args[0].n, "", 1, 1, 0, 0);
return 1;
default:
buf,
len,
0,
+ 0,
0);
}
else
break;
default:
- error ("Unimplented SWI argument");
+ error ("Unimplemented SWI argument");
}
type = type >> 2;
/* Do nothing, since we can store individual regs */
}
+/* Transfer LEN bytes between GDB address MYADDR and target address
+ MEMADDR. If WRITE is non-zero, transfer them to the target,
+ otherwise transfer them from the target. TARGET is unused.
+
+ Returns the number of bytes transferred. */
+
static int
-remote_rdp_xfer_inferior_memory (memaddr, myaddr, len, write, target)
- CORE_ADDR memaddr;
- char *myaddr;
- int len;
- int write;
- struct target_ops *target; /* ignored */
+remote_rdp_xfer_inferior_memory (CORE_ADDR memaddr, char *myaddr, int len,
+ int write,
+ struct mem_attrib *attrib ATTRIBUTE_UNUSED,
+ struct target_ops *target ATTRIBUTE_UNUSED)
{
/* I infer from D Taylor's code that there's a limit on the amount
we can transfer in one chunk.. */