Xinu7/src/cmd/download/vax/eload/src/startup.s

Compare this file to the similar file:
Show the results in this format:

/* startup.s - start */

#define	 ASM
#include <ethdown.h>
#include <procreg.h>
#include <vaxdl.h>

/*----------------------------------------------------------------------------
 *  Eload start location
 *  assumption: processor is in kernel mode on entry 
 *----------------------------------------------------------------------------
*/

	.text
	.globl	estart
estart:					/* boot utility entry pt	*/
	mtpr	$DISABLE, $IPL		/* disable interrupts 		*/
	mtpr	$IURSET, $IUR		/* reset the bus 		*/
	mtpr	$IURUNSET, $IUR		/* unreset the bus		*/
	mtpr	$NOMAP, $MAPEN		/* disable memory management	*/
	mtpr	$intstk, $ISP		/* give interrupt stack memory	*/
					/* we use interrupt stk for all	*/
	mtpr	$MCESRCLR, $MCESR	/* clear machine check history	*/
	mtpr	$0, $SCBB		/* set up for sizmem		*/
	mfpr	$SID, -(sp)		/* see if UVAXII -- if so, must	*/
	bicl2	$SYSTYPE, (sp)		/* set up bus mapping registers	*/
	cmpl	(sp), $UVAXIISID
	jneq	eloadgo
	calls	$0, _qmapinit		/* set up default mapping regs	*/
eloadgo:
	calls	$0, _eload
	jbr	estart			/* should never be executed	*/

	.globl	intstk
	.space	6*1024			/* space for stack		*/
intstk:
	.space	4