[Top] [All Lists]

Interrupts on the R3000 ...

Subject: Interrupts on the R3000 ...
From: Michael Engel <>
Date: Mon, 18 Nov 1996 01:21:26 +0100 (MET)

one more question from me ... 

Simply put, what is the correct way to return from an interrupt (exception)
on the R3000 ? If I understand it right, I have to do the following:

- execute the rfe instruction
- get the address of the interrupted instruction from CP0_EPC
- jump to that address

Obviously, I am missing something here. I managed to get a timer interrupt 
'ticking' on the DS5000/200. In the interrupt routine, I simply print out a
message and (try to) return. The interrupt rate is currently 2 Hz ...

Now, twice a second I get that message on the screen, but the interrupted 
kernel doesn't continue to run. After a while, I get some funny lines on the
screen (I'm running with a CX video board). This should tell me that the stack 
pointer has gone crazy or similiar, I think. Perhaps I also didn't 
initialise CP0 correctly ...

It would be nice if someone could supply me with a short working interrupt 
routine that simply returns whenever it's triggered.

        Michael Engel   (

<Prev in Thread] Current Thread [Next in Thread>