Re: A89: interrupts
[Prev][Next][Index][Thread]
Re: A89: interrupts
You can't disable auto int 2 without disabling int 1 with just setting the mask
no.. but you can change only the int 2 vector without changeing the int 1
vector.. (removeing the move.l #int,($64) line...)
btw.. auto int 7 is not only generated when writing to $64.. infact it is
generated when writing to any address below $120
(all this can be read in the fargo-documentation btw...)
//Olle
Dux Gregis wrote:
> ok, so you can't disable auto int 2 without also disabling auto int 1, then?
>
> I'll try doing this:
>
> move.w #$700,d0 ;temporary interrupt mask
> trap #1 ;call supervisor program to enable
> it
> move.l $64,(old_int) ;save old interrupt 1 address
> bclr.b #2,($600001) ;clear bit that generates auto 7 interrupt when
> writing to ($64)
> move.l #int,($64) ;new interrupt 1 address
> move.l #int2,($68) ;new interrupt 2 address
> bset.b #2,($600001) ;then set it again
> trap #1 ;replace temporary mask with old
> mask
>
> int2: ;dummy interrupt handler
> rts
References: