{File name FloatInit.mc Description: DandeLion InterLisp Initialization Author: Charnley Last modified: Charnley 5-Jun-84 14:12:42 Created: 31-May-84 11:52:00 } { ask the floating point chip to FLOAT 2 and check the result } {RegDef[ufloat, U, 042],} LispFloatInit: stackP ← 2, c1; TT ← 2, c2; STK ← TT, c3; ufloat ← 0, c1; FloatMode.RN.AI.FAST, FloatFLOW, c2; FloatA ← ufloat, FLFloatA, c3; FloatA ← STK, c1; FloatStartFlow, c2; Rx ← 4, c3; Rx ← Rx LRot12, c1;{4000 = High Half Floating Point 2.0} Noop, c2; FloatUMS, c3; FloatULS, c1; TT ← FloatResult, c2; Xbus ← FloatResult, c3; Ybus ← TT xor Rx, ZeroBr, c1; BRANCH[NoChips, ChipsPresent], c2; NoChips: uCHIP ← PV xor ~PV, GOTO[LispFloatInitDone], c3; ChipsPresent: uCHIP ← 0, GOTO[LispFloatInitDone], c3; { E N D }