1
0
mirror of https://github.com/simh/simh.git synced 2026-02-22 23:29:15 +00:00

Refactored (and renamed) pdp11_kdp to leverage the pdp11_dup dup implementation.

This commit is contained in:
Mark Pizzolato
2013-06-03 10:03:46 -07:00
parent 02fcc2ced6
commit 531cdd42f7
14 changed files with 1140 additions and 1524 deletions

View File

@@ -660,8 +660,6 @@ typedef struct pdp_dib DIB;
#define IOLN_UBMNT3 001
#define IOBA_XU (IO_UBA3 + 0774510) /* DEUNA/DELUA */
#define IOLN_XU 010
#define IOBA_DMR (IO_UBA3 + 0764000) /* DMR11 */
#define IOLN_DMR 010
#define IOBA_CR (IO_UBA3 + 0777160) /* CD/CR/CM */
#define IOLN_CR 010
#define IOBA_RY (IO_UBA3 + 0777170) /* RX211 */
@@ -700,13 +698,8 @@ typedef struct pdp_dib DIB;
#define INT_V_RP 6 /* RH11/RP,RM drives */
#define INT_V_TU 7 /* RH11/TM03/TU45 */
#define INT_V_KMCA 8 /* KMC11 */
#define INT_V_KMCA 8 /* KMC11 */
#define INT_V_KMCB 9
#define INT_V_DMRA 10 /* DMR11 */
#define INT_V_DMRB 11
#define INT_V_DMCRX 13
#define INT_V_DMCTX 14
#define INT_V_XU 15 /* DEUNA/DELUA */
#define INT_V_DZRX 16 /* DZ11 */
#define INT_V_DZTX 17
#define INT_V_RY 18 /* RX211 */
@@ -714,7 +707,6 @@ typedef struct pdp_dib DIB;
#define INT_V_PTP 25
#define INT_V_LP20 26 /* LPT20 */
#define INT_V_CR 27 /* CD20 (CD11) */
#define INT_V_CR 27 /* CD20 (CD11) */
#define INT_V_DUPRX 28 /* DUP11 */
#define INT_V_DUPTX 29
@@ -722,10 +714,6 @@ typedef struct pdp_dib DIB;
#define INT_TU (1u << INT_V_TU)
#define INT_KMCA (1u << INT_V_KMCA)
#define INT_KMCB (1u << INT_V_KMCB)
#define INT_DMRA (1u << INT_V_DMRA)
#define INT_DMRB (1u << INT_V_DMRB)
#define INT_DMCRX (1u << INT_V_DMCRX)
#define INT_DMCTX (1u << INT_V_DMCTX)
#define INT_XU (1u << INT_V_XU)
#define INT_DZRX (1u << INT_V_DZRX)
#define INT_DZTX (1u << INT_V_DZTX)
@@ -741,10 +729,6 @@ typedef struct pdp_dib DIB;
#define IPL_TU 6
#define IPL_KMCA 5
#define IPL_KMCB 5
#define IPL_DMRA 5
#define IPL_DMRB 5
#define IPL_DMCRX 5
#define IPL_DMCTX 5
#define IPL_XU 5
#define IPL_DZRX 5
#define IPL_DZTX 5
@@ -772,12 +756,6 @@ typedef struct pdp_dib DIB;
#define VEC_CR 0230
#define VEC_RP 0254
#define VEC_RY 0264
#define VEC_DZRX 0340
#define VEC_DZTX 0344
#define VEC_KMCA 0540
#define VEC_KMCB 0544
#define VEC_DMRA 0610
#define VEC_DMRB 0614
#define VEC_LP20 0754
#define VEC_AUTO 0 /* Set by Auto Configure */

View File

@@ -856,7 +856,7 @@ DIB *dibp;
for (i = 0; i < 32; i++) { /* clear intr tables */
int_vec[i] = 0;
int_ack[i] = NULL;
}
}
for (i = j = 0; (dptr = sim_devices[i]) != NULL; i++) { /* loop thru dev */
dibp = (DIB *) dptr->ctxt; /* get DIB */
if (dibp && !(dptr->flags & DEV_DIS)) { /* defined, enabled? */
@@ -961,12 +961,10 @@ AUTO_CON auto_tab[] = {/*c #v am vm fxa fxv */
{0017550}, {0070} }, /* PC11 reader - fx CSR, fx VEC */
{ { "PTP" }, 1, 1, 0, 0,
{0017554}, {0074} }, /* PC11 punch - fx CSR, fx VEC */
{ { "DUP" }, 1, 2, 0, 0,
{0000300}, {0300} }, /* DUP11 bit sync - fx CSR, fx VEC */
{ { "KMC" }, 1, 2, 0, 0,
{0000540}, {0540} }, /* KMC11 - fx CSR, fx VEC */
{ { "DUP0" }, 1, 2, 0, 0,
{0000300}, {0300} }, /* DUP11 sync - fx CSR, fx VEC */
{ { "DUP1" }, 1, 2, 0, 0,
{0000310}, {0310} }, /* DUP11 sync - fx CSR, fx VEC */
{0000540}, {0540} }, /* KMC11 comm - fx CSR, fx VEC */
#else
{ { "QBA" }, 1, 0, 0, 0,
{017500} }, /* doorbell - fx CSR, no VEC */

View File

@@ -55,8 +55,8 @@ extern DEVICE dz_dev;
extern DEVICE ry_dev;
extern DEVICE cr_dev;
extern DEVICE lp20_dev;
extern DEVICE kmc_dev;
extern DEVICE dup_dev;
extern DEVICE kmc_dev;
extern UNIT cpu_unit;
extern REG cpu_reg[];
extern d10 *M;
@@ -92,8 +92,8 @@ DEVICE *sim_devices[] = {
&rp_dev,
&tu_dev,
&dz_dev,
&kmc_dev,
&dup_dev,
&kmc_dev,
NULL
};