Can you trap a Bus Error on a 4D/25S

Frank Chlebana chlebana at physics.utoronto.ca
Thu Oct 11 05:39:16 AEST 1990


Is there any way to trap a bus error on a 4D/25S?

We are using a 4D/25S to read data from a memory board located in a VME 
crate. The VME crate is accessed via a pair of cards allowing communication
between two VME crates. One card sits in the VME slot of the sgi while it's
companion sits in the external crate. 

If the card sitting in the sgi generates a /BERR (this could occur if I cut
the cable connecting the sgi to the VME crate) the sgi machine PANICs.

The value of the cause register is 0x3000101c 
i.e. CE0 CE1 IP5 ExcCode='Bus error Execption'

Prior to jumping to the copy routine the C0_SR was saved and interrupts 
have been disabled via

mfc0 t0,C0_SR
mtc0 zero,C0_SR
 
The status register is restored after returning from the copy routine.

Disabling interrupts does not seem to protect against a DBE. Is there a way
to trap this exception, thus preventing the sgi machine from crashing?

Or can I reload the General Exception vector to point to my own exception
handler prior to the copy?

Please reply to chlebana at oldkat.physics.utoronto.ca



More information about the Comp.sys.sgi mailing list