* ser-go32.c: Lint. (strncasecmp): Removed, now in libiberty.
authorSteve Chamberlain <sac@cygnus>
Sun, 12 Dec 1993 00:00:53 +0000 (00:00 +0000)
committerSteve Chamberlain <sac@cygnus>
Sun, 12 Dec 1993 00:00:53 +0000 (00:00 +0000)
(go32_readchar): Special handling for faster polling. (async
structure): Volatile.
* h8300-tdep.c (print_register_hook): Allocate and use the right
number bytes for the raw register.
* h8500-tdep.c (regoff, frame_find_saved_reg, examine_prologue):
deleted. (h8500_register_size, h8500_register_virtual_type, ):
Use new way of counting registers.
* remote-e7000.c (echo_index): deleted. (expect): Better handling
of user interrupts. (expect_prompt): Remove never used log file
support. (want, want_nopc): Add support for H8/300H.
(fetch_regs_from_dump): Treat \r and \n as whitespace.
(e7000_drain): Send an "end" command before waiting for output to
stop.  (e7000_wait): Cope with H8/300H, better handling of user
interrupts.  (why_stop, expect_n, sub2_from_pc): New function.
* remote-utils.c (gr_load_image): call fflush and QUIT more regularly.
* utils.c (notice_quit): New function for polling for user interrupts.

gdb/ChangeLog
gdb/h8300-tdep.c
gdb/h8500-tdep.c
gdb/remote-utils.c
gdb/ser-go32.c

index f51f5e5..bdb4b1f 100644 (file)
@@ -1,3 +1,23 @@
+Tue Nov 23 17:29:28 1993  Steve Chamberlain  (sac@jonny.cygnus.com)
+
+       * ser-go32.c: Lint. (strncasecmp): Removed, now in libiberty.
+       (go32_readchar): Special handling for faster polling. (async
+       structure): Volatile.
+       * h8300-tdep.c (print_register_hook): Allocate and use the right
+       number bytes for the raw register.
+       * h8500-tdep.c (regoff, frame_find_saved_reg, examine_prologue):
+       deleted. (h8500_register_size, h8500_register_virtual_type, ):
+       Use new way of counting registers.
+       * remote-e7000.c (echo_index): deleted. (expect): Better handling
+       of user interrupts. (expect_prompt): Remove never used log file
+       support. (want, want_nopc): Add support for H8/300H.
+       (fetch_regs_from_dump): Treat \r and \n as whitespace.
+       (e7000_drain): Send an "end" command before waiting for output to
+       stop.  (e7000_wait): Cope with H8/300H, better handling of user
+       interrupts.  (why_stop, expect_n, sub2_from_pc): New function.
+       * remote-utils.c (gr_load_image): call fflush and QUIT more regularly.
+       * utils.c (notice_quit): New function for polling for user interrupts.
+
 Fri Dec 10 15:53:56 1993  Per Bothner  (bothner@kalessin.cygnus.com)
 
        * stabsread.c (read_array_type):  Allow negative array bounds,
@@ -101,6 +121,7 @@ Mon Nov 29 11:36:57 1993  Stu Grossman  (grossman at cygnus.com)
        * i386ly-tdep.c (i386lynx_saved_pc_after_call):  Change call_inst
        to unsigned char to avoid domain warning for some values.
 
+>>>>>>> 1.2024
 Mon Nov 22 23:42:59 1993  Steve Chamberlain  (sac@jonny.cygnus.com)
 
        * remote-e7000.c (e7000_wait): Cope with H8/300 register dump.
index 20f26cc..2b194a3 100644 (file)
@@ -441,13 +441,11 @@ print_register_hook (regno)
   if (regno == 8)
     {
       /* CCR register */
-
       int C, Z, N, V;
-      unsigned char b[2];
+      unsigned char b[4];
       unsigned char l;
-
       read_relative_register_raw_bytes (regno, b);
-      l = b[1];
+      l = b[REGISTER_VIRTUAL_SIZE(8) -1];
       printf_unfiltered ("\t");
       printf_unfiltered ("I-%d - ", (l & 0x80) != 0);
       printf_unfiltered ("H-%d - ", (l & 0x20) != 0);
index 3b5086a..5f7eefa 100644 (file)
@@ -78,10 +78,6 @@ CORE_ADDR examine_prologue ();
 
 void frame_find_saved_regs ();
 
-int regoff[NUM_REGS] =
-{0, 2, 4, 6, 8, 10, 12, 14,    /* r0->r7 */
- 16, 18,                       /* ccr, pc */
- 20, 21, 22, 23};              /* cp, dp, ep, tp */
 
 CORE_ADDR
 h8500_skip_prologue (start_pc)
@@ -90,7 +86,7 @@ h8500_skip_prologue (start_pc)
 {
   short int w;
 
 w = read_memory_integer (start_pc, 1);
+ w = read_memory_integer (start_pc, 1);
   if (w == LINK_8)
     {
       start_pc += 2;
@@ -127,64 +123,12 @@ FRAME_ADDR
 h8500_frame_chain (thisframe)
      FRAME thisframe;
 {
-
   if (!inside_entry_file (thisframe->pc))
-    return (read_memory_integer (thisframe->frame, 2) & 0xffff)
-      | (read_register (SEG_T_REGNUM) << 16);
+    return (read_memory_integer (FRAME_FP (thisframe), PTR_SIZE));
   else
     return 0;
 }
 
-/* Put here the code to store, into a struct frame_saved_regs,
-   the addresses of the saved registers of frame described by FRAME_INFO.
-   This includes special registers such as pc and fp saved in special
-   ways in the stack frame.  sp is even more special:
-   the address we return for it IS the sp for the next frame.
-
-   We cache the result of doing this in the frame_cache_obstack, since
-   it is fairly expensive.  */
-#if 0
-
-void
-frame_find_saved_regs (fi, fsr)
-     struct frame_info *fi;
-     struct frame_saved_regs *fsr;
-{
-  register CORE_ADDR next_addr;
-  register CORE_ADDR *saved_regs;
-  register int regnum;
-  register struct frame_saved_regs *cache_fsr;
-  extern struct obstack frame_cache_obstack;
-  CORE_ADDR ip;
-  struct symtab_and_line sal;
-  CORE_ADDR limit;
-
-  if (!fi->fsr)
-    {
-      cache_fsr = (struct frame_saved_regs *)
-       obstack_alloc (&frame_cache_obstack,
-                      sizeof (struct frame_saved_regs));
-      memset (cache_fsr, '\0', sizeof (struct frame_saved_regs));
-
-      fi->fsr = cache_fsr;
-
-      /* Find the start and end of the function prologue.  If the PC
-        is in the function prologue, we only consider the part that
-        has executed already.  */
-
-      ip = get_pc_function_start (fi->pc);
-      sal = find_pc_line (ip, 0);
-      limit = (sal.end && sal.end < fi->pc) ? sal.end : fi->pc;
-
-      /* This will fill in fields in *fi as well as in cache_fsr.  */
-      examine_prologue (ip, limit, fi->frame, cache_fsr, fi);
-    }
-
-  if (fsr)
-    *fsr = *fi->fsr;
-}
-
-#endif
 
 /* Fetch the instruction at ADDR, returning 0 if ADDR is beyond LIM or
    is not the address of a valid instruction, the address of the next
@@ -215,121 +159,6 @@ NEXT_PROLOGUE_INSN (addr, lim, pword1)
    `fi' is a struct frame_info pointer; we fill in various fields in it
    to reflect the offsets of the arg pointer and the locals pointer.  */
 
-#if 0
-static CORE_ADDR
-examine_prologue (ip, limit, after_prolog_fp, fsr, fi)
-     register CORE_ADDR ip;
-     register CORE_ADDR limit;
-     FRAME_ADDR after_prolog_fp;
-     struct frame_saved_regs *fsr;
-     struct frame_info *fi;
-{
-  register CORE_ADDR next_ip;
-  int r;
-  int i;
-  int have_fp = 0;
-
-  register int src;
-  register struct pic_prologue_code *pcode;
-  char insn[2];
-  int size, offset;
-  unsigned int reg_save_depth = 2;     /* Number of things pushed onto
-                                     stack, starts at 2, 'cause the
-                                     PC is already there */
-
-  unsigned int auto_depth = 0; /* Number of bytes of autos */
-
-  char in_frame[8];            /* One for each reg */
-
-  memset (in_frame, 1, 8);
-  for (r = 0; r < 8; r++)
-    {
-      fsr->regs[r] = 0;
-    }
-  if (after_prolog_fp == 0)
-    {
-      after_prolog_fp = read_register (SP_REGNUM);
-    }
-  if (ip == 0 || ip & ~0xffffff)
-    return 0;
-
-  ok = NEXT_PROLOGUE_INSN (ip, limit, &insn[0]);
-
-  /* Skip over any fp push instructions */
-  fsr->regs[6] = after_prolog_fp;
-
-  if (ok && IS_LINK_8 (insn[0]))
-    {
-      ip++;
-
-      in_frame[6] = reg_save_depth;
-      reg_save_depth += 2;
-    }
-
-  next_ip = NEXT_PROLOGUE_INSN (ip, limit, &insn_word);
-
-  /* Is this a move into the fp */
-  if (next_ip && IS_MOV_SP_FP (insn_word))
-    {
-      ip = next_ip;
-      next_ip = NEXT_PROLOGUE_INSN (ip, limit, &insn_word);
-      have_fp = 1;
-    }
-
-  /* Skip over any stack adjustment, happens either with a number of
-     sub#2,sp or a mov #x,r5 sub r5,sp */
-
-  if (next_ip && IS_SUB2_SP (insn_word))
-    {
-      while (next_ip && IS_SUB2_SP (insn_word))
-       {
-         auto_depth += 2;
-         ip = next_ip;
-         next_ip = NEXT_PROLOGUE_INSN (ip, limit, &insn_word);
-       }
-    }
-  else
-    {
-      if (next_ip && IS_MOVK_R5 (insn_word))
-       {
-         ip = next_ip;
-         next_ip = NEXT_PROLOGUE_INSN (ip, limit, &insn_word);
-         auto_depth += insn_word;
-
-         next_ip = NEXT_PROLOGUE_INSN (next_ip, limit, &insn_word);
-         auto_depth += insn_word;
-
-       }
-    }
-  /* Work out which regs are stored where */
-  while (next_ip && IS_PUSH (insn_word))
-    {
-      ip = next_ip;
-      next_ip = NEXT_PROLOGUE_INSN (ip, limit, &insn_word);
-      fsr->regs[r] = after_prolog_fp + auto_depth;
-      auto_depth += 2;
-    }
-
-  /* The args are always reffed based from the stack pointer */
-  fi->args_pointer = after_prolog_fp;
-  /* Locals are always reffed based from the fp */
-  fi->locals_pointer = after_prolog_fp;
-  /* The PC is at a known place */
-  fi->from_pc = read_memory_short (after_prolog_fp + 2);
-
-  /* Rememeber any others too */
-  in_frame[PC_REGNUM] = 0;
-
-  if (have_fp)
-    /* We keep the old FP in the SP spot */
-    fsr->regs[SP_REGNUM] = (read_memory_short (fsr->regs[6]));
-  else
-    fsr->regs[SP_REGNUM] = after_prolog_fp + auto_depth;
-
-  return (ip);
-}
-
-#endif
 
 /* Return the saved PC from this frame. */
 
@@ -434,10 +263,34 @@ int
 h8500_register_size (regno)
      int regno;
 {
-  if (regno <= PC_REGNUM)
-    return 2;
-  else
+  switch (regno) {
+  case SEG_C_REGNUM:
+  case SEG_D_REGNUM:
+  case SEG_E_REGNUM:
+  case SEG_T_REGNUM:
     return 1;
+  case R0_REGNUM:
+  case R1_REGNUM:
+  case R2_REGNUM:
+  case R3_REGNUM:
+  case R4_REGNUM:
+  case R5_REGNUM:
+  case R6_REGNUM:
+  case R7_REGNUM:
+  case CCR_REGNUM:
+    return 2;
+
+  case PR0_REGNUM:
+  case PR1_REGNUM:
+  case PR2_REGNUM:
+  case PR3_REGNUM:
+  case PR4_REGNUM:
+  case PR5_REGNUM:
+  case PR6_REGNUM:
+  case PR7_REGNUM:
+  case PC_REGNUM:
+    return 4;
+  }
 }
 
 struct type *
@@ -459,9 +312,18 @@ h8500_register_virtual_type (regno)
     case R5_REGNUM:
     case R6_REGNUM:
     case R7_REGNUM:
-    case PC_REGNUM:
     case CCR_REGNUM:
       return builtin_type_unsigned_short;
+    case PR0_REGNUM:
+    case PR1_REGNUM:
+    case PR2_REGNUM:
+    case PR3_REGNUM:
+    case PR4_REGNUM:
+    case PR5_REGNUM:
+    case PR6_REGNUM:
+    case PR7_REGNUM:
+    case PC_REGNUM:
+      return builtin_type_unsigned_long;
     default:
       abort ();
     }
@@ -780,42 +642,39 @@ _initialize_h8500_tdep ()
 CORE_ADDR
 target_read_sp ()
 {
-  return (read_register (SEG_T_REGNUM) << 16) | (read_register (SP_REGNUM));
+  return read_register (PR7_REGNUM);
 }
 
 void
 target_write_sp (v)
      CORE_ADDR v;
 {
-  write_register (SEG_T_REGNUM, v >> 16);
-  write_register (SP_REGNUM, v & 0xffff);
+  write_register (PR7_REGNUM, v);
 }
 
 CORE_ADDR
 target_read_pc ()
 {
-  return (read_register (SEG_C_REGNUM) << 16) | (read_register (PC_REGNUM));
+  return read_register (PC_REGNUM);
 }
 
 void
 target_write_pc (v)
      CORE_ADDR v;
 {
-  write_register (SEG_C_REGNUM, v >> 16);
-  write_register (PC_REGNUM, v & 0xffff);
+  write_register (PC_REGNUM, v);
 }
 
 CORE_ADDR
 target_read_fp ()
 {
-  return (read_register (SEG_T_REGNUM) << 16) | (read_register (FP_REGNUM));
+  return read_register (PR6_REGNUM);
 }
 
 void
 target_write_fp (v)
      CORE_ADDR v;
 {
-  write_register (SEG_T_REGNUM, v >> 16);
-  write_register (FP_REGNUM, v & 0xffff);
+  write_register (PR6_REGNUM, v);
 }
 
index 9504320..75137e4 100644 (file)
@@ -641,24 +641,24 @@ gr_load_image (args, fromtty)
   old_cleanups = make_cleanup (bfd_close, abfd);
 
   QUIT;
-  immediate_quit++;
 
   if (!bfd_check_format (abfd, bfd_object))
     error ("It doesn't seem to be an object file.\n");
 
-  for (s = abfd->sections; s; s = s->next)
+  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);
-         for (i = 0; i < s->_raw_size; i += delta)
+         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 ("*");
@@ -667,7 +667,7 @@ gr_load_image (args, fromtty)
          printf_filtered ("\n");
        }
     }
-  immediate_quit--;
+
   free (buffer);
   write_pc (bfd_get_start_address (abfd));
   bfd_close (abfd);
index ff7c0a7..24c55f2 100644 (file)
@@ -1,21 +1,21 @@
 /* Remote serial interface for local (hardwired) serial ports for GO32.
    Copyright 1992, 1993 Free Software Foundation, Inc.
 
-This file is part of GDB.
+   This file is part of GDB.
 
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2 of the License, or
-(at your option) any later version.
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
 
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   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.  */
+   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.  */
 
 #include "defs.h"
 #include "serial.h"
@@ -23,38 +23,35 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
 /* This is unused for now.  We just return a placeholder. */
 struct go32_ttystate
-{
-  int bogus;
-};
-
-typedef struct {
-  short jmp_op;
-  short signature;
-  short version;
-  short buffer_start;
-  short buffer_end;
-  short getp;
-  short putp;
-  short iov;
-} ASYNC_STRUCT;
+  {
+    int bogus;
+  };
+
+typedef struct
+  {
+    short jmp_op;
+    short signature;
+    short version;
+    short buffer_start;
+    short buffer_end;
+    short getp;
+    short putp;
+    short iov;
+  }
+ASYNC_STRUCT;
 
 static int go32_open PARAMS ((serial_t scb, const char *name));
 static void go32_raw PARAMS ((serial_t scb));
-static int wait_for PARAMS ((serial_t scb, int timeout));
 static int go32_readchar PARAMS ((serial_t scb, int timeout));
-static int rate_to_code PARAMS ((int rate));
 static int go32_setbaudrate PARAMS ((serial_t scb, int rate));
 static int go32_write PARAMS ((serial_t scb, const char *str, int len));
-static void go32_restore PARAMS ((serial_t scb));
 static void go32_close PARAMS ((serial_t scb));
 static serial_ttystate go32_get_tty_state PARAMS ((serial_t scb));
 static int go32_set_tty_state PARAMS ((serial_t scb, serial_ttystate state));
-static int strncasecmp PARAMS ((const char *str1, const char *str2, int len));
 static char *aptr PARAMS ((short p));
 static ASYNC_STRUCT *getivec PARAMS ((int which));
 static int dos_async_init PARAMS ((int port));
 static void dos_async_tx PARAMS ((const char c));
-static int dos_async_ready PARAMS (());
 static int dos_async_rx PARAMS (());
 static int dosasync_read PARAMS ((int fd, char *buf, int len, int timeout));
 static int dosasync_write PARAMS ((int fd, const char *buf, int len));
@@ -65,7 +62,7 @@ static int dosasync_write PARAMS ((int fd, const char *buf, int len));
 
 #define peek(a,b) (*(unsigned short *)(0xe0000000 + (a)*16 + (b)))
 
-static ASYNC_STRUCT *async;
+static volatile ASYNC_STRUCT *async;
 static int iov;
 #define com_rb iov
 #define com_tb iov
@@ -76,43 +73,22 @@ static int iov;
 #define com_lsr        iov+5
 #define com_msr        iov+6
 
-static int
-strncasecmp(str1, str2, len)
-     const char *str1, *str2;
-     register int len;
-{
-  unsigned char c1, c2;
-
-  for (; len != 0; --len)
-    {
-      c1 = *str1++;
-      c2 = *str2++;
-
-      if (toupper(c1) != toupper(c2))
-       return toupper(c1) - toupper(c2);
-
-      if (c1 == '\0')
-       return 0;
-    }
-  return 0;
-}
-
 static char *
-aptr(p)
+aptr (p)
      short p;
 {
-  return (char *)((unsigned)async - OFFSET + p);
+  return (char *) ((unsigned) async - OFFSET + p);
 }
 
 static ASYNC_STRUCT *
-getivec(int which)
+getivec (int which)
 {
   ASYNC_STRUCT *a;
 
-  if (peek(0, which*4) != OFFSET)
+  if (peek (0, which * 4) != OFFSET)
     return 0;
 
-  a = (ASYNC_STRUCT *)(0xe0000000 + peek(0, which*4+2)*16 + peek(0, which*4));
+  a = (ASYNC_STRUCT *) (0xe0000000 + peek (0, which * 4 + 2) * 16 + peek (0, which * 4));
 
   if (a->signature != SIGNATURE)
     return 0;
@@ -124,11 +100,9 @@ getivec(int which)
 }
 
 static int
-dos_async_init(port)
+dos_async_init (port)
      int port;
 {
-  int i;
-
   switch (port)
     {
     case 1:
@@ -143,7 +117,7 @@ dos_async_init(port)
 
   if (!async)
     {
-      error("GDB cannot connect to asynctsr program, check that it is installed\n\
+      error ("GDB cannot connect to asynctsr program, check that it is installed\n\
 and that serial I/O is not being redirected (perhaps by NFS)\n\n\
 example configuration:\n\
 C> mode com%d:9600,n,8,1,p\n\
@@ -152,42 +126,40 @@ C> gdb \n", port, port);
     }
 
   iov = async->iov;
-  outportb(com_ier, 0x0f);
-  outportb(com_bfr, 0x03);
-  outportb(com_mcr, 0x0b);
+  outportb (com_ier, 0x0f);
+  outportb (com_bfr, 0x03);
+  outportb (com_mcr, 0x0b);
   async->getp = async->putp = async->buffer_start;
-  
+
   return 1;
 }
 
 static void
-dos_async_tx(c)
+dos_async_tx (c)
      const char c;
 {
-  while (~inportb(com_lsr) & 0x20);
-
-  outportb(com_tb, c);
+  while (~inportb (com_lsr) & 0x20)
+    ;
+  outportb (com_tb, c);
 }
 
-static int
-dos_async_ready()
-{
-  return (async->getp != async->putp);
-}
+#define dos_async_ready() (async->getp != async->putp)
 
 static int
-dos_async_rx()
+dos_async_rx ()
 {
   char rv;
 
-  while (!dos_async_ready())
-    if (kbhit())
-      {
-       printf_unfiltered("abort!\n");
-       return 0;
-      }
+  while (!dos_async_ready ())
+    {
+      if (kbhit ())
+       {
+         printf_unfiltered ("abort!\n");
+         return 0;
+       }
+    }
 
-  rv = *aptr(async->getp++);
+  rv = *aptr (async->getp++);
   if (async->getp >= async->buffer_end)
     async->getp = async->buffer_start;
 
@@ -202,37 +174,36 @@ dosasync_read (fd, buf, len, timeout)
      int timeout;
 {
   long now, then;
-  int l = len;
+  int i;
 
   time (&now);
   then = now + timeout;
 
-  while (l--)
+  for (i = 0; i < len; i++)
     {
       if (timeout)
        {
-         while (!dos_async_ready())
+         while (!dos_async_ready ())
            {
              time (&now);
              if (now >= then)
-               return len - l - 1;
+               return i;
            }
        }
-      *buf++ = dos_async_rx();
+      *buf++ = dos_async_rx ();
     }
-
   return len;
 }
 
 static int
-dosasync_write(fd, buf, len)
+dosasync_write (fd, buf, len)
      int fd;
      const char *buf;
      int len;
 {
-  int l = len;
+  int l;
 
-  while (l--)
+  for (l = 0; l < len; l++)
     dos_async_tx (*buf++);
 
   return len;
@@ -259,7 +230,7 @@ go32_open (scb, name)
       return -11;
     }
 
-  scb->fd = dos_async_init(port);
+  scb->fd = dos_async_init (port);
   if (!scb->fd)
     return -1;
 
@@ -287,7 +258,17 @@ go32_readchar (scb, timeout)
 {
   char buf;
 
-  if (dosasync_read(scb->fd, &buf, 1, timeout))  
+  /* Shortcut for polling */
+  if (timeout == 0)
+    {
+      if (dos_async_ready ())
+       {
+         return dos_async_rx ();
+       }
+      return SERIAL_TIMEOUT;
+    }
+
+  if (dosasync_read (scb->fd, &buf, 1, timeout))
     return buf;
   else
     return SERIAL_TIMEOUT;
@@ -297,23 +278,21 @@ go32_readchar (scb, timeout)
    vector.  Someday, they may do something real... */
 
 static serial_ttystate
-go32_get_tty_state(scb)
+go32_get_tty_state (scb)
      serial_t scb;
 {
   struct go32_ttystate *state;
 
-  state = (struct go32_ttystate *)xmalloc(sizeof *state);
+  state = (struct go32_ttystate *) xmalloc (sizeof *state);
 
-  return (serial_ttystate)state;
+  return (serial_ttystate) state;
 }
 
 static int
-go32_set_tty_state(scb, ttystate)
+go32_set_tty_state (scb, ttystate)
      serial_t scb;
      serial_ttystate ttystate;
 {
-  struct go32_ttystate *state;
-
   return 0;
 }
 
@@ -349,7 +328,7 @@ go32_write (scb, str, len)
      const char *str;
      int len;
 {
-  dosasync_write(scb->fd, str, len);
+  dosasync_write (scb->fd, str, len);
 
   return 0;
 }
@@ -368,9 +347,9 @@ static struct serial_ops go32_ops =
   go32_close,
   go32_readchar,
   go32_write,
-  go32_noop, /* flush output */
-  go32_noop, /* flush input */
-  go32_noop, /* send break -- currently used only for nindy */
+  go32_noop,                   /* flush output */
+  go32_noop,                   /* flush input */
+  go32_noop,                   /* send break -- currently used only for nindy */
   go32_raw,
   go32_get_tty_state,
   go32_set_tty_state,