I got curious and the input routines are usually pretty simple :-).
I think what's going on is that SIMH has arranged that the "printer" is "out of paper", since there's no output file attached.
Since the line printer isn't ready (and printer interrupts will be disabled anyway after the first one), that doesn't generate an interrupt request. However, the way that interrupt service routine is written, only a single device is serviced per interrupt. So, when it notices the "error" condition on the printer, it tries to clear it and return. That leaves the keyboard interrupt request still unserviced, so the interrupt is taken again,. Since nothing has actually changed, the process repeats endlessly.
My patch removes the "jmp iret" after the printer code, replacing it with a NOP. Then interrupt service falls through onto the terminal input check, and the input interrupts can get serviced.
Vince