are the flags reset to their appropriate values in device_reset? if anything is only set in device_init and not _reset, and/or is not reset properly by whatever the ctrl-setup reset function does (does it somehow activate one of the reset lines on the board itself thru an i/o port, sort of like how the RESET opcode on the 68000 causes the reset pin to output 5v?)
LN