diff --git a/sim_console.c b/sim_console.c index ba2d670a..a406035f 100644 --- a/sim_console.c +++ b/sim_console.c @@ -2242,6 +2242,21 @@ else return SCPE_OK; } +/* Set debug switches */ + +int32 sim_set_deb_switches (int32 switches) +{ +int32 old_deb_switches = sim_deb_switches; + +sim_deb_switches = switches & + (SWMASK ('R') | SWMASK ('P') | + SWMASK ('T') | SWMASK ('A') | + SWMASK ('F') | SWMASK ('N') | + SWMASK ('B') | SWMASK ('E') | + SWMASK ('D') ); /* save debug switches */ +return old_deb_switches; +} + /* Set debug routine */ t_stat sim_set_debon (int32 flag, CONST char *cptr) @@ -2267,12 +2282,8 @@ r = sim_open_logfile (gbuf, FALSE, &sim_deb, &sim_deb_ref); if (r != SCPE_OK) return r; -sim_deb_switches = sim_switches & - (SWMASK ('R') | SWMASK ('P') | - SWMASK ('T') | SWMASK ('A') | - SWMASK ('F') | SWMASK ('N') | - SWMASK ('B') | SWMASK ('E') | - SWMASK ('D') ); /* save debug switches */ +sim_set_deb_switches (sim_switches); + if (sim_deb_switches & SWMASK ('R')) { struct tm loc_tm, gmt_tm; time_t time_t_now; diff --git a/sim_console.h b/sim_console.h index 361870bd..6f27d99c 100644 --- a/sim_console.h +++ b/sim_console.h @@ -81,6 +81,7 @@ t_stat sim_set_serial (int32 flag, CONST char *cptr); t_stat sim_set_noserial (int32 flag, CONST char *cptr); t_stat sim_set_logon (int32 flag, CONST char *cptr); t_stat sim_set_logoff (int32 flag, CONST char *cptr); +int32 sim_set_deb_switches (int32 switches); t_stat sim_set_debon (int32 flag, CONST char *cptr); t_stat sim_set_cons_debug (int32 flg, CONST char *cptr); t_stat sim_set_cons_buff (int32 flg, CONST char *cptr);