# # Copyright (c) 1998 Robert Nordier # All rights reserved. # # Redistribution and use in source and binary forms are freely # permitted provided that the above copyright notice and this # paragraph and the following disclaimer are duplicated in all # such forms. # # This software is provided "AS IS" and without any express or # implied warranties, including, without limitation, the implied # warranties of merchantability and fitness for a particular # purpose. # # $FreeBSD: src/sys/boot/i386/btx/lib/btxcsu.s,v 1.3 1999/08/28 00:40:07 peter Exp $ # $DragonFly: src/sys/boot/pc32/btx/lib/btxcsu.S,v 1.3 2003/11/10 06:08:35 dillon Exp $ # # BTX C startup code (ELF). # # # Globals. # .global _start # # Constants. # .set ARGADJ,0xfa0 # Argument adjustment # # Client entry point. # _start: movl %eax,__base # Set base address movl %esp,%eax # Set addl $ARGADJ,%eax # argument movl %eax,__args # pointer call main # Invoke client main() call exit # Invoke client exit() # # Data. # .comm __base,4 # Client base address .comm __args,4 # Client arguments