mirror of
https://github.com/wfjm/w11.git
synced 2026-03-09 20:48:30 +00:00
980 B
980 B
Known differences between SimH, 11/70, and w11a
SimH: State of N and Z and registers after a DIV abort with V=1
The state of the N and Z condition codes is specified as unspecified for
the DIV instruction when V=1 is set after a zero divide or an overflow
condition.
See 1979 processor handbook on page 75.
The 11/70 leaves the N and Z condition codes and the result registers in a state depending on the abort point in the microcode state flow. That results in sometimes surprising settings.
SimH returns Z=0 and N based on the sign of the full 32-bit result, as can be easily determined by xor'ing of the sign bits of dividend and divisor.
xxdp ekbbf0 test 15 tests the exact 11/70 behavior to verify the
divide logic and is skipped.
w11 also returns Z=0 and N based on the sign of the full 32-bit result, this is documented as w11 known difference.