e9b13dd6ec
sector 0 of a disk and boot0.5 is the `boot selector' which starts from address 0x400. The IPL loads boot0.5 and boot0.5 loads bootblock of a slice. The boot manager stuff was developed by me (kato) with Borland C++, and then, translated into bcc in the ports collection by Nokubi-san. After that, boot0 has been translated into gas with the .code16 directive by Takahashi-san (nyan) and boot0.5 has been rewritten in gas by me.
26 lines
489 B
Makefile
26 lines
489 B
Makefile
# $FreeBSD$
|
|
|
|
PROG= boot0.5
|
|
OBJS= start.o boot.o boot0.5.o disk.o selector.o support.o \
|
|
syscons.o
|
|
NOMAN=
|
|
STRIP=
|
|
BINDIR?= /boot
|
|
BINMODE= 444
|
|
|
|
ORG= 0x000
|
|
|
|
# The size of boot0.5 must be 7168 bytes
|
|
boot0.5: boot0.5.bin
|
|
cat boot0.5.bin /dev/zero | dd of=boot0.5 bs=1 count=7168
|
|
|
|
boot0.5.bin: boot0.5.out
|
|
objcopy -S -O binary boot0.5.out ${.TARGET}
|
|
|
|
boot0.5.out: ${OBJS}
|
|
${LD} -N -e start -Ttext ${ORG} -o ${.TARGET} ${OBJS}
|
|
|
|
CLEANFILES+= boot0.5.out boot0.5.bin
|
|
|
|
.include <bsd.prog.mk>
|