Я не смог найти информацию о том, сохраняет ли MC68000 свой регистр состояния/CCR во время внешних прерываний. Я предполагаю, что проблема была бы в том, что CPU должен был прерываться непосредственно перед условной ветвью, а прерывание изменяет CCR. Сейчас мой прерывания код выглядит следующим образом:68k Сборка: хранит ли CPU регистр состояния при прерывании?
ORG $110000 ; Location of IPL6 vector
IPL6 MOVE.W SR, -(SP) ; Is this line necessary?
MOVE.L D0, -(SP)
; Perform interrupt tasks here
MOVE.L (SP)+, D0
MOVE.W (SP)+, SR ; Is this line necessary?
RTE ; Return
Я интересно, если указанные линии, которые толкают/поп СР из стека не требуется, или если процессор автоматически сохраняет и восстанавливает СР во время прерывания.
Достаточно честный, я немного изменил заголовок. – cjgriscom