NetBSD/sys/arch/sun3/stand/libsa/libsa.h
chs a95226826d switch sun3 to ELF. highlight include:
add "%" prefix to register names in assembly code.
change assembly functions to return values in %a0 instead of %d0.
C symbols no longer prepend an underscore, adjust assembly code for this.
32-bit values are now 32-bit aligned instead of 16-bit aligned,
adjust structure packing and padding to override this where necessary.
make EXEC_ELF std, make EXEC_AOUT and COMPAT_AOUT_M68K optional.
use the MI loadfile() instead of several home-grown versions.
2001-02-22 07:11:08 +00:00

47 lines
955 B
C

/* $NetBSD: libsa.h,v 1.7 2001/02/22 07:11:10 chs Exp $ */
/*
* This file defines the API for libsa.a
* as used by the various boot programs.
*/
/*
* Standard Sun3 PROM load address.
* i.e. this is where the PROM loads
* programs, like it or not!
*/
#define KERN_LOADADDR 0x4000
/* SRT0.S */
void exit __P((void));
void ICIA __P((void));
void ** getvbr __P((void));
/* SRT1.c */
extern int _is3x;
void _start __P((void));
void breakpoint __P((void));
void chain_to __P((void *func));
/* clock.c */
extern int hz;
long getsecs __P((void));
long getticks __P((void));
/* exec_sun.c */
int exec_sun __P((char *file, char *loadaddr));
int load_sun __P((int io, char *loadaddr, char **entry));
/* promboot.c */
extern int debug;
extern char prom_bootdev[];
extern char *prom_bootfile;
extern int prom_boothow;
/* sun3.c */
void sun3_getidprom __P((u_char *ea));
/* vers.c */
extern const char bootprog_rev[];
extern const char bootprog_name[];