DIRECTORY DragOpsCross, DragOpsCrossUtils, HandCoding, HandCodingPseudos, HandCodingSupport, Rope; DDStatusTest: CEDAR PROGRAM IMPORTS DragOpsCrossUtils, HandCoding, HandCodingPseudos, HandCodingSupport = BEGIN OPEN DragOpsCrossUtils, HandCoding, HandCodingPseudos, HandCodingSupport; instrSize: AuxRegSpec = [aux[10]]; -- must contain the length of trapping instructns underflowHandler: AuxRegSpec = [aux[12]]; All: PROC = { StackedStatusToWord: PROC [ s: DragOpsCross.StackedStatusWord, sense: {normal, complemented} _ normal ] RETURNS [ w: DragOpsCross.Word ] = TRUSTED {w _ LOOPHOLE[s]; IF sense = complemented THEN w _ DragOpsCrossUtils.DragNot[w]}; GenSetL: PROC RETURNS [ cycleL: Label ] = { cycleL _ GenLabelHere[]; drLIQB[StackedStatusToWord[[lBase: 0FFH], complemented]]; GetEldestStatus[]; drAND[]; drOR[]; SetEldestStatus[]; drRETN[]}; FillTrap: PROC [ trap: DragOpsCross.TrapIndex, label: Label ] = { oldPC: LONG CARDINAL = GetOutputPC[]; SetOutputPC[DragOpsCrossUtils.TrapIndexToBytePC[trap]]; drJDB[UseLabel16[label]]; -- go to trap handler SetOutputPC[oldPC]}; SetL: Label = GenSetL[]; Start: Label = GenLabel[]; FillTrap[ResetTrap, Start ]; SetLabel[ Start ]; -- gets here from reset in kernel mode with traps off drLIB[04H]; drLFC[UseLabel16[SetL]]; drLIB[0FH]; drSRn[reg0]; drLRn[reg0]; drDIS[]; drASL[0]; drLIB[08H]; drLFC[UseLabel16[SetL]]; drLIB[0FH]; drSRn[reg0]; drLRn[reg0]; drDIS[]; drASL[0]; drLIB[10H]; drLFC[UseLabel16[SetL]]; drLIB[0FH]; drSRn[reg0]; drLRn[reg0]; drDIS[]; drASL[0]; drLIB[20H]; drLFC[UseLabel16[SetL]]; drLIB[0FH]; drSRn[reg0]; drLRn[reg0]; drDIS[]; drASL[0]; Halt[0FFFFH]}; -- end of test END. |DDStatusTest.mesa Don Curry February 6, 1987 2:39:19 pm PST M A I N L I N E C O D E Start Do L tests End of test ʘšœ™J™)—J˜šÏk ˜ Jšœ ˜ J˜Jšœ ˜ Jšœ˜Jšœ˜Jšœ˜J˜—šœœ˜JšœD˜KJšœœœE˜QJ˜Jšœ&Ïc1˜Wšœ)˜)J˜—JšÏnœœ˜ ˜šŸœ˜šœM˜MJšœ˜*—Jšœœœœ#˜Q—J˜šŸœœœŸœ ˜+šœ˜Jšœ9˜9Jšœ˜Jšœ˜Jšœ˜Jšœ˜Jšœ ˜ —J˜J˜—šŸœœ3˜AJšœœœ˜%J˜7Jšœž˜/J˜J˜—Jšœ™J˜Jšœ˜Jšœ˜J˜šœ˜J˜—šœ™Jšœ Ïbœž5˜H—J™™ šœ ˜ JšœQ˜Q—šœ ˜ JšœQ˜Q—šœ ˜ JšœQ˜Q—šœ ˜ JšœQ˜Q———™šœ ™ šœž˜J˜———Jšœ˜J˜J˜J˜——…—‚