{ File: [Iris]<WMicro>DLion>Start.asm Modification History: Grundler.PA: 1-Sep-84 17:58:05 add copyright notice Grundler.PA: 14-Nov-83 14:35:52 Fasnacht.PA: 8-Nov-83 9:53:21} { Copyright (C) 1983 by Xerox Corporation. All rights reserved.} GET "RS232CDefs.asm" GET "SysDefs.asm" GET "CommonDefs.asm" IMP ClearMiscControl1Bit ;Common IMP DisableRST ;Common IMP GetTOD ;BookKeepingTask IMP MainLoop ;BookKeepingTask IMP PutMPanel ;Common IMP ReadKeyboard ;BookKeepingTask IMP SetMiscControl1Bit ;Common IMP Wait ;Common EXP Start Start: DI ;For Initializing LXI SP,UserStkStart ;Initialize user stack pointer MVI A,ResetRst75+Rst75DisableMsk+Rst65DisableMsk CALL DisableRST ;Disable RST 6.5 and 7.5, clear 7.5 FF (RS232C, Floppy) MVI A,DisableFDC ;Disable floppy controller, Enable Waits OUT FDCState IN DmaStatus ;Clear the DMA status register XRA A ;Clear A OUT DmaMode ;Disable controller EI ;For mouse halting CMA ;Set all clock bits high OUT MiscClocks1 LXI H,MPStartDomino ;Initialize the Maintenance Panel CALL PutMPanel ;MP ← StartDomino (500) OUT MouseClr ;Clear hardware counters MVI A,KBDiag ;Set KB diag mode CALL SetMiscControl1Bit LXI H,KBDiagWait ;Initialize delay for KBDiag signal CALL Wait ;Wait 15 msec MVI A,nKBDiag ;Clear KB diag mode CALL ClearMiscControl1Bit ;clear bit in register {Initialize the TOD state.} LXI H,MPInitTOD CALL PutMPanel ;MP ← InitTOD (501) CALL GetTOD LXI H,MPInitTODDone CALL PutMPanel ;MP ← InitTODDone (502) and RET CALL ReadKeyboard ;Initialize KeyMap in IO Page JMP MainLoop END Start