{File name LispTrapB2.mc -- for extra banks
Created by don -- 24-Jan-84 10:48:52
Last edited: XXX
}
SetTask[0];
LispTrapsB2:
{ErrTrap:}
Rx ← RRot1 ErrnIBnStkp, ClrIntErr, CANCELBR[$, 0F], c1, at[0];
{ErrLoop:}
Xbus ← Rx LRot0, XwdDisp, c2;
Xbus ← MStatus, XLDisp, DISP2[CSParErr], c3;
{CSParErr:}
Bank ← SinkBank, CANCELBR[$, 3], c1, at[0, 4, CSParErr];
Q ← 0+1, KCtl ← 0, GOTO[CrossToSinkB2], c2;{MP9001}
{LMemErr:}
Bank ← SinkBank, DISP2[LispAddrErr, 1], c1, at[1, 4, CSParErr];
{VirtAddrErr:}
Q ← 4, GOTO[CrossToSinkB2], c2, at[1, 4, LispAddrErr];{MP9004}
{EmuMemErr:}
Q ← 5, GOTO[CrossToSinkB2], c2, at[3, 4, LispAddrErr];{MP9005}
{StackErr:}
Bank ← SinkBank, CANCELBR[$, 3], c1, at[2, 4, CSParErr];
Q ← 2, GOTO[CrossToSinkB2], c2;{MP9002}
{IBEmptyErr:}
Bank ← SinkBank, CANCELBR[$, 3], c1, at[3, 4, CSParErr];
Q ← 3, GOTO[CrossToSinkB2], c2;{MP9003}
CrossToSinkB2:
CROSS[B1sink1], c3;
{ E N D }