1
0
mirror of https://github.com/wfjm/w11.git synced 2026-02-13 19:54:59 +00:00
Files
wfjm.w11/doc/simh_diff_service-order.md
wfjm c9d447f2be tbit trap overhaul - part 2
- rtl/w11a
  - pdp11_sequencer.vhd: tbit logic overhaul 2, now fully 11/70 compatible
- tools/tcode
  - cpu_details.mac: add A4.4 part 0,8,9,10
  - cpu_mmu.mac: use m*pd
2022-12-26 12:26:51 +01:00

27 lines
1.1 KiB
Markdown

## Known differences between SimH, 11/70, and w11a
### SimH: trap and interrupt service order has J11 behavior
The 11/70 (and the 11/45) differ from all other PDP-11 models in the order in
which interrupts and traps are honored after the successful completion of an
instruction. On the 11/70, interrupts have precedence over T-bit trace traps,
on all other models interrupts have the lowest priority.
As consequence, `RTI` _can_ be used on an 11/70 to exit from an interrupt driver,
and exactly one trace trap will happen when an interrupt is honored after
a traced instruction. On all other models, `RTT` _can_ be used to exit from
an interrupt driver to prevent a double trace trap, one before the interrupt
and one after the hander exit.
SimH uses the J11 service order with interrupts having the lowest priority for
all PDP-11 models.
The w11 implements the 11/70 service order.
This is verified in a [tcode](../tools/tcode/README.md), the test is
modified when executed on SimH
(see [cpu_details.mac](../tools/tcode/cpu_details.mac) test A4.4 part 3).
See also [traced `WAIT`](simh_diff_traced-wait.md).
Tested with SimH V3.12-3.