i assumed the list of opcodes and short instruction descriptions was correct, and that indeed, being a manly lot, the floating-point implementers who wrote that section loftily regarded 32-bits as being the bare minimum for a `word', and included decent 64-bits within the term. (hence the reference to `short-integer' for the 16-bit runts.) still, in this case i think the 8.out 708: suicide: sys: fp: stack underflow fppc=0x1118 status=0x80a1 pc=0x0000118f is saying stack underflow only because /sys/src/9/pc/main.c isn't reading the status correctly, unless i'm getting the bits wrong myself compared to the handbook. i think it's `inexact result (precision error)'. 0x40 is set for stack fault; it's checking for (status & 0x30), although perhaps (status & 0x30) == 0 was intended, to avoid masking other faults? the exception flags are sticky. that would be good because i couldn't see the incorrect stacking in the 8c code.