ADFS is a IDE instance of the filecore filesystem so rename ADFS to FILECORE
to reflect the underlaying filesystem and to bring this in line with the
filecore filesystem in the tree.
of a lookup_wildcard arg; simplifies the logic a bit.
* when assigning ephemeral ports in in_pcbbind(), always call
in_pcblookup_port() with lookup_wildcard=1, so that ephemeral port
allocation on sockets with SO_REUSEADDR set won't potentially bind to a
port in use by something else (principle of least surprise).
addressing and disk changing code. Separate disk addressing into three layers.
(virtual: ustar format space spanning volumes, logical: format space relative
to current volume, and physical: standard meaning). Compute a checksum of the
disk 0 8k label area, and define a label for disk 2, 3.... Detect incorrect
disk changing order and attempt to recognize our disk 0 from its checksum.
though it is gzip'ed; we want the first scan through the FS to open the file.
Print out the number of bytes free on disk 2. Label disk 2 with it's volume
number and tack on a bunch of label comments...date created, md5 of disk1 of
volume set...
Use information passed from via the boot arguments to determine which
device to use as the console.
Add support for initialising the CATS ISA subsystem.
During the early bootstrapping use fcomcnattach()/fcomcndetach to enable
debug and diagnostic information to be sent to the diagnostic serial
port. This is only used during the early part of initarm() until things
have been relocated and the real console can be initialised().
This is not nice and a better solution is needed. Really this should be
done when the PCI-ISA bridge is discovered but it is possible that
some PCI interrupts may be routed via the ISA interrupt controller
and thus this needs setting up first.
controller.
(I'm not happy with this approach but it works so I'll use it for the
moment until I complete run-time selection of the interrupt handling based
on recognised hardware).