diff --git a/PDP10/pdp10_ksio.c b/PDP10/pdp10_ksio.c index c8d14de4..4d7478ec 100644 --- a/PDP10/pdp10_ksio.c +++ b/PDP10/pdp10_ksio.c @@ -512,7 +512,7 @@ d10 val; ba = ba & ~01; /* align start */ lim = ba + (bc & ~01); -for ( ; ba < lim; ba++) { /* by bytes */ +for ( ; ba < lim; ba += 2) { /* by bytes */ pa10 = Map_Addr10 (ba, 1); /* map addr */ if ((pa10 < 0) || MEM_ADDR_NXM (pa10)) { /* inv map or NXM? */ ubcs[1] = ubcs[1] | UBCS_TMO; /* UBA times out */ @@ -520,8 +520,8 @@ for ( ; ba < lim; ba++) { /* by bytes */ } val = *buf++; /* get data */ if (ba & 2) - M[pa10] = (M[pa10] & INT64_C(0777777600000)) | val; - else M[pa10] = (M[pa10] & INT64_C(0600000777777)) | (val << 18); + M[pa10] = (M[pa10] & INT64_C(0777777000000)) | val; + else M[pa10] = (M[pa10] & INT64_C(0000000777777)) | (val << 18); } return 0; } @@ -961,8 +961,6 @@ 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, - {0000100}, {0300} }, /* DUP11 sync lines - fx CSR, fx VEC */ #else { { "QBA" }, 1, 0, 0, 0, {017500} }, /* doorbell - fx CSR, no VEC */