diff --git a/PDP10/kx10_cpu.c b/PDP10/kx10_cpu.c index c853ff8..1d36e01 100644 --- a/PDP10/kx10_cpu.c +++ b/PDP10/kx10_cpu.c @@ -1354,7 +1354,6 @@ t_stat dev_apr(uint32 dev, uint64 *data) { * MTR device for KL10. */ t_stat dev_mtr(uint32 dev, uint64 *data) { - uint64 res = 0; switch(dev & 03) { case CONI: @@ -7188,9 +7187,6 @@ fnormx: SC--; } else { AR = BR; -#if KS - FLAGS |= NODIV|TRP1; -#endif break; } } @@ -7249,10 +7245,8 @@ fnormx: SC--; } AR &= FMASK; -#if KL | KS if ((SC & 01600) != 01600) fxu_hold_set = 1; -#endif if (AR == (SMASK|EXPO)) { AR = (AR >> 1) | (AR & SMASK); SC ++; @@ -11781,7 +11775,7 @@ fetch_opr: MB = BR; if (Mem_write(pi_cycle, 0)) goto last; - MB = AR; + MB = AR; break; } break; @@ -13874,6 +13868,7 @@ t_bool build_dev_tab (void) if ((nia_dev.flags & DEV_DIS) == 0 && dptr != &nia_dev && rh20 == (((DIB *)nia_dev.ctxt)->dev_num & 0777)) rh20 += 4; + else /* If NIA20, then assign it to it's requested address */ if ((nia_dev.flags & DEV_DIS) == 0 && dptr == &nia_dev) d = dibp->dev_num & 0777; diff --git a/PDP10/kx10_defs.h b/PDP10/kx10_defs.h index 0414303..4b37d72 100644 --- a/PDP10/kx10_defs.h +++ b/PDP10/kx10_defs.h @@ -213,11 +213,11 @@ extern DEBTAB crd_debug[]; #define IOCTL 00000017000000LL #endif -#define ADR_IFETCH 020 -#define ADR_DFETCH 010 -#define ADR_WRITE 004 -#define ADR_STOP 002 -#define ADR_BREAK 001 +#define ADR_IFETCH 020 +#define ADR_DFETCH 010 +#define ADR_WRITE 004 +#define ADR_STOP 002 +#define ADR_BREAK 001 /* IRQ Flags in APR */ #if KL @@ -681,7 +681,7 @@ struct pdp_dib { t_addr (*irq)(uint32 dev, t_addr addr); struct rh_if *rh; }; - + #define RH10_DEV 01000 #define RH20_DEV 02000 struct rh_dev { @@ -733,6 +733,7 @@ extern void ka10_lights_set_aux (int); extern void ka10_lights_clear_aux (int); #endif + /* I/O system parameters */ #if !(PDP6 | KS) #define NUM_DEVS_LP 1 @@ -774,7 +775,7 @@ extern void ka10_lights_clear_aux (int); #define NUM_DEVS_CH11 KS_ITS #endif #endif -#if KA | KI +#if KA | KI #define NUM_DEVS_RC 1 #define NUM_DEVS_DK 1 #define NUM_DEVS_DDC 1 diff --git a/PDP10/kx10_sys.c b/PDP10/kx10_sys.c index ebce02d..fc8106c 100644 --- a/PDP10/kx10_sys.c +++ b/PDP10/kx10_sys.c @@ -734,6 +734,8 @@ t_stat load_exe (FILE *fileref, int ftype) } if ((sim_switches & SWMASK ('M')) == 0) { /* -m? */ ma = mpage << PAG_V_PN; /* mem addr */ + } else { + ma = mpage; } for (k = 0; k < PAG_SIZE; k++, ma++) { /* copy buf to mem */ if (ma > MEMSIZE)