chlebana@physics.utoronto.ca (Frank Chlebana) (10/11/90)
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@oldkat.physics.utoronto.ca