mirror of
https://github.com/simh/simh.git
synced 2026-04-29 05:05:14 +00:00
Notes For V3.7
1. New Features 1.1 3.7-0 1.1.1 SCP - Added SET THROTTLE and SET NOTHROTTLE commands to regulate simulator execution rate and host resource utilization. - Added idle support (based on work by Mark Pizzolato). - Added -e to control error processing in nested DO commands (from Dave Bryan). 1.1.2 HP2100 - Added Double Integer instructions, 1000-F CPU, and Floating Point Processor (from Dave Bryan). - Added 2114 and 2115 CPUs, 12607B and 12578A DMA controllers, and 21xx binary loader protection (from Dave Bryan). 1.1.3 Interdata - Added SET IDLE and SET NOIDLE commands to idle the simulator in wait state. 1.1.4 PDP-11 - Added SET IDLE and SET NOIDLE commands to idle the simulator in wait state (WAIT instruction executed). - Added TA11/TU60 cassette support. 1.1.5 PDP-8 - Added SET IDLE and SET NOIDLE commands to idle the simulator in wait state (keyboard poll loop or jump-to-self). - Added TA8E/TU60 cassette support. 1.1.6 PDP-1 - Added support for 16-channel sequence break system. - Added support for PDP-1D extended features and timesharing clock. - Added support for Type 630 data communications subsystem. 1.1.6 PDP-4/7/9/15 - Added SET IDLE and SET NOIDLE commands to idle the simulator in wait state (keyboard poll loop or jump-to-self). 1.1.7 VAX, VAX780 - Added SET IDLE and SET NOIDLE commands to idle the simulator in wait state (more than 200 cycles at IPL's 0, 1, or 3 in kernel mode). 1.1.8 PDP-10 - Added SET IDLE and SET NOIDLE commands to idle the simulator in wait state (operating system dependent). - Added CD20 (CD11) support. 2. Bugs Fixed Please see the revision history on http://simh.trailing-edge.com or in the source module sim_rev.h.
This commit is contained in:
committed by
Mark Pizzolato
parent
53d02f7fa7
commit
6149cc7e06
@@ -1,6 +1,6 @@
|
||||
/* pdp10_cpu.c: PDP-10 CPU simulator
|
||||
|
||||
Copyright (c) 1993-2005, Robert M. Supnik
|
||||
Copyright (c) 1993-2007, Robert M. Supnik
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the "Software"),
|
||||
@@ -25,6 +25,7 @@
|
||||
|
||||
cpu KS10 central processor
|
||||
|
||||
28-Apr-07 RMS Removed clock initialization
|
||||
22-Sep-05 RMS Fixed declarations (from Sterling Garwood)
|
||||
Fixed warning in MOVNI
|
||||
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||
@@ -198,7 +199,6 @@ 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 UNIT tim_unit;
|
||||
|
||||
/* Forward and external declarations */
|
||||
|
||||
@@ -633,7 +633,6 @@ pager_tc = FALSE; /* not in trap cycle */
|
||||
pager_pi = FALSE; /* not in pi sequence */
|
||||
rlog = 0; /* not in extend */
|
||||
pi_eval (); /* eval pi system */
|
||||
sim_rtc_init (tim_unit.wait); /* init calibration */
|
||||
if (!Q_ITS) its_1pr = 0; /* ~ITS, clr 1-proc */
|
||||
t20_idlelock = 0; /* clr T20 idle lock */
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* pdp10_lp20.c: PDP-10 LP20 line printer simulator
|
||||
|
||||
Copyright (c) 1993-2005, Robert M Supnik
|
||||
Copyright (c) 1993-2007, Robert M Supnik
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the "Software"),
|
||||
@@ -25,6 +25,7 @@
|
||||
|
||||
lp20 line printer
|
||||
|
||||
19-Jan-07 RMS Added UNIT_TEXT flag
|
||||
04-Sep-05 RMS Fixed missing return (found by Peter Schorn)
|
||||
07-Jul-05 RMS Removed extraneous externs
|
||||
18-Mar-05 RMS Added attached test to detach routine
|
||||
@@ -185,7 +186,7 @@ DIB lp20_dib = {
|
||||
};
|
||||
|
||||
UNIT lp20_unit = {
|
||||
UDATA (&lp20_svc, UNIT_SEQ+UNIT_ATTABLE, 0), SERIAL_OUT_WAIT
|
||||
UDATA (&lp20_svc, UNIT_SEQ+UNIT_ATTABLE+UNIT_TEXT, 0), SERIAL_OUT_WAIT
|
||||
};
|
||||
|
||||
REG lp20_reg[] = {
|
||||
@@ -527,8 +528,9 @@ else {
|
||||
if (lpcolc >= LP_WIDTH) /* line full? */
|
||||
r = lp20_adv (1, TRUE); /* adv carriage */
|
||||
}
|
||||
for (i = 0; i < rpt; i++) putc (lppdat, lp20_unit.fileref);
|
||||
lp20_unit.pos = lp20_unit.pos + rpt;
|
||||
for (i = 0; i < rpt; i++)
|
||||
fputc (lppdat, lp20_unit.fileref);
|
||||
lp20_unit.pos = ftell (lp20_unit.fileref);
|
||||
lpcolc = lpcolc + rpt;
|
||||
return r;
|
||||
}
|
||||
@@ -539,8 +541,9 @@ int32 i;
|
||||
|
||||
if (cnt == 0) return TRUE;
|
||||
lpcolc = 0; /* reset col cntr */
|
||||
for (i = 0; i < cnt; i++) putc ('\n', lp20_unit.fileref);
|
||||
lp20_unit.pos = lp20_unit.pos + cnt; /* print 'n' newlines */
|
||||
for (i = 0; i < cnt; i++)
|
||||
fputc ('\n', lp20_unit.fileref);
|
||||
lp20_unit.pos = ftell (lp20_unit.fileref); /* print 'n' newlines */
|
||||
if (dvuadv) dvptr = (dvptr + cnt) % dvlnt; /* update DAVFU ptr */
|
||||
if (davfu[dvptr] & (1 << DV_TOF)) { /* at top of form? */
|
||||
if (lppagc = (lppagc - 1) & PAGC_MASK) { /* decr page cntr */
|
||||
@@ -566,8 +569,8 @@ for (i = 0; i < dvlnt; i++) { /* search DAVFU */
|
||||
if (davfu[dvptr] & (1 << cnt)) { /* channel stop set? */
|
||||
if (cnt) return lp20_adv (i + 1, FALSE); /* ~TOF, adv */
|
||||
if (lpcolc) lp20_adv (1, FALSE); /* TOF, need newline? */
|
||||
putc ('\f', lp20_unit.fileref); /* print form feed */
|
||||
lp20_unit.pos = lp20_unit.pos + 1;
|
||||
fputc ('\f', lp20_unit.fileref); /* print form feed */
|
||||
lp20_unit.pos = ftell (lp20_unit.fileref);
|
||||
if (lppagc = (lppagc - 1) & PAGC_MASK) { /* decr page cntr */
|
||||
lpcsa = lpcsa & ~CSA_PZRO; /* update status */
|
||||
return TRUE;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* pdp10_tu.c - PDP-10 RH11/TM03/TU45 magnetic tape simulator
|
||||
|
||||
Copyright (c) 1993-2006, Robert M Supnik
|
||||
Copyright (c) 1993-2007, Robert M Supnik
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the "Software"),
|
||||
@@ -25,6 +25,7 @@
|
||||
|
||||
tu RH11/TM03/TU45 magtape
|
||||
|
||||
29-Apr-07 RMS Fixed bug in setting FCE on TMK (found by Naoki Hamada)
|
||||
16-Feb-06 RMS Added tape capacity checking
|
||||
16-Aug-05 RMS Fixed C++ declaration and cast problems
|
||||
07-Jul-05 RMS Removed extraneous externs
|
||||
@@ -871,6 +872,7 @@ switch (fnc) { /* case on function */
|
||||
tufs = tufs | FS_ID; /* PE BOT? ID burst */
|
||||
TXFR (ba, wc, 0); /* validate transfer */
|
||||
if (st = sim_tape_rdrecf (uptr, xbuf, &tbc, MT_MAXFR)) { /* read fwd */
|
||||
if (st == MTSE_TMK) set_tuer (ER_FCE); /* TMK also sets FCE */
|
||||
r = tu_map_err (uptr, st, 1); /* map error */
|
||||
break; /* done */
|
||||
}
|
||||
@@ -924,6 +926,7 @@ switch (fnc) { /* case on function */
|
||||
tufc = 0; /* clear frame count */
|
||||
TXFR (ba, wc, 1); /* validate xfer rev */
|
||||
if (st = sim_tape_rdrecr (uptr, xbuf + 4, &tbc, MT_MAXFR)) { /* read rev */
|
||||
if (st == MTSE_TMK) set_tuer (ER_FCE); /* TMK also sets FCE */
|
||||
r = tu_map_err (uptr, st, 1); /* map error */
|
||||
break; /* done */
|
||||
}
|
||||
@@ -1032,7 +1035,6 @@ switch (st) {
|
||||
return SCPE_IERR;
|
||||
|
||||
case MTSE_TMK: /* end of file */
|
||||
set_tuer (ER_FCE); /* also sets FCE */
|
||||
tufs = tufs | FS_TMK;
|
||||
break;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user