Мне не удалось найти никакой информации о том, сохраняет ли MC68000 свой регистр состояния / CCR во время внешних прерываний. Я предполагаю, что это было бы проблемой, если бы ЦП прерывал непосредственно перед условным переходом, и прерывание модифицировало бы CCR. Прямо сейчас мой код прерывания выглядит так:
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
Мне интересно, требуются ли указанные строки, которые выталкивают/извлекают SR из стека, или ЦП автоматически сохраняет и восстанавливает SR во время прерываний.