2001-10-04 Frank Ch. Eigler <fche@redhat.com>
[binutils-gdb.git] / gdb / sparcl-stub.c
index 4f04b9706c534f13f1295b89e708c7d91b66a6ff..3fcdc0ad7c1d3e156595bf4238ff6a2bb9b239bc 100644 (file)
@@ -50,6 +50,7 @@
  *
  *    g             return the value of the CPU registers  hex data or ENN
  *    G             set the value of the CPU registers     OK or ENN
+ *    P             set the value of a single CPU register OK or ENN
  *
  *    mAA..AA,LLLL  Read LLLL bytes at address AA..AA      hex data or ENN
  *    MAA..AA,LLLL: Write LLLL bytes at address AA.AA      OK or ENN
@@ -64,9 +65,6 @@
  *
  *    ?             What was the last sigval ?             SNN   (signal NN)
  *
- *    bBB..BB      Set baud rate to BB..BB                OK or BNN, then sets
- *                                                        baud rate
- *
  * All commands and responses are sent with a packet which includes a
  * checksum.  A packet consists of
  *
@@ -368,8 +366,7 @@ no_fpreload:
 /* Convert ch from a hex digit to an int */
 
 static int
-hex(ch)
-     unsigned char ch;
+hex (unsigned char ch)
 {
   if (ch >= 'a' && ch <= 'f')
     return ch-'a'+10;
@@ -380,12 +377,15 @@ hex(ch)
   return -1;
 }
 
+static char remcomInBuffer[BUFMAX];
+static char remcomOutBuffer[BUFMAX];
+
 /* scan for the sequence $<data>#<checksum>     */
 
 unsigned char *
-getpacket (buffer)
-     unsigned char *buffer;
+getpacket (void)
 {
+  unsigned char *buffer = &remcomInBuffer[0];
   unsigned char checksum;
   unsigned char xmitcsum;
   int count;
@@ -449,8 +449,7 @@ retry:
 /* send the packet in buffer.  */
 
 static void
-putpacket(buffer)
-     unsigned char *buffer;
+putpacket (unsigned char *buffer)
 {
   unsigned char checksum;
   int count;
@@ -478,9 +477,6 @@ putpacket(buffer)
   while (getDebugChar() != '+');
 }
 
-static char remcomInBuffer[BUFMAX];
-static char remcomOutBuffer[BUFMAX];
-
 /* Indicate to caller of mem2hex or hex2mem that there has been an
    error.  */
 static volatile int mem_err = 0;
@@ -493,11 +489,7 @@ static volatile int mem_err = 0;
  */
 
 static unsigned char *
-mem2hex(mem, buf, count, may_fault)
-     unsigned char *mem;
-     unsigned char *buf;
-     int count;
-     int may_fault;
+mem2hex (unsigned char *mem, unsigned char *buf, int count, int may_fault)
 {
   unsigned char ch;
 
@@ -523,11 +515,7 @@ mem2hex(mem, buf, count, may_fault)
  * return a pointer to the character AFTER the last byte written */
 
 static char *
-hex2mem(buf, mem, count, may_fault)
-     unsigned char *buf;
-     unsigned char *mem;
-     int count;
-     int may_fault;
+hex2mem (unsigned char *buf, unsigned char *mem, int count, int may_fault)
 {
   int i;
   unsigned char ch;
@@ -578,7 +566,7 @@ static struct hard_trap_info
 /* Set up exception handlers for tracing and breakpoints */
 
 void
-set_debug_traps()
+set_debug_traps (void)
 {
   struct hard_trap_info *ht;
 
@@ -610,8 +598,7 @@ _fltr_set_mem_err:
 ");
 
 static void
-set_mem_fault_trap(enable)
-     int enable;
+set_mem_fault_trap (int enable)
 {
   extern void fltr_set_mem_err();
   mem_err = 0;
@@ -634,7 +621,7 @@ _dummy_hw_breakpoint:
 ");
 
 static void
-get_in_break_mode()
+get_in_break_mode (void)
 {
   extern void dummy_hw_breakpoint();
 
@@ -648,8 +635,7 @@ get_in_break_mode()
 /* Convert the SPARC hardware trap type code to a unix signal number. */
 
 static int
-computeSignal(tt)
-     int tt;
+computeSignal (int tt)
 {
   struct hard_trap_info *ht;
 
@@ -695,8 +681,7 @@ hexToInt(char **ptr, int *intValue)
  */
 
 static void
-handle_exception (registers)
-     unsigned long *registers;
+handle_exception (unsigned long *registers)
 {
   int tt;                      /* Trap type */
   int sigval;
@@ -796,7 +781,7 @@ handle_exception (registers)
     {
       remcomOutBuffer[0] = 0;
 
-      ptr = getpacket(remcomInBuffer);
+      ptr = getpacket();
       switch (*ptr++)
        {
        case '?':
@@ -834,7 +819,7 @@ handle_exception (registers)
                    hex2mem (ptr, (char *)&registers[regno], 4, 0);
                else
                  {
-                   strcpy (remcomOutBuffer, "P01");
+                   strcpy (remcomOutBuffer, "E01");
                    break;
                  }
              }
@@ -936,43 +921,6 @@ handle_exception (registers)
          asm ("call 0
                nop ");
          break;
-
-#if 0
-Disabled until we can unscrew this properly
-
-       case 'b':         /* bBB...  Set baud rate to BB... */
-         {
-           int baudrate;
-           extern void set_timer_3();
-
-           if (!hexToInt(&ptr, &baudrate))
-             {
-               strcpy(remcomOutBuffer,"B01");
-               break;
-             }
-
-           /* Convert baud rate to uart clock divider */
-           switch (baudrate)
-             {
-             case 38400:
-               baudrate = 16;
-               break;
-             case 19200:
-               baudrate = 33;
-               break;
-             case 9600:
-               baudrate = 65;
-               break;
-             default:
-               strcpy(remcomOutBuffer,"B02");
-               goto x1;
-             }
-
-           putpacket("OK");    /* Ack before changing speed */
-           set_timer_3(baudrate); /* Set it */
-         }
-x1:      break;
-#endif
        }                       /* switch */
 
       /* reply to the request */
@@ -986,7 +934,7 @@ x1:   break;
    the debugger. */
 
 void
-breakpoint()
+breakpoint (void)
 {
   if (!initialized)
     return;