From 1fda1b17088d24bf6bbe32ebf99c9c269e87a487 Mon Sep 17 00:00:00 2001 From: Mark Pizzolato Date: Tue, 23 Oct 2012 14:37:19 -0700 Subject: [PATCH] scp.h, sim_console.h, sim_console.c - Changed SET CONSOLE DEBUG= and SET CONSOLE NODEBUG to enable/disable debugging for the console device --- scp.h | 2 ++ sim_console.c | 27 +++++++++++++++++++++------ sim_console.h | 3 ++- 3 files changed, 25 insertions(+), 7 deletions(-) diff --git a/scp.h b/scp.h index 26dfe5dd..2eb1872d 100644 --- a/scp.h +++ b/scp.h @@ -126,6 +126,8 @@ BRKTAB *sim_brk_fnd (t_addr loc); uint32 sim_brk_test (t_addr bloc, uint32 btyp); void sim_brk_clrspc (uint32 spc); char *match_ext (char *fnam, char *ext); +t_stat set_dev_debug (DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr); +t_stat show_dev_debug (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr); const char *sim_error_text (t_stat stat); t_stat sim_string_to_stat (char *cptr, t_stat *cond); t_stat sim_cancel_step (void); diff --git a/sim_console.c b/sim_console.c index 2e4e4889..3ab9029e 100644 --- a/sim_console.c +++ b/sim_console.c @@ -119,6 +119,7 @@ #include "sim_defs.h" #include "sim_tmxr.h" +#include "sim_timer.h" #include /* Forward Declaraations of Platform specific routines */ @@ -211,8 +212,8 @@ static CTAB set_con_tab[] = { { "NOSERIAL", &sim_set_noserial, 0 }, { "LOG", &sim_set_logon, 0 }, { "NOLOG", &sim_set_logoff, 0 }, - { "DEBUG", &sim_set_debon, 0 }, - { "NODEBUG", &sim_set_deboff, 0 }, + { "DEBUG", &sim_set_cons_debug, 1 }, + { "NODEBUG", &sim_set_cons_debug, 0 }, { NULL, NULL, 0 } }; @@ -223,7 +224,7 @@ static SHTAB show_con_tab[] = { { "PCHAR", &sim_show_pchar, 0 }, { "LOG", &sim_show_cons_log, 0 }, { "TELNET", &sim_show_telnet, 0 }, - { "DEBUG", &sim_show_debug, 0 }, + { "DEBUG", &sim_show_cons_debug, 0 }, { "BUFFERED", &sim_show_cons_buff, 0 }, { NULL, NULL, 0 } }; @@ -611,6 +612,20 @@ else return SCPE_OK; } +/* Set console Debug Mode */ + +t_stat sim_set_cons_debug (int32 flg, char *cptr) +{ +return set_dev_debug (&sim_con_telnet, &sim_con_unit, flg, cptr); +} + +t_stat sim_show_cons_debug (FILE *st, DEVICE *dunused, UNIT *uunused, int32 flag, char *cptr) +{ +if (cptr && (*cptr != 0)) + return SCPE_2MARG; +return show_dev_debug (st, &sim_con_telnet, &sim_con_unit, flag, cptr); +} + /* Set console to Serial port (and parameters) */ t_stat sim_set_serial (int32 flag, char *cptr) @@ -1040,7 +1055,7 @@ run_mode.stat2 = cmd_mode.stat2 | TT2$M_PASTHRU; return SCPE_OK; } -t_stat sim_ttrun (void) +t_stat sim_os_ttrun (void) { unsigned int status; IOSB iosb; @@ -1052,7 +1067,7 @@ if ((status != SS$_NORMAL) || (iosb.status != SS$_NORMAL)) return SCPE_OK; } -t_stat sim_ttcmd (void) +t_stat sim_os_ttcmd (void) { unsigned int status; IOSB iosb; @@ -1130,7 +1145,7 @@ else if (sim_brk_char && (buf[0] == sim_brk_char)) buffered_character = SCPE_BREAK; else - buffered_character = (buf[0] | SCPE_KFLAG) + buffered_character = (buf[0] | SCPE_KFLAG); return TRUE; } diff --git a/sim_console.h b/sim_console.h index 9ad4342b..df032838 100644 --- a/sim_console.h +++ b/sim_console.h @@ -60,6 +60,7 @@ t_stat sim_set_noserial (int32 flag, char *cptr); t_stat sim_set_logon (int32 flag, char *cptr); t_stat sim_set_logoff (int32 flag, char *cptr); t_stat sim_set_debon (int32 flag, char *cptr); +t_stat sim_set_cons_debug (int32 flg, char *cptr); t_stat sim_set_cons_buff (int32 flg, char *cptr); t_stat sim_set_cons_unbuff (int32 flg, char *cptr); t_stat sim_set_cons_log (int32 flg, char *cptr); @@ -74,6 +75,7 @@ t_stat sim_show_debug (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cpt t_stat sim_show_pchar (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr); t_stat sim_show_cons_buff (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr); t_stat sim_show_cons_log (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr); +t_stat sim_show_cons_debug (FILE *st, DEVICE *dptr, UNIT *uptr, int32 flag, char *cptr); t_stat sim_check_console (int32 sec); t_stat sim_open_logfile (char *filename, t_bool binary, FILE **pf, FILEREF **pref); t_stat sim_close_logfile (FILEREF **pref); @@ -87,7 +89,6 @@ t_stat sim_ttcmd (void); t_stat sim_ttclose (void); t_bool sim_ttisatty(void); t_stat sim_os_poll_kbd (void); -t_stat sim_os_putchar (int32 out); int32 sim_tt_inpcvt (int32 c, uint32 mode); int32 sim_tt_outcvt (int32 c, uint32 mode);