1 
   2 
   3 
   4 
   5 
   6 
   7 
   8 
   9 
  10 
  11 
  12 
  13 
  14 
  15 
  16 
  17 
  18 
  19 
  20 
  21 
  22 
  23 
  24 
  25 
  26 
  27 
  28 
  29 
  30 
  31 
  32 
  33 
  34 
  35 
  36 
  37 
  38 
  39 #if !defined(SIM_CONSOLE_H_)
  40 # define SIM_CONSOLE_H_ 0
  41 
  42 # define TTUF_V_MODE    (UNIT_V_UF + 0)
  43 # define TTUF_W_MODE    2
  44 # define TTUF_MODE_7B   0
  45 # define TTUF_MODE_8B   1
  46 # define TTUF_MODE_UC   2
  47 # define TTUF_MODE_7P   3
  48 # define TTUF_M_MODE    ((1u << TTUF_W_MODE) - 1)
  49 # define TTUF_V_PAR     (TTUF_V_MODE + TTUF_W_MODE)
  50 # define TTUF_W_PAR     2
  51 # define TTUF_PAR_SPACE 0
  52 # define TTUF_PAR_MARK  1
  53 # define TTUF_PAR_EVEN  2
  54 # define TTUF_PAR_ODD   3
  55 # define TTUF_M_PAR     ((1u << TTUF_W_PAR) - 1)
  56 # define TTUF_KSR       (1u << (TTUF_W_MODE + TTUF_W_PAR))
  57 # define TTUF_V_UF      (TTUF_V_MODE + TTUF_W_MODE + TTUF_W_PAR)
  58 # define TT_MODE        (TTUF_M_MODE << TTUF_V_MODE)
  59 # define TT_MODE_7B     (TTUF_MODE_7B << TTUF_V_MODE)
  60 # define TT_MODE_8B     (TTUF_MODE_8B << TTUF_V_MODE)
  61 # define TT_MODE_UC     (TTUF_MODE_UC << TTUF_V_MODE)
  62 # define TT_MODE_7P     (TTUF_MODE_7P << TTUF_V_MODE)
  63 # define TT_MODE_KSR    (TT_MODE_UC)
  64 
  65 # define TT_PAR         (TTUF_M_PAR << TTUF_V_PAR)
  66 # define TT_PAR_SPACE   (TTUF_PAR_SPACE << TTUF_V_PAR)
  67 # define TT_PAR_MARK    (TTUF_PAR_MARK  << TTUF_V_PAR)
  68 # define TT_PAR_EVEN    (TTUF_PAR_EVEN  << TTUF_V_PAR)
  69 # define TT_PAR_ODD     (TTUF_PAR_ODD   << TTUF_V_PAR)
  70 
  71 
  72 # define TT_GET_MODE(x) (((x) >> TTUF_V_MODE) & (TTUF_M_MODE | (TTUF_M_PAR << TTUF_W_MODE)))
  73 
  74 t_stat sim_set_console (int32 flag, CONST char *cptr);
  75 t_stat sim_set_remote_console (int32 flag, CONST char *cptr);
  76 void sim_remote_process_command (void);
  77 t_stat sim_set_kmap (int32 flag, CONST char *cptr);
  78 t_stat sim_set_telnet (int32 flag, CONST char *cptr);
  79 t_stat sim_set_notelnet (int32 flag, CONST char *cptr);
  80 t_stat sim_set_serial (int32 flag, CONST char *cptr);
  81 t_stat sim_set_noserial (int32 flag, CONST char *cptr);
  82 t_stat sim_set_logon (int32 flag, CONST char *cptr);
  83 t_stat sim_set_logoff (int32 flag, CONST char *cptr);
  84 t_stat sim_set_debon (int32 flag, CONST char *cptr);
  85 t_stat sim_set_cons_buff (int32 flg, CONST char *cptr);
  86 t_stat sim_set_cons_unbuff (int32 flg, CONST char *cptr);
  87 t_stat sim_set_cons_log (int32 flg, CONST char *cptr);
  88 t_stat sim_set_cons_nolog (int32 flg, CONST char *cptr);
  89 t_stat sim_set_deboff (int32 flag, CONST char *cptr);
  90 t_stat sim_set_cons_expect (int32 flg, CONST char *cptr);
  91 t_stat sim_set_cons_noexpect (int32 flg, CONST char *cptr);
  92 t_stat sim_debug_flush (void);
  93 t_stat sim_set_pchar (int32 flag, CONST char *cptr);
  94 t_stat sim_set_cons_speed (int32 flag, CONST char *cptr);
  95 t_stat sim_show_console (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, CONST char *cptr);
  96 t_stat sim_show_remote_console (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, CONST char *cptr);
  97 t_stat sim_show_kmap (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, CONST char *cptr);
  98 t_stat sim_show_telnet (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, CONST char *cptr);
  99 t_stat sim_show_log (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, CONST char *cptr);
 100 t_stat sim_show_debug (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, CONST char *cptr);
 101 t_stat sim_show_pchar (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, CONST char *cptr);
 102 t_stat sim_show_cons_speed (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, CONST char *cptr);
 103 t_stat sim_show_cons_buff (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, CONST char *cptr);
 104 t_stat sim_show_cons_log (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, CONST char *cptr);
 105 t_stat sim_show_cons_expect (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, CONST char *cptr);
 106 t_stat sim_check_console (int32 sec);
 107 t_stat sim_open_logfile (const char *filename, t_bool binary, FILE **pf, FILEREF **pref);
 108 t_stat sim_close_logfile (FILEREF **pref);
 109 const char *sim_logfile_name (const FILE *st, FILEREF *ref);
 110 SEND *sim_cons_get_send (void);
 111 EXPECT *sim_cons_get_expect (void);
 112 t_stat sim_show_cons_send_input (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, CONST char *cptr);
 113 t_stat sim_poll_kbd (void);
 114 t_stat sim_putchar (int32 c);
 115 t_stat sim_ttinit (void);
 116 t_stat sim_ttrun (void);
 117 t_stat sim_ttcmd (void);
 118 t_stat sim_ttclose (void);
 119 t_bool sim_ttisatty (void);
 120 int32 sim_tt_inpcvt (int32 c, uint32 mode);
 121 int32 sim_tt_outcvt (int32 c, uint32 mode);
 122 
 123 extern int32 sim_rem_cmd_active_line;                       
 124 
 125 extern int32 sim_int_char;                                  
 126 extern int32 sim_brk_char;                                  
 127 extern int32 sim_tt_pchar;                                  
 128 extern int32 sim_del_char;                                  
 129 
 130 #endif