Mail Archives: opendos/1997/07/09/08:55:06
Some comments (quickly, while I can post :)
* We should have a way of booting various different kernals.
eg: IBMBIO.SYS (for XT's)
IBMDOS.SYS
COMMAND.COM
IBMBIO2.SYS (for 286's) IBMBIO2P.SYS (for 286's with kernal above 1mb)
IBMDOS2.SYS IBMDOS2P.SYS
CMD286.COM (/EXE) CMD286P.COM (/EXE)
IBMBIO3.SYS (for 386's) IBMBIO3P.SYS (for protected mode)
IBMDOS3.SYS IBMDOS3P.SYS
CMD386.COM (/EXE) CMD386P.COM (/EXE)
This will allow us to optimise the kernal for whatever processor the
current machine is running. Especially optimising for 286's should give a
conciderable size/speed improvement. CMD.EXE is the command line processor
for windows NT, so using CMD*.EXE shouldn't cause any problems. I believe
that this can give OpenDos a definate advantage in the world. Being able to
use 32bit memory moves, 286+ SHL x,y, and ENTER/LEAVE should give us a
smaller, faster kernal. Being able to put the kernal above the 1mb mark
would give us an advantage of having almost no base ram usage.
Also using a boot manager that can boot Linux would be a definate advantage.
The boot manager can pass a "parameter" to the kernal, the same way that
Linux does allowing for different config.sys and autoexec.bat's.
This could be implemented by having some space at the beginning of the drive
reserved for the bootmanager by playing with the "number of reserved sectors"
in the boot sector. OR: boot a "bootman.sys" in the root directory,
modification of the boot sector would therefore be minor. This program
should be smart enough to display a logo, popup a nice menu with various
levels.
I'd also like to see a way of setting environmental varables in menu's:
eg:
Menu one:
Load Networking : SET Networking=Yes
Don't Load Networking
Menu two:
use QEMM : Set MemoryManager=QEMM
use EMM386 : Set MemoryManager=EMM386
no memory manager.
It could be argued that these could be done using DEVICE?=, except that
Networks and QEMM are more than one program, it would be nice to answer
"yes" or "no" and have it cover all of the associated programs.
* I'm working on a TCP/IP stack, its currently 1/2 done and needs a lot
more work (and a internet account to test it on fully, I'm currently using
a PPP link to a Linux box as the only thing that does TCP/IP and the linux
box is commonly busy). It currently does internal Loopback, Partial
type 6 crynwr (Serial/PPP, its still buggy), and a bit of blue book ethernet
crynwr (the bits that overlay with type 6 :), and it does UDP completely :)
ICMP/TCP are yet to be written :)
Perry Lorier
- Raw text -