Makefile revision 124179
150477Speter# $FreeBSD: head/sys/boot/i386/boot0/Makefile 124179 2004-01-06 18:46:35Z obrien $
239973Srnordier
3123302SobrienPROG?=		boot0
439980SrnordierNOMAN=
539980SrnordierSTRIP=
639980SrnordierBINDIR?=	/boot
740493SrnordierBINMODE=	444
839980Srnordier
939973SrnordierM4?=	m4
1039973Srnordier
1189240Sjhb# The default set of flags compiled into boot0.  This enables update (writing
1289240Sjhb# the modified boot0 back to disk after running so that the selection made is
1389240Sjhb# saved), packet mode (detect and use the BIOS EDD extensions if we try to
1489240Sjhb# boot past the 1024 cylinder liimt), and booting from all valid slices.
1589240SjhbBOOT_BOOT0_FLAGS?=	0xf
1640524Srnordier
1789240Sjhb# The number of timer ticks to wait for a keypress before assuming the default
1889240Sjhb# selection.  Since there are 18.2 ticks per second, the default value of
1989240Sjhb# 0xb6 (182d) corresponds to 10 seconds.
2089240SjhbBOOT_BOOT0_TICKS?=	0xb6
2139973Srnordier
2289240Sjhb# The base address that we the boot0 code to to run it.  Don't change this
2389240Sjhb# unless you are glutton for punishment.
2489240SjhbBOOT_BOOT0_ORG?=	0x600
2589240Sjhb
26124179Sobrien# Comm settings for boot0sio.  0xE3 => 9600 8-N-1
27124179Sobrien# XXX: We should create a build-tool or something to convert BOOT_CONSOLE_SPEED
28124179Sobrien# and BOOT_COMCONSOLE_PORT into the correct values to define on the build
29124179Sobrien# command line
30124179SobrienBOOT_BOOT0_COMCONSOLE_SPEED?=	0xE3
31124179Sobrien
32123302Sobrien${PROG}: ${PROG}.o
33123302Sobrien	${LD} -N -e start -Ttext ${BOOT_BOOT0_ORG} -o ${PROG}.out ${PROG}.o
34123302Sobrien	objcopy -S -O binary ${PROG}.out ${.TARGET}
3539973Srnordier
36123302Sobrien${PROG}.o: ${PROG}.s
3789240Sjhb	${AS} ${AFLAGS} --defsym FLAGS=${BOOT_BOOT0_FLAGS} \
38124179Sobrien		--defsym TICKS=${BOOT_BOOT0_TICKS} \
39124179Sobrien		--defsym COMSPEED=${BOOT_BOOT0_COMCONSOLE_SPEED} \
40124179Sobrien		${.IMPSRC} -o ${.TARGET}
4139973Srnordier
42123302SobrienCLEANFILES+= ${PROG}.out ${PROG}.o
4339973Srnordier
4439973Srnordier.include <bsd.prog.mk>
45