Commit Graph

558 Commits

Author SHA1 Message Date
mjacob
0ecf02c03c netboot removed until somebody fixes it so it compiles 1999-09-09 01:28:26 +00:00
msmith
e9d7c82c19 Add more missing files from the reorganisation.
Submitted by:	dfr
1999-09-07 09:08:09 +00:00
wpaul
891ef5237f Add mii_load entry to the network drivers section. Also add entries for
a few additional drivers that have recently been module-ized.
1999-09-07 05:03:06 +00:00
dfr
672f51ca44 Change NetBSD/Alpha to FreeBSD/alpha. 1999-09-06 18:32:40 +00:00
msmith
fbe3b5e298 Common Alpha loader Makefile, omitted accidentally from the previous set
of commits.
1999-09-06 08:38:10 +00:00
peter
cca6f75f15 $Id$ -> $FreeBSD$ 1999-09-05 15:21:05 +00:00
msmith
fc224426ed Slight reorganisation of the Alpha/SRM loader build:
- Make as much of the makefile for each of the three flavours
   (disk, CDROM, net) common.
 - Special-case the libalpha startup module on its use in boot1, not
   the other way around.
 - Build the loader out of a "loader" directory

Reviewed by:	mjacob, dfr
1999-09-03 19:42:18 +00:00
julian
974aea3e4c Remove accidental cut&paste garbage in a comment. 1999-09-03 01:38:29 +00:00
julian
082c01dec6 Comment the boot manager. So I don't have to work it all out again :-)
Reviewed by:	rnordier@freebsd.org
1999-09-03 01:35:06 +00:00
dfr
96d87db4ac Change $Id$ to $FreeBSD$ 1999-09-01 09:38:21 +00:00
dfr
780e80b507 * Fix a stack of warnings.
* Make it possible to type a filename to boot1 so that it is possible to
  recover from fatally broken versions of /boot/loader.
* Make a start at a CD boot program (not yet functional).
1999-09-01 09:11:14 +00:00
peter
3b842d34e8 $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
chris
212887c836 Fix a bunch of broken cross-references 1999-08-18 05:55:22 +00:00
jdp
0c79a3b760 Append the flags from the "boot" command to those which came from
the SRM environment.  This makes the traditional "boot [/kernel] -s"
and similar things work on the Alpha.  Since the flags are appended,
they augment and/or override those from the SRM environment.
1999-08-14 17:06:11 +00:00
kato
5d961b3389 Merge from sys/boot/i386/libi386/bootinfo.c revision 1.21. 1999-08-13 02:05:07 +00:00
wpaul
6a22079622 Convert the Winbond driver to newbus and have it compiled as a module. 1999-08-10 21:09:12 +00:00
wpaul
77daf56af9 Convert the VIA Rhine driver to newbus and set it up to be compiled as
a module. Also modified the code to work on FreeBSD/alpha and added
device vr0 to the alpha GENERIC config.

While I was in the neighborhood, I noticed that I was still using
#define NFPX 1 in all of the Makefiles that I'd copied from the fxp
module. I don't really use #define Nfoo X so it didn't matter, but
I decided to customize this correctly anyway.
1999-08-10 17:15:20 +00:00
kato
775a45e1a2 - Don't assume that SCSI ID numbers of HDD units are contiguous. That
is, don't assume that SCSI ID corresponds to a unit number of da
  device.  Unit number of da device is provided by 2nd stage loader
  and 3rd stage loader now use it.
- Fix drive letter to display.

Submitted by:	IMAI Takeshi <take-i@ceres.dti.ne.jp>
1999-08-05 03:19:37 +00:00
kato
0a6997ccc9 Provides discontinuous unit number support to make external FDD
bootable on 1 FDD PC98 machines.  (When an external FDD unit is
installed, unit numbers become discontinuous.)

Submitted by:	IMAI Takeshi <take-i@ceres.dti.ne.jp>
1999-08-05 03:12:20 +00:00
green
0ab4dad809 Add various network cards that have been new-busified and made into KLDs
(thanks Bill!)

Remove lkm.
1999-08-04 17:44:07 +00:00
dfr
c2207db8bb Make this build if there is an obj directory. 1999-08-02 19:16:42 +00:00
se
4983311c1d Add missing "path mnemonics" as given in Table 4-3 of rev. 1.2 of the
ARC Specification.
1999-08-02 18:26:28 +00:00
se
e22d6206a9 Fix install target (install loader.exe, not loader). 1999-07-29 22:22:38 +00:00
se
edb27d9a84 Activate "arc" (ARC / AlphaBIOS loader) on Alpha. 1999-07-28 20:32:44 +00:00
nik
af96d3ba77 Fix some typos.
PR:             docs/11955
Submitted by:   Christian Weisgerber <naddy@mips.rhein-neckar.de>
1999-07-28 20:30:59 +00:00
se
e34ff91e6c This commit was generated by cvs2svn to compensate for changes in r49187,
which included commits to RCS files with non-trunk default branches.
1999-07-28 20:28:47 +00:00
se
159c5d3210 The ARC BIOS / AlphaBIOS specific primary boot loader. This code is the
result of a joined effort with parts contributed by Doug Rabson, Warner
Losh and Stefan Esser (hope I did not forget anybody). Part of the sources
is obtained from NetBSD with modifications.

This code is work in progress:

As of the time of the initial import, a loader.exe executable is built,
which can be loaded on an Alpha with NT only firmware, but no attempt is
made to switch to OSF PAL code as required to start an actual kernel.
1999-07-28 20:28:47 +00:00
rnordier
558efd38f3 Recognise NetBSD slices.
Submitted by : Lars Koeller <lkoeller@cc.fh-lippe.de>
PR           : 12772
1999-07-24 17:40:40 +00:00
msmith
22f56109ba Walk around the end of all the silly guessing of device types and unit
numbers that we have been doing in the past, and read /etc/fstab off the
proposed root filesystem to determine the actual device name and vfs
type for the root filesystem.  These are then exported to the kernel
via the environment variable vfs.root.mountfrom.
1999-07-21 00:08:54 +00:00
rnordier
c1740a7c66 Reintroduce LBA (cyl > 1023) support in the bootblocks, enabled by
means of a build option.
1999-07-20 01:19:23 +00:00
rnordier
c46ca64645 Activate kgzldr. 1999-07-19 20:16:34 +00:00
rnordier
83fed33cb1 Use M4FLAGS for m4. 1999-07-19 20:10:17 +00:00
rnordier
2d7803cd6b This commit was generated by cvs2svn to compensate for changes in r48907,
which included commits to RCS files with non-trunk default branches.
1999-07-19 18:07:44 +00:00
rnordier
f5a2fbe418 kgzldr is a kzipboot replacement for use with kgzip(8).
Development sponsored by Global Technology Associates, Inc.

Reviewed/tested by: abial
1999-07-19 18:07:44 +00:00
n_hibma
fa5dc41401 The boot countdown timer says it will boot in 1 seconds,
which is grammatically incorrect.

PR:		12628
Submitted-By:	R. Matthew Emerson <rme@nightfly.apk.net>
1999-07-15 20:40:52 +00:00
msmith
2b045d409d Document the hw.physmem tunable. (There should be arch-specific tunable
help sections.)
1999-07-02 20:38:05 +00:00
peter
6b5a8d602e Fix typo (wrong path) 1999-06-29 21:40:05 +00:00
peter
8fd8236771 Reconcile all the loader newvers.sh's into one common one. 1999-06-29 21:23:26 +00:00
peter
b911e1234c Don't use head/tail - they don't exist in a 'make world' environment.
(Why do we have three copies of this script anyway?)
1999-06-29 21:06:16 +00:00
peter
301f725178 ABS_SET() and BSS_SET() are no longer used. The sole remaining user of
TEXT_SET() is DDB's command tables.
1999-06-26 12:27:01 +00:00
ru
1e7459a41e -mdoc fix. 1999-06-23 09:06:18 +00:00
rnordier
0571a0f633 Fill in bi_bios_geom[] in the bootinfo structure passed to the kernel.
This should resolve the problem raised in PR 12315, and incidentally
makes it easier to determine what geometry the BIOS is actually using
(by way of boot -v and dmesg).
1999-06-21 18:27:02 +00:00
rnordier
156dba23c0 Provide for enabling/disabling each slice individually. 1999-06-19 21:40:55 +00:00
rnordier
f3313ef5a0 Fix use of e_phoff in place of e_phnum. 1999-06-19 20:50:38 +00:00
rnordier
5f25113ddb Correct and clarify some comments. 1999-06-19 20:40:32 +00:00
rnordier
517a8eacaf Change active flag handling; sanity check passed drive number; pass
partition pointer to bootstrap; optimise away 10 bytes; cosmetics.
1999-06-18 21:49:18 +00:00
roger
d3d8c4e7a1 Add bktr_load for the loadable Bt848/Bt878 driver. 1999-06-13 15:45:49 +00:00
kato
9f9cc79ee9 Sync with sys/boot/i386/libi386/bootinfo.c revision 1.19. 1999-06-06 12:46:40 +00:00
ghelmer
b7771a65a4 Modify the boot loader to recognize the -C flag and pass the RB_CDROM
flag to the kernel to mount a CDROM as the root filesystem.  Alternatively,
the boot_cdrom env var can be set.

As Mike Smith noted, "-C is the "wrong" way to do this", but this is
an acceptable stopgap in lieu of a better way.

PR:		bin/11884
Reviewed by:	msmith@freebsd.org
1999-06-04 03:18:28 +00:00
dfr
0681bc77d8 Typo: "can't boot 'boot'" should be "can't boot 'kernel'" 1999-05-30 10:45:03 +00:00
brian
03b6a6f174 Always output a linefeed when we've decided whether to boot
or display a loader prompt; either we've said
"Booting [%s]..." or we've received a non-line-feed character
and need a '\n' anyway.
1999-05-28 08:01:52 +00:00
rnordier
ebabc28d79 Activate mbr. 1999-05-24 22:44:32 +00:00
rnordier
32c4cd5138 Add mbr: a standard master boot record intended to replace a couple
that are presently embedded in the fdisk and sysinstall code.
1999-05-24 22:36:24 +00:00
rnordier
baab5b9100 This commit was generated by cvs2svn to compensate for changes in r47471,
which included commits to RCS files with non-trunk default branches.
1999-05-24 22:36:24 +00:00
rnordier
c7b7a58ae1 Fix a reference to the mysterious Mike Smisth. 1999-05-22 13:18:28 +00:00
kato
9afe0bdc01 Sync with sys/boot/i386/btx/Makefile revision 1.5. 1999-05-20 08:00:08 +00:00
rnordier
ada744aa5c Drop some non-existent commented-out targets. 1999-05-18 22:10:05 +00:00
dcs
0c3ef21962 Add "initialize" to loader.4th, so running "start" is not actually needed. 1999-05-14 18:59:27 +00:00
dcs
1528de5c94 Add fxp on a category of it's own. 1999-05-14 10:20:54 +00:00
dcs
71ddf06778 Remove atapi and joy, add svr4 and streams. I wonder if removing vinum
is in order or not... (things are _not_ loaded by default, but it serves
as a reference to people tweaking their own loader.conf files)
1999-05-14 10:14:50 +00:00
dcs
c58da8da38 Add ntfs and splash_pcx, remove pcic and wcd (yikes! what was THAT
doing here?).

Candidate for 3.2.
1999-05-14 10:03:58 +00:00
brian
2d6ab0b29f Better English. 1999-05-13 14:53:13 +00:00
jb
fbcc8bb5ab Found the needle in the haystack!
Use colons instead of semi-colons in the default init_path to behave like
UNIX instead of DOS.

Suggested by: bde
Reminded by: des (with no hint as to *which* man page).
1999-05-11 11:20:13 +00:00
dfr
57de21f5b6 Changes to support diskless booting on the alpha:
* Make the network code in the bootstrap more chatty (helps debugging)
* Add nfs root stuff to cpu_rootconf(). I also added a check to make sure
  it really was netbooting which allows the use of the same kernel for local
  and network boots.
* Tweak the de driver so that it takes the speed setting from the console
  for the alpha (some PWSs have broken de chipsets). This is the same
  behaviour as NetBSD/alpha.

Submitted by: Andrew Gallatin <gallatin@cs.duke.edu>
1999-05-03 09:36:29 +00:00
jkoshy
3e587269bb Correct typos.
PR:		docs/11445
Submitted by:	Kazuo Horikawa <horikawa@jp.freebsd.org>
1999-05-03 08:32:45 +00:00
jkoshy
962797d27d Correct misuse of .Nm.
PR:		docs/11449
Submitted by:	Kazuo Horikawa <horikawa@jp.freebsd.org>
1999-05-03 07:25:50 +00:00
dcs
131007fae0 Make man page reflect reality on parsing rules. Now I know Jordan
never read this man page... :-)
1999-04-25 21:41:09 +00:00
kato
773fedc1c8 Sync with sys/boot/i386/loader/Makefile revision 1.34. 1999-04-25 03:56:44 +00:00
dcs
e62810c9b1 Minor nit. It is probably still incorrect, but at least don't
claim to use i386-specific files on alpha...
1999-04-24 18:05:45 +00:00
dcs
073326ad33 Move loader.conf.5, while it is still in it's first revision. 1999-04-24 17:49:47 +00:00
dcs
aa57b67a29 Add loader.4th man page (worst man page I ever wrote -- reviews
are welcomed). Correct a nasty bug in loader.4th before anyone
notices, add a couple of features.
1999-04-24 17:25:35 +00:00
kato
f0dd940a69 Optimize better for space.
Submitted by:	Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>
1999-04-24 04:29:13 +00:00
jdp
43e60106b0 Update #include statements to reflect the new location of "sioreg.h".
With these changes plus the egcs fix I committed a few minutes ago,
"make -DWANT_AOUT world" works again.  Most likely, "make upgrade"
is fixed too, though I haven't tested that.
1999-04-22 21:02:44 +00:00
des
d3e9d9a7c3 Make the location of init(8) tunable at boot time. 1999-04-20 21:15:13 +00:00
joerg
5bfc6b1d27 Don't clobber the "prompt" variable if it has already been set (e. g.
from within loader.conf).

Reviewed by:	dcs
1999-04-20 12:07:03 +00:00
kato
5e79bb76b5 Sync with sys/boot/i386/loader/Makefile revision 1.32. 1999-04-19 11:02:19 +00:00
dcs
7da9554ad1 Installs a default loader.rc if none exists. Document loader.conf. 1999-04-18 09:21:12 +00:00
dcs
324546512f A default loader.rc to be installed. 1999-04-18 09:20:08 +00:00
peter
087d4857e5 Bring the 'new-bus' to the i386. This extensively changes the way the
i386 platform boots, it is no longer ISA-centric, and is fully dynamic.
Most old drivers compile and run without modification via 'compatability
shims' to enable a smoother transition.  eisa, isapnp and pccard* are
not yet using the new resource manager.  Once fully converted, all drivers
will be loadable, including PCI and ISA.

(Some other changes appear to have snuck in, including a port of Soren's
 ATA driver to the Alpha.  Soren, back this out if you need to.)

This is a checkpoint of work-in-progress, but is quite functional.

The bulk of the work was done over the last few years by Doug Rabson and
Garrett Wollman.

Approved by:	core
1999-04-16 21:22:55 +00:00
dcs
998b9c95ea Reactivate trace! after making it egcs-friendly. 1999-04-06 02:43:06 +00:00
rnordier
3fdb487782 Fix damage introduced in previous commit. 1999-04-05 07:36:30 +00:00
rnordier
33dbdcecb9 Optimize better for space.
Thanks to: jdp
1999-04-05 07:24:51 +00:00
obrien
d343a5cdea Remove the string ">>> FreeBSD/i386 BOOT". I need to reduce the size of
boot2 by 16 bytes.  I expect this to be temperary until the boot2 authors
can do the proper fix.
1999-04-04 21:15:41 +00:00
kato
628a94f6e5 Use files under sys/boot/i386 instead of copying under sys/boot/pc98.
Submitted by:	Takahashi Yoshihiro <nyan@dd.catv.ne.jp>
1999-04-02 08:59:11 +00:00
joerg
378da8f135 Make <DEL> an alternative rubout character for command input; many
serial terminals use this as their default rubout key.
1999-03-31 08:28:42 +00:00
dcs
70ba7a32ce Revert bootinfo to 1.4 and use a different solution to NULL m_args
instead (don't copy).
1999-03-20 14:13:09 +00:00
dcs
c032780b94 Fix a couple of nasty errors in the README. 1999-03-20 12:25:43 +00:00
kato
6d2e2542e4 Sync with sys/boot/i386/loader/version revision 1.4. 1999-03-19 15:59:56 +00:00
kato
abcc07c5f4 Sync with sys/boot/i386/libi386/bootinfo.c revision 1.18. 1999-03-19 15:58:05 +00:00
dcs
c18006911a Avoid copying m_args if none exists. (Perhaps this is a better solution,
Doug?)
1999-03-18 14:36:22 +00:00
kato
00ae7114ac Install the manual page in sys/boot/i386/loader.
Sumbmitted by:	Takahashi Yoshihiro <nyan@dd.catv.ne.jp>
1999-03-18 13:42:21 +00:00
dfr
3bb3f6f67f Don't choke in MOD_ARGS() if mp->m_args is NULL. 1999-03-18 11:00:48 +00:00
chuckr
cd0566dca7 This is a temporary README file, to help those trying to experiment
with the new boot loader configuration process.  I got a lot of
help from Daniel Sobral, and both Dan and I got help from Mike
Smith.  This really belongs in Warner's UPDATING, but he's not
been answering his email recently, so that will wait a little.

Robert Nordier also gave me a lot of help, but he hasn't seen the
last version, and can't be blamed for my errors.

Approved by:	jkh

Reviewed by:	Mike Smith
1999-03-17 23:44:19 +00:00
dcs
5286c095cf Version bump: kvm & dictionary size. 1999-03-17 23:05:46 +00:00
dcs
9d9e06aee3 Disable trace! until it gets fixed. 1999-03-17 23:03:36 +00:00
dcs
fa973cd0a2 The man page, version 0.1. 1999-03-15 08:52:23 +00:00
dcs
3386e28dad Remove redundant code. 1999-03-15 08:08:20 +00:00
dcs
55c04d9855 Replace /kernel.config with /boot/kernel.conf. 1999-03-14 21:57:49 +00:00
msmith
c62de94444 Fix syntax for boot command
Noticed by:	Ruslan Ermilov <ru@ucb.crimea.ua>
1999-03-14 19:55:01 +00:00
kato
d340b23048 Sync with sys/boot/i386/loader/Makefile revision 1.30. 1999-03-10 13:41:44 +00:00
kato
58b7c74807 Sync with sys/boot/i386/libi386/bootinfo.c revision 1.17. 1999-03-10 13:40:29 +00:00
dcs
313dc063d0 Install new loader.rc stuff. 1999-03-10 03:34:14 +00:00
dcs
08f08b7ab7 New loader.rc stuff.
Reviewed by:	jkh
1999-03-09 14:06:55 +00:00
dcs
526581a289 Add MODINFO_ARGS, parameters passed to a module at load time.
VS: ----------------------------------------------------------------------
1999-03-08 11:05:52 +00:00
dcs
b92a330050 Increase ficl's dictionary size, in preparation for the newer loader.rc. 1999-03-08 11:00:02 +00:00
dcs
304195a177 Fix a number of memory leaks and other memory-related disorders.
Also, unbreak the breakage introduced at the last revision of module.c.
This changes the semantics of mod_searchfile() (and mod_searchmodule())
to make the caller's responsibility freeing the buffer returned. This
is different from other functions in loader's code, and was done as a
fix for kern/9631. If someone wants to revert this to the original
behavior, don't forget to fix kern/9631 in another way.

This should also fix bin/10462, which was introduced as a result of the
first try at kern/9631 (module.c last revision).

PR:		bin/10462
Submitted by:	Takanori Saneto <sanewo@ba2.so-net.ne.jp>
1999-03-08 10:32:39 +00:00
kato
f14d10621f Make loader be able to load 1.2MB fd on machines w/ 1.44MB fdd.
Sumbmitted by:	IMAI Takeshi <take-i@ceres.dti.ne.jp>
1999-03-04 16:38:12 +00:00
kato
6edc8e8149 Added an entry for 1.44MB fd.
Submitted by:	IMAI Takeshi <take-i@ceres.dti.ne.jp>
1999-03-04 16:34:52 +00:00
kato
f7d44adef4 Oops, forgot to read boot.config file.
Submitted by:	IMAI Takeshi <take-i@ceres.dti.ne.jp>
1999-03-04 16:31:55 +00:00
kato
ee59945a67 When SCSI IDs are not contiguous, the loader could not find correct
unit number for da device.  This commit fixes this problem.

Submitted by:	IMAI Takeshi <take-i@ceres.dti.ne.jp>
1999-03-04 10:48:14 +00:00
kato
1c22dee1f8 boot2 doesn't need to say 'Can't find file boot.config.'
Submitted by:	IMAI Takeshi <take-i@ceres.dti.ne.jp>
1999-03-04 10:45:06 +00:00
kato
f87c1161fe Fix character code of backslash. PC98 should use 0xfc instead of 0x5c.
Submitted by:	IMAI Takeshi <take-i@ceres.dti.ne.jp>
1999-03-04 10:44:01 +00:00
dcs
ca008db062 Don't treat empty lines as end-of-file in include(). (I can't
believe this bug is still here... :-( )
1999-03-02 16:16:57 +00:00
kato
c7f6e24ca8 Sync with sys/boot/i386/btx/btx/btx.s revision 1.10. 1999-03-01 10:02:45 +00:00
rnordier
c74450fa3d Save option, rather than slice, selected. This permits unattended
booting from other than drive 0, as the F5 keypress is saved and
"replayed."

Requested (some time ago) by: archie
1999-03-01 02:42:47 +00:00
dcs
827ffa0722 Make $ print different lines in, well, different lines. 1999-02-28 02:10:14 +00:00
rnordier
c17b4c476c Implement "setdrv" option 1999-02-26 14:51:14 +00:00
rnordier
a3fa9785d0 Emulate a V86 "movl %cr0,%eax" instruction.
Feedback and testing: Kurt Hopfensperger <kjhmdjd@ix.netcom.com>
1999-02-25 16:27:41 +00:00
kato
c5a1921180 Sync with sys/boot/i386/loader/Makefile revision 1.29. 1999-02-25 11:01:54 +00:00
msmith
7648580bdb Don't try protecting page 0; it seems that BIOS writers now feel it's
appropriate to check for Windows95 by polling for state in low
memory, with fatal results.

Submitted by:	rnordier@freebsd.org
1999-02-24 01:37:23 +00:00
dcs
3b2e9c970d Fix assorted memory leak/buffer reuse problems.
Not restricted to, but including:

PR:		kern/9631
Submitted by:	Bill Fenner <fenner@parc.xerox.com>
1999-02-22 13:12:37 +00:00
tegge
86c0720b63 Enable load of i386 ELF kernels with larger KVA range (e.g. starting at
0xe0100000u or 0xc0100000u instead of the usual 0xf0100000u).
1999-02-15 17:36:58 +00:00
jkh
1dd8a295ca Remove dictHashSummary internal function; it used doubles.
Submitted by:		Daniel C. Sobral <dcs@newsguy.com>
1999-02-09 16:04:19 +00:00
kato
6dbbed98d7 Sync with sys/boot/i386/loader/version revision 1.3. 1999-02-08 09:59:38 +00:00
dcs
ea6b709336 Bumb up loader's version.
Reviewed by:	Michael Smith <msmith@freebsd.org>
1999-02-08 04:14:31 +00:00
dcs
422db1f2b1 Remove strange-looking quotes. This part of the code is #if'ed out,
and the variable doesn't even exist (though it is referenced elsewhere).
Just make sure it produces error messages when Mike get back to it.

PR:		kern/9934
Submitted by:	Adrian Filipi-Martin
1999-02-07 12:12:29 +00:00
dcs
72ab07e9db Make FICL_TRACE default.
Add freebsd.fr, for FreeBSD specific forth source. Add $ and %, to
replace the lost @ and - functionality of include. $ has the opposite
behavior of @ though, since the default behavior was inverted.
1999-02-04 17:13:49 +00:00
dcs
755c131c9f Make use of prototypes to silence warnings.
Change include() so it will be able to load files with forth code,
instead of just builtins. Remove #@- from the include section of the
help file, since they don't work in the new version of include, unless
BOOT_FORTH is not defined.

Change bf_run() so it will return the result returned by ficlExec(). Also,
make bf_run() push "interpret" to be executed by ficlExec(), since ficlExec()
doesn't do it by itself. (Things worked previously because nothing
recursed through ficlExec() by the way of bf_run()).

Change/extend comments on builtin behavior.

Search for "interpret" at the end of bf_init(), so /boot/boot.4th can
provide it's own version.

Remove dead code.
1999-02-04 17:06:46 +00:00
dcs
60ace12c39 Make ficlExec recursive. This removes vmReset and vmQuit from the
error cases, but the replacement should be doing everything they
did, except what did shouldn't be doing, and might do a little more
they ought to be doing.
1999-02-04 16:53:47 +00:00
dcs
90242e0822 Fix ficlExecFD to take kern/9412 changes into account. Also modify it
not to vmThrow errors. This is not what the comments say it does, and
it doesn't work when there is no ficlExec environment (like it's only
use in sys/boot/common/interp_forth.c).

PR:		bin/9772
1999-02-04 13:28:56 +00:00
dcs
0fa743a353 The trace facility was full of bugs. Correct that by using the
right variable.

PR:		bin/9756
1999-02-04 13:20:30 +00:00
dcs
a68d5c9544 Silence a warning.
PR:		bin/9754
1999-02-04 13:16:21 +00:00
dcs
028fe6b9d1 The previous fix for "type" was absolutely lousy. Not only the buffer
allocated was not big enough, but it ended up to being used where it
was supposed to be used. The person who did that ought to be shot, but
since I'm a good person, I'll forgive myself...

PR:		bin/9743
1999-02-04 13:06:47 +00:00
dcs
0ebff7e4fd Add conditional compilation facilities to ficl. This had been previously
committed to RELENG_3 instead of HEAD, so let's HEAD catch up.

PR:		bin/9662
1999-02-04 12:57:56 +00:00
msmith
95a45fc122 Mention the net.inet.tcp.tcbhashsize tunable. 1999-02-03 09:07:33 +00:00
kato
c40db6cc73 PC98 version of new boot loader. Because boot2 has not yet ported,
files in boot2 directory are copies from legacy biosboot.

Submitted by:	IMAI Takeshi <take-i@ceres.dti.ne.jp>
1999-02-03 08:39:09 +00:00
jkh
d02485ce0b Whoops! Forgot to include Mr. Sobray's more command in the last set
of commits.

Submitted by:	Daniel C. Sobral <dcs@newsguy.com>
1999-02-01 06:08:21 +00:00
rnordier
c84955e100 Check size of partition before using it. 1999-01-29 03:36:42 +00:00
msmith
fa6b76178f Document the machdep.pccard.pcic_irq tunable, which allows the user to tune
the interrupt which will be given to the PCIC.  If the value supplied is
illegal or not available, interrupts will be turned off and polled mode
used instead.
1999-01-29 01:16:50 +00:00
jkh
5e7aaad42f Make builtin's state-aware in loader.
Submitted by:	Daniel C. Sobral
PR:		9663
1999-01-28 06:33:03 +00:00
rnordier
7332041031 Fix a couple of further bugs: missing argument to sprintf() and
"==" used for "=".
1999-01-25 23:07:02 +00:00
rnordier
e3cbd0c0a2 Correctly record the end of the a.out symbol table. In practice, a
bootinfo structure where bi_esymtab < bi_symtab was being passed
to the kernel.  In the case of older 2.x kernels, this was causing
garbage to be printed to the video console, followed by an exception.

This should resolve a problem reported on -current by Peter Jeremy
<peter.jeremy@auss2.alcatel.com.au>.
1999-01-25 10:34:35 +00:00
msmith
e106763b92 From the PR:
I added a FICL_TRACE-conditioned trace facility based on "see".
It is ugly because words' functions are almost all static, and ficlExec,
where the trace has to be located, can't get their pointers. So, #ifdef
this staticization, and add most of see's body into ficlExec. Duplication
of code, uglyness, etc. But it is cleanly #ifdef'ed, and works like a
charm.

	It does not provide "step" facility, though, just trace. It is
tunable at run-time through "trace!". If anyone (most likely me :) ever
wants a step facility, I'll add it. Should be easy.

PR:		bin/9652
Submitted by:	"Daniel C. Sobral" <dcs@newsguy.com>
1999-01-24 06:06:21 +00:00
msmith
6f8753800c Bleh. Missing 'unit =' doesn't help legacy num_ide_disks code.
PR:		bin/9651
Submitted by:	"Daniel C. Sobral" <dcs@newsguy.com>
1999-01-24 06:03:44 +00:00
msmith
2aa626e3ff From the PR:
FICL's TYPE copies the counted string to HERE, as abial has
remarked. Answering to abial's question, this is NOT garanteed to have
enough space.
...
	We have dynamic memory. Even before memory-alloc got in, we
already had dynamic memory. Use it, then! (ficlMalloc is sysdep, so I
suppose that's why it was not used for TYPE; ficl is probably designed
to work without a working ficlFree).

Submitted by:	"Daniel C. Sobral" <dcs@newsguy.com>
1999-01-24 05:58:18 +00:00
msmith
d0d15b4eb8 Document root_disk_unit 1999-01-24 00:12:17 +00:00
msmith
1e566c5505 biosdisk.c
Implement a new variable 'root_disk_unit' which supersedes
	'num_ide_disks' and makes it possible to explicitly set the
	root device unit number regardless of type considerations.

bootinfo.c
	If we can't calculate a dev_t for the root disk, complain and
	don't proceed to boot with an invalid boot device.
1999-01-24 00:12:04 +00:00
msmith
13b06fbe36 Fill in the bi_bios_dev field in the bootinfo struct; the loader doesn't
guess this value well in anything other than the simplest of situations.
1999-01-24 00:10:10 +00:00
msmith
355b55c282 Add EXCEPTION word set.
Make TIB handling use buffer size to conform with ANS Forth.

Add ANS MEMORY-ALLOC word set.

See the PRs for extensive details.

PR:		kern/9412 kern/9442 kern/9514
Submitted by:	PRs from Daniel Sobral <dcs@newsguy.com>
1999-01-22 23:52:59 +00:00
msmith
1ebf60a806 bootstrap.h
help.common
interp.c
	Rename the 'source' command to 'include' in order to avoid conflict
	with the ANS Forth command of the same name. (kern/9473)

interp_forth.c:
	Changes from kern/9412 (EXCEPTION word), kern/9442 (TIB buffer
	sizing) and an improved version of kern/9460 (set
	version numbers).

load_aout.c:
	Trim some obsolete #if 0'ed cruft.

pnp.c:
	Tidy the pnpscan output, turn off the module scanning until we
	sort out how to do it right.

PR:		kern/9412 kern/9442 kern/9460 kern/9473
Submitted by:	PRs from Daniel Sobral <dcs@newsguy.com>
1999-01-22 23:50:14 +00:00
rnordier
e345acf488 Fix extraneous free() on error. 1999-01-22 21:33:52 +00:00
rnordier
8603959049 Fix read error not being detected. 1999-01-22 18:32:52 +00:00
rnordier
aa2df6372b Push version numbers up to 1.00. This is just intended to reflect
that the BTX code can be regarded as stable: there are no associated
code changes.

Suggested by: obrien
1999-01-22 13:07:17 +00:00
msmith
d6db5cac76 Add 'set tunables' help, list the kernel tunable values that can currently
be overridden.
1999-01-21 22:03:16 +00:00
msmith
488523664e Transition from using Perl to using awk for our text-manipulation
needs.  This removes the dependancy on Perl for the generation of the
loader, allowing the world to be built on a perl-free system.

Submitted by:	Joe Abley <jabley@clear.co.nz>
1999-01-18 19:05:27 +00:00
jdp
7144bbc986 Replace duplicated "old" linker set definitions with an include of
<sys/linker_set.h>.  Note, this isn't used on the i386.
1999-01-16 03:25:24 +00:00
abial
cb4a248c7e Fall back to /boot/boot.conf, if /boot/loader.rc was not fount. This is
to cover the transition period.

Suggested by:	msmith
1999-01-15 00:31:45 +00:00
abial
010f76153c Change counter-intuitive pc@ and pc! to inb and outb.
Submitted by:	jkh
1999-01-14 23:48:03 +00:00
rnordier
6edc8726f9 In the event of a disk error, boot2 is expecting an error
code to be returned: give it one
1999-01-13 23:30:07 +00:00
abial
e7c0e116e6 Change /boot/boot.conf to /boot/loader.rc - this name reflects what it
really is.

Agreed upon by:	jkh, msmith and many others
1999-01-13 21:59:58 +00:00
abial
741d3b95c6 Add words "pc!" and "pc@" which allow to manipulate I/O ports. This can
be helpful when directly fiddling with PC hardware.

Also, define "arch-i386" appropriately, as suggested by Daniel C. Sobral.
1999-01-13 21:31:50 +00:00
msmith
edc692a016 Typo in patch application.
PR:		kern/9459
Submitted by:	"Daniel C. Sobral" <dcs@newsguy.com>
1999-01-13 08:11:41 +00:00
rnordier
192bb84877 Drop boot.help support. 1999-01-11 11:36:03 +00:00
msmith
d141889ddd No builtin command resets getopt before using it, causing
problems in case a wrong option was given previously, and no option
is given to the next command.

PR:		kern/9371
Submitted by:	"Daniel C. Sobral" <dcs@newsguy.com>
1999-01-11 06:41:32 +00:00
msmith
527d380042 Preserve the previous loader as loader.old.
Note no matching commit for the Alpha, as the alpha boot0 stage does
not have the ability to prompt for user input.

PR:		kern/9406
Submitted by:	 "Daniel C. Sobral" <dcs@newsguy.com>
1999-01-11 05:52:28 +00:00
msmith
ea810b3ebb Disable kzipping the loader; it seems to be breaking the aout-to-elf build 1999-01-10 20:20:27 +00:00
steve
01f82cbb96 Remove redundant line of code.
PR:		9364
Submitted by:	Daniel C. Sobral <dcs@newsguy.com>
1999-01-10 18:22:23 +00:00
rnordier
7f3d245232 Use etc/make.conf settings for serial port and speed.
Submitted by: rvb
Reviewed by: bde
1999-01-10 14:48:05 +00:00
peter
6f74dc01b4 Damn, I thought I had committed this already, but it seems not.
Move the relocated boot1 and arg transfer space from 0x600/0x800 to
0x700/0x900.  In theory this should make no difference, apart from the fact
that Buslogic controllers happen to use a few bytes at 0x600 for some sort
of scratch space for it's int 0x13 hook (!!!), causing the machine to crash
badly when the boot2 code makes it's callbacks into boot1 for disk IO.

Submitted by:	Robert Nordier <rnordier@freebsd.org>
1999-01-10 13:29:52 +00:00
msmith
e50aa55751 Enable escapes for $ to make it possible to insert variable names into
other variable values.
1999-01-10 05:08:12 +00:00
msmith
48d88654f8 Explicitly look for kzip in /usr/bin, again this is a stopgap, to avoid
making kzip a build tool.
1999-01-09 20:14:46 +00:00
msmith
dc29b5609b kzip the loader, this shrinks it to about 60% of its original size.
Note that this is a stopgap with dependancies on the a.out tools.
1999-01-09 02:38:40 +00:00
msmith
6ed8cbf467 Extend bd_print() so that it displays slices and partitions on disks. 1999-01-09 02:36:19 +00:00
msmith
4077891a70 Add a description for 'lsdev' so that it shows up in the '?' display 1999-01-09 02:34:48 +00:00
msmith
e6452a0522 Alpha-specific help topics (currently empty) 1999-01-05 20:44:26 +00:00
peter
46c636cd84 Fix a potential sign extension bug on 8-bit chars.
Outputting a backspace isn't supposed to be destructive..  It isn't on
most terminals, nor on the standard bios output (vs. TERM_EMU mode)
1999-01-04 18:45:08 +00:00
peter
6a8415504a Fix variable initialization.. It was written with '==' instead of '-'.
#include <string.h> for string prototypes.
1999-01-04 18:39:24 +00:00
peter
0e973448d5 Clean some unused variables lint 1999-01-04 18:38:23 +00:00
peter
2304ebab76 Don't forget a trailing \n when loading a kernel that has been stripped.
(This might make ELF_VERBOSE look funny, but I'm tempted to delete that
 anyway)
1999-01-04 18:37:41 +00:00
msmith
18c1130833 Restore dependancy to build loader.help here 1999-01-04 01:28:46 +00:00
msmith
eec8f14ee3 Add dependancy to build loader.help here 1999-01-04 01:28:39 +00:00
msmith
b4c6624855 First cut at generating loader.help for the alpha 1999-01-03 20:54:05 +00:00
msmith
a344fa1d6d Reenable generation of the loader.help file 1999-01-03 20:50:35 +00:00
jkh
a8ac3175ba Update for new boot block location. 1999-01-02 23:22:12 +00:00
abial
25196ce9dd Add support for some FACILITY words:
key? ( -- flag)  \ check to see if there's a key to be read from input
ms   ( u -- )    \ wait that many milliseconds
seconds ( -- u ) \ get number of seconds from midnight.

'words' now outputs the list page by page - this probably should go
through libstand's pager, but will have to wait for closer integration of
built-ins with Forth...

Submitted partially by:	W Gerald Hicks <wghicks@bellsouth.net>
1998-12-31 14:03:28 +00:00
abial
b3642b0f23 Add back ability to make beeps when using new TERM_EMU.
Submitted by:	W Gerald Hicks <wghicks@bellsouth.net>
1998-12-31 13:44:04 +00:00
abial
75069f671c Add simple terminal emulator, compatible with cons25. Currently supported
capabilities are: AF, AB, cm, ho, me, cd. The code is hidden behind
-DTERM_EMU - should it cause any problems, you can remove this define
to get back the old behaviour.

You'll find some examples how to use it in src/share/examples/bootforth.

Reviewed by:	jkh
1998-12-22 11:51:25 +00:00
abial
866889d236 Add new word ".#" which acts like "." but doesn't output a space separator.
I found it impossible to output parametrized strings like "\033[%d;%dH"
without building them first in pad area.
1998-12-22 11:46:27 +00:00
abial
524f060924 * Begin integration of built-ins with Forth: leave the exit code from
a built-in command on Forth stack.
* Fix a bug which was causing a panic when loading stripped aout kernels.

Reviewed by:	jkh
1998-12-22 11:41:51 +00:00
n_hibma
0dfe97f554 Removed dynamic loading of FileHandle 1998-12-16 09:09:09 +00:00
msmith
fca47ff171 Disable build/install of boot.help until we sort out how to construct it
in the makeworld environment.
1998-12-16 02:27:15 +00:00
msmith
8b77bf750a Reformat help to improve subtopic display appearance, other minor
cleaning.  The 'help' command in the loader should now be usable and
hopefully informative.
1998-12-15 14:32:17 +00:00
msmith
98e8c7d522 Build the composite help file from the generic and architecture-specific
help files, sorting topics and subtopics to allow maximum flexibility.
1998-12-15 14:21:30 +00:00
msmith
bd4b286939 unlocalise build date (merge from i386) 1998-12-15 04:27:15 +00:00
ache
c46111d079 unlocalize date
Submitted by: Cejka Rudolf <cejkar@dcse.fee.vutbr.cz>
1998-12-07 16:17:41 +00:00
rnordier
e625ce3562 Revise some comments and labels. 1998-12-05 11:58:33 +00:00
rnordier
3b5f1e1ac9 Drop EDD support detection, though retain configurable use of disk
packet interface.  Add booteasy-style F5 support.  Add no-update
option. Implement various space optimizations and consistency fixes.
1998-11-29 14:09:00 +00:00
rnordier
2b7d69a8df Drop use of BIOS int 0x14 services in favor of direct port I/O.
Feedback and testing: Adrian Filipi-Martin <adrian@ubergeeks.com>
1998-11-22 07:59:16 +00:00
archie
fe1c18e2d4 Fix misallocation of buffer bug (too short) 1998-11-20 02:57:41 +00:00
paul
36945c480b This fixes a bug in the bcache code whereby false cache hits occur
the first time block 0 is read. This fix initialises the block
numbers to -1 which isn't the most correct thing for a daddr_t but
it isn't likely to cause a problem in the boot blocks and it could
do with a more thought out fix later.

The bug is probably benign on the i386 but on the alpha it can
cause initial file opens to fail. This is the cause of the "can't
open /boot/boot.conf" errors.

It appears on the alpha because of a number of combining factors.
On the alpha the LABELSECTOR is 0 so block 0 needs to be read in
from the media. The first time this happens you get a false hit
because the bc_blkno field is zero initially. Also, the timestamp
check against this cache hit succeeds because on the alpha a hacked
getsecs() function can return 0 when it starts counting so that
the zero initial timestamp + BCACHE_TIMEOUT is greater than the
current time until getsecs() has counted passed BCACHE_TIMEOUT.

The overall effect is that the first open() that occurs gets a
false cache hit and returns garbage to the bd_strategy() function
which then fails the open() call. This false hit then stays in the
cache until BCACHE_TIMEOUT getsecs() ticks have passed; all open()
calls during this time fail.

This explains why you can generally access the media by the time
you get to interp() and start issuing commands but the earlier
attempts to run the boot scripts are failing.

It's possible that this is causing the problem switching to the
mfsroot floppy as well but I haven't confirmed that.
1998-11-19 18:12:03 +00:00