From dac73b9381ff9c65fe514d0fa2329c6b4450d0c4 Mon Sep 17 00:00:00 2001 From: Mark Pizzolato Date: Thu, 10 Jan 2013 13:29:15 -0800 Subject: [PATCH] Migrating scp and library global variables to be declared as extern in the appropriate library include file and remove repetitive declarations in referencing modules. --- ALTAIR/altair_cpu.c | 4 ---- AltairZ80/altairz80_cpu.c | 7 ------- AltairZ80/altairz80_cpu_nommu.c | 2 -- AltairZ80/altairz80_sio.c | 3 --- AltairZ80/i86_decode.c | 2 -- GRI/gri_cpu.c | 4 ---- GRI/gri_sys.c | 1 - H316/h316_cpu.c | 6 ------ H316/h316_dp.c | 1 - H316/h316_stddev.c | 1 - H316/h316_sys.c | 1 - HP2100/hp2100_cpu.c | 7 ------- I1401/i1401_cpu.c | 7 ------- I1401/i1401_mt.c | 2 -- I1620/i1620_cpu.c | 5 ----- I7094/i7094_cd.c | 1 - I7094/i7094_cpu.c | 7 ------- I7094/i7094_io.c | 2 -- I7094/i7094_mt.c | 1 - Ibm1130/ibm1130_cpu.c | 6 +----- Ibm1130/ibm1130_cr.c | 1 - Ibm1130/ibm1130_disk.c | 2 -- Ibm1130/ibm1130_gui.c | 1 - Ibm1130/ibm1130_plot.c | 1 - Ibm1130/ibm1130_prt.c | 2 -- Ibm1130/ibm1130_sca.c | 2 -- Ibm1130/ibm1130_stddev.c | 7 +------ Interdata/id16_cpu.c | 7 ------- Interdata/id32_cpu.c | 8 -------- Interdata/id32_dboot.c | 1 - Interdata/id_dp.c | 1 - Interdata/id_io.c | 2 -- LGP/lgp_cpu.c | 3 --- LGP/lgp_stddev.c | 1 - LGP/lgp_sys.c | 4 ---- NOVA/eclipse_cpu.c | 7 ------- NOVA/nova_cpu.c | 8 -------- NOVA/nova_qty.c | 2 -- NOVA/nova_sys.c | 3 --- PDP1/pdp1_cpu.c | 7 ------- PDP1/pdp1_dt.c | 3 --- PDP1/pdp1_sys.c | 1 - PDP10/pdp10_cpu.c | 6 ------ PDP10/pdp10_ksio.c | 2 -- PDP10/pdp10_rp.c | 1 - PDP10/pdp10_sys.c | 1 - PDP10/pdp10_tu.c | 2 -- PDP11/pdp11_cis.c | 2 -- PDP11/pdp11_cpu.c | 6 ------ PDP11/pdp11_cpumod.c | 4 +--- PDP11/pdp11_cr.c | 3 --- PDP11/pdp11_dz.c | 3 --- PDP11/pdp11_io.c | 3 +-- PDP11/pdp11_io_lib.c | 2 -- PDP11/pdp11_kg.c | 1 - PDP11/pdp11_rc.c | 1 - PDP11/pdp11_rf.c | 1 - PDP11/pdp11_rh.c | 3 --- PDP11/pdp11_rl.c | 1 - PDP11/pdp11_rp.c | 1 - PDP11/pdp11_rq.c | 2 -- PDP11/pdp11_ta.c | 1 - PDP11/pdp11_tc.c | 3 --- PDP11/pdp11_tm.c | 2 -- PDP11/pdp11_tq.c | 2 -- PDP11/pdp11_ts.c | 1 - PDP11/pdp11_tu.c | 3 --- PDP11/pdp11_xq.c | 4 ---- PDP18B/pdp18b_cpu.c | 9 --------- PDP18B/pdp18b_dt.c | 3 --- PDP18B/pdp18b_mt.c | 1 - PDP18B/pdp18b_stddev.c | 3 --- PDP18B/pdp18b_sys.c | 2 -- PDP8/pdp8_clk.c | 2 -- PDP8/pdp8_cpu.c | 9 --------- PDP8/pdp8_ct.c | 1 - PDP8/pdp8_df.c | 2 +- PDP8/pdp8_dt.c | 3 --- PDP8/pdp8_fpp.c | 2 -- PDP8/pdp8_rf.c | 2 +- PDP8/pdp8_sys.c | 1 - PDP8/pdp8_td.c | 2 -- PDP8/pdp8_tt.c | 2 +- PDP8/pdp8_ttx.c | 2 +- S3/s3_cpu.c | 4 ---- S3/s3_pkb.c | 2 -- S3/s3_sys.c | 8 ++++---- SDS/sds_cpu.c | 6 ------ SDS/sds_io.c | 2 -- SDS/sds_sys.c | 1 - TX-0/tx0_cpu.c | 7 ------- VAX/vax610_io.c | 1 - VAX/vax610_stddev.c | 1 - VAX/vax610_sysdev.c | 3 --- VAX/vax610_syslist.c | 1 - VAX/vax630_io.c | 3 --- VAX/vax630_stddev.c | 1 - VAX/vax630_sysdev.c | 5 ----- VAX/vax630_syslist.c | 1 - VAX/vax730_mem.c | 1 - VAX/vax730_stddev.c | 1 - VAX/vax730_sys.c | 4 ---- VAX/vax730_syslist.c | 1 - VAX/vax730_uba.c | 3 --- VAX/vax750_cmi.c | 4 ---- VAX/vax750_mem.c | 1 - VAX/vax750_stddev.c | 1 - VAX/vax750_syslist.c | 1 - VAX/vax750_uba.c | 3 --- VAX/vax780_sbi.c | 4 ---- VAX/vax780_stddev.c | 1 - VAX/vax780_syslist.c | 1 - VAX/vax780_uba.c | 3 --- VAX/vax7x0_mba.c | 2 -- VAX/vax860_abus.c | 4 ---- VAX/vax860_sbia.c | 3 --- VAX/vax860_stddev.c | 1 - VAX/vax860_syslist.c | 1 - VAX/vax_cis.c | 1 - VAX/vax_cmode.c | 2 -- VAX/vax_cpu.c | 9 --------- VAX/vax_cpu1.c | 2 -- VAX/vax_io.c | 3 --- VAX/vax_stddev.c | 1 - VAX/vax_sys.c | 1 - VAX/vax_sysdev.c | 3 --- VAX/vax_syslist.c | 1 - VAX/vax_watch.c | 2 -- alpha/alpha_cpu.c | 5 ----- alpha/alpha_io.c | 2 -- scp.h | 15 +++++++++++++++ sigma/sigma_cpu.c | 6 ------ sigma/sigma_io.c | 2 -- sim_console.h | 5 +++++ sim_sock.c | 2 -- sim_timer.c | 2 +- sim_timer.h | 3 +++ sim_tmxr.c | 1 + swtp6800/common/m6800.c | 5 ----- 139 files changed, 37 insertions(+), 373 deletions(-) diff --git a/ALTAIR/altair_cpu.c b/ALTAIR/altair_cpu.c index 834006b4..cfde68dd 100644 --- a/ALTAIR/altair_cpu.c +++ b/ALTAIR/altair_cpu.c @@ -107,9 +107,6 @@ int32 chip = 0; /* 0 = 8080 chip, 1 = z8 int32 PCX; /* External view of PC */ -extern int32 sim_int_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ;/* breakpoint info */ - /* function prototypes */ t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw); @@ -302,7 +299,6 @@ DEVICE cpu_dev = { int32 sim_instr (void) { - extern int32 sim_interval; int32 PC, IR, OP, DAR, reason, hi, lo, carry, i; PC = saved_PC & ADDRMASK; /* load local PC */ diff --git a/AltairZ80/altairz80_cpu.c b/AltairZ80/altairz80_cpu.c index e645b7c3..af2ab14e 100644 --- a/AltairZ80/altairz80_cpu.c +++ b/AltairZ80/altairz80_cpu.c @@ -128,7 +128,6 @@ } \ } -extern int32 sim_int_char; extern int32 sio0s (const int32 port, const int32 io, const int32 data); extern int32 sio0d (const int32 port, const int32 io, const int32 data); extern int32 sio1s (const int32 port, const int32 io, const int32 data); @@ -147,8 +146,6 @@ extern void do_SIMH_sleep(void); extern void prepareMemoryAccessMessage(const t_addr loc); extern void prepareInstructionMessage(const t_addr loc, const uint32 op); -extern FILE *sim_deb; - extern t_stat sim_instr_nommu(void); extern uint8 MOPT[MAXBANKSIZE]; extern t_stat sim_instr_8086(void); @@ -1882,15 +1879,12 @@ void setClockFrequency(const uint32 Value) { } static t_stat sim_instr_mmu (void) { - extern int32 sim_interval; extern t_bool sim_brk_pend[SIM_BKPT_N_SPC]; extern int32 timerInterrupt; extern int32 timerInterruptHandler; extern int32 keyboardInterrupt; extern uint32 keyboardInterruptHandler; - extern uint32 sim_os_msec(void); extern const t_bool rtc_avail; - extern uint32 sim_brk_summ; int32 reason = SCPE_OK; register uint32 specialProcessing; register uint32 AF; @@ -6287,7 +6281,6 @@ static t_stat sim_instr_mmu (void) { /* reset routine */ static t_stat cpu_reset(DEVICE *dptr) { - extern uint32 sim_brk_types, sim_brk_dflt; /* breakpoint info */ int32 i; AF_S = AF1_S = 0; BC_S = DE_S = HL_S = 0; diff --git a/AltairZ80/altairz80_cpu_nommu.c b/AltairZ80/altairz80_cpu_nommu.c index a390ca4b..552ac1d9 100644 --- a/AltairZ80/altairz80_cpu_nommu.c +++ b/AltairZ80/altairz80_cpu_nommu.c @@ -985,8 +985,6 @@ static uint16 GET_WORD(register uint32 a) { INOUTFLAGS((HIGH_REGISTER(BC) & 0xa8) | ((HIGH_REGISTER(BC) == 0) << 6), x) t_stat sim_instr_nommu(void) { - extern int32 sim_interval; - extern uint32 sim_brk_summ; int32 reason = SCPE_OK; register uint32 AF; register uint32 BC; diff --git a/AltairZ80/altairz80_sio.c b/AltairZ80/altairz80_sio.c index 543091a8..10283178 100644 --- a/AltairZ80/altairz80_sio.c +++ b/AltairZ80/altairz80_sio.c @@ -166,12 +166,9 @@ extern void setClockFrequency(const uint32 Value); extern int32 chiptype; extern const t_bool rtc_avail; extern uint32 PCX; -extern int32 sim_switches; -extern int32 sim_quiet; extern int32 SR; extern UNIT cpu_unit; extern volatile int32 stop_cpu; -extern int32 sim_interval; /* Debug Flags */ static DEBTAB generic_dt[] = { diff --git a/AltairZ80/i86_decode.c b/AltairZ80/i86_decode.c index 2b15e27f..afa7c2d0 100644 --- a/AltairZ80/i86_decode.c +++ b/AltairZ80/i86_decode.c @@ -41,9 +41,7 @@ extern int32 SPX_S; /* SP register (8086) */ extern int32 IP_S; /* IP register (8086) */ extern int32 FLAGS_S; /* flags register (8086) */ extern int32 PCX_S; /* PC register (8086), 20 bit */ -extern int32 sim_interval; extern uint32 PCX; /* external view of PC */ -extern uint32 sim_brk_summ; extern UNIT cpu_unit; void i86_intr_raise(PC_ENV *m,uint8 intrnum); diff --git a/GRI/gri_cpu.c b/GRI/gri_cpu.c index e173f306..ca08fc59 100644 --- a/GRI/gri_cpu.c +++ b/GRI/gri_cpu.c @@ -187,10 +187,6 @@ int16 scq[SCQ_SIZE] = { 0 }; /* PC queue */ int32 scq_p = 0; /* PC queue ptr */ REG *scq_r = NULL; /* PC queue reg ptr */ -extern int32 sim_interval; -extern int32 sim_int_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ - t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_dep (t_value val, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_reset (DEVICE *dptr); diff --git a/GRI/gri_sys.c b/GRI/gri_sys.c index 42e793d2..c20ab10b 100644 --- a/GRI/gri_sys.c +++ b/GRI/gri_sys.c @@ -37,7 +37,6 @@ extern DEVICE hsr_dev, hsp_dev; extern DEVICE rtc_dev; extern REG cpu_reg[]; extern uint16 M[]; -extern int32 sim_switches; void fprint_addr (FILE *of, uint32 val, uint32 mod, uint32 dst); diff --git a/H316/h316_cpu.c b/H316/h316_cpu.c index d09a0654..fe827ef8 100644 --- a/H316/h316_cpu.c +++ b/H316/h316_cpu.c @@ -276,12 +276,6 @@ int32 hst_p = 0; /* history pointer */ int32 hst_lnt = 0; /* history length */ InstHistory *hst = NULL; /* instruction history */ -extern int32 sim_int_char; -extern int32 sim_interval; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ -extern FILE *sim_log; -extern DEVICE *sim_devices[]; - t_bool devtab_init (void); int32 dmaio (int32 inst, int32 fnc, int32 dat, int32 dev); int32 undio (int32 inst, int32 fnc, int32 dat, int32 dev); diff --git a/H316/h316_dp.c b/H316/h316_dp.c index 533c3a86..056a9b1f 100644 --- a/H316/h316_dp.c +++ b/H316/h316_dp.c @@ -220,7 +220,6 @@ extern int32 dev_int, dev_enb; extern uint32 chan_req; extern int32 stop_inst; extern uint32 dma_ad[DMA_MAX]; -extern int32 sim_switches; uint32 dp_cw1 = 0; /* cmd word 1 */ uint32 dp_cw2 = 0; /* cmd word 2 */ diff --git a/H316/h316_stddev.c b/H316/h316_stddev.c index beb3585c..14060c82 100644 --- a/H316/h316_stddev.c +++ b/H316/h316_stddev.c @@ -88,7 +88,6 @@ extern int32 PC; extern int32 stop_inst; extern int32 C, dp, ext, extoff_pending, sc; extern int32 dev_int, dev_enb; -extern int32 sim_switches; extern UNIT cpu_unit; uint32 ptr_motion = 0; /* read motion */ diff --git a/H316/h316_sys.c b/H316/h316_sys.c index c9b6e54e..905c8470 100644 --- a/H316/h316_sys.c +++ b/H316/h316_sys.c @@ -43,7 +43,6 @@ extern DEVICE fhd_dev; extern DEVICE mt_dev; extern REG cpu_reg[]; extern uint16 M[]; -extern int32 sim_switches; /* SCP data structures and interface routines diff --git a/HP2100/hp2100_cpu.c b/HP2100/hp2100_cpu.c index 3dbe7bf8..d40c1ad2 100644 --- a/HP2100/hp2100_cpu.c +++ b/HP2100/hp2100_cpu.c @@ -561,14 +561,7 @@ uint16 dms_map[MAP_NUM * MAP_LNT] = { 0 }; /* dms maps */ /* External data */ -extern int32 sim_interval; -extern int32 sim_int_char; -extern int32 sim_brk_char; -extern int32 sim_del_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ -extern DEVICE *sim_devices[]; extern char halt_msg[]; -extern t_bool sim_idle_enab; extern DIB clk_dib; /* CLK DIB for idle check */ /* CPU local routines */ diff --git a/I1401/i1401_cpu.c b/I1401/i1401_cpu.c index fdc787bd..61aaf155 100644 --- a/I1401/i1401_cpu.c +++ b/I1401/i1401_cpu.c @@ -197,11 +197,8 @@ int32 hst_lnt = 0; /* history length */ InstHistory *hst = NULL; /* instruction history */ t_bool conv_old = 0; /* old conversions */ -extern int32 sim_int_char; extern int32 sim_emax; extern t_value *sim_eval; -extern FILE *sim_deb; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_dep (t_value val, t_addr addr, UNIT *uptr, int32 sw); @@ -229,8 +226,6 @@ extern t_stat inq_io (int32 flag, int32 mod); extern t_stat mt_io (int32 unit, int32 flag, int32 mod); extern t_stat dp_io (int32 fnc, int32 flag, int32 mod); extern t_stat mt_func (int32 unit, int32 flag, int32 mod); -extern t_stat sim_activate (UNIT *uptr, int32 delay); -extern t_stat fprint_sym (FILE *of, t_addr addr, t_value *val, UNIT *uptr, int32 sw); /* CPU data structures @@ -1904,8 +1899,6 @@ char *cptr = (char *) desc; t_value sim_eval[MAX_L + 1]; t_stat r; InstHistory *h; -extern t_stat fprint_sym (FILE *ofile, t_addr addr, t_value *val, - UNIT *uptr, int32 sw); if (hst_lnt == 0) /* enabled? */ return SCPE_NOFNC; diff --git a/I1401/i1401_mt.c b/I1401/i1401_mt.c index df7b8574..57a7f436 100644 --- a/I1401/i1401_mt.c +++ b/I1401/i1401_mt.c @@ -113,7 +113,6 @@ extern uint8 M[]; /* memory */ extern int32 ind[64]; extern int32 BS, iochk; extern UNIT cpu_unit; -extern FILE *sim_deb; t_stat mt_reset (DEVICE *dptr); t_stat mt_boot (int32 unitno, DEVICE *dptr); @@ -469,7 +468,6 @@ return SCPE_OK; t_stat mt_boot (int32 unitno, DEVICE *dptr) { extern int32 saved_IS; -extern int32 sim_switches; if ((sim_switches & SWMASK ('N')) == 0) /* unless -n */ sim_tape_rewind (&mt_unit[unitno]); /* force rewind */ diff --git a/I1620/i1620_cpu.c b/I1620/i1620_cpu.c index 49b02106..5ef99843 100644 --- a/I1620/i1620_cpu.c +++ b/I1620/i1620_cpu.c @@ -131,11 +131,6 @@ int32 hst_lnt = 0; /* history length */ InstHistory *hst = NULL; /* instruction history */ uint8 ind[NUM_IND] = { 0 }; /* indicators */ -extern int32 sim_int_char; -extern int32 sim_interval; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ -extern FILE *sim_log; - t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_dep (t_value val, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_reset (DEVICE *dptr); diff --git a/I7094/i7094_cd.c b/I7094/i7094_cd.c index cbdcf458..d0ad6870 100644 --- a/I7094/i7094_cd.c +++ b/I7094/i7094_cd.c @@ -88,7 +88,6 @@ t_stat cd_attach (UNIT *uptr, char *cptr); t_stat cd_set_mode (UNIT *uptr, int32 val, char *cptr, void *desc); char colbin_to_bcd (uint32 cb); -extern int32 sim_switches; extern uint32 PC; extern uint32 ind_ioc; extern char bcd_to_ascii_a[64]; diff --git a/I7094/i7094_cpu.c b/I7094/i7094_cpu.c index 4dbd5882..54d51429 100644 --- a/I7094/i7094_cpu.c +++ b/I7094/i7094_cpu.c @@ -211,11 +211,6 @@ extern uint32 ch_sta[NUM_CHAN]; extern uint32 ch_flags[NUM_CHAN]; extern DEVICE mt_dev[NUM_CHAN]; extern DEVICE ch_dev[NUM_CHAN]; -extern FILE *sim_deb; -extern int32 sim_int_char; -extern int32 sim_interval; -extern int32 sim_switches; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ /* Forward and external declarations */ @@ -2406,8 +2401,6 @@ t_stat cpu_fprint_one_inst (FILE *st, uint32 pc, uint32 rpt, uint32 ea, { int32 ch; t_value sim_eval; -extern t_stat fprint_sym (FILE *ofile, t_addr addr, t_value *val, - UNIT *uptr, int32 sw); sim_eval = ir; if (pc & HIST_PC) { /* instruction? */ diff --git a/I7094/i7094_io.c b/I7094/i7094_io.c index 391debfa..dae1d2b0 100644 --- a/I7094/i7094_io.c +++ b/I7094/i7094_io.c @@ -88,7 +88,6 @@ extern DEVICE mt_dev[NUM_CHAN]; extern DEVICE drm_dev; extern DEVICE dsk_dev; extern DEVICE com_dev; -extern uint32 sim_brk_summ; t_stat ch_reset (DEVICE *dptr); t_stat ch6_svc (UNIT *uptr); @@ -111,7 +110,6 @@ t_stat ch9_wr_getw (uint32 ch); void ch9_eval_int (uint32 ch, uint32 iflags); DEVICE *ch_map_flags (uint32 ch, int32 fl); -extern CTAB *sim_vm_cmd; extern t_stat ch_bkpt (uint32 ch, uint32 clc); const uint32 col_masks[12] = { /* row 9,8,..,0,11,12 */ diff --git a/I7094/i7094_mt.c b/I7094/i7094_mt.c index 7cd53c28..86c22bab 100644 --- a/I7094/i7094_mt.c +++ b/I7094/i7094_mt.c @@ -72,7 +72,6 @@ static const char *tape_stat[] = { extern uint32 PC; extern uint32 cpu_model; extern uint32 ind_ioc; -extern FILE *sim_deb; extern const char *sel_name[]; t_stat mt_chsel (uint32 ch, uint32 sel, uint32 unit); diff --git a/Ibm1130/ibm1130_cpu.c b/Ibm1130/ibm1130_cpu.c index bcc5ad19..9910f586 100644 --- a/Ibm1130/ibm1130_cpu.c +++ b/Ibm1130/ibm1130_cpu.c @@ -222,9 +222,7 @@ t_stat cpu_set_type (UNIT *uptr, int32 value, char *cptr, void *desc); void calc_ints (void); extern t_stat ts_wr (int32 data, int32 addr, int32 access); -extern t_stat detach_cmd (int32 flags, char *cptr); extern UNIT cr_unit; -extern int32 sim_switches; #ifdef ENABLE_BACKTRACE static void archive_backtrace(char *inst); @@ -466,8 +464,6 @@ static char *xio_funcs[] = { t_stat sim_instr (void) { - extern int32 sim_interval; - extern UNIT *sim_clock_queue; int32 i, eaddr, INDIR, IR, F, DSPLC, word2, oldval, newval, src, src2, dst, abit, xbit; int32 iocc_addr, iocc_op, iocc_dev, iocc_func, iocc_mod; char msg[50]; @@ -516,7 +512,7 @@ t_stat sim_instr (void) #endif /* ifdef GUI_SUPPORT */ if (sim_interval <= 0) { /* any events timed out? */ - if (sim_clock_queue != NULL) { + if (sim_clock_queue != QUEUE_LIST_END) { if ((status = sim_process_event()) != 0) reason = simh_status_to_stopcode(status); diff --git a/Ibm1130/ibm1130_cr.c b/Ibm1130/ibm1130_cr.c index cc01d941..df9c19b3 100644 --- a/Ibm1130/ibm1130_cr.c +++ b/Ibm1130/ibm1130_cr.c @@ -349,7 +349,6 @@ way to solve the problem, the other is to keep DSW up-to-date all the time). #define ENABLE_PHYSICAL_CARD_READER_SUPPORT -extern int32 sim_switches; extern UNIT cpu_unit; static t_stat cr_svc (UNIT *uptr); diff --git a/Ibm1130/ibm1130_disk.c b/Ibm1130/ibm1130_disk.c index 4b776470..f74cbcc6 100644 --- a/Ibm1130/ibm1130_disk.c +++ b/Ibm1130/ibm1130_disk.c @@ -39,8 +39,6 @@ commands may NOT be accurate. This should probably be fixed. #define TRACE_DMS_IO /* define to enable debug of DMS phase IO */ #ifdef TRACE_DMS_IO -extern int32 sim_switches; -extern int32 sim_quiet; static int trace_dms = 0; static void tracesector (int iswrite, int nwords, int addr, int sector); static t_stat where_cmd (int32 flag, char *ptr); diff --git a/Ibm1130/ibm1130_gui.c b/Ibm1130/ibm1130_gui.c index 27301478..0e32e3e5 100644 --- a/Ibm1130/ibm1130_gui.c +++ b/Ibm1130/ibm1130_gui.c @@ -93,7 +93,6 @@ DEVICE console_dev = { /* reset for the "console" display device */ extern char *read_line (char *cptr, int size, FILE *stream); -extern FILE *sim_log; extern DEVICE *find_unit (char *cptr, UNIT **uptr); extern char *sim_prompt; diff --git a/Ibm1130/ibm1130_plot.c b/Ibm1130/ibm1130_plot.c index 02344a3c..efa14401 100644 --- a/Ibm1130/ibm1130_plot.c +++ b/Ibm1130/ibm1130_plot.c @@ -93,7 +93,6 @@ static void update_pen(void); /* will ensure pen action is correct static t_stat plot_validate_change (UNIT *uptr, int32 val, char * ptr, void *desc); /* when set command issued */ static void process_cmd(void); /* does actual drawing for plotter */ -extern int32 sim_switches; /* switches set on simh command */ static int16 plot_dsw = 0; /* device status word */ static int16 plot_cmd = 0; /* the command to process */ static int32 plot_wait = 1000; /* plotter movement wait */ diff --git a/Ibm1130/ibm1130_prt.c b/Ibm1130/ibm1130_prt.c index 90103b8f..21aaa140 100644 --- a/Ibm1130/ibm1130_prt.c +++ b/Ibm1130/ibm1130_prt.c @@ -202,8 +202,6 @@ cccgi[] = { #include "ibm1130_prtwheel.h" -extern int32 sim_switches; - /* cc_format_1132 and cc_format_1403 - turn cctape bits into proper format for DSW or status read */ static int cc_format_1132 (int bits) diff --git a/Ibm1130/ibm1130_sca.c b/Ibm1130/ibm1130_sca.c index 8310ac40..e9927185 100644 --- a/Ibm1130/ibm1130_sca.c +++ b/Ibm1130/ibm1130_sca.c @@ -202,8 +202,6 @@ static int sca_rcvptr = 0; /* index of next byte to take from rcvbuf * #define UNIT_AUTOANSWER (1u << UNIT_V_AUTOANSWER) #define UNIT_LISTEN (1u << UNIT_V_LISTEN) -extern int sim_switches; /* variable that gets bits set for -x switches on command lines */ - t_stat sca_set_baud (UNIT *uptr, int32 value, char *cptr, void *desc); UNIT sca_unit = { /* default settings */ diff --git a/Ibm1130/ibm1130_stddev.c b/Ibm1130/ibm1130_stddev.c index d596fb07..b6d15034 100644 --- a/Ibm1130/ibm1130_stddev.c +++ b/Ibm1130/ibm1130_stddev.c @@ -112,7 +112,6 @@ typedef struct tag_os_map { /* os_map = overstrike mapping */ unsigned char inlist[MAX_OS_CHARS]; /* inlist = overstruck ASCII characters, sorted. NOT NULL TERMINATED */ } OS_MAP; -extern UNIT *sim_clock_queue; extern int cgi; static int32 tti_dsw = 0; /* device status words */ @@ -152,10 +151,6 @@ static char * handle_map_input_definition(char **pc); static char * handle_map_output_definition(char **pc); static char * handle_map_overstrike_definition(char **pc); -extern t_stat sim_poll_kbd(void); -extern t_stat sim_wait_kbd(void); -extern t_stat sim_putchar(int32 out); - #define UNIT_V_CSET (UNIT_V_UF + 0) /* user flag: character set */ #define UNIT_V_LOCKED (UNIT_V_UF + 2) /* user flag: keyboard locked */ #define UNIT_V_ANSI (UNIT_V_UF + 3) @@ -356,7 +351,7 @@ static t_stat tti_svc (UNIT *uptr) /* otherwise, so ^E can interrupt the simulator, */ sim_activate(&tti_unit, tti_unit.wait); /* always continue polling keyboard */ - assert(sim_clock_queue != NULL); + assert(sim_clock_queue != QUEUE_LIST_END); temp = sim_poll_kbd(); diff --git a/Interdata/id16_cpu.c b/Interdata/id16_cpu.c index 2a5605c2..1242b7fc 100644 --- a/Interdata/id16_cpu.c +++ b/Interdata/id16_cpu.c @@ -223,11 +223,6 @@ InstHistory *hst = NULL; /* instruction history * struct BlockIO blk_io; /* block I/O status */ uint32 (*dev_tab[DEVNO])(uint32 dev, uint32 op, uint32 datout) = { NULL }; -extern int32 sim_interval; -extern int32 sim_int_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ -extern t_bool sim_idle_enab; - uint32 ReadB (uint32 loc); uint32 ReadH (uint32 loc); void WriteB (uint32 loc, uint32 val); @@ -2011,8 +2006,6 @@ char *cptr = (char *) desc; t_value sim_eval[2]; t_stat r; InstHistory *h; -extern t_stat fprint_sym (FILE *ofile, t_addr addr, t_value *val, - UNIT *uptr, int32 sw); if (hst_lnt == 0) /* enabled? */ return SCPE_NOFNC; diff --git a/Interdata/id32_cpu.c b/Interdata/id32_cpu.c index ed5a0ad6..58ac82a5 100644 --- a/Interdata/id32_cpu.c +++ b/Interdata/id32_cpu.c @@ -253,12 +253,6 @@ jmp_buf save_env; /* abort handler */ struct BlockIO blk_io; /* block I/O status */ uint32 (*dev_tab[DEVNO])(uint32 dev, uint32 op, uint32 datout) = { NULL }; -extern int32 sim_interval; -extern int32 sim_int_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ -extern t_bool sim_idle_enab; -extern FILE *sim_deb; - uint32 ReadB (uint32 loc, uint32 rel); uint32 ReadH (uint32 loc, uint32 rel); void WriteB (uint32 loc, uint32 val, uint32 rel); @@ -2400,8 +2394,6 @@ char *cptr = (char *) desc; t_value sim_eval[3]; t_stat r; InstHistory *h; -extern t_stat fprint_sym (FILE *ofile, t_addr addr, t_value *val, - UNIT *uptr, int32 sw); if (hst_lnt == 0) /* enabled? */ return SCPE_NOFNC; diff --git a/Interdata/id32_dboot.c b/Interdata/id32_dboot.c index 40ee4167..133f59e2 100644 --- a/Interdata/id32_dboot.c +++ b/Interdata/id32_dboot.c @@ -288,7 +288,6 @@ t_stat id_dboot (int32 u, DEVICE *dptr) { extern DIB ttp_dib, sch_dib; extern uint32 PC; -extern int32 sim_switches; uint32 i, typ, ctlno, off, add, cap, sch_dev; UNIT *uptr; diff --git a/Interdata/id_dp.c b/Interdata/id_dp.c index cf3f82c2..de31cfbf 100644 --- a/Interdata/id_dp.c +++ b/Interdata/id_dp.c @@ -139,7 +139,6 @@ static struct drvtyp drv_tab[] = { }; extern uint32 int_req[INTSZ], int_enb[INTSZ]; -extern FILE *sim_deb; uint8 dpxb[DP_NUMBY]; /* xfer buffer */ uint32 dp_bptr = 0; /* buffer ptr */ diff --git a/Interdata/id_io.c b/Interdata/id_io.c index 4ba20a23..6a326b08 100644 --- a/Interdata/id_io.c +++ b/Interdata/id_io.c @@ -66,8 +66,6 @@ extern uint32 int_req[INTSZ], int_enb[INTSZ]; extern uint32 (*dev_tab[DEVNO])(uint32 dev, uint32 op, uint32 datout); extern uint32 pawidth; extern UNIT cpu_unit; -extern FILE *sim_log; -extern DEVICE *sim_devices[]; uint32 sch_max = 2; /* sch count */ uint32 sch_sa[SCH_NUMCH] = { 0 }; /* start addr */ diff --git a/LGP/lgp_cpu.c b/LGP/lgp_cpu.c index 27f2746c..083625a0 100644 --- a/LGP/lgp_cpu.c +++ b/LGP/lgp_cpu.c @@ -147,9 +147,6 @@ int16 pcq[PCQ_SIZE] = { 0 }; /* PC queue */ int32 pcq_p = 0; /* PC queue ptr */ REG *pcq_r = NULL; /* PC queue reg ptr */ -extern int32 sim_interval; -extern int32 sim_int_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ extern int32 sim_step; t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw); diff --git a/LGP/lgp_stddev.c b/LGP/lgp_stddev.c index f86ac096..dad514c0 100644 --- a/LGP/lgp_stddev.c +++ b/LGP/lgp_stddev.c @@ -48,7 +48,6 @@ extern uint32 A; extern uint32 inp_strt, inp_done; extern uint32 out_strt, out_done; extern UNIT cpu_unit; -extern int32 sim_switches; t_stat tti_svc (UNIT *uptr); t_stat ttr_svc (UNIT *uptr); diff --git a/LGP/lgp_sys.c b/LGP/lgp_sys.c index 083a3025..acac5b08 100644 --- a/LGP/lgp_sys.c +++ b/LGP/lgp_sys.c @@ -40,12 +40,8 @@ extern REG cpu_reg[]; extern uint32 M[]; extern uint32 PC; extern uint32 ts_flag; -extern int32 sim_switches; extern int32 flex_to_ascii[128], ascii_to_flex[128]; -extern void (*sim_vm_fprint_addr) (FILE *st, DEVICE *dptr, t_addr addr); -extern t_addr (*sim_vm_parse_addr) (DEVICE *dptr, char *cptr, char **tptr); - /* SCP data structures and interface routines sim_name simulator name string diff --git a/NOVA/eclipse_cpu.c b/NOVA/eclipse_cpu.c index c855cc55..0532da3b 100644 --- a/NOVA/eclipse_cpu.c +++ b/NOVA/eclipse_cpu.c @@ -495,9 +495,6 @@ FILE *Trace; t_stat reason; -extern int32 sim_int_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ -extern DEVICE *sim_devices[]; t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_dep (t_value val, t_addr addr, UNIT *uptr, int32 sw); @@ -516,9 +513,6 @@ int32 PutMap(int32 addr, int32 data); int32 Debug_Entry(int32 PC, int32 inst, int32 inst2, int32 AC0, int32 AC1, int32 AC2, int32 AC3, int32 flags); t_stat build_devtab (void); -extern t_stat fprint_sym (FILE *of, t_addr addr, t_value *val, - UNIT *uptr, int32 sw); - /* CPU data structures cpu_dev CPU device descriptor @@ -699,7 +693,6 @@ DEVICE pit_dev = { t_stat sim_instr (void) { -extern int32 sim_interval; register int32 PC, IR, i, t, MA, j, k, tac; register uint32 mddata, uAC0, uAC1, uAC2, uAC3; int16 sAC0, sAC1, sAC2; diff --git a/NOVA/nova_cpu.c b/NOVA/nova_cpu.c index a1caf573..ab2fc108 100644 --- a/NOVA/nova_cpu.c +++ b/NOVA/nova_cpu.c @@ -330,14 +330,6 @@ char * devBitNames( int32 flags, char * ptr, char * sepStr ) ; void mask_out (int32 mask); -extern int32 sim_interval; -extern int32 sim_int_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ -extern DEVICE * sim_devices[]; -extern t_stat fprint_sym(FILE *ofile, t_addr addr, t_value *val, UNIT *uptr, int32 sw); - - - /* CPU data structures cpu_dev CPU device descriptor diff --git a/NOVA/nova_qty.c b/NOVA/nova_qty.c index f51f5a81..8e1e07a4 100644 --- a/NOVA/nova_qty.c +++ b/NOVA/nova_qty.c @@ -105,8 +105,6 @@ extern int32 int_req, dev_busy, dev_done, dev_disable ; -extern int32 sim_switches ; -extern FILE * sim_log ; extern int32 tmxr_poll ; /* calibrated delay */ t_stat qty_setnl ( UNIT * uptr, int32 val, char * cptr, void * desc ) ; diff --git a/NOVA/nova_sys.c b/NOVA/nova_sys.c index 36a4cf22..104b992c 100644 --- a/NOVA/nova_sys.c +++ b/NOVA/nova_sys.c @@ -79,9 +79,6 @@ extern int32 MapStat; #endif -extern int32 sim_switches; - - /* SCP data structures sim_name simulator name string diff --git a/PDP1/pdp1_cpu.c b/PDP1/pdp1_cpu.c index d52a6a31..a58174ec 100644 --- a/PDP1/pdp1_cpu.c +++ b/PDP1/pdp1_cpu.c @@ -335,10 +335,6 @@ int32 hst_p = 0; /* history pointer */ int32 hst_lnt = 0; /* history length */ InstHistory *hst = NULL; /* inst history */ -extern UNIT *sim_clock_queue; -extern int32 sim_int_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ - t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_dep (t_value val, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_reset (DEVICE *dptr); @@ -503,7 +499,6 @@ DEVICE cpu_dev = { t_stat sim_instr (void) { -extern int32 sim_interval; int32 IR, op, i, t, xct_count; int32 sign, signd, v, sbs_lvl, byno; int32 dev, pulse, io_data, sc, skip; @@ -1656,8 +1651,6 @@ char *cptr = (char *) desc; t_stat r; t_value sim_eval; InstHistory *h; -extern t_stat fprint_sym (FILE *ofile, t_addr addr, t_value *val, - UNIT *uptr, int32 sw); if (hst_lnt == 0) /* enabled? */ return SCPE_NOFNC; diff --git a/PDP1/pdp1_dt.c b/PDP1/pdp1_dt.c index 2c902f62..3083a76a 100644 --- a/PDP1/pdp1_dt.c +++ b/PDP1/pdp1_dt.c @@ -250,9 +250,6 @@ extern int32 M[]; extern int32 stop_inst; extern UNIT cpu_unit; -extern int32 sim_switches; -extern int32 sim_is_running; -extern FILE *sim_deb; int32 dtsa = 0; /* status A */ int32 dtsb = 0; /* status B */ diff --git a/PDP1/pdp1_sys.c b/PDP1/pdp1_sys.c index d8985cd9..210d01c0 100644 --- a/PDP1/pdp1_sys.c +++ b/PDP1/pdp1_sys.c @@ -65,7 +65,6 @@ extern int32 M[]; extern int32 PC; extern int32 ascii_to_fiodec[], fiodec_to_ascii[]; extern int32 sc_map[]; -extern int32 sim_switches; /* SCP data structures and interface routines diff --git a/PDP10/pdp10_cpu.c b/PDP10/pdp10_cpu.c index 37cf218b..94850a2d 100644 --- a/PDP10/pdp10_cpu.c +++ b/PDP10/pdp10_cpu.c @@ -198,10 +198,6 @@ int32 hst_p = 0; /* history pointer */ int32 hst_lnt = 0; /* history length */ InstHistory *hst = NULL; /* instruction history */ -extern int32 sim_int_char; -extern int32 sim_interval; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ - /* Forward and external declarations */ t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw); @@ -2393,8 +2389,6 @@ char *cptr = (char *) desc; t_stat r; t_value sim_eval; InstHistory *h; -extern t_stat fprint_sym (FILE *ofile, t_addr addr, t_value *val, - UNIT *uptr, int32 sw); if (hst_lnt == 0) /* enabled? */ return SCPE_NOFNC; diff --git a/PDP10/pdp10_ksio.c b/PDP10/pdp10_ksio.c index 9bdf6f68..c270f191 100644 --- a/PDP10/pdp10_ksio.c +++ b/PDP10/pdp10_ksio.c @@ -120,9 +120,7 @@ extern d10 pager_word; extern int32 flags; extern const int32 pi_l2bit[8]; extern UNIT cpu_unit; -extern FILE *sim_log; extern jmp_buf save_env; -extern DEVICE *sim_devices[]; extern int32 pi_eval (void); extern int32 rp_inta (void); diff --git a/PDP10/pdp10_rp.c b/PDP10/pdp10_rp.c index ceed19c5..14a7a45a 100644 --- a/PDP10/pdp10_rp.c +++ b/PDP10/pdp10_rp.c @@ -1155,7 +1155,6 @@ return SCPE_OK; t_stat rp_detach (UNIT *uptr) { int32 drv; -extern int32 sim_is_running; if (!(uptr->flags & UNIT_ATT)) /* attached? */ return SCPE_OK; diff --git a/PDP10/pdp10_sys.c b/PDP10/pdp10_sys.c index 24ec2d48..12a4b664 100644 --- a/PDP10/pdp10_sys.c +++ b/PDP10/pdp10_sys.c @@ -338,7 +338,6 @@ t_stat sim_load (FILE *fileref, char *cptr, char *fnam, int flag) { d10 data; int32 wc, fmt; -extern int32 sim_switches; fmt = 0; /* no fmt */ if (sim_switches & SWMASK ('R')) /* -r? */ diff --git a/PDP10/pdp10_tu.c b/PDP10/pdp10_tu.c index 9d24b228..d24f57ca 100644 --- a/PDP10/pdp10_tu.c +++ b/PDP10/pdp10_tu.c @@ -297,8 +297,6 @@ extern int32 int_req; extern int32 ubmap[UBANUM][UMAP_MEMSIZE]; /* Unibus map */ extern int32 ubcs[UBANUM]; extern UNIT cpu_unit; -extern int32 sim_switches; -extern FILE *sim_deb; int32 tucs1 = 0; /* control/status 1 */ int32 tuwc = 0; /* word count */ diff --git a/PDP11/pdp11_cis.c b/PDP11/pdp11_cis.c index 95bcc381..16ba673e 100644 --- a/PDP11/pdp11_cis.c +++ b/PDP11/pdp11_cis.c @@ -175,9 +175,7 @@ static DSTR Dstr0 = { 0, {0, 0, 0, 0} }; extern int32 isenable, dsenable; extern int32 N, Z, V, C, fpd, ipl; extern int32 R[8], trap_req; -extern int32 sim_interval; extern uint32 cpu_type; -extern FILE *sim_deb; int32 ReadDstr (int32 *dscr, DSTR *dec, int32 flag); void WriteDstr (int32 *dscr, DSTR *dec, int32 flag); diff --git a/PDP11/pdp11_cpu.c b/PDP11/pdp11_cpu.c index 4a2bb111..81fd1ecb 100644 --- a/PDP11/pdp11_cpu.c +++ b/PDP11/pdp11_cpu.c @@ -304,12 +304,6 @@ int32 dsmask[4] = { MMR3_KDS, MMR3_SDS, 0, MMR3_UDS }; /* dspace enables */ t_addr cpu_memsize = INIMEMSIZE; /* last mem addr */ extern int32 CPUERR, MAINT; -extern int32 sim_interval; -extern int32 sim_int_char; -extern int32 sim_switches; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ -extern t_bool sim_idle_enab; -extern DEVICE *sim_devices[]; extern CPUTAB cpu_tab[]; /* Function declarations */ diff --git a/PDP11/pdp11_cpumod.c b/PDP11/pdp11_cpumod.c index c74e96c9..57d3c252 100644 --- a/PDP11/pdp11_cpumod.c +++ b/PDP11/pdp11_cpumod.c @@ -84,13 +84,11 @@ static int32 clk_tps_map[4] = { 60, 60, 50, 800 }; extern uint16 *M; extern int32 R[8]; -extern DEVICE cpu_dev, *sim_devices[]; +extern DEVICE cpu_dev; extern UNIT cpu_unit; -extern FILE *sim_log; extern int32 STKLIM, PIRQ; extern uint32 cpu_model, cpu_type, cpu_opt; extern int32 clk_fie, clk_fnxm, clk_tps, clk_default; -extern int32 sim_switches; t_stat CPU24_rd (int32 *data, int32 addr, int32 access); t_stat CPU24_wr (int32 data, int32 addr, int32 access); diff --git a/PDP11/pdp11_cr.c b/PDP11/pdp11_cr.c index ce583169..175c35b3 100644 --- a/PDP11/pdp11_cr.c +++ b/PDP11/pdp11_cr.c @@ -186,8 +186,6 @@ extern int32 int_req[IPL_HLVL]; #define DFLT_CPM 285 #endif -extern FILE *sim_deb; /* sim_console.c */ - /* create a int32 constant from four characters */ #define I4C(a,b,c,d) (((a) << 24) | ((b) << 16) | ((c) << 8) | (d)) #define I4C_CBN I4C ('C','B','N',' ') @@ -1102,7 +1100,6 @@ t_stat cr_attach ( UNIT *uptr, char *cptr ) { t_stat reason; - extern int32 sim_switches; if (sim_switches & ~MASK) return (SCPE_INVSW); diff --git a/PDP11/pdp11_dz.c b/PDP11/pdp11_dz.c index 11e4b129..06b44aa0 100644 --- a/PDP11/pdp11_dz.c +++ b/PDP11/pdp11_dz.c @@ -164,8 +164,6 @@ char *dz_stopbits[] = {"1", "2", "1", "1.5"}; #define TDR_V_TBR 8 /* xmit break - NI */ extern int32 IREQ (HLVL); -extern int32 sim_switches; -extern FILE *sim_log; extern int32 tmxr_poll; /* calibrated delay */ uint16 dz_csr[MAX_DZ_MUXES] = { 0 }; /* csr */ @@ -674,7 +672,6 @@ t_stat dz_attach (UNIT *uptr, char *cptr) { int32 dz, muxln; t_stat r; -extern int32 sim_switches; if (sim_switches & SWMASK ('M')) /* modem control? */ tmxr_set_modem_control_passthru (&dz_desc); diff --git a/PDP11/pdp11_io.c b/PDP11/pdp11_io.c index 9df2b78f..2a197622 100644 --- a/PDP11/pdp11_io.c +++ b/PDP11/pdp11_io.c @@ -60,8 +60,7 @@ extern int32 trap_req, ipl; extern int32 cpu_log; extern int32 autcon_enb; extern int32 uba_last; -extern FILE *sim_log; -extern DEVICE *sim_devices[], cpu_dev; +extern DEVICE cpu_dev; extern t_addr cpu_memsize; int32 calc_ints (int32 nipl, int32 trq); diff --git a/PDP11/pdp11_io_lib.c b/PDP11/pdp11_io_lib.c index 02d63059..59af9a78 100644 --- a/PDP11/pdp11_io_lib.c +++ b/PDP11/pdp11_io_lib.c @@ -36,8 +36,6 @@ #include "sim_sock.h" #include "sim_tmxr.h" -extern FILE *sim_log; -extern DEVICE *sim_devices[]; extern int32 autcon_enb; extern int32 int_vec[IPL_HLVL][32]; extern int32 (*int_ack[IPL_HLVL][32])(void); diff --git a/PDP11/pdp11_kg.c b/PDP11/pdp11_kg.c index b037388d..121b766f 100644 --- a/PDP11/pdp11_kg.c +++ b/PDP11/pdp11_kg.c @@ -95,7 +95,6 @@ #endif #include "pdp11_defs.h" -extern FILE *sim_deb; extern REG cpu_reg[]; extern int32 R[]; diff --git a/PDP11/pdp11_rc.c b/PDP11/pdp11_rc.c index 448a668a..d85e7b3b 100644 --- a/PDP11/pdp11_rc.c +++ b/PDP11/pdp11_rc.c @@ -147,7 +147,6 @@ ((double) RC_NUMWD))) extern int32 int_req[IPL_HLVL]; -extern FILE *sim_deb; extern int32 R[]; static uint32 rc_la = 0; /* look-ahead */ diff --git a/PDP11/pdp11_rf.c b/PDP11/pdp11_rf.c index 6fb62525..c79d41a6 100644 --- a/PDP11/pdp11_rf.c +++ b/PDP11/pdp11_rf.c @@ -110,7 +110,6 @@ extern uint16 *M; extern int32 int_req[IPL_HLVL]; -extern FILE *sim_deb; uint32 rf_cs = 0; /* status register */ uint32 rf_cma = 0; diff --git a/PDP11/pdp11_rh.c b/PDP11/pdp11_rh.c index 263f16fd..fc268f17 100644 --- a/PDP11/pdp11_rh.c +++ b/PDP11/pdp11_rh.c @@ -164,9 +164,6 @@ extern int32 cpu_bme; extern uint16 *M; extern int32 int_req[IPL_HLVL]; extern t_addr cpu_memsize; -extern FILE *sim_deb; -extern FILE *sim_log; -extern int32 sim_switches; t_stat mba_reset (DEVICE *dptr); t_stat mba_rd (int32 *val, int32 pa, int32 access); diff --git a/PDP11/pdp11_rl.c b/PDP11/pdp11_rl.c index ff435b55..2b920585 100644 --- a/PDP11/pdp11_rl.c +++ b/PDP11/pdp11_rl.c @@ -227,7 +227,6 @@ extern UNIT cpu_unit; #define RLBAE_IMP (0000077) /* implemented */ extern int32 int_req[IPL_HLVL]; -extern FILE *sim_deb; uint16 *rlxb = NULL; /* xfer buffer */ int32 rlcs = 0; /* control/status */ diff --git a/PDP11/pdp11_rp.c b/PDP11/pdp11_rp.c index c1d452b9..57786356 100644 --- a/PDP11/pdp11_rp.c +++ b/PDP11/pdp11_rp.c @@ -1393,7 +1393,6 @@ t_stat rp_detach (UNIT *uptr) { int32 drv; DEVICE *dptr = find_dev_from_unit (uptr); -extern int32 sim_is_running; if (!(uptr->flags & UNIT_ATT)) /* attached? */ return SCPE_OK; diff --git a/PDP11/pdp11_rq.c b/PDP11/pdp11_rq.c index 3b1754d8..c446cda3 100644 --- a/PDP11/pdp11_rq.c +++ b/PDP11/pdp11_rq.c @@ -700,8 +700,6 @@ static struct ctlrtyp ctlr_tab[] = { extern int32 int_req[IPL_HLVL]; extern int32 tmr_poll, clk_tps; -extern uint32 sim_taddr_64; -extern int32 sim_switches; int32 rq_itime = 200; /* init time, except */ int32 rq_itime4 = 10; /* stage 4 */ diff --git a/PDP11/pdp11_ta.c b/PDP11/pdp11_ta.c index 64f39c67..814d497f 100644 --- a/PDP11/pdp11_ta.c +++ b/PDP11/pdp11_ta.c @@ -106,7 +106,6 @@ #define UST_GAP 01 /* last op hit gap */ extern int32 int_req[IPL_HLVL]; -extern FILE *sim_deb; uint32 ta_cs = 0; /* control/status */ uint32 ta_idb = 0; /* input data buf */ diff --git a/PDP11/pdp11_tc.c b/PDP11/pdp11_tc.c index 4ca42485..d18f21b9 100644 --- a/PDP11/pdp11_tc.c +++ b/PDP11/pdp11_tc.c @@ -274,8 +274,6 @@ extern uint16 *M; /* memory */ extern int32 int_req[IPL_HLVL]; extern UNIT cpu_unit; -extern int32 sim_switches; -extern FILE *sim_deb; int32 tcst = 0; /* status */ int32 tccm = 0; /* command */ @@ -308,7 +306,6 @@ void dt_stopunit (UNIT *uptr); int32 dt_comobv (int32 val); int32 dt_csum (UNIT *uptr, int32 blk); int32 dt_gethdr (UNIT *uptr, int32 blk, int32 relpos); -extern int32 sim_is_running; /* DT data structures diff --git a/PDP11/pdp11_tm.c b/PDP11/pdp11_tm.c index 4464c5e2..c50b4aa4 100644 --- a/PDP11/pdp11_tm.c +++ b/PDP11/pdp11_tm.c @@ -154,7 +154,6 @@ extern uint16 *M; /* memory */ extern int32 int_req[IPL_HLVL]; -extern FILE *sim_deb; uint8 *tmxb = NULL; /* xfer buffer */ int32 tm_sta = 0; /* status register */ @@ -715,7 +714,6 @@ t_stat tm_boot (int32 unitno, DEVICE *dptr) { size_t i; extern int32 saved_PC; -extern int32 sim_switches; sim_tape_rewind (&tm_unit[unitno]); if (sim_switches & SWMASK ('O')) { diff --git a/PDP11/pdp11_tq.c b/PDP11/pdp11_tq.c index 23cd8323..f6c6f886 100644 --- a/PDP11/pdp11_tq.c +++ b/PDP11/pdp11_tq.c @@ -246,8 +246,6 @@ static struct drvtyp drv_tab[] = { extern int32 int_req[IPL_HLVL]; extern int32 tmr_poll, clk_tps; -extern FILE *sim_deb; -extern uint32 sim_taddr_64; uint32 tq_sa = 0; /* status, addr */ uint32 tq_saw = 0; /* written data */ diff --git a/PDP11/pdp11_ts.c b/PDP11/pdp11_ts.c index 325b42e2..64e21326 100644 --- a/PDP11/pdp11_ts.c +++ b/PDP11/pdp11_ts.c @@ -268,7 +268,6 @@ extern uint32 cpu_opt; extern int32 int_req[IPL_HLVL]; extern UNIT cpu_unit; -extern FILE *sim_deb; uint8 *tsxb = NULL; /* xfer buffer */ int32 tssr = 0; /* status register */ diff --git a/PDP11/pdp11_tu.c b/PDP11/pdp11_tu.c index 14820438..7bcbef8c 100644 --- a/PDP11/pdp11_tu.c +++ b/PDP11/pdp11_tu.c @@ -239,9 +239,6 @@ static char *tu_fname[CS1_N_FNC] = { "WRITE", "31", "32", "33", "READF", "35", "36" "READR" }; -extern int32 sim_switches; -extern FILE *sim_deb; - t_stat tu_mbrd (int32 *data, int32 PA, int32 fmtr); t_stat tu_mbwr (int32 data, int32 PA, int32 fmtr); t_stat tu_svc (UNIT *uptr); diff --git a/PDP11/pdp11_xq.c b/PDP11/pdp11_xq.c index 135e34fe..379b4374 100644 --- a/PDP11/pdp11_xq.c +++ b/PDP11/pdp11_xq.c @@ -254,10 +254,6 @@ extern int32 tmxr_poll; extern int32 tmr_poll, clk_tps; -extern t_bool sim_idle_enab; -extern FILE* sim_deb; -extern int32 sim_switches; -extern FILE *sim_log; extern char* read_line (char *ptr, int32 size, FILE *stream); /* forward declarations */ diff --git a/PDP18B/pdp18b_cpu.c b/PDP18B/pdp18b_cpu.c index 7bf7ab28..20bcc2f2 100644 --- a/PDP18B/pdp18b_cpu.c +++ b/PDP18B/pdp18b_cpu.c @@ -379,13 +379,6 @@ int32 hst_p = 0; /* history pointer */ int32 hst_lnt = 0; /* history length */ InstHistory *hst = NULL; /* instruction history */ -extern int32 sim_int_char; -extern int32 sim_interval; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ -extern t_bool sim_idle_enab; -extern DEVICE *sim_devices[]; -extern FILE *sim_log; - t_bool build_dev_tab (void); t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_dep (t_value val, t_addr addr, UNIT *uptr, int32 sw); @@ -2321,8 +2314,6 @@ char *cptr = (char *) desc; t_value sim_eval[2]; t_stat r; InstHistory *h; -extern t_stat fprint_sym (FILE *ofile, t_addr addr, t_value *val, - UNIT *uptr, int32 sw); if (hst_lnt == 0) /* enabled? */ return SCPE_NOFNC; diff --git a/PDP18B/pdp18b_dt.c b/PDP18B/pdp18b_dt.c index 6b78f81b..ea9462fd 100644 --- a/PDP18B/pdp18b_dt.c +++ b/PDP18B/pdp18b_dt.c @@ -327,9 +327,6 @@ extern int32 M[]; extern int32 int_hwre[API_HLVL+1]; extern UNIT cpu_unit; -extern int32 sim_switches; -extern int32 sim_is_running; -extern FILE *sim_deb; int32 dtsa = 0; /* status A */ int32 dtsb = 0; /* status B */ diff --git a/PDP18B/pdp18b_mt.c b/PDP18B/pdp18b_mt.c index 2d48299f..7f552741 100644 --- a/PDP18B/pdp18b_mt.c +++ b/PDP18B/pdp18b_mt.c @@ -127,7 +127,6 @@ extern int32 M[]; extern int32 int_hwre[API_HLVL+1]; extern UNIT cpu_unit; -extern FILE *sim_deb; int32 mt_cu = 0; /* command/unit */ int32 mt_sta = 0; /* status register */ diff --git a/PDP18B/pdp18b_stddev.c b/PDP18B/pdp18b_stddev.c index 60e9e528..3748b1c7 100644 --- a/PDP18B/pdp18b_stddev.c +++ b/PDP18B/pdp18b_stddev.c @@ -85,8 +85,6 @@ extern int32 M[]; extern int32 int_hwre[API_HLVL+1], PC, ASW; -extern int32 sim_switches; -extern int32 sim_is_running; extern UNIT cpu_unit; int32 clk_state = 0; @@ -862,7 +860,6 @@ t_stat ptr_boot (int32 unitno, DEVICE *dptr) { size_t i; int32 mask, wd; -extern int32 sim_switches; #if defined (PDP7) if (sim_switches & SWMASK ('H')) /* hardware RIM load? */ diff --git a/PDP18B/pdp18b_sys.c b/PDP18B/pdp18b_sys.c index 86bedcf5..239af0a0 100644 --- a/PDP18B/pdp18b_sys.c +++ b/PDP18B/pdp18b_sys.c @@ -345,8 +345,6 @@ return SCPE_OK; t_stat sim_load (FILE *fileref, char *cptr, char *fnam, int flag) { -extern int32 sim_switches; - if (flag != 0) return SCPE_NOFNC; if (sim_switches & SWMASK ('S')) /* RIM format? */ diff --git a/PDP8/pdp8_clk.c b/PDP8/pdp8_clk.c index 968ac229..8f38affe 100644 --- a/PDP8/pdp8_clk.c +++ b/PDP8/pdp8_clk.c @@ -44,8 +44,6 @@ extern int32 int_req, int_enable, dev_done, stop_inst; int32 clk_tps = 60; /* ticks/second */ int32 tmxr_poll = 16000; /* term mux poll */ -extern int32 sim_is_running; - int32 clk (int32 IR, int32 AC); t_stat clk_svc (UNIT *uptr); t_stat clk_reset (DEVICE *dptr); diff --git a/PDP8/pdp8_cpu.c b/PDP8/pdp8_cpu.c index 98ad5846..4a561109 100644 --- a/PDP8/pdp8_cpu.c +++ b/PDP8/pdp8_cpu.c @@ -240,13 +240,6 @@ int32 hst_p = 0; /* history pointer */ int32 hst_lnt = 0; /* history length */ InstHistory *hst = NULL; /* instruction history */ -extern int32 sim_interval; -extern int32 sim_int_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ -extern DEVICE *sim_devices[]; -extern FILE *sim_log; -extern t_bool sim_idle_enab; - t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_dep (t_value val, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_reset (DEVICE *dptr); @@ -1543,8 +1536,6 @@ char *cptr = (char *) desc; t_stat r; t_value sim_eval; InstHistory *h; -extern t_stat fprint_sym (FILE *ofile, t_addr addr, t_value *val, - UNIT *uptr, int32 sw); if (hst_lnt == 0) /* enabled? */ return SCPE_NOFNC; diff --git a/PDP8/pdp8_ct.c b/PDP8/pdp8_ct.c index 3216f426..45289576 100644 --- a/PDP8/pdp8_ct.c +++ b/PDP8/pdp8_ct.c @@ -138,7 +138,6 @@ extern int32 int_req, stop_inst; extern UNIT cpu_unit; -extern FILE *sim_deb; uint32 ct_sra = 0; /* status reg A */ uint32 ct_srb = 0; /* status reg B */ diff --git a/PDP8/pdp8_df.c b/PDP8/pdp8_df.c index 9ccfba64..7acd6541 100644 --- a/PDP8/pdp8_df.c +++ b/PDP8/pdp8_df.c @@ -335,7 +335,7 @@ static const uint16 dm4_rom[] = { t_stat df_boot (int32 unitno, DEVICE *dptr) { size_t i; -extern int32 sim_switches, saved_PC; +extern int32 saved_PC; if (sim_switches & SWMASK ('D')) { for (i = 0; i < DM4_LEN; i = i + 2) diff --git a/PDP8/pdp8_dt.c b/PDP8/pdp8_dt.c index 987bb969..e8e37028 100644 --- a/PDP8/pdp8_dt.c +++ b/PDP8/pdp8_dt.c @@ -265,8 +265,6 @@ extern uint16 M[]; extern int32 int_req; extern UNIT cpu_unit; -extern int32 sim_switches; -extern FILE *sim_deb; int32 dtsa = 0; /* status A */ int32 dtsb = 0; /* status B */ @@ -293,7 +291,6 @@ void dt_seterr (UNIT *uptr, int32 e); int32 dt_comobv (int32 val); int32 dt_csum (UNIT *uptr, int32 blk); int32 dt_gethdr (UNIT *uptr, int32 blk, int32 relpos, int32 dir); -extern int32 sim_is_running; /* DT data structures diff --git a/PDP8/pdp8_fpp.c b/PDP8/pdp8_fpp.c index 6845dbe8..01636e37 100644 --- a/PDP8/pdp8_fpp.c +++ b/PDP8/pdp8_fpp.c @@ -96,8 +96,6 @@ #include "pdp8_defs.h" extern int32 int_req; -extern int32 sim_switches; -extern int32 sim_interval; extern uint16 M[]; extern int32 stop_inst; extern UNIT cpu_unit; diff --git a/PDP8/pdp8_rf.c b/PDP8/pdp8_rf.c index ce5ed632..74b28ad2 100644 --- a/PDP8/pdp8_rf.c +++ b/PDP8/pdp8_rf.c @@ -399,7 +399,7 @@ static const uint16 dm4_rom[] = { t_stat rf_boot (int32 unitno, DEVICE *dptr) { size_t i; -extern int32 sim_switches, saved_PC; +extern int32 saved_PC; if (rf_dib.dev != DEV_RF) /* only std devno */ return STOP_NOTSTD; diff --git a/PDP8/pdp8_sys.c b/PDP8/pdp8_sys.c index ed7ff85b..20eba5ec 100644 --- a/PDP8/pdp8_sys.c +++ b/PDP8/pdp8_sys.c @@ -65,7 +65,6 @@ extern DEVICE mt_dev, ct_dev; extern DEVICE ttix_dev, ttox_dev; extern REG cpu_reg[]; extern uint16 M[]; -extern int32 sim_switches; t_stat fprint_sym_fpp (FILE *of, t_value *val); t_stat parse_sym_fpp (char *cptr, t_value *val); diff --git a/PDP8/pdp8_td.c b/PDP8/pdp8_td.c index d2699ba4..c4333820 100644 --- a/PDP8/pdp8_td.c +++ b/PDP8/pdp8_td.c @@ -208,8 +208,6 @@ int32 td_set_mtk (int32 code, int32 u, int32 k); t_stat td_show_pos (FILE *st, UNIT *uptr, int32 val, void *desc); extern uint16 M[]; -extern int32 sim_switches; -extern int32 sim_is_running; /* TD data structures diff --git a/PDP8/pdp8_tt.c b/PDP8/pdp8_tt.c index 9f39b5d1..f0c522b3 100644 --- a/PDP8/pdp8_tt.c +++ b/PDP8/pdp8_tt.c @@ -45,7 +45,7 @@ #include extern int32 int_req, int_enable, dev_done, stop_inst; -extern int32 tmxr_poll, sim_is_running; +extern int32 tmxr_poll; int32 tti (int32 IR, int32 AC); int32 tto (int32 IR, int32 AC); diff --git a/PDP8/pdp8_ttx.c b/PDP8/pdp8_ttx.c index 97b91125..b308e1ac 100644 --- a/PDP8/pdp8_ttx.c +++ b/PDP8/pdp8_ttx.c @@ -61,7 +61,7 @@ #define TTX_GETLN(x) (((x) >> 4) & TTX_MASK) extern int32 int_req, int_enable, dev_done, stop_inst; -extern int32 tmxr_poll, sim_is_running; +extern int32 tmxr_poll; uint8 ttix_buf[TTX_LINES] = { 0 }; /* input buffers */ uint8 ttox_buf[TTX_LINES] = { 0 }; /* output buffers */ diff --git a/S3/s3_cpu.c b/S3/s3_cpu.c index 0457d192..6906b7e2 100644 --- a/S3/s3_cpu.c +++ b/S3/s3_cpu.c @@ -382,8 +382,6 @@ int32 saved_PC; /* Saved (old) PC) */ int32 debug_reg = 0; /* set for debug/trace */ int32 debug_flag = 0; /* 1 when trace.log open */ FILE *trace; -extern int32 sim_int_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ;/* breakpoint info */ t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_dep (t_value val, t_addr addr, UNIT *uptr, int32 sw); @@ -396,7 +394,6 @@ extern int32 lpt (int32 op, int32 m, int32 n, int32 data); extern int32 dsk1 (int32 op, int32 m, int32 n, int32 data); extern int32 dsk2 (int32 op, int32 m, int32 n, int32 data); extern int32 cpu (int32 op, int32 m, int32 n, int32 data); -extern t_stat sim_activate (UNIT *uptr, int32 delay); int32 nulldev (int32 opcode, int32 m, int32 n, int32 data); int32 add_zoned (int32 addr1, int32 len1, int32 addr2, int32 len2); int32 subtract_zoned (int32 addr1, int32 len1, int32 addr2, int32 len2); @@ -505,7 +502,6 @@ DEVICE cpu_dev = { t_stat sim_instr (void) { -extern int32 sim_interval; register int32 PC, IR; int32 i, j, carry, zero, op1, op2; int32 opcode = 0, qbyte = 0, rbyte = 0; diff --git a/S3/s3_pkb.c b/S3/s3_pkb.c index 0ba62090..461fc736 100644 --- a/S3/s3_pkb.c +++ b/S3/s3_pkb.c @@ -35,8 +35,6 @@ extern int32 int_req, dev_busy, dev_done, dev_disable; t_stat pkb_svc (UNIT *uptr); t_stat pkb_reset (DEVICE *dptr); -extern t_stat sim_poll_kbd (void); -extern t_stat sim_putchar (int32 out); extern int32 IAR[], level; extern int32 debug_reg; diff --git a/S3/s3_sys.c b/S3/s3_sys.c index 3adf7696..0c26cfbb 100644 --- a/S3/s3_sys.c +++ b/S3/s3_sys.c @@ -44,9 +44,9 @@ extern REG cpu_reg[]; extern unsigned char M[]; extern int32 saved_PC, IAR[]; extern unsigned char ebcdic_to_ascii[]; -char *parse_addr(char *cptr, char *gbuf, int32 *addr, int32 *addrtype); +char *parse_addr(char *cptr, char *gbuf, t_addr *addr, int32 *addrtype); -int32 printf_sym (FILE *of, char *strg, int32 addr, uint32 *val, +int32 printf_sym (FILE *of, char *strg, t_addr addr, uint32 *val, UNIT *uptr, int32 sw); /* SCP data structures @@ -267,7 +267,7 @@ int32 fprint_sym (FILE *of, t_addr addr, uint32 *val, return (r); } -int32 printf_sym (FILE *of, char *strg, int32 addr, uint32 *val, +int32 printf_sym (FILE *of, char *strg, t_addr addr, uint32 *val, UNIT *uptr, int32 sw) { int32 c1, c2, group, len1, len2, inst, aaddr, baddr; @@ -923,7 +923,7 @@ switch (opcode[j].form) { /* Get operands based on return (-(oplen-1)); } -char *parse_addr(char *cptr, char *gbuf, int32 *addr, int32 *addrtype) +char *parse_addr(char *cptr, char *gbuf, t_addr *addr, int32 *addrtype) { int32 nybble = 0; char temp[32]; diff --git a/SDS/sds_cpu.c b/SDS/sds_cpu.c index 0621dc4f..c80ce356 100644 --- a/SDS/sds_cpu.c +++ b/SDS/sds_cpu.c @@ -194,9 +194,6 @@ InstHistory *hst = NULL; /* instruction history * int32 rtc_pie = 0; /* rtc pulse ie */ int32 rtc_tps = 60; /* rtc ticks/sec */ -extern int32 sim_int_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ - t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_dep (t_value val, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_reset (DEVICE *dptr); @@ -359,7 +356,6 @@ static const uint32 int_vec[32] = { t_stat sim_instr (void) { -extern int32 sim_interval; uint32 inst, tinst, pa, save_P, save_mode; t_stat reason, tr; @@ -1667,8 +1663,6 @@ char *cptr = (char *) desc; t_stat r; t_value sim_eval; InstHistory *h; -extern t_stat fprint_sym (FILE *ofile, t_addr addr, t_value *val, - UNIT *uptr, int32 sw); static char *cyc[] = { " ", " ", "INT", "TRP" }; if (hst_lnt == 0) /* enabled? */ diff --git a/SDS/sds_io.c b/SDS/sds_io.c index ae402e86..dc5e7618 100644 --- a/SDS/sds_io.c +++ b/SDS/sds_io.c @@ -86,8 +86,6 @@ extern int32 rtc_pie; extern int32 stop_invins, stop_invdev, stop_inviop; extern uint32 mon_usr_trap; extern UNIT cpu_unit; -extern FILE *sim_log; -extern DEVICE *sim_devices[]; t_stat chan_reset (DEVICE *dptr); t_stat chan_read (int32 ch); diff --git a/SDS/sds_sys.c b/SDS/sds_sys.c index 44f98173..1f2a0cef 100644 --- a/SDS/sds_sys.c +++ b/SDS/sds_sys.c @@ -217,7 +217,6 @@ t_stat sim_load (FILE *fileref, char *cptr, char *fnam, int flag) { int32 i, wd, buf[8]; int32 ldr = 1; -extern int32 sim_switches; extern uint32 P; if ((*cptr != 0) || (flag != 0)) diff --git a/TX-0/tx0_cpu.c b/TX-0/tx0_cpu.c index a65ca38e..4bb03d38 100644 --- a/TX-0/tx0_cpu.c +++ b/TX-0/tx0_cpu.c @@ -282,10 +282,6 @@ int32 fpc_OP; /* shadow op for FPC acc int32 addr_mask = YMASK; -extern UNIT *sim_clock_queue; -extern int32 sim_int_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ - t_stat cpu_ex (t_value *vptr, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_dep (t_value val, t_addr addr, UNIT *uptr, int32 sw); t_stat cpu_reset (DEVICE *dptr); @@ -448,7 +444,6 @@ t_stat sim_opr_orig(int32 op); t_stat sim_instr (void) { - extern int32 sim_interval; int32 IR, op, inst_class, y; int32 tempLR; /* LR temporary storage in case both LMB and MBL are set (swap LR<->MBR) */ t_stat reason; @@ -1167,8 +1162,6 @@ char *cptr = (char *) desc; t_stat r; t_value sim_eval; InstHistory *h; -extern t_stat fprint_sym (FILE *ofile, t_addr addr, t_value *val, - UNIT *uptr, int32 sw); if (hst_lnt == 0) return SCPE_NOFNC; /* enabled? */ if (cptr) { diff --git a/VAX/vax610_io.c b/VAX/vax610_io.c index 4cded759..7cc99ec8 100644 --- a/VAX/vax610_io.c +++ b/VAX/vax610_io.c @@ -37,7 +37,6 @@ int32 autcon_enb = 1; /* autoconfig enable */ extern int32 PSL, SISR, trpirq, mem_err, hlt_pin; extern int32 p1; extern jmp_buf save_env; -extern DEVICE *sim_devices[]; int32 eval_int (void); t_stat qba_reset (DEVICE *dptr); diff --git a/VAX/vax610_stddev.c b/VAX/vax610_stddev.c index fd10cd83..d19de7d7 100644 --- a/VAX/vax610_stddev.c +++ b/VAX/vax610_stddev.c @@ -69,7 +69,6 @@ extern int32 int_req[IPL_HLVL]; extern int32 hlt_pin; -extern int32 sim_switches; extern jmp_buf save_env; extern int32 p1; diff --git a/VAX/vax610_sysdev.c b/VAX/vax610_sysdev.c index 083acaab..a929d02f 100644 --- a/VAX/vax610_sysdev.c +++ b/VAX/vax610_sysdev.c @@ -54,9 +54,6 @@ extern int32 mchk_va, mchk_ref; extern int32 int_req[IPL_HLVL]; extern jmp_buf save_env; extern int32 p1; -extern int32 sim_switches; -extern FILE *sim_log; -extern CTAB *sim_vm_cmd; extern int32 trpirq, mem_err; int32 conisp, conpc, conpsl; /* console reg */ diff --git a/VAX/vax610_syslist.c b/VAX/vax610_syslist.c index 8ab3d8f7..c262fad5 100644 --- a/VAX/vax610_syslist.c +++ b/VAX/vax610_syslist.c @@ -49,7 +49,6 @@ extern DEVICE dz_dev; extern DEVICE xq_dev, xqb_dev; extern DEVICE vh_dev; -extern int32 sim_switches; extern void WriteB (uint32 pa, int32 val); extern UNIT cpu_unit; diff --git a/VAX/vax630_io.c b/VAX/vax630_io.c index f8656a9e..e928d363 100644 --- a/VAX/vax630_io.c +++ b/VAX/vax630_io.c @@ -64,9 +64,6 @@ extern UNIT cpu_unit; extern int32 PSL, SISR, trpirq, mem_err, hlt_pin; extern int32 p1; extern jmp_buf save_env; -extern int32 sim_switches; -extern DEVICE *sim_devices[]; -extern FILE *sim_log; extern int32 ka_mser; /* KA630 mem sys err */ t_stat dbl_rd (int32 *data, int32 addr, int32 access); diff --git a/VAX/vax630_stddev.c b/VAX/vax630_stddev.c index a68ec5c1..c92a8a25 100644 --- a/VAX/vax630_stddev.c +++ b/VAX/vax630_stddev.c @@ -49,7 +49,6 @@ extern int32 int_req[IPL_HLVL]; extern int32 hlt_pin; -extern int32 sim_switches; int32 tti_csr = 0; /* control/status */ int32 tto_csr = 0; /* control/status */ diff --git a/VAX/vax630_sysdev.c b/VAX/vax630_sysdev.c index 3aa3a0dd..ceda7b27 100644 --- a/VAX/vax630_sysdev.c +++ b/VAX/vax630_sysdev.c @@ -54,8 +54,6 @@ #define UNIT_V_NODELAY (UNIT_V_UF + 0) /* ROM access equal to RAM access */ #define UNIT_NODELAY (1u << UNIT_V_NODELAY) -extern CTAB *sim_vm_cmd; - t_stat vax630_boot (int32 flag, char *ptr); /* Special boot command, overrides regular boot */ @@ -139,7 +137,6 @@ extern UNIT cpu_unit; extern UNIT clk_unit; extern jmp_buf save_env; extern int32 p1; -extern int32 sim_switches; extern int32 tmr_poll; uint32 *rom = NULL; /* boot ROM */ @@ -192,7 +189,6 @@ extern void rxcs_wr (int32 dat); extern void txcs_wr (int32 dat); extern void txdb_wr (int32 dat); extern void ioreset_wr (int32 dat); -extern uint32 sim_os_msec(); /* ROM data structures @@ -830,7 +826,6 @@ return run_cmd (flag, "CPU"); t_stat cpu_boot (int32 unitno, DEVICE *dptr) { -extern t_stat load_cmd (int32 flag, char *cptr); t_stat r; PC = ROMBASE; diff --git a/VAX/vax630_syslist.c b/VAX/vax630_syslist.c index 8f20fa50..fa0e08bb 100644 --- a/VAX/vax630_syslist.c +++ b/VAX/vax630_syslist.c @@ -55,7 +55,6 @@ extern DEVICE dz_dev; extern DEVICE xq_dev, xqb_dev; extern DEVICE vh_dev; -extern int32 sim_switches; extern void WriteB (uint32 pa, int32 val); extern void rom_wr_B (int32 pa, int32 val); extern UNIT cpu_unit; diff --git a/VAX/vax730_mem.c b/VAX/vax730_mem.c index f408366e..fa5f2bf4 100644 --- a/VAX/vax730_mem.c +++ b/VAX/vax730_mem.c @@ -66,7 +66,6 @@ #define MEM_BOARD_MASK(x,y) ((1u << (uint32)(x/y)) - 1) extern UNIT cpu_unit; -extern FILE *sim_log, *sim_deb; uint32 mcsr0 = 0; uint32 mcsr1 = 0; diff --git a/VAX/vax730_stddev.c b/VAX/vax730_stddev.c index 45252342..d191dcf7 100644 --- a/VAX/vax730_stddev.c +++ b/VAX/vax730_stddev.c @@ -205,7 +205,6 @@ int32 td_state = TD_IDLE; int32 td_unitno = 0; /* active unit number */ int32 td_ecode = 0; /* end packet success code */ -extern int32 sim_switches; extern jmp_buf save_env; t_stat tti_svc (UNIT *uptr); diff --git a/VAX/vax730_sys.c b/VAX/vax730_sys.c index c5224be1..179cb5a2 100644 --- a/VAX/vax730_sys.c +++ b/VAX/vax730_sys.c @@ -78,10 +78,6 @@ extern int32 crd_err, mem_err, hlt_pin; extern int32 tmr_int, tti_int, tto_int, csi_int, cso_int; extern jmp_buf save_env; extern int32 p1; -extern int32 sim_switches; -extern DEVICE *sim_devices[]; -extern FILE *sim_log; -extern CTAB *sim_vm_cmd; t_stat sysb_reset (DEVICE *dptr); t_stat vax730_boot (int32 flag, char *ptr); diff --git a/VAX/vax730_syslist.c b/VAX/vax730_syslist.c index e33ce16a..6fa3946f 100644 --- a/VAX/vax730_syslist.c +++ b/VAX/vax730_syslist.c @@ -54,7 +54,6 @@ extern DEVICE vh_dev; extern DEVICE xu_dev, xub_dev; extern DEVICE dmc_dev[]; -extern int32 sim_switches; extern UNIT cpu_unit; extern void WriteB (uint32 pa, int32 val); diff --git a/VAX/vax730_uba.c b/VAX/vax730_uba.c index dc18f4ed..9c1d36ab 100644 --- a/VAX/vax730_uba.c +++ b/VAX/vax730_uba.c @@ -93,10 +93,7 @@ int32 autcon_enb = 1; /* autoconfig enable */ extern int32 trpirq; extern int32 autcon_enb; extern jmp_buf save_env; -extern DEVICE *sim_devices[]; extern UNIT cpu_unit; -extern int32 sim_switches; -extern FILE *sim_log, *sim_deb; extern int32 p1; t_stat uba_reset (DEVICE *dptr); diff --git a/VAX/vax750_cmi.c b/VAX/vax750_cmi.c index e036bf8a..fd92ae09 100644 --- a/VAX/vax750_cmi.c +++ b/VAX/vax750_cmi.c @@ -98,10 +98,6 @@ extern int32 crd_err, mem_err, hlt_pin; extern int32 tmr_int, tti_int, tto_int, csi_int, cso_int; extern jmp_buf save_env; extern int32 p1; -extern int32 sim_switches; -extern DEVICE *sim_devices[]; -extern FILE *sim_log; -extern CTAB *sim_vm_cmd; t_stat cmi_reset (DEVICE *dptr); void cmi_set_tmo (void); diff --git a/VAX/vax750_mem.c b/VAX/vax750_mem.c index 97e49cf1..15f60b26 100644 --- a/VAX/vax750_mem.c +++ b/VAX/vax750_mem.c @@ -78,7 +78,6 @@ #define MEM_64K_MASK 0x5555 extern UNIT cpu_unit; -extern FILE *sim_log, *sim_deb; uint32 mcsr0 = 0; uint32 mcsr1 = 0; diff --git a/VAX/vax750_stddev.c b/VAX/vax750_stddev.c index 97c5fc24..05b7a876 100644 --- a/VAX/vax750_stddev.c +++ b/VAX/vax750_stddev.c @@ -203,7 +203,6 @@ int32 td_offset = 0; /* offset into current t int32 td_state = TD_IDLE; int32 td_ecode = 0; /* end packet success code */ -extern int32 sim_switches; extern jmp_buf save_env; t_stat tti_svc (UNIT *uptr); diff --git a/VAX/vax750_syslist.c b/VAX/vax750_syslist.c index 3d895757..634d8523 100644 --- a/VAX/vax750_syslist.c +++ b/VAX/vax750_syslist.c @@ -56,7 +56,6 @@ extern DEVICE vh_dev; extern DEVICE xu_dev, xub_dev; extern DEVICE dmc_dev[]; -extern int32 sim_switches; extern UNIT cpu_unit; extern void WriteB (uint32 pa, int32 val); diff --git a/VAX/vax750_uba.c b/VAX/vax750_uba.c index 9ea02418..09d891b2 100644 --- a/VAX/vax750_uba.c +++ b/VAX/vax750_uba.c @@ -88,11 +88,8 @@ int32 autcon_enb = 1; /* autoconfig enable */ extern int32 trpirq; extern int32 autcon_enb; extern jmp_buf save_env; -extern DEVICE *sim_devices[]; extern UNIT cpu_unit; extern uint32 nexus_req[NEXUS_HLVL]; -extern int32 sim_switches; -extern FILE *sim_log, *sim_deb; extern int32 p1; extern int32 fault_PC; /* fault PC */ extern int32 mem_err; diff --git a/VAX/vax780_sbi.c b/VAX/vax780_sbi.c index 24ca0cf0..03bec346 100644 --- a/VAX/vax780_sbi.c +++ b/VAX/vax780_sbi.c @@ -136,10 +136,6 @@ extern int32 crd_err, mem_err, hlt_pin; extern int32 tmr_int, tti_int, tto_int; extern jmp_buf save_env; extern int32 p1; -extern int32 sim_switches; -extern DEVICE *sim_devices[]; -extern FILE *sim_log; -extern CTAB *sim_vm_cmd; t_stat sbi_reset (DEVICE *dptr); void sbi_set_tmo (int32 pa); diff --git a/VAX/vax780_stddev.c b/VAX/vax780_stddev.c index 725d186f..854532b0 100644 --- a/VAX/vax780_stddev.c +++ b/VAX/vax780_stddev.c @@ -220,7 +220,6 @@ int32 fl_bptr = 0; /* buffer pointer */ uint8 comm_region[COMM_LNT] = { 0 }; /* comm region */ -extern int32 sim_switches; extern jmp_buf save_env; t_stat tti_svc (UNIT *uptr); diff --git a/VAX/vax780_syslist.c b/VAX/vax780_syslist.c index 5f0aa965..e86c6900 100644 --- a/VAX/vax780_syslist.c +++ b/VAX/vax780_syslist.c @@ -56,7 +56,6 @@ extern DEVICE vh_dev; extern DEVICE xu_dev, xub_dev; extern DEVICE dmc_dev[]; -extern int32 sim_switches; extern UNIT cpu_unit; extern void WriteB (uint32 pa, int32 val); extern void rom_wr_B (int32 pa, int32 val); diff --git a/VAX/vax780_uba.c b/VAX/vax780_uba.c index bb6105fe..695ede53 100644 --- a/VAX/vax780_uba.c +++ b/VAX/vax780_uba.c @@ -179,11 +179,8 @@ int32 autcon_enb = 1; /* autoconfig enable */ extern int32 trpirq; extern int32 autcon_enb; extern jmp_buf save_env; -extern DEVICE *sim_devices[]; extern UNIT cpu_unit; extern uint32 nexus_req[NEXUS_HLVL]; -extern int32 sim_switches; -extern FILE *sim_log, *sim_deb; t_stat uba_svc (UNIT *uptr); t_stat uba_reset (DEVICE *dptr); diff --git a/VAX/vax7x0_mba.c b/VAX/vax7x0_mba.c index ac10afb5..8140c344 100644 --- a/VAX/vax7x0_mba.c +++ b/VAX/vax7x0_mba.c @@ -253,8 +253,6 @@ uint32 mba_map[MBA_NUM][MBA_NMAPR]; /* map */ extern uint32 nexus_req[NEXUS_HLVL]; extern UNIT cpu_unit; -extern FILE *sim_log; -extern int32 sim_switches; t_stat mba_reset (DEVICE *dptr); t_stat mba_rdreg (int32 *val, int32 pa, int32 mode); diff --git a/VAX/vax860_abus.c b/VAX/vax860_abus.c index 41e534bc..0efa0cb8 100644 --- a/VAX/vax860_abus.c +++ b/VAX/vax860_abus.c @@ -118,10 +118,6 @@ extern int32 tmr_int, tti_int, tto_int, csi_int; extern uint32 sbi_er; extern jmp_buf save_env; extern int32 p1; -extern int32 sim_switches; -extern DEVICE *sim_devices[]; -extern FILE *sim_log; -extern CTAB *sim_vm_cmd; extern int32 fault_PC; /* fault PC */ extern UNIT cpu_unit; diff --git a/VAX/vax860_sbia.c b/VAX/vax860_sbia.c index 50bdb83f..7178ee58 100644 --- a/VAX/vax860_sbia.c +++ b/VAX/vax860_sbia.c @@ -88,9 +88,6 @@ extern int32 trpirq; extern int32 p1; extern int32 mchk_ref; extern int32 crd_err; -extern int32 sim_switches; -extern DEVICE *sim_devices[]; -extern FILE *sim_log; extern int32 fault_PC; /* fault PC */ extern UNIT cpu_unit; diff --git a/VAX/vax860_stddev.c b/VAX/vax860_stddev.c index 24f39c36..34ba60c0 100644 --- a/VAX/vax860_stddev.c +++ b/VAX/vax860_stddev.c @@ -232,7 +232,6 @@ int32 rlcs_mp = 0; int32 rlcs_bcnt = 0; /* byte count */ uint16 *rlcs_buf = NULL; -extern int32 sim_switches; extern jmp_buf save_env; extern UNIT cpu_unit; extern int32 brk_req; diff --git a/VAX/vax860_syslist.c b/VAX/vax860_syslist.c index 49767974..b3ecba50 100644 --- a/VAX/vax860_syslist.c +++ b/VAX/vax860_syslist.c @@ -55,7 +55,6 @@ extern DEVICE dz_dev; extern DEVICE xu_dev, xub_dev; extern DEVICE dmc_dev[]; -extern int32 sim_switches; extern UNIT cpu_unit; extern void WriteB (uint32 pa, int32 val); diff --git a/VAX/vax_cis.c b/VAX/vax_cis.c index 8a5465a5..e15eb23b 100644 --- a/VAX/vax_cis.c +++ b/VAX/vax_cis.c @@ -80,7 +80,6 @@ extern int32 trpirq; extern int32 p1; extern int32 fault_PC; extern int32 ibcnt, ppc; -extern int32 sim_interval; extern jmp_buf save_env; int32 ReadDstr (int32 lnt, int32 addr, DSTR *dec, int32 acc); diff --git a/VAX/vax_cmode.c b/VAX/vax_cmode.c index eca9f824..72ce6302 100644 --- a/VAX/vax_cmode.c +++ b/VAX/vax_cmode.c @@ -59,8 +59,6 @@ extern int32 recqptr; /* recq pointer */ extern int32 pcq[]; extern int32 pcq_p; extern int32 ibcnt, ppc; -extern int32 sim_interval; -extern uint32 sim_brk_summ; extern jmp_buf save_env; int32 GeteaB (int32 spec); diff --git a/VAX/vax_cpu.c b/VAX/vax_cpu.c index f92b5e08..070c9bbd 100644 --- a/VAX/vax_cpu.c +++ b/VAX/vax_cpu.c @@ -305,12 +305,6 @@ const uint32 align[4] = { /* External and forward references */ -extern int32 sim_interval; -extern int32 sim_int_char; -extern int32 sim_switches; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ -extern t_bool sim_idle_enab; - extern t_stat build_dib_tab (void); extern UNIT rom_unit, nvr_unit; extern int32 op_ashq (int32 *opnd, int32 *rh, int32 *flg); @@ -3325,8 +3319,6 @@ t_stat r; InstHistory *h; extern const char *opcode[]; extern t_value *sim_eval; -extern t_stat fprint_sym (FILE *ofile, t_addr addr, t_value *val, - UNIT *uptr, int32 sw); if (hst_lnt == 0) /* enabled? */ return SCPE_NOFNC; @@ -3467,7 +3459,6 @@ return SCPE_OK; t_stat cpu_load_bootcode (const char *filename, const unsigned char *builtin_code, size_t size, t_bool rom, t_addr offset) { -extern FILE *sim_log; char args[CBUFSIZE]; t_stat r; diff --git a/VAX/vax_cpu1.c b/VAX/vax_cpu1.c index e569bee7..f530c4c9 100644 --- a/VAX/vax_cpu1.c +++ b/VAX/vax_cpu1.c @@ -99,9 +99,7 @@ extern int32 fault_PC; extern int32 pcq[PCQ_SIZE]; extern int32 pcq_p; extern int32 in_ie; -extern int32 sim_interval; extern int32 ibcnt, ppc; -extern FILE *sim_deb; extern DEVICE cpu_dev; extern int32 Test (uint32 va, int32 acc, int32 *status); diff --git a/VAX/vax_io.c b/VAX/vax_io.c index 32c78a75..a0445383 100644 --- a/VAX/vax_io.c +++ b/VAX/vax_io.c @@ -117,9 +117,6 @@ extern int32 PSL, SISR, trpirq, mem_err, crd_err, hlt_pin; extern int32 p1; extern int32 ssc_bto; extern jmp_buf save_env; -extern int32 sim_switches; -extern DEVICE *sim_devices[]; -extern FILE *sim_log; t_stat dbl_rd (int32 *data, int32 addr, int32 access); t_stat dbl_wr (int32 data, int32 addr, int32 access); diff --git a/VAX/vax_stddev.c b/VAX/vax_stddev.c index 8ae46489..2b5e4e23 100644 --- a/VAX/vax_stddev.c +++ b/VAX/vax_stddev.c @@ -94,7 +94,6 @@ extern int32 int_req[IPL_HLVL]; extern int32 hlt_pin; -extern int32 sim_switches, sim_is_running; int32 tti_csr = 0; /* control/status */ int32 tto_csr = 0; /* control/status */ diff --git a/VAX/vax_sys.c b/VAX/vax_sys.c index 0cf2f482..19865134 100644 --- a/VAX/vax_sys.c +++ b/VAX/vax_sys.c @@ -57,7 +57,6 @@ extern UNIT cpu_unit; extern REG cpu_reg[]; extern int32 saved_PC; extern int32 PSL; -extern int32 sim_switches; t_stat fprint_sym_m (FILE *of, uint32 addr, t_value *val); int32 fprint_sym_qoimm (FILE *of, t_value *val, int32 vp, int32 lnt); diff --git a/VAX/vax_sysdev.c b/VAX/vax_sysdev.c index 86b278e2..ba094ce0 100644 --- a/VAX/vax_sysdev.c +++ b/VAX/vax_sysdev.c @@ -63,8 +63,6 @@ #define UNIT_V_NODELAY (UNIT_V_UF + 0) /* ROM access equal to RAM access */ #define UNIT_NODELAY (1u << UNIT_V_NODELAY) -extern CTAB *sim_vm_cmd; - t_stat vax_boot (int32 flag, char *ptr); /* Special boot command, overrides regular boot */ @@ -204,7 +202,6 @@ extern UNIT cpu_unit; extern UNIT clk_unit; extern jmp_buf save_env; extern int32 p1; -extern int32 sim_switches; extern int32 MSER; extern int32 tmr_poll; diff --git a/VAX/vax_syslist.c b/VAX/vax_syslist.c index 6554aaf6..fed69143 100644 --- a/VAX/vax_syslist.c +++ b/VAX/vax_syslist.c @@ -53,7 +53,6 @@ extern DEVICE xq_dev, xqb_dev; extern DEVICE vh_dev; extern DEVICE dmc_dev[]; -extern int32 sim_switches; extern void WriteB (uint32 pa, int32 val); extern void rom_wr_B (int32 pa, int32 val); extern UNIT cpu_unit; diff --git a/VAX/vax_watch.c b/VAX/vax_watch.c index ecd89b57..86a954ac 100644 --- a/VAX/vax_watch.c +++ b/VAX/vax_watch.c @@ -55,8 +55,6 @@ #define WTC_MODE_STD 0 #define WTC_MODE_VMS 1 -extern int32 sim_switches; - int32 wtc_csra = 0; int32 wtc_csrb = 0; int32 wtc_csrc = 0; diff --git a/alpha/alpha_cpu.c b/alpha/alpha_cpu.c index 7cacf0ea..667b0f7a 100644 --- a/alpha/alpha_cpu.c +++ b/alpha/alpha_cpu.c @@ -193,11 +193,6 @@ const t_uint64 word_mask[4] = { 0x0000FFFF00000000, 0xFFFF000000000000 }; -extern int32 sim_interval; -extern int32 sim_int_char; -extern FILE *sim_deb; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ - t_uint64 uemul64 (t_uint64 a, t_uint64 b, t_uint64 *hi); t_uint64 byte_zap (t_uint64 op, uint32 mask); t_stat cpu_reset (DEVICE *dptr); diff --git a/alpha/alpha_io.c b/alpha/alpha_io.c index aa021d41..6762cea1 100644 --- a/alpha/alpha_io.c +++ b/alpha/alpha_io.c @@ -31,8 +31,6 @@ t_uint64 *rom = NULL; /* boot ROM */ -extern DEVICE *sim_devices[]; - t_bool rom_rd (t_uint64 pa, t_uint64 *val, uint32 lnt); t_bool rom_wr (t_uint64 pa, t_uint64 val, uint32 lnt); t_stat rom_ex (t_value *vptr, t_addr exta, UNIT *uptr, int32 sw); diff --git a/scp.h b/scp.h index db4c9be6..0d2bec89 100644 --- a/scp.h +++ b/scp.h @@ -157,7 +157,11 @@ extern FILEREF *sim_log_ref; /* log file file referen extern FILE *sim_deb; /* debug file */ extern FILEREF *sim_deb_ref; /* debug file file reference */ extern UNIT *sim_clock_queue; +extern int32 sim_is_running; extern volatile int32 stop_cpu; +extern uint32 sim_brk_types; /* breakpoint info */ +extern uint32 sim_brk_dflt; +extern uint32 sim_brk_summ; /* VM interface */ @@ -173,4 +177,15 @@ extern t_stat fprint_sym (FILE *ofile, t_addr addr, t_value *val, extern t_stat parse_sym (char *cptr, t_addr addr, UNIT *uptr, t_value *val, int32 sw); +/* The per-simulator init routine is a weak global that defaults to NULL + The other per-simulator pointers can be overrriden by the init routine */ + +extern void (*sim_vm_init) (void); +extern char* (*sim_vm_read) (char *ptr, int32 size, FILE *stream); +extern void (*sim_vm_post) (t_bool from_scp); +extern CTAB *sim_vm_cmd; +extern void (*sim_vm_fprint_addr) (FILE *st, DEVICE *dptr, t_addr addr); +extern t_addr (*sim_vm_parse_addr) (DEVICE *dptr, char *cptr, char **tptr); + + #endif diff --git a/sigma/sigma_cpu.c b/sigma/sigma_cpu.c index 22e1a44a..c985f5c3 100644 --- a/sigma/sigma_cpu.c +++ b/sigma/sigma_cpu.c @@ -183,10 +183,6 @@ int32 hst_p = 0; /* history pointer */ int32 hst_lnt = 0; /* history length */ InstHistory *hst = NULL; /* inst history */ -extern int32 sim_int_char; -extern int32 sim_interval; -extern int32 sim_switches; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ extern uint32 int_hiact; /* highest act int */ extern uint32 int_hireq; /* highest int req */ @@ -2792,8 +2788,6 @@ void cpu_fprint_one_inst (FILE *st, uint32 tcp, uint32 ir, uint32 rn, uint32 rn1 uint32 ea, uint32 opnd, uint32 opnd1) { t_value sim_val; -extern t_stat fprint_sym (FILE *ofile, t_addr addr, t_value *val, - UNIT *uptr, int32 sw); if (tcp & (H_INST|H_ITRP)) { /* instr or trap? */ uint32 op = I_GETOP (ir); diff --git a/sigma/sigma_io.c b/sigma/sigma_io.c index f1193069..5748945b 100644 --- a/sigma/sigma_io.c +++ b/sigma/sigma_io.c @@ -93,8 +93,6 @@ extern uint32 cpu_model; extern uint32 cons_alarm, cons_pcf; extern UNIT cpu_unit; extern cpu_var_t cpu_tab[]; -extern DEVICE *sim_devices[]; -extern FILE *sim_log; void io_eval_ioint (void); t_bool io_init_inst (uint32 ad, uint32 rn, uint32 ch, uint32 dev, uint32 r0); diff --git a/sim_console.h b/sim_console.h index df032838..3c105f3d 100644 --- a/sim_console.h +++ b/sim_console.h @@ -92,4 +92,9 @@ t_stat sim_os_poll_kbd (void); int32 sim_tt_inpcvt (int32 c, uint32 mode); int32 sim_tt_outcvt (int32 c, uint32 mode); +extern int32 sim_int_char; /* interrupt character */ +extern int32 sim_brk_char; /* break character */ +extern int32 sim_tt_pchar; /* printable character mask */ +extern int32 sim_del_char; /* delete character */ + #endif diff --git a/sim_sock.c b/sim_sock.c index 1955cd78..0a9253e5 100644 --- a/sim_sock.c +++ b/sim_sock.c @@ -46,8 +46,6 @@ #include "sim_sock.h" #include -extern FILE *sim_log; - #if defined(AF_INET6) && defined(_WIN32) #include #endif diff --git a/sim_timer.c b/sim_timer.c index dbb94217..ae6c015e 100644 --- a/sim_timer.c +++ b/sim_timer.c @@ -596,7 +596,7 @@ static uint32 cyc_ms = 0; uint32 w_ms, w_idle, act_ms; int32 act_cyc; -if ((sim_clock_queue == NULL) || /* clock queue empty? */ +if ((sim_clock_queue == QUEUE_LIST_END) || /* clock queue empty? */ ((sim_clock_queue->flags & UNIT_IDLE) == 0) || /* event not idle-able? */ (rtc_elapsed[tmr] < sim_idle_stable)) { /* timer not stable? */ if (sin_cyc) diff --git a/sim_timer.h b/sim_timer.h index 166a9797..4f78f940 100644 --- a/sim_timer.h +++ b/sim_timer.h @@ -103,4 +103,7 @@ uint32 sim_os_ms_sleep_init (void); t_stat sim_timer_activate_after (UNIT *uptr, int32 usec_delay); double sim_timer_inst_per_sec (void); +extern t_bool sim_idle_enab; /* global flag */ +extern volatile t_bool sim_idle_wait; /* global flag */ + #endif diff --git a/sim_tmxr.c b/sim_tmxr.c index c459f427..5806b054 100644 --- a/sim_tmxr.c +++ b/sim_tmxr.c @@ -298,6 +298,7 @@ #include "sim_defs.h" #include "sim_serial.h" +#include "sim_console.h" #include "sim_sock.h" #include "sim_timer.h" #include "sim_tmxr.h" diff --git a/swtp6800/common/m6800.c b/swtp6800/common/m6800.c index a1e1aae7..5739bc29 100644 --- a/swtp6800/common/m6800.c +++ b/swtp6800/common/m6800.c @@ -119,9 +119,6 @@ int32 int_req = 0; /* Interrupt request */ int32 mem_fault = 0; /* memory fault flag */ -extern int32 sim_int_char; -extern uint32 sim_brk_types, sim_brk_dflt, sim_brk_summ; /* breakpoint info */ - /* function prototypes */ t_stat m6800_reset (DEVICE *dptr); @@ -151,7 +148,6 @@ extern void CPU_BD_put_mbyte(int32 addr, int32 val); extern void CPU_BD_put_mword(int32 addr, int32 val); extern int32 CPU_BD_get_mbyte(int32 addr); extern int32 CPU_BD_get_mword(int32 addr); -extern int32 sim_switches; /* CPU data structures @@ -305,7 +301,6 @@ int32 oplen[256] = { int32 sim_instr (void) { - extern int32 sim_interval; int32 IR, OP, DAR, reason, hi, lo, op1; PC = saved_PC & ADDRMASK; /* load local PC */