Two small fixes to TMstate so it casts correctly to a Boolean, (else
"True" and "False" both ended up as 0 on our Suns at least.) and to
popdown the shell rather than the widget - otherwise it exits with and
error.

*** /tmp/,RCSt1a04755	Sun Jun  5 00:00:54 1988
--- TMstate.c	Sat Jun  4 23:59:59 1988
***************
*** 1192,1198
      XtConvert((Widget) NULL, XtRString, &fromVal, XtRBoolean, &toVal);
      if (toVal.addr == NULL) return FALSE;
  
!     *bP = (Boolean) *(int *)toVal.addr;
  
      return TRUE;
  }

--- 1192,1198 -----
      XtConvert((Widget) NULL, XtRString, &fromVal, XtRBoolean, &toVal);
      if (toVal.addr == NULL) return FALSE;
  
!     *bP = (Boolean) *toVal.addr;
  
      return TRUE;
  }
***************
*** 1269,1275
      String *params;
      Cardinal *num_params;
  {
!     XtPopdown(widget);
  }
  
  

--- 1269,1281 -----
      String *params;
      Cardinal *num_params;
  {
!     register Widget popup_shell;
! 
!     if (*num_params != 1) XtError("MenuPopdown wants exactly one argument.");
!     popup_shell = _XtFindPopup(widget, params[0]);
!     if (popup_shell == NULL) XtError("Can't find popup in _XtMenuPopdown");
! 
!     XtPopdown(popup_shell);
  }
  
  
