• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

TCP/IP for Classic Macintosh

Dog Cow

Well-known member
The first few link-up events are always exciting.  Must feel good :)
It felt good to get to bed, actually. ;-) It was a late night that night when I finally got the first link-up.

I lost a couple days last weekend because I put in some debugging code to show the Debug Window and then print hex dumps + status messages like what you see in the screenshot. In the irony of ironies, the debug code itself had bugs and needed to be debugged. :p I also spent 2 days poring over the source for MacPPP 2.01. That gave me a lot of insight on how to architect the whole thing.

As of 2 days ago, I now feel like I have a solid understanding of the PPP protocol. Two weeks ago, I couldn't tell you thing one about it.

At some point my code is going to be entirely interrupt-driven and will use async I/O, completion routines, and VBL tasks.

 

Dog Cow

Well-known member
Attention beta testers:

Please send me an email (address below in signature) if you would like to receive a beta test copy of the PPP code. The PPP code should work on any Mac with serial ports, running System 1.0 through Mac OS 9.2.2.

Great progress again since last time. It turns out that once you get the LCP logic written, you also get IPCP for free. So my PPP code can now establish both LCP and IPCP over a PPP link. And without debug code, it's only around 3K, so it's close to my original estimate.

PPP is not complete. I'd say it's 80% complete. However there's enough written to establish a link in all the scenarios I've tested. If the PPP peer is reasonable and doesn't insist on options like authentication or TCP header compression, my code will work with it from my tests so far.

I would especially like to have Mac 128K owners and Lisa 2/Macintosh XL owners test this code for compatibility. And I'd like to know if it works against other PPP implementations. So far I've only tested my PPP against: itself, Mac OS X's pppd 2.x, and MacPPP.

I have a few more tweaks to make, but expect to distribute beta copies tomorrow to anyone who emails me.

 
Last edited by a moderator:

Dog Cow

Well-known member
I already distributed PPP beta 1 to several beta testers who inquired by email. Everyone is welcome to beta test. Just send me an email. You'll find my address below in my signature.

The purpose of this PPP beta test is to check that my PPP code will establish a PPP connection using LCP and IPCP to another peer.

 

Dog Cow

Well-known member
Last week I began porting Internet code from Marina and today my TCP/IP stack is now able to reply to ICMP echo request (pings). Progress log is on my web site and I'll be making all updates there.

 

demik

Well-known member
Interested to tinker with my 512k. It has a FreeBSD next to it which can serve as PPP server. Would that help ? Will a null modem cable be enough ?

 

Dog Cow

Well-known member
Beta 4 due to be released this weekend. Beta testers welcome. My email address is below in my signature.

 
Last edited by a moderator:

Mk.558

Well-known member
bbraun should be also know a thing or two about these protocols. For FTP, a custom program will probably have to be written.

 

Dog Cow

Well-known member
bbraun should be also know a thing or two about these protocols. For FTP, a custom program will probably have to be written.
Is he still active in the community? Sabina TCP is incompatible with all other applications, so I plan on writing them too.

 

Mk.558

Well-known member
Good question. His profile on his(?) website shows no recent posts in over a year. Maybe he's on a break. Can't blame him -- look at some of the work he's done.

FWIW the lightest FTP program that actually is nice is Fetch 2.1.2, I"m a big fan of it, but it's also about 500KiB on disk and uses about the same in memory. The trusty old Info-Mac archives may have something? https://web.archive.org/web/20160418233005/http://archive.info-mac.org/

I doubt any of that is meant for super thin resource requirements. Probably shareware/freeware, I don't think they had much else up there. AFAIK most people had Pluses if they were fooling around with TCP stuff back in the day, or better, if they had a 128K/512K they were on BBS using a terminal emulator.

Just thinking about the FTP program, Font/DA Mover .... *walks over to the SE/30*...hold on, I need a memory utility to find out how much it uses, will update shortly... Anyways is pretty lightweight and can show directories/copy/move things over, I can't imagine that being that far off from the minimum you need to browse/navigate/PUT/GET files remotely.

EDIT2: Right here we go. There's two programs I know of (I hope there's a few more) that can show memory usage. MemINIT 2.0.5, which can be found readily on umich's public software source (I'm aware that 68kmla is not a file sharing source, but it's freeware), and Memory Mapper. The former...says it needs at least System 5.0 (S4.2/4.3, F6.0) and a 512Ke. It works by offering a pie chart which overlays the Apple menu, and/or drawing a 1px line over the screen image which is used like a line graph. I don't think this will screenshot properly because it's hooking into the Vertical Blanking task. So below are two images: one showing the CDEV itself, showing the settings, and the other with Font/DA Mover open.

Each tic mark denotes 64KiB. There is one white 1px mark right above the cursor. Based on that we can judge that it's using roughly 96KiB, maybe 100KiB. That's going to be pretty tight on a 128K, but not impossible (I'm accounting for the TCP and FTP routines). Then you also need space to copy files in blocks in memory, I think.

IMG_0212.JPG

IMG_0213.JPG

 
Last edited by a moderator:

Mk.558

Well-known member
Looks like I went past the edit time limit. I was actually wrong about the screenshot part, it is captured by the screenshot feature, intact. I guess I got thrown off by when I first used it, on a color IIci. From the way it looked it appeared to have drawn the 1px line above the actual menu bar itself. Could be wrong about that too.

Carry on. I'm getting way off track from the topic.

 

Dog Cow

Well-known member
Thanks for looking into this. I have a concept for FTP where you would have two windows full of icons. It would work like the Finder. To download, you drag an icon to your local folder. You could choose Get Info on an icon to find out its file size, type, and creation/modification dates.

 

Dog Cow

Well-known member
Beta 5 is now out for testing. Features the first real TCP/IP application, a prototype POP3 email client. It logs in and downloads messages and saves them as text files on your disk.

Email me if you'd like to beta test.

 
Top