1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-20 11:11:24 +00:00
freebsd/sys/i386/boot/biosboot/Makefile
Joerg Wunsch 9c6e0c69be . Make Poul's boot2 overflow warning less noisy in case the blocks
do fit, and beeping in case of an overflow.

.  Drop a comment about the ``FORCE_COMCONSOLE'' option into
   README.serial.

.  Increase the name buffer for the root directory from 100 bytes
   to 8 KB;  this is in no way ideal, but (IMHO) the best that can
   be done by now.  People did encounter problems with their root
   dir name listing overflowing the allocated buffer space.  Once
   we've got the three-stage boot, we should implement some basic
   malloc().  Swap space is already getting tight now, perhaps the
   swap should go into another 64 KB segment instead.

.  Make the keyboard probe less paranoid.  It should not give up in
   case of a keyboard that's continuously demanding RESEND's.  Even
   though the keyboard reset apparently has not been reported to be
   complete, it's at the very least proven that there IS something
   like a keyboard available.

   This solves problems with the ``Gateway-2000 AllKey programmable''
   (sp?) keyboard, that experienced a total hang with the previous
   probe.

   Thanks goes to Scott Blachowicz <scott@statsci.com> for his
   extensive testing of my various interim (debugging) bootblocks
   to get this working.
1995-04-20 23:15:10 +00:00

73 lines
1.8 KiB
Makefile
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# $Id: Makefile,v 1.29 1995/04/20 18:36:13 phk Exp $
#
PROG= boot
# Order is very important on the SRCS line for this prog
SRCS= start.S table.c boot2.S boot.c asm.S bios.S serial.S
SRCS+= probe_keyboard.c io.c disk.c sys.c
BINDIR= /usr/mdec
BINMODE= 444
CFLAGS= -O2 -DDO_BAD144 -DBOOTWAIT=${BOOTWAIT} -DCOMCONSOLE=0x3F8
CFLAGS+= -DBOOTSEG=${BOOTSEG} -DBOOTSTACK=${BOOTSTACK}
CFLAGS+= -I${.CURDIR} -I${.CURDIR}/../..
# force usage of serial console instead of keyboard probing
#CFLAGS+= -DFORCE_COMCONSOLE
CLEANFILES+= boot.nohdr boot.strip boot1 boot2 sizetest
DPADD= ${LIBC}
LDFLAGS+= -N -T 0 -nostdlib
LDADD= -lc
#LINKS= ${BINDIR}/sdboot ${BINDIR}/wdboot\
# ${BINDIR}/sdboot ${BINDIR}/fdboot\
# ${BINDIR}/bootsd ${BINDIR}/bootwd\
# ${BINDIR}/bootsd ${BINDIR}/bootfd
NOSHARED= YES
NOMAN=
STRIP=
# tunable timeout parameter, waiting for keypress, calibrated in mS
BOOTWAIT?= 5000
# Location that boot2 is loaded at
BOOTSEG= 0x1000
# Offset in BOOTSEG for the top of the stack, keep this 16 byte aligned
BOOTSTACK= 0xFFF0
boot.strip: boot
cp -p boot boot.strip
strip boot.strip
size boot.strip
boot.nohdr: boot.strip
dd if=boot.strip of=boot.nohdr ibs=32 skip=1 obs=1024b
ls -l boot.nohdr
boot1: boot.nohdr
dd if=boot.nohdr of=boot1 bs=512 count=1
boot2: boot.nohdr
dd if=boot.nohdr of=boot2 bs=512 skip=1
@dd if=boot2 skip=14 of=sizetest 2> /dev/null
@if [ -s sizetest ] ; then \
echo "*** Boot2 is too BIG ***" ; exit 2 ; \
fi
all: boot1 boot2
install:
install ${COPY} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE}\
boot1 ${DESTDIR}${BINDIR}/boot1
install ${COPY} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE}\
boot2 ${DESTDIR}${BINDIR}/boot2
for i in sd fd wd ; do \
( cd ${DESTDIR}${BINDIR} ; \
rm -f boot$${i} $${i}boot ; \
ln -s boot1 $${i}boot ; \
ln -s boot2 boot$${i} ; ) \
done
.include <bsd.prog.mk>