Commit Graph

130 Commits

Author SHA1 Message Date
rnordier
b975f40fac Make use of BIOS int 0x13 extensions configurable, and disabled
by default.
1998-11-05 20:52:25 +00:00
msmith
41affade8b Turn off -g accidentally left in from testing. 1998-11-04 03:42:36 +00:00
jkh
0f99bfc6c0 Respect ${.OBJDIR} properly when looking for libficl.a 1998-11-04 02:36:18 +00:00
msmith
8c52bcabbc Add required parts for BootForth building (currently disabled and
untested).  Only suitable for i386 at the moment, as we are missing
setjmp/longjmp on the Alpha.
1998-11-04 00:30:47 +00:00
msmith
7ff854a690 Implement a simple LRU block cache. By default this is initialised to 16k,
and will bypass transfers for more than 8k.  Blocks are invalidated after
2 seconds, so removable media should not confuse the cache.

The 8k threshold is a compromise; all UFS transfers performed by
libstand are 8k or less, so large file reads thrash the cache.
However many filesystem metadata operations are also performed using
8k blocks, so using a lower threshold gives poor performance.

Those of you with an eye for cache algorithms are welcome to tell me
how badly this one sucks; you can start with the 'bcachestats' command
which will print the contents of the cache and access statistics.
1998-11-02 23:28:11 +00:00
rnordier
459dfe3332 Revise a few comments. 1998-11-02 17:53:08 +00:00
rnordier
19bbd56b97 Ignore, rather than emulate, an i386 'hlt' instruction (though for
most practical purposes, this should be indistinguishable from a
more strictly correct approach).

Feedback and testing: msmith
1998-11-01 13:52:52 +00:00
msmith
27a325f105 - Add a new command 'lsdev' to list devices which might be likely to host
filesystems.
 - New 'help' command and data in the help.* files (not yet installed),
   provides topic and subtopic help, indexes, etc.
 - Don't crash if the user tries to set an invalid console.  Be helpful
   instead.
 - Expand tabs (badly) on the i386 video console.
 - Some minor cosmetic changes.
1998-10-31 02:53:12 +00:00
luoqi
d53d7e4461 Fix an uninitialized variable in the `dangerously dedicated disk' case. 1998-10-30 07:15:52 +00:00
msmith
b7cb0214c9 Make the BTX loader much more quiet about what it's doing. This removes
most of the "what the (*^&%(*^ was that?" stuff that normally flies by.
1998-10-30 00:11:35 +00:00
msmith
45c6ebc96d Simplify the "is a character ready" test, so that we don't return a false
negative for keypresses with zero ascii values.  This is in line with the
comconsole test, rather than being more ambitious.

Submitted by:	rnordier
1998-10-28 19:24:15 +00:00
rnordier
25598ad6e0 Avoid interruptions while talking to keyboard controller. 1998-10-27 20:19:24 +00:00
rnordier
b845950ce7 biosboot compatibility fix: change behavior of backspace in getstr().
Noticed by: abial

Optimize away a few bytes to make space for the above.
1998-10-27 20:16:36 +00:00
msmith
2ca24369c0 Clean the ${BASE}.sym file as well. 1998-10-23 22:32:27 +00:00
msmith
15fb469d2d Remove a debugging copy of offsetof() that snuck in. 1998-10-23 22:30:52 +00:00
msmith
0fc1f23a6a Enable the PCI BIOS PnP enumerator. 1998-10-23 22:29:19 +00:00
msmith
186b62dab2 PnP enumerator using the PCI BIOS. This is needlessly complex due to the
lack of a simple "enumerate all PCI devices" function.
1998-10-23 22:29:08 +00:00
msmith
6149131893 PnP BIOS enumerator; mostly useful for hunting PnP devices that are supported
by the system BIOS rather than supporting ISA PnP.
1998-10-22 20:25:06 +00:00
msmith
2cb346f288 Add a dependancy on the BTX crt0 object
Add the biospnp handler to the pnp handler array
Drop some old debugging code
1998-10-22 20:23:58 +00:00
msmith
0d28177be8 Add biospnp.c 1998-10-22 20:23:15 +00:00
msmith
472b37dea8 Pop the return address off the stack before making a V86_CALLF call;
this allows us to implement what look like C function calls from user
space "directly" to v86 mode code.  (Used for calling the PnP BIOS)
1998-10-22 20:22:07 +00:00
msmith
238c591219 Bye-bye setdefs. 1998-10-21 20:11:03 +00:00
msmith
edf2081f84 - Enable PnP and ISA PnP code.
- Use the ISA PnP enumerator.
 - Use the new linker set code, throw out the gensetdefs stuff.
 - Produce an intermediate loader image that has symbols stripped, to aid
 - in debugging.
 - Supply ISA port access functions required for ISA PnP
1998-10-21 20:10:33 +00:00
msmith
702529216c Don't depend on being part of the kernel tree. If we are, use the kernel's
<machine> includes rather than the system's.
1998-10-21 20:07:57 +00:00
rnordier
f8807b8fc1 Make serial port, data format, and bps configurable. 1998-10-20 20:20:48 +00:00
rnordier
59abe72c15 Make configurable (a) whether to use int 0x13 extensions; (b) timeout
value.  Ignore failure to update mbr sector.  Disable interrupts while
using extended registers.  Default to F1 not F2.
1998-10-19 19:13:53 +00:00
rnordier
d3a9e969df Set BINMODE to 444. 1998-10-17 14:20:25 +00:00
rnordier
8671c8b39b Fix some glitches in the input routine:
Don't display a \b if not acting on it.
Don't process binary zero chars (which result from pressing function
keys, etc. on the PC).
1998-10-17 11:25:05 +00:00
rnordier
ce63af0fef Having probed the keyboard, turn off the -P flag. 1998-10-17 10:35:15 +00:00
rnordier
638a858945 Treat all options as toggles (ie. -c -c is the same no -c). Since
the boot.config settings are persistent, this seems to provide a
useful override capability, and should break only on broken
boot.config's.

Output a cosmetic newline if booting with no input.
1998-10-17 09:50:09 +00:00
rnordier
19b83af292 biosboot compatibility fix:
If we have a boot.config command, display it.
1998-10-17 09:16:01 +00:00
rnordier
ebcd17d6c6 biosboot compatibility fix:
Read boot.help before parsing boot.config.  We were parsing
boot.config first, which could result in boot.help being read
from a different location (or not found), which would probably
just cause surprise, without being useful.
1998-10-17 09:01:13 +00:00
rnordier
764f911a88 Fix path to sio.s 1998-10-15 22:08:13 +00:00
rnordier
0b71e4f0b7 Add serial, dual, and probe-keyboard support. 1998-10-15 20:04:21 +00:00
peter
d1bde99276 Get the last used address via a more conservative method, don't depend
on the module chain being in increasing address order.
1998-10-15 17:06:36 +00:00
rnordier
fa52c3954a Activate boot2. 1998-10-14 20:40:56 +00:00
peter
5e3acbf57e Try and get the sys/* and machine/* includes via relative paths. This
saves having to do a 'make includes' after touching any header file for
the boot code.
1998-10-14 07:08:16 +00:00
peter
0966fead52 Align to sizeof(long) rather than sizeof(int32_t). It needs to be
long because this code is shared with the alpha.  I hope the alpha can
read 32 bit ints at 32 bit alignment (vs. 64 bit alignment).
1998-10-14 05:07:23 +00:00
rnordier
f844028be7 Fix btx include path. 1998-10-14 01:53:56 +00:00
rnordier
e4f3dfea8d Include <bsd.prog.mk>. Add install target (to /boot for now). 1998-10-14 00:24:16 +00:00
rnordier
828b808519 Fix flow of control after directory listing; enable EDD support;
cosmetics.
1998-10-13 23:43:38 +00:00
rnordier
0cb607c6dc Make v86.ctl default more explicit; simplify read error-handling;
twiddle.
1998-10-13 23:00:47 +00:00
rnordier
a168d3cb17 Adjust NDEV value.
Optimize reading of system time.
1998-10-13 22:17:05 +00:00
rnordier
4c49cf4675 Change to a 15-sector boot2.
Refine slice-handling.
1998-10-13 21:35:42 +00:00
rnordier
05e05b3c64 Don't use an absolute path to objcopy.
Noticed by: Scott Mace <smace@intt.org>
1998-10-13 18:29:18 +00:00
rnordier
38a0335208 Improve drive recognition and handling. 1998-10-13 17:41:06 +00:00
rnordier
e3811b3bae This commit was generated by cvs2svn to compensate for changes in r40269,
which included commits to RCS files with non-trunk default branches.
1998-10-12 21:16:26 +00:00
rnordier
0a456c31da New boot blocks: support for /boot/loader; a.out & ELF; cyl > 1023;
multiple 0xa5 slices; etc.
1998-10-12 21:16:26 +00:00
rnordier
c4aec13535 New boot blocks: support for /boot/loader; a.out & ELF; cyl > 1023;
multiple 0xa5 slices; etc.
1998-10-12 21:16:26 +00:00
rnordier
e0698462f3 Drop .MAKEFLAGS: hack. 1998-10-12 02:05:44 +00:00