the code size
is about 25KB for both a minimal V6 kernel and the TCP
stack, the rest is data.
That's impressively small; the MIT V6+ with 'demux only in the kernel'
was
40KB for the combined code (although I can't easily get separate figures for
the networking part and the rest).
I think my sentence was confusing: it is ~25KB each, so about 50KB combined.
The original V6 kernel was about 29KB (says here
https://www.tuhs.org//cgi-bin/utree.pl?file=V6) I've simplified the TTY driver, only
support one type of disk driver, dropped shared text segments, dropped FP emulation.
Remains about 25KB. Note that the SLIP is merely via a "super RAW" mode on the
TTY driver, so I don't need to include the bulky IMP interface driver. Even at 30KB,
the V6 kernel must have offered the best bang/buck ratio in the history of software,
imho.
The Gurwitz
code also has an Ethernet driver (note ARP was not invented
yet)
How did it get Ethernet addresses?
:^) See here:
https://www.tuhs.org//cgi-bin/utree.pl?file=BBN-Vax-TCP/bbnnet/netconf.c
"Someday this will be generated from the configuration file." I think later it
did, but I don't have that code.
a project to
make V6 run ... on a TI990 clone
Oh, about the basic part of this: did you start with a plain V6 distribution?
So you've had to do all the machine language stuff from scratch (and modify
things in C like estabur())?
What are you using for a C compiler ? Is there one out there, or did you have
to do your own?
I has been a journey. I started with the 2.11BSD compiler and ported that to the TI990
architecture (more precisely the 9995 chip, which is similar to a T11 chip).
I debugged that to make XINU run, and then moved on to LSX (as recovered by the BK-UNIX
project). Then I started with the V6 kernel from the TUHS website and made that work. Dave
Pitts made it work on a real TI990 (he has a TI990/10 and a TI990/12 in working order).
So, yes, I did bootstrap all the low level stuff from scratch.
After a three year hiatus I resumed work on this, integrating the Gurwitz TCP stack.
The journey is documented here:
http://1587660.websites.xs4all.nl/cgi-bin/9995/timeline
The network code is in a different tree, I'll move it over to the above tree over the
weekend.
Paul