Sent from my iPhone
On Nov 7, 2015, at 13:28, Clem Cole
<clemc(a)ccc.com> wrote:
hmm...
0.) adding pty's is pretty easy. Just grab the BSD code and start hacking. Grab
the original version of Steven's book - he will talk to you through it in detail.
It's a two drivers, the control (ptyX) and the slave (ttypX) . Having them in your
system is handy anyway for a number of things besides networking (like the expect(1)
program).
1.) Larry's memory might be better than mine but I did not think streams shows up
until System V.3. I have an old PWB 3.0 (System III) manual and see no evidence of
streams in it. Given that Dennis did not create them until the V8 tty driver, and then
later, the Summit guys use the streams interface for networking, I'm not surprised
its not in System III. So I think using streams is likely to be a dead end.
2.) Perry Flinn, Bob Doolittle, and I spliced BSD sockets and the 4.2 stack into a System
III -ish kernel for the Masscomp's RTU. So it's definitely doable - although
work. The biggest issue is that the memory systems between BSD and System III are
different. So Rob Gurwitiz's old mbuf code will need to be hacked. Definitely get a
copy of Steven's, maybe the current BSD book and go for it.
3.) One other thought if all you want to a solid IP/TCP network stack and can forgo the
sockets API, then you might try to find the old BBN distribution for BSD 4.1 (Vax) --
which is what Joy started with[remember - Berkeley did not have contract for IP/TCP
support for the Vax, BBN did - joy took the BBN code and redid it). By definition its is
a FOSS - because the US tax payer paid for it - although I'm not sure where to find
the code these days (google in your friend). Anyway, the BBN stack splices into the
kernel with one small hook (a hack in nami - similar to the MIT ChaosNet stack) but
otherwise things just look like devices: i.e. open("/dev/tcp",...) or instead
of socket(...) There was a later version/distribution from BBN that included the BSD
sockets code as an update for 4.2, but was the BBN guts (we actually used that version for
the Stellar machine - splicing it into a System V3 based kernel after adding the BSD
APIs).
I have 4.1a and c source I think.
4.) It strikes me that it would be easiest of all to just take something like a $20-$30
"Wiznet" 5100 board from Sparkfun and interface it to the system either via
serial or better if you have a parallel port. Then run the IP/TCP stack externally.
This is what we do for Arduino's and other small micro controllers - the board is
well documents and easy to talk too. They have both RJ45 style and wireless too. I have
a hand full of them here and am pretty happy with them for what they provide.
The fact is that for the Masscomp system originally, we ran the IP/TCP stack in a
coprocessor (in that case an 186) for realtime reasons (we did not want networking to
interrupt the main processor which was 10MHz 68K). But when we finally went to the
'020 the processor was so much faster, we put the stack into the kernel and just use
the co-processor as a very large buffer.
Anyway - the idea is that the system hacking for a tcp stack become very small, just a
driver. You don't get things like UNIX domain sockets, but if what you want it
telnet/ftp and the like - a cheap coprocessor like the Wiznet should work fine.
Clem
On Sat, Nov 7, 2015 at 2:20 PM, Larry McVoy
<lm(a)mcvoy.com> wrote:
So this seems pretty tough, 16 bit machine and all. If you were to get
it to work it would probably be with Lachman's STREAMS based TCP/IP.
No idea if that was open sourced.
On Sat, Nov 07, 2015 at 08:03:58PM +0100, Oliver Lehmann wrote:
Hi,
i have an old Z8001 based SysIII variant and I would love to have
TCP/IP on it (SLIP first, later with a homebrew ethernet device).
I wonder if someone ever saw TCP/IP available on a System III?
I have lets say 90% of the kernel running on it as source
available and I started digging in the available 4.2 BSD sources.
It looks like there would be much to do to hack in TCP/IP on my
own (no IPC, no Net, no PTY, no....).
I got K5JB running (userland TCP/IP implementation) after I fixed
some C code because the C Compiler available on the system is.....
kinda limited.
telnetd is of course not working as there are no pseudo-teletypes
on this SYSIII. At least I got ping, echoping and ftpd up and
running via SLIP
(10.1.1.2 is my SysIII box:)
# ping -c3 10.1.1.2
PING 10.1.1.2 (10.1.1.2): 56 data bytes
64 bytes from 10.1.1.2: icmp_seq=0 ttl=254 time=316.317 ms
64 bytes from 10.1.1.2: icmp_seq=1 ttl=254 time=297.328 ms
64 bytes from 10.1.1.2: icmp_seq=2 ttl=254 time=296.369 ms
--- 10.1.1.2 ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 296.369/303.338/316.317/9.186 ms
# ftp 10.1.1.2
Connected to 10.1.1.2.
220 FTP version K5JB.k37 ready at Tue Apr 30 22:25:47 1991
Name (10.1.1.2:root): test
331 Enter PASS command
Password:
230 Logged in
ftp> get sa.timer
local: sa.timer remote: sa.timer
500 Unknown command
500 Unknown command
200 Port command okay
150 Opening data connection for RETR sa.timer
2571 0.53 KB/s
226 File sent OK
2571 bytes received in 00:05 (0.48 KB/s)
ftp> get wega
local: wega remote: wega
200 Port command okay
150 Opening data connection for RETR wega
98723 0.51 KB/s
226 File sent OK
98723 bytes received in 03:05 (0.51 KB/s)
ftp> exit
221 Goodbye!
#
So I wonder if someone got anything SYSIII -> Net/TCP/IP related
which could help me in any way to get a SYSIII kernel capable of
TCP/IP and PTYs to get a telnetd up and running via SLIP is my
first goal.
Regards,
Oliver
_______________________________________________
TUHS mailing list
TUHS(a)minnie.tuhs.org
https://minnie.tuhs.org/mailman/listinfo/tuhs
--
---
Larry McVoy lm at
mcvoy.com http://www.mcvoy.com/lm
_______________________________________________
TUHS mailing list
TUHS(a)minnie.tuhs.org
https://minnie.tuhs.org/mailman/listinfo/tuhs
_______________________________________________
TUHS mailing list
TUHS(a)minnie.tuhs.org
https://minnie.tuhs.org/mailman/listinfo/tuhs