I'm sure I've posted this before, but I hit it again and thought I'd
ask. It's pretty
obscure.
I've been running DEC diagnostics against simh, in 11/34 mode. I
could swear FKABD0
is expecting behavior which simh is not performing.
Specifically, (and this is my question), it looks like on an 11/34 if
you take an
exception during an auto increment or auto decrement, the register is
not incremented
or decremented.
Because simh (and, ahem, my verilog code), don't seem to do the right
thing test 103
in FKABD0 fails.
I have an 11/34, so I guess I could confirm this, but I thought I'd
ask.
Has anyone else seen this? I could swear this is not true of an
11/44. I wonder
about the 11/70 and J11 cpu's.
-brad
> ... if you take an exception ...
What do you mean by "take an exception"?
> ... during an auto increment or auto decrement, the register is not
> incremented or decremented.
I've never paid any attention. I don't think I have ever written any
code that needs to survive an "exception".
> I wonder about the 11/70 and J11 cpu's.
I could test on an 11/84, and possibly a /73.
--
Rob Brown b r o w n a t g m c l d o t c o m
G. Michaels Consulting Ltd. (780)438-9343 (voice)
Edmonton (780)437-3367 (FAX)
http://gmcl.com/
Hya Brad
This behaviour is confirmed by the manual on the J11, as I found on
Bitsavers: http://www.mirrorservice.org/sites/www.bitsavers.org/pdf/dec/pdp11/1173/KDJ11-A_UsersManual.pdf
If you look into the appendix B ("Programming differences"), page B-8,
item 29 describes exactly what you see happening, and the conditions
in which a 'real' 34 would do this. And, apparently, the 44 as well.
-- Sytse