; ; interrupt service routine called by timer interrupt service routine ; AND routines to verify interrupt occurred. ; global DONADA,Wait,Clear,Test ; stop1 equ 0 ;flag saying interrupt routine called ; DONADA lea flag,A0 ;show Wait interrupt occurred bset #stop1,(A0) rts ; Wait lea flag,A0 ;wait until flag set wait10 btst #stop1,(A0) beq.s wait10 bclr #stop1,(A0) ;always clear when done rts ; Clear lea flag,A0 ;clear interrupt occurred flag bclr #stop1,(A0) rts ; ; test if stop flag set or clear ; function Test : boolean; ; Test movea.l (SP)+,A1 ;get return address lea flag,A0 btst #stop1,(A0) beq.s test10 move.w #$01,(SP) ;boolean is true if flag is set bra.s test20 test10 move.w #$00,(SP) ;boolean is false if flag clear test20 jmp (A1) flag data 0 ;flag byte ; end