1
0
mirror of https://github.com/simh/simh.git synced 2026-01-11 23:52:58 +00:00

PDP11: Add new device to support DL11-C/DL11-D/DL11-E/DLV11-J

These devices could coexist with KL11/DL11-A/DL11-B/DL11-E/DL11-F but sit
at different bus address locations.
This commit is contained in:
Mark Pizzolato 2022-07-26 18:41:48 -07:00
parent b56b0ed98f
commit 6fe6b38228
5 changed files with 530 additions and 271 deletions

View File

@ -485,7 +485,8 @@ typedef struct {
#define DZ_MUXES 4 /* default # of DZ muxes */
#define VH_MUXES 4 /* max # of VH muxes */
#define DLX_LINES 16 /* max # of KL11/DL11's */
#define DLX_LINES 16 /* max # of KL11/DL11-A/DL11-B/DLV11-E/DLV11-F's */
#define DLCJ_LINES 31 /* max # of DL11-C/DL11-D/DL11-E/DLV11-J's */
#define DCX_LINES 16 /* max # of DC11's */
#define DUP_LINES 8 /* max # of DUP11/DPV11's */
#define KMC_UNITS 2 /* max # of KMC11s */
@ -658,6 +659,8 @@ typedef struct pdp_dib DIB;
#define INT_V_LK 17
#define INT_V_TDRX 18
#define INT_V_TDTX 19
#define INT_V_DLCJI 20
#define INT_V_DLCJO 21
#define INT_V_PIR3 0 /* BR3 */
#define INT_V_PIR2 0 /* BR2 */
@ -722,6 +725,8 @@ typedef struct pdp_dib DIB;
#define INT_TDTX (1u << INT_V_TDTX)
#define INT_CH (1u << INT_V_CH)
#define INT_NG (1u << INT_V_NG)
#define INT_DLCJI (1u << INT_V_DLCJI)
#define INT_DLCJO (1u << INT_V_DLCJO)
#define INT_INTERNAL7 (INT_PIR7)
#define INT_INTERNAL6 (INT_PIR6 | INT_CLK)
@ -783,6 +788,8 @@ typedef struct pdp_dib DIB;
#define IPL_LK 4 /* XXX just a guess */
#define IPL_TDRX 4
#define IPL_TDTX 4
#define IPL_DLCJI 4
#define IPL_DLCJO 4
#define IPL_PIR7 7
#define IPL_PIR6 6

File diff suppressed because it is too large Load Diff

View File

@ -763,8 +763,16 @@ AUTO_CON auto_tab[] = {/*c #v am vm fxa fxv */
{016500, 016510, 016520, 016530,
016540, 016550, 016560, 016570,
016600, 016610, 016620, 016630,
016740, 016750, 016760, 016770} }, /* KL11/DL11/DLV11/TU58 - fx CSRs */
{ { NULL }, 1, 2, 0, 8, { 0 } }, /* DLV11J - fx CSRs */
016740, 016750, 016760, 016770} }, /* KL11/DL11-A/DL11-B/DLV11/TU58 - fx CSRs */
{ { "DLCJI" }, 1, 2, 0, 8,
{015610, 015620, 015630, 015640,
015650, 015660, 015670, 015700,
015710, 015720, 015730, 015740,
015750, 015760, 015770, 016000,
016010, 016020, 016030, 016040,
016050, 016060, 016070, 016100,
016110, 016120, 016130, 016140,
016150, 016160, 016170} }, /* DL11-C/DL11-D/DL11-E/DLV11-J - fx CSRs */
{ { NULL }, 1, 2, 8, 8 }, /* DJ11 */
{ { NULL }, 1, 2, 16, 8 }, /* DH11 */
{ { "VT" }, 1, 4, 0, 8,

View File

@ -82,6 +82,8 @@ extern DEVICE clk_dev;
extern DEVICE pclk_dev;
extern DEVICE dli_dev;
extern DEVICE dlo_dev;
extern DEVICE dlcji_dev;
extern DEVICE dlcjo_dev;
extern DEVICE dci_dev;
extern DEVICE dco_dev;
extern DEVICE tdc_dev;
@ -163,6 +165,8 @@ DEVICE *sim_devices[] = {
&lpt_dev,
&dli_dev,
&dlo_dev,
&dlcji_dev,
&dlcjo_dev,
&dci_dev,
&dco_dev,
&dz_dev,

View File

@ -64,7 +64,8 @@ All Simulator updates on Open SIMH will be present in this repository, and any c
- Display current NOAUTOSIZE status in SHOW VERSION output.
- Extend logical name support to include optional unique names for units as well as devices.
- Add extended register sanity checks including duplicate name detection. Fixed simulator devices with duplicate register names.
- Simulators with video devices that may be enabled, no longer disable the screen saver until the video display is presented.
- Simulators with video devices that may be enabled, no longer disable the screen saver until the video display is presented. Optionally enabling or disabling the OS screen saver by an environment variable.
- More readable output of SHOW <dev>|<unit> with variable sized DEVICE and UNIT names.
#### Changes to the PDP-11 and VAX simulators
@ -80,6 +81,7 @@ All Simulator updates on Open SIMH will be present in this repository, and any c
- Properly size RY drives which also don't have DEC144
- Properly name RQ extended units beyond the initial default units.
- HELP CPU shows supported breakpoint types.
- Add device support for DL11-C/DL11-D/DL11-E/DLV11-J in addition to the original KL11/DL11-A/DL11-B/DL11-E/DL11-F support. These new devices have different bus address ranges and can coexist with the original DL devices. The new devices are DLCJI and DLCJO and are managed identically to the original DLI and DLO devices.
### Updates to the Unibus DUP & Qbus DPV device by Trevor Warwick