ZMODEM
en.wikipedia.org
en.wikipedia.org
Now I feel old. I remember when this was new and clever. Made downloading from BBS's much nicer over XModem. At 2400 baud or whatever was current then!
I even interned for a small company one summer that implemented one of these for a timesharing service using Prime minis.
Then came Ymodem which fixed this, and then Zmodem which was considerably faster (windowing protocol) and allowed resuming interrupted transfers and handled CRC checksums.
Saving 400+ for a Courier HST to go an insanely fast 12k (very rarely). They beat everything else at holding a line though.
I had a project ~15 years ago with several thousand FAX Clients, and interestingly we had problems with every hardware card or modem we used except the (even then quite old) U-1496E which worked without flaw, whatever customer send data.
Talking of modems, a place I worked around '90 had racks full of modems for customer dial-in. What never occurred to me until I saw it was each one needed a phone line - half the back wall was covered with phone points!
Some years later a project was trying to do caller ID to computer. Simple idea, ridiculous number of issues. We found one modem that actually talked UK CLI of the dozens that claimed to. UK Cable spoke US CLI.
Some years later, just before BBSes were obsoleted by the internet, several multiplexing protocols appeared which let you chat or play a MUD while downloading or even upload and download at the same time.
Can't remember any names, but these protocols were only popular for a very brief time before the internet took over.
I also recall some BBSes survived a while into the internet age by adding telnet ports. You ran your normal dialer software with a telnet driver that took the hostname as the phone number and then would end up running ZModem and the likes over telnet.
Shout out to the 519!
If your terminal emulator supports it, it will see the trigger sequence emitted and start the modem protocol over your ssh connection and save the file.
Since it runs over your current ssh connection it's perfectly secure.
It's so much easier then switching to a local terminal to use scp to get or put a local file. Sure, I know it's not the most efficient protocol but with the speed of todays networks the kind of files you're dealing with when doing administration or development are more quickly transferred by not having to do the context switch.
If there's a mac terminal that will do scp that has shell integration on the host. I'd switch to that, but I haven't found one. Is there?
[1] https://grack.com/blog/2011/10/26/automatic-file-transfer-in...
Nowadays we have an embarassment of riches of information and community and expressiveness and usability (when the APIs aren't locked down by DRM and trade secrets)
These days my computer is logged onto a number of computers via various protocols all at the same time (especially if you torture the idea a bit and consider each web site open an anonymous login).
The project was cancelled in 2011, and according to the web page it's open source now, and I think that the open sourcing didn't happen until then.
Really? IIRC, in Jason Scott's excellent BBS documentary (you should go watch it. Like, right now. It's that good), Thom Henderson (from SEA. Remember them? I don't, because I wasn't alive. Which is why I have to rely on documentaries) said that it was expected in UNIX circles, which is where Kermit originated.
Or were you on PC? I don't know, I wasn't alive.
Kermit was not the only software you could get source code for. However, the entire ecosystem was much smaller than what exists today.
I'll concede it may have been different in more academic environments.
Of course, in the early days of unix, you got the OS in source form, but those were long gone by then. AFAIK, a lot of independently developed utilities were distributed in source form, in part because it was common to have to edit the sources and compile yourself if you weren't on the exact same architecture as the author. But that's just what I've heard.
Agreed. The BBS documentary is superb and really, really entertaining and engrossing. Especially the episode(s) on fidonet.
> IceSoft Software presents IceZmodem, an amazing
> new Zmodem file transfer protocol with 100%
> standard Zmodem compatibility and many enhancements.
> While transferring files you can chat with the
> remote user, shell to DOS, edit a text file,
> play Digital MOD file Music, or play games.
> You can even get 2 pages of system information about
> the remote computer. Sysops can view the dropfile
> to find out who is using the BBS. It has one of the
> best status displays ever and includes a Screen
> Saver. TurboTrans, a Zmodem speed booster, has
> helped to get 99% efficiency on some file
> transfers.
> This amazing protocol simply has to be seen to
> be believed! Supports Sound Blaster or DACs
> for music.
Kermit, zmodem, bbs, baud.
South Park's Member Berries are in full force here.
CoCo forever!
But I think most of us would recognize baud, even if we've never worked with anything that you would measure in it.
I miss the BBS days. Very few non-geeks around. The internet just isn't the same.
I think my mention of zmodem in the audio tcp/ip post the other day gave rise to this post.
Which means I'm double marked ;-(
For example: "What, your Xmodem transfer always fails on the same block... oh, you most have xon/xoff flow control turned on. Try swapping that &K4 with an &K3 instead."
At one wacky point in my career, I ended up supporting a program "SPC" (software protocol converter), that flipped zmodem over an X.25 network to SNA to a mainframe. It ran on an OS2/Warp box. I wish I was making that up. I really do.
It was a layer over protocols like zmodem that rendered images as they downloaded. Think of that for a second. Modems were so slow that you could watch the image line by line render to decide if you wanted to continue on with the download. Yes they were porn images.
Compare to these days, where there's all kinds of crazy hard-core stuff available for free with a quick Bing search, in both still-photo and video.
Here's the spec for gif89: https://www.w3.org/Graphics/GIF/spec-gif89a.txt
Here's an example BBS file list (or CD Rom dump) with some utilities, including GIFLink (and others). http://www.terminate.com/download/factory.txt
GIFLK112.ZIP 198.803 19-10-93 GIFLink v1.12 - View transmitting GIF images while downloading
What people might not know is that GIFLink cost money. $30! But that would easily be saved if it reduced the amount of images being downloaded.
ftp://ftp.retronn.de/dos/dfue/TER500/DOCS/PROTOCOL.DOC
GifLink Filename: GIFLK112.ZIP Price: $30
A Zmodem that allows you to view GIF images while you download. Maybe a nice
feature if you really spend hours and hours downloading GIFs.
I'm not sure when that price was active. (That text has a copyright of 1994 to 1997).Maybe the file is available here? http://cd.textfiles.com/expandin/BBSUTIL1/
Zmodem was more of a fast motorcycle. Your data might not always make it there alive in a rainstorm, but it was quick and and had fun doing it.
Speaking of things that I wasn't there for, did you know TinyTIM's still up? Sketch (perhaps better known around here as Jason Scott) hasn't actually killed it because it's so cheap to run. Mind, nobody's actually around anymore, but you can explore the relics of a once-great civilization over at http://www.tim.org/.
Not so, of course - but unlike Xmodem and Ymodem which acknowledged every packet (and slowed things down), Zmodem would not constantly ack back to the host unless there was an error... So this triggered the modem's inactivity timeout, since despite the constant stream of data coming down from the remote system, there were no "keystrokes" or other packets travelling in the other direction. Hence, after X minutes... Line drop.
Easily sorted with a few AT commands, eventually. :)
So I wrote rzh, "receive zmodem here". Navigate to where you want to receive files, run rzh (which gives you a subshell) then ssh anywhere. Bounce through six machines if you want. When you sz a file, rzh will receive it.
https://github.com/bronson/rzh
Haven't touched it much in a decade, alas.
I'm surprised no-one mentioned the venerable UUCP. It has more variants than X/Y/Zmodem combined: at least 12.
My OS of choice was OS/2 Warp. It could handle a full-time, two-node BBS and still allow me to do other tasks without skipping a beat -- all on a 486 with 8 MB of RAM!
I also remember being rather envious of how cool Renegade, WWIV and company looked. Not to mention the more exotic software powering the, er, rather more questionable boards: software with ominous names like ViSiON-X or Oblivion/2... But after trying them all, I eventually switched from TriBBS to PCBoard.
It was the right choice: I loved the flexibility of PCBoard's scripting language and C SDK. Adding functionality to my BBS is what prompted me to pony up for Borland's Turbo C++ and get serious about programming.
Slow as hell though, but then I didn't grow up with this stuff.
Last time I needed it, I also ended up using xxd to get the zmodem binary on to the device. Fun times, fun times. The device was buried in a concrete box under a frozen highway, and the Ethernet died, so we had to find a way...
... and shoutout to the 514 ;-)