KA10: Fixed TM10A to request first word at issue of write instruction.

This commit is contained in:
Richard Cornwell 2023-01-21 23:07:58 -05:00
parent b487b3a7c2
commit 1921b58996

View file

@ -302,10 +302,16 @@ t_stat mt_devio(uint32 dev, uint64 *data) {
break; break;
case WRITE: case WRITE:
/* Check if write locked? */
if ((uptr->flags & MTUF_WLK) != 0) { if ((uptr->flags & MTUF_WLK) != 0) {
mt_status |= IDLE_UNIT|ILL_OPR|EOF_FLAG; mt_status |= IDLE_UNIT|ILL_OPR|EOF_FLAG;
break; 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 */ /* Fall through */
case WTM: case WTM:
@ -761,10 +767,6 @@ t_stat mt_srv(UNIT * uptr)
uptr->CPOS = 0; uptr->CPOS = 0;
uptr->BPOS = 0; uptr->BPOS = 0;
mt_status |= (uint64)(1) << 18; 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; break;
} }
/* Force error if we exceed buffer size */ /* Force error if we exceed buffer size */