Mike Smith
8879e57b3e
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
Robert Nordier
9244e1a412
Avoid interruptions while talking to keyboard controller.
1998-10-27 20:19:24 +00:00
Robert Nordier
c589107988
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
Mike Smith
b6542d2e4f
Reserve some space for the stack in the region we recover from the initial
...
bootloader.
Submitted by: dfr
1998-10-24 00:31:21 +00:00
Mike Smith
0cae710c49
Clean the ${BASE}.sym file as well.
1998-10-23 22:32:27 +00:00
Mike Smith
4558ccdf6f
Remove a debugging copy of offsetof() that snuck in.
1998-10-23 22:30:52 +00:00
Mike Smith
c93cd32637
Enable the PCI BIOS PnP enumerator.
1998-10-23 22:29:19 +00:00
Mike Smith
a1c0b1c5c5
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
Mike Smith
8d35fb65a0
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
Mike Smith
051837da04
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
Mike Smith
13aedae3d7
Add biospnp.c
1998-10-22 20:23:15 +00:00
Mike Smith
f41c619d3d
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
Mike Smith
60edbabff6
Export an interface for presetting the ISA PnP read port address.
...
Make the EISA ID formatter generally available
1998-10-22 20:20:51 +00:00
Mike Smith
b259863db2
Bye-bye setdefs.
1998-10-21 20:11:03 +00:00
Mike Smith
d8ef941c2f
- 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
Mike Smith
c90625d230
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
Mike Smith
eddbe21def
Make ISA PnP work. This successfully enumerates as many ISA devices as I
...
can fit into my test machine.
- Move to using STAILQs rather than ad-hoc singly-linked lists.
- Use a mostly procedural interface to the PnP information. This
improves data-hiding.
Implement a new linker-set technique (currently on i386 only but should work
on Alpha as well). This is a good candidate for replacing the current
gensetdefs cruft completely.
1998-10-21 20:07:05 +00:00
Robert Nordier
1a8efde980
Make serial port, data format, and bps configurable.
1998-10-20 20:20:48 +00:00
Mike Smith
c98405d7d1
Hex constants should only have one '0x' prefix.
1998-10-20 02:43:28 +00:00
Robert Nordier
4e108bf052
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
Doug Rabson
ed7aeb1bb6
Reclaim the 48k used by the first bootstrap stage by adding it to the malloc
...
pool.
1998-10-19 09:12:41 +00:00
Doug Rabson
bcaa5f75b7
Rename boot2 to loader.
1998-10-18 19:05:07 +00:00
Robert Nordier
f59f5db544
Set BINMODE to 444.
1998-10-17 14:20:25 +00:00
Robert Nordier
ae99ddc79e
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
Robert Nordier
918ddbed16
Having probed the keyboard, turn off the -P flag.
1998-10-17 10:35:15 +00:00
Robert Nordier
93d51dcaf9
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
Robert Nordier
3044a22097
biosboot compatibility fix:
...
If we have a boot.config command, display it.
1998-10-17 09:16:01 +00:00
Robert Nordier
7fa25d805a
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
Peter Wemm
a6575097c6
Load the first page of the file and use the headers in it. This should
...
avoid the need to seek back to offset zero which is causing trouble on
the Alpha with a gzipped kernel.
1998-10-17 03:06:38 +00:00
Mike Smith
d800cebf61
Turn of disk debugging by default (suppress annoying "partition marked as
...
unused" diagnostic on floppies).
1998-10-16 19:26:11 +00:00
Peter Wemm
3323768d99
"fix" the gzipped kernel load problem by having the loader check that it
...
can seek back to the first PT_LOAD and doing a close/reopen if it cannot.
This is because the first PT_LOAD section includes the ELF headers.
This fixes gzipped kernels on the i386, it should solve mike's problem
for the Alpha.
1998-10-16 03:04:15 +00:00
Robert Nordier
67ac585edf
Fix path to sio.s
1998-10-15 22:08:13 +00:00
Doug Rabson
94bb328025
Change some printfs so that ELF_VERBOSE prints meaningful values on the alpha.
1998-10-15 21:56:47 +00:00
Doug Rabson
6214a95af0
Fix the bootinfo so that the right values actual make it into the kernel.
1998-10-15 21:55:58 +00:00
Robert Nordier
da55c91100
Add serial, dual, and probe-keyboard support.
1998-10-15 20:04:21 +00:00
Peter Wemm
f03d6f87b3
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
Robert Nordier
898adc1c96
Activate boot2.
1998-10-14 20:40:56 +00:00
Peter Wemm
eb49863f1b
Link fdboot to boot1 as well.
1998-10-14 13:19:52 +00:00
Peter Wemm
da6c15d597
Initial attempt to update the Alpha loader and kernel to use the machine
...
independent elf loader and have access to kld modules. Jordan and I were
not sure how to create boot floppies, and the things we tried just made
SRM laugh in our faces - but it was upset at boot1 which was not touched
by these changes. Essentially this has been untested. :-(
What this does is to steal the last three slots from the nine spare longs
in the bootinfo_v1 struct to pass the module base pointer through.
The startup code now to set up and fills in the module and environment
structures, hopefully close enough to the i386 layout to be able to use
the same kernel code. We now pass though the updated end of the kernel
space used, rather than _end. (like the i386).
If this does not work, it needs to be beaten into shape pronto. Otherwise
it should be backed out before 3.0.
Pre-approved in principle by: dfr
1998-10-14 09:53:25 +00:00
Peter Wemm
eb9022e791
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 Wemm
2a26e9ea83
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
Robert Nordier
ee2e4f9b32
Fix btx include path.
1998-10-14 01:53:56 +00:00
Peter Wemm
adf45b4bb5
Tweak the output one more time again. The kernel or module pathname
...
is useful, and usually fits all on one line with the load sizes.
1998-10-14 00:41:17 +00:00
Robert Nordier
59ea046e5d
Include <bsd.prog.mk>. Add install target (to /boot for now).
1998-10-14 00:24:16 +00:00
Robert Nordier
757ee5cca9
Fix flow of control after directory listing; enable EDD support;
...
cosmetics.
1998-10-13 23:43:38 +00:00
Robert Nordier
b2848194f5
Make v86.ctl default more explicit; simplify read error-handling;
...
twiddle.
1998-10-13 23:00:47 +00:00
Robert Nordier
c71b9b3c24
Adjust NDEV value.
...
Optimize reading of system time.
1998-10-13 22:17:05 +00:00
Robert Nordier
fd4afc6487
Change to a 15-sector boot2.
...
Refine slice-handling.
1998-10-13 21:35:42 +00:00
Robert Nordier
8f65b6a695
Don't use an absolute path to objcopy.
...
Noticed by: Scott Mace <smace@intt.org>
1998-10-13 18:29:18 +00:00
Robert Nordier
0ad50c1c9d
Improve drive recognition and handling.
1998-10-13 17:41:06 +00:00