1*ec5a7997SFrançois Revol/* 2*ec5a7997SFrançois Revol * Copyright 2020, François Revol, revol@free.fr. All rights reserved. 3*ec5a7997SFrançois Revol * Copyright 2007, Haiku, Inc. All Rights Reserved. 4*ec5a7997SFrançois Revol * Distributed under the terms of the MIT license. 5*ec5a7997SFrançois Revol */ 6*ec5a7997SFrançois Revol 7*ec5a7997SFrançois Revol/** This file contains the entry point for the NeXT loader. 8*ec5a7997SFrançois Revol */ 9*ec5a7997SFrançois Revol 10*ec5a7997SFrançois Revol/* 11*ec5a7997SFrançois Revol * references : 12*ec5a7997SFrançois Revol * NetBSD sys/arch/next68k/stand/boot/srt0.s 13*ec5a7997SFrançois Revol */ 14*ec5a7997SFrançois Revol 15*ec5a7997SFrançois Revol #include <asm_defs.h> 16*ec5a7997SFrançois Revol 17*ec5a7997SFrançois Revol 18*ec5a7997SFrançois Revol// 1 enable verbose output 19*ec5a7997SFrançois Revol//#define DEBUG 1 20*ec5a7997SFrançois Revol 21*ec5a7997SFrançois Revol#define GLOBAL(x) .globl x ; x 22*ec5a7997SFrançois Revol//#define FUNCTION(x) .global x; .type x,@function; x 23*ec5a7997SFrançois Revol 24*ec5a7997SFrançois Revol 25*ec5a7997SFrançois Revol.text 26*ec5a7997SFrançois Revol 27*ec5a7997SFrançois Revol 28*ec5a7997SFrançois RevolSYMBOL(_start): 29*ec5a7997SFrançois Revol // find the monitor vector and push it 30*ec5a7997SFrançois Revol movec %vbr,%a3 31*ec5a7997SFrançois Revol movel %a3@(4),-(%sp) 32*ec5a7997SFrançois Revol // push the arg (bootarg) 33*ec5a7997SFrançois Revol movel %sp@(8),-(%sp) 34*ec5a7997SFrançois Revol jsr start_next 35*ec5a7997SFrançois Revol addql #8,%sp 36*ec5a7997SFrançois Revol rts 37*ec5a7997SFrançois RevolSYMBOL_END(_start) 38*ec5a7997SFrançois Revol 39*ec5a7997SFrançois Revol 40