From 1921b58996e44d6a5f5ca3b8d14620d6db653f8a Mon Sep 17 00:00:00 2001 From: Richard Cornwell Date: Sat, 21 Jan 2023 23:07:58 -0500 Subject: [PATCH] KA10: Fixed TM10A to request first word at issue of write instruction. --- PDP10/kx10_mt.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/PDP10/kx10_mt.c b/PDP10/kx10_mt.c index 4bc34e87..bff94e05 100644 --- a/PDP10/kx10_mt.c +++ b/PDP10/kx10_mt.c @@ -302,10 +302,16 @@ t_stat mt_devio(uint32 dev, uint64 *data) { break; case WRITE: + /* Check if write locked? */ if ((uptr->flags & MTUF_WLK) != 0) { mt_status |= IDLE_UNIT|ILL_OPR|EOF_FLAG; break; } + /* Request first word */ + if ((dptr->flags & MTDF_TYPEB) == 0) { + mt_status |= DATA_REQUEST; + set_interrupt_mpx(MT_DEVNUM, mt_pia, mt_mpx_lvl); + } /* Fall through */ case WTM: @@ -761,10 +767,6 @@ t_stat mt_srv(UNIT * uptr) uptr->CPOS = 0; uptr->BPOS = 0; mt_status |= (uint64)(1) << 18; - if ((dptr->flags & MTDF_TYPEB) == 0) { - mt_status |= DATA_REQUEST; - set_interrupt_mpx(MT_DEVNUM, mt_pia, mt_mpx_lvl); - } break; } /* Force error if we exceed buffer size */