* remote.c (remote_write_bytes): Take a const buffer argument.
[deliverable/binutils-gdb.git] / gdb / remote-st.c
index ce82c305b657214fd316f15201f43e24f2ea2cef..c2bcf3d00f91822084bef5c5a5daf7f226921d10 100644 (file)
@@ -1,7 +1,7 @@
 /* Remote debugging interface for Tandem ST2000 phone switch, for GDB.
 
-   Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2000,
-   2001, 2002 Free Software Foundation, Inc.
+   Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2000,
+   2001, 2002, 2006 Free Software Foundation, Inc.
 
    Contributed by Cygnus Support.  Written by Jim Kingdon for Cygnus.
 
@@ -19,8 +19,8 @@
 
    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., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
+   Foundation, Inc., 51 Franklin Street, Fifth Floor,
+   Boston, MA 02110-1301, USA.  */
 
 /* This file was derived from remote-eb.c, which did a similar job, but for
    an AMD-29K running EBMON.  That file was in turn derived from remote.c
@@ -105,10 +105,10 @@ readchar (int timeout)
       if (timeout == 0)
        return c;               /* Polls shouldn't generate timeout errors */
 
-      error ("Timeout reading from remote system.");
+      error (_("Timeout reading from remote system."));
     }
 
-  perror_with_name ("remote-st2000");
+  perror_with_name (_("remote-st2000"));
 }
 
 /* Scan input from the remote system, until STRING is found.  If DISCARD is
@@ -190,7 +190,7 @@ get_hex_digit (int ignore_space)
       else
        {
          expect_prompt (1);
-         error ("Invalid hex digit from remote system.");
+         error (_("Invalid hex digit from remote system."));
        }
     }
 }
@@ -235,10 +235,10 @@ st2000_create_inferior (char *execfile, char *args, char **env,
   int entry_pt;
 
   if (args && *args)
-    error ("Can't pass arguments to remote STDEBUG process");
+    error (_("Can't pass arguments to remote STDEBUG process"));
 
   if (execfile == 0 || exec_bfd == 0)
-    error ("No executable file specified");
+    error (_("No executable file specified"));
 
   entry_pt = (int) bfd_get_start_address (exec_bfd);
 
@@ -258,8 +258,7 @@ st2000_create_inferior (char *execfile, char *args, char **env,
   target_terminal_inferior ();
 
   /* insert_step_breakpoint ();  FIXME, do we need this?  */
-  /* Let 'er rip... */
-  proceed ((CORE_ADDR) entry_pt, TARGET_SIGNAL_DEFAULT, 0);
+  write_pc ((CORE_ADDR) entry_pt);
 }
 
 /* Open a connection to a remote debugger.
@@ -279,8 +278,8 @@ st2000_open (char *args, int from_tty)
   n = sscanf (args, " %s %d %s", dev_name, &baudrate, junk);
 
   if (n != 2)
-    error ("Bad arguments.  Usage: target st2000 <device> <speed>\n\
-or target st2000 <host> <port>\n");
+    error (_("Bad arguments.  Usage: target st2000 <device> <speed>\n\
+or target st2000 <host> <port>\n"));
 
   st2000_close (0);
 
@@ -302,7 +301,7 @@ or target st2000 <host> <port>\n");
 #if defined (LOG_FILE)
   log_file = fopen (LOG_FILE, "w");
   if (log_file == NULL)
-    perror_with_name (LOG_FILE);
+    perror_with_name ((LOG_FILE));
 #endif
 
   /* Hello?  Are you there?  */
@@ -600,20 +599,16 @@ static CORE_ADDR breakaddr[MAX_STDEBUG_BREAKPOINTS] =
 {0};
 
 static int
-st2000_insert_breakpoint (CORE_ADDR addr, char *shadow)
+st2000_insert_breakpoint (struct bp_target_info *bp_tgt)
 {
+  CORE_ADDR addr = bp_tgt->placed_address;
   int i;
-  CORE_ADDR bp_addr = addr;
-  int bp_size = 0;
-
-  BREAKPOINT_FROM_PC (&bp_addr, &bp_size);
 
   for (i = 0; i <= MAX_STDEBUG_BREAKPOINTS; i++)
     if (breakaddr[i] == 0)
       {
        breakaddr[i] = addr;
 
-       st2000_read_inferior_memory (bp_addr, shadow, bp_size);
        printf_stdebug ("BR %x H\r", addr);
        expect_prompt (1);
        return 0;
@@ -624,8 +619,9 @@ st2000_insert_breakpoint (CORE_ADDR addr, char *shadow)
 }
 
 static int
-st2000_remove_breakpoint (CORE_ADDR addr, char *shadow)
+st2000_remove_breakpoint (struct bp_target_info *bp_tgt)
 {
+  CORE_ADDR addr = bp_tgt->placed_address;
   int i;
 
   for (i = 0; i < MAX_STDEBUG_BREAKPOINTS; i++)
@@ -651,10 +647,10 @@ static void
 st2000_command (char *args, int fromtty)
 {
   if (!st2000_desc)
-    error ("st2000 target not open.");
+    error (_("st2000 target not open."));
 
   if (!args)
-    error ("Missing command.");
+    error (_("Missing command."));
 
   printf_stdebug ("%s\r", args);
   expect_prompt (0);
@@ -686,7 +682,7 @@ connect_command (char *args, int fromtty)
   dont_repeat ();
 
   if (st2000_desc < 0)
-    error ("st2000 target not open.");
+    error (_("st2000 target not open."));
 
   if (args)
     fprintf ("This command takes no args.  They have been ignored.\n");
@@ -705,18 +701,18 @@ connect_command (char *args, int fromtty)
        {
          FD_SET (0, &readfds);
          FD_SET (deprecated_serial_fd (st2000_desc), &readfds);
-         numfds = select (sizeof (readfds) * 8, &readfds, 0, 0, 0);
+         numfds = gdb_select (sizeof (readfds) * 8, &readfds, 0, 0, 0);
        }
       while (numfds == 0);
 
       if (numfds < 0)
-       perror_with_name ("select");
+       perror_with_name (("select"));
 
       if (FD_ISSET (0, &readfds))
        {                       /* tty input, send to stdebug */
          c = getchar ();
          if (c < 0)
-           perror_with_name ("connect");
+           perror_with_name (("connect"));
 
          printf_stdebug ("%c", c);
          switch (cur_esc)
@@ -796,9 +792,9 @@ _initialize_remote_st2000 (void)
 {
   init_st2000_ops ();
   add_target (&st2000_ops);
-  add_com ("st2000 <command>", class_obscure, st2000_command,
-          "Send a command to the STDBUG monitor.");
-  add_com ("connect", class_obscure, connect_command,
-          "Connect the terminal directly up to the STDBUG command monitor.\n\
-Use <CR>~. or <CR>~^D to break out.");
+  add_com ("st2000", class_obscure, st2000_command,
+          _("Send a command to the STDBUG monitor."));
+  add_com ("connect", class_obscure, connect_command, _("\
+Connect the terminal directly up to the STDBUG command monitor.\n\
+Use <CR>~. or <CR>~^D to break out."));
 }
This page took 0.026062 seconds and 4 git commands to generate.