Minor comment fix.
[deliverable/binutils-gdb.git] / gdb / remote-utils.c
index f193419f5f1f3653889c34084d0e0178dcc02ac3..b55e32bdacb2db5ea6bbbcf59f3d8b3352ca5255 100644 (file)
@@ -16,7 +16,7 @@ GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
-Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
 /*  This file actually contains two distinct logical "packages".  They
     are packaged together in this one file because they are typically
@@ -42,7 +42,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 #include <ctype.h>
 
 #include "defs.h"
-#include <string.h>
+#include "gdb_string.h"
 #include "gdbcmd.h"
 #include "target.h"
 #include "serial.h"
@@ -69,6 +69,9 @@ struct _sr_settings sr_settings = {
 
 struct gr_settings *gr_settings = NULL;
 
+static void usage PARAMS ((char *, char *));
+static void sr_com PARAMS ((char *, int));
+
 static void
 usage(proto, junk)
      char *proto;
@@ -102,8 +105,6 @@ sr_scan_args(proto, args)
   int n;
   char *p, *q;
 
-  extern int strtol();
-
   /* if no args, then nothing to do. */
   if (args == NULL || *args == '\0')
     return;
@@ -123,7 +124,7 @@ sr_scan_args(proto, args)
 
   /* check for missing or empty baud rate.  */
   CHECKDONE(p, q);
-  sr_set_baud_rate(n);
+  baud_rate = n;
 
   /* look for debug value.  */
   n = strtol(p, &q, 10);
@@ -177,10 +178,13 @@ gr_open(args, from_tty, gr)
   if (!sr_get_desc())
     perror_with_name((char *) sr_get_device());
 
-  if (SERIAL_SETBAUDRATE(sr_get_desc(), sr_get_baud_rate()) != 0)
+  if (baud_rate != -1)
     {
-      SERIAL_CLOSE(sr_get_desc());
-      perror_with_name(sr_get_device());
+      if (SERIAL_SETBAUDRATE(sr_get_desc(), baud_rate) != 0)
+       {
+         SERIAL_CLOSE(sr_get_desc());
+         perror_with_name(sr_get_device());
+       }
     }
 
   SERIAL_RAW (sr_get_desc());
@@ -198,8 +202,13 @@ gr_open(args, from_tty, gr)
     gr_settings->clear_all_breakpoints = remove_breakpoints;
 
   if (from_tty)
-      printf_filtered ("Remote debugging using `%s' at baud rate of %d\n",
-                      sr_get_device(), sr_get_baud_rate());
+    {
+      printf_filtered ("Remote debugging using `%s'", sr_get_device ());
+      if (baud_rate != -1)
+       printf_filtered (" at baud rate of %d",
+                        baud_rate);
+      printf_filtered ("\n");
+    }
 
   push_target(gr->ops);
   gr_checkin();
@@ -374,7 +383,7 @@ sr_get_hex_word ()
    prompt from the remote is seen.
    FIXME: Can't handle commands that take input.  */
 
-void
+static void
 sr_com (args, fromtty)
      char *args;
      int fromtty;
@@ -388,6 +397,7 @@ sr_com (args, fromtty)
 
   sr_write_cr (args);
   sr_write ("\030", 1);
+  registers_changed ();
   gr_expect_prompt ();
 }
 
@@ -439,8 +449,10 @@ gr_files_info (ops)
 #ifdef __GO32__
   printf_filtered ("\tAttached to DOS asynctsr\n");
 #else
-  printf_filtered ("\tAttached to %s at %d baud\n",
-                  sr_get_device(), sr_get_baud_rate());
+  printf_filtered ("\tAttached to %s", sr_get_device());
+  if (baud_rate != -1)
+    printf_filtered ("at %d baud", baud_rate);
+  printf_filtered ("\n");
 #endif
 
   if (exec_bfd)
@@ -620,63 +632,6 @@ gr_store_word (addr, word)
   dcache_poke (gr_get_dcache(), addr, word);
 }
 
-/* general purpose load a file specified on the command line
-   into target memory. */
-
-void
-gr_load_image (args, fromtty)
-     char *args;
-     int fromtty;
-{
-  bfd *abfd;
-
-  asection *s;
-  struct cleanup *old_cleanups;
-  int delta = 4096;
-  char *buffer = xmalloc (delta);
-
-  abfd = bfd_openr (args, (char *) 0);
-
-  if (!abfd)
-    perror_with_name (args);
-
-  old_cleanups = make_cleanup (bfd_close, abfd);
-
-  QUIT;
-
-  if (!bfd_check_format (abfd, bfd_object))
-    error ("It doesn't seem to be an object file.\n");
-
-  for (s = abfd->sections; s && !quit_flag; s = s->next)
-    {
-      if (bfd_get_section_flags (abfd, s) & SEC_LOAD)
-       {
-         int i;
-         printf_filtered ("%s\t: 0x%4x .. 0x%4x  ",
-                          s->name, s->vma, s->vma + s->_raw_size);
-         fflush (stdout);
-         for (i = 0; i < s->_raw_size && !quit_flag; i += delta)
-           {
-             int sub_delta = delta;
-             if (sub_delta > s->_raw_size - i)
-               sub_delta = s->_raw_size - i;
-             QUIT;
-             bfd_get_section_contents (abfd, s, buffer, i, sub_delta);
-             target_write_memory (s->vma + i, buffer, sub_delta);
-             printf_filtered ("*");
-             fflush (stdout);
-           }
-         printf_filtered ("\n");
-       }
-    }
-
-  free (buffer);
-  write_pc (bfd_get_start_address (abfd));
-  bfd_close (abfd);
-  discard_cleanups (old_cleanups);
-}
-
-
 void
 _initialize_sr_support ()
 {
This page took 0.025362 seconds and 4 git commands to generate.