2 * Copyright (c) 1998 Robert Nordier
5 * Redistribution and use in source and binary forms are freely
6 * permitted provided that the above copyright notice and this
7 * paragraph and the following disclaimer are duplicated in all
10 * This software is provided "AS IS" and without any express or
11 * implied warranties, including, without limitation, the implied
12 * warranties of merchantability and fitness for a particular
15 * $FreeBSD: src/sys/boot/i386/btx/lib/btxcsu.s,v 1.3 1999/08/28 00:40:07 peter Exp $
16 * $DragonFly: src/sys/boot/pc32/btx/lib/btxcsu.S,v 1.6 2004/07/27 19:37:19 dillon Exp $
20 * BTX C startup code (ELF). Executed from ../btx/btx.S
23 #include "../../bootasm.h"
35 pushl %eax # Save base address
36 movl $_edata,%edi # Clear BSS
42 popl __base # Set base address
43 movl %esp,%eax # Get base of arguments
44 addl $USR_ARGSPACE-USR_ARGOFFSET,%eax
46 call main # Invoke client main()
47 call exit # Invoke client exit()
52 .comm __base,4 # Client base address
53 .comm __args,4 # Client arguments