11 ms·
ZMODEM
- Clubber 10y agoWe used this in the BBS days.
- revelation 10y agoStill use this today, it's what you do with an embedded device when all you have is a serial line and need to get files on/off. Slow as hell though, but then I didn't grow up with this stuff.
- pmoriarty 10y agoScreen[1] contains an implementation of zmodem (and is one of screen's advantages over tmux). I've used it before on VMs on which I had a serial console but no network connection or other way to get/put files. [1] - https://www.gnu.org/software/screen/ https://www.gnu.org/software/screen/
- geocrasher 10y agoVery cool! I didn't realize screen had this. I've always used sz/rz when needed. It's kludgy but comes in handy every so often. I have it installed on all my linux boxes for that special occasion.
- tonyarkles 10y agoYup! It's only once every year or two that I've needed it, but damn is it a handy thing to have in your back pocket when nothing else works. 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...
- deleted 10y ago[deleted]
- boie0025 10y agoYes, Seeing the "ZMODEM" on the front page triggered some nostalgia... waiting for hours to download a few megabytes. At least ZMODEM supported resume!
- anexprogrammer 10y ago> Introduced 1986; 30 years ago 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!
- ghaff 10y agoThere were a bunch of different something-Modems around that time that fiddled around with window sizes, retransmission approaches, batch transmission, and so forth. In case anyone is wondering, there was a YModem (also developed by Forsberg) in addition to XModem and ZModem along with various variants. I even interned for a small company one summer that implemented one of these for a timesharing service using Prime minis.
- dsmithatx 10y agoI was 12 years old. I had a 2400 baud and ZModem was the second greatest thing that year. Watching Haley's comet on my birthday would be #1.
- hilop 10y agoHalley modems and Halley's comet!
- 10y ago
- RRRA 10y agoHave a look at zssh. ... and shoutout to the 514 ;-)
- robmiller 10y agoI was a little kid connecting to the US gov list of 800 number BBSes and always had fun choosing Kermit as my protocol, but ZModem was much faster!
- stan_rogers 10y agoThe trick was to split. ZMODEM down (or YMODEM before that) and Kermit up.
- tyingq 10y agoKermit was in the same space as Zmodem. I remember it fondly, as they were very progressive around "open source" way back in the early 90's, and probably earlier. They accepted what was essentially a "pull request" over USENET discussions forums from me to add a feature. http://www.kermitproject.org/ckfaq.html http://www.kermitproject.org/ckfaq.html
- nchelluri 10y agoThat's pretty cool, what feature did you add?
- tyingq 10y agoBasically a toggle to turn off character set translation for rlogin sessions, to get past an issue with network connected modems.
- lokedhs 10y agoExcept they were never open. You could download the code, but you were not allowed to distribute modifications to it. 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.
- tyingq 10y agoI did put "open source" in quotes for that reason. At the time, it what somewhat novel to be able to get the source code at all, and even more novel that the writers would accept code from end users to put back into the product.
- qwertyuiop924 10y ago>At the time, it what somewhat novel to be able to get the source code at all 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.
- batbomb 10y agoSee also BBCP: http://www.slac.stanford.edu/~abh/bbcp/ http://www.slac.stanford.edu/~abh/bbcp/ http://www.slac.stanford.edu/~abh/bbcp/bbcp.git/ http://www.slac.stanford.edu/~abh/bbcp/bbcp.git/
- chrisfinne 10y agoThis submission is a ploy by the NSA and advertisers to further refine their demographic slot of "old hackers". Kermit, zmodem, bbs, baud. South Park's Member Berries are in full force here. CoCo forever!
- qwertyuiop924 10y agoHey, I recognized all of that software save ZMODEM, and I'm not out of highschool yet! Then again, I only know about it because I read The Cuckoo's Egg, and am totally obsessed with computer history. But I think most of us would recognize baud, even if we've never worked with anything that you would measure in it.
- jcadam 10y agoOr recruiters are adding everyone who responds to their 'too old/overqualified' blacklists. I miss the BBS days. Very few non-geeks around. The internet just isn't the same.
- emmelaich 10y ago:-) 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 ;-(
- api 10y agoAhh, the BBS days. 513 represent!
- deleted 10y ago[deleted]
- lostcluster 10y agoI remember when we did our own zmodem implementation so we could bypass download limits. Large BBS' at the time had restrictions on how many KB you could download in a day, but they only counted completed file transfers. ZModem had a provision for restarting failed transfers, so it was normal for a transfer to fail before completion (call waiting!) and the user to come back later to finish it. Our implementation could receive the last packet successfully, then push the transfer back a few blocks (retries) and fail. Shout out to the 519!
- nchelluri 10y agoThat's awesome :) I would have loved to get my hands on that version.
- ConroyBumpus 10y agoLeech zmodem, scourge of the 713.
- nchelluri 10y agoWho remembers IceZmodem? A backwards compatible protocol that allowed you to play Tetris or listen to .MOD files while downloading... and if you were downloading from an IceZmodem capable host, you'd even get increased download speeds! http://textfiles.com/computers/DOCUMENTATION/izm-q&a.txt http://textfiles.com/computers/DOCUMENTATION/izm-q&a.txt
- nchelluri 10y ago> IceZmodem (IZM) v1.1 Protocol-Chat,DOS,Editor,MORE! > 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. - http://archives.thebbs.org/ra90c.htm http://archives.thebbs.org/ra90c.htm
- op00to 10y agoI remember this - so awesome. I seem to remember the Sysop could break in and chat with you too.
- raingrove 10y agoWasn't IceZModem fairly late to the game? I remember Texas ZModem was my primary ZModem software for a long time.
- cyberjunkie 10y agoThe sheer joy of the rare sights of decent transfer rates and counting every single 'block' progress. Wew!
- logotype 10y agoAh, the good old days. I ran a BBS in Sweden with ProBoard. Anyone else used that for BBS'es here?
- hn_user2 10y agoMostly wwiv in California as I remember.
- FigBug 10y agoI used SuperBBS and Remote Access.
- nsxwolf 10y agoTelegard and Renegade for me in Chicago (wwiv descendants)
- ucs 10y agoI ran TriBBS for years as a kid in the Maryland/DC metro area (301). 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.
- Clubber 10y agoC-Net in the C64 days, then WWIV when I switched to PC clones in 1990. Both platforms had full source code available. It's where I cut my teeth.
- codezero 10y agoThis immediately reminded me of GIFLink. 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.
- Grishnakh 10y agoI remember the "porn" images from the BBS days. They were pretty laughable really, usually just pictures of naked women, frequently showing only their bare breasts and obscuring the rest. I think they were frequently just scans from Playboy, which was rather tame. 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.
- nsxwolf 10y agoNo disrespect but you weren't calling the right BBSs.
- nsxwolf 10y agoAnd if you were too overeager you'd be "finished" before the image got down to the first nipple...
- DanBC 10y agoGif89 had interlacing, so people might not understand what GIFLink does. Here's the spec for gif89: https://www.w3.org/Graphics/GIF/spec-gif89a.txt 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 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/ http://cd.textfiles.com/expandin/BBSUTIL1/
- stevefeinstein 10y agoIt's still hard to match the convenience of moving files to and from a server with RZ/SZ. 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?
- rsync 10y agoI agree ... I forget to do this these days but in relatively modern days I used to use sz/rz all the time ... circa 2000-2004 I guess ...
- Grishnakh 10y agoI still use sz/rz on an almost daily basis, for doing embedded system development. The system I work with is only accessible over UART, so rz/sz is the only way to transfer files to the host PC (well, the only convenient way; the other way is through JTAG, which is a PITA, and only useful for imaging, not just transferring some small data file from the running system).
- housel 10y agoSame here. UART isn't always the only option on my platforms, but if Ethernet, WiFi, or USB gadget is unavailable for whatever reason, sz/rz (from Linux) or loady (ymodem, from U-Boot) is usually the next best choice. Minicom makes using these fairly convenient.
- mbreese 10y agoApparently iTerm2 can be used to setup lrzsz coupling [1]. I haven't tried it yet myself, but I'm going to! I really hope this works. It's such a pain to setup scp back to my workstation that if I need to do any real back and forth, I've been known to setup a reverse SSH tunnel just for getting scp to work. But even then, it's a pain. Zmodem would be so much easier (and make me a little nostalgic inside every time I used it). [1] https://grack.com/blog/2011/10/26/automatic-file-transfer-in-iterm2-via-zmodem/ https://grack.com/blog/2011/10/26/automatic-file-transfer-in...
- hilop 10y agoLooking b ack at stuff like Zmodem, it's instructive to compare the computing culture then and now. Back then, everything was so cryptic. Documentation was hard to find printed books, code and config was extremely abbreviated ( sometimes for legitimate technical reasons of storage capacity). It was all very off-putting unless you put w lot of effort into research, or ran in the social circles that already had data and knowledge. 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)
- narrator 10y agoThe other thing about coding back in those days is, if you got stuck, there was no stack overflow. You had to figure it out yourself or maybe ask a small grpup of people on a BBS or at a user group. Also, there was hardly any open source so things that seem trivial now like persistance or fast data structures were considerable efforts.
- wvenable 10y agoThe most striking thing to me was there was a huge amount of free-as-in-beer software powering the entire BBS "network" and lots of helpful communities but almost nothing was open source.
- Grishnakh 10y agoFrom what I could tell, it took a long time for the academic tradition of making the source available to work its way into the non-academic world. The academics were using UNIX and other mainframe/minicomputer systems, but non-academics at home didn't have much access to this stuff unless they got themselves an account somewhere they could access through modem. So everyone else was "raised" in the PC tradition, which came from MS-DOS and the 8-bit micros before it. There, there was a bunch of "shareware" and a bunch of freeware available on BBSes, but the whole idea of passing around source code so everyone could benefit or make modifications just hadn't even come up. I grew up on BBSes and the idea of having source code just never even occurred to me honestly, until I started hearing about it when Linux became popular in the early 90s. The first real open-source stuff (which was really Free software), which pushed it as a philosophy, had to be from RMS and his GNU project, but I never even heard of that until Linux came along, and I think it was mostly confined to the insular academic world before this. When Linux came along, the GNU project finally had a kernel and could be put together into an actual working OS, and at the very same time, the internet was really catching on outside the academic world (this is about 1992 remember), and the WWW was only a couple years away. I'd say it was the perfect trifecta: the already-existing GNU software and tools (glibc, gcc, etc. are really important for having a working OS and building stuff), the Linux kernel, and the new-found accessibility of the internet allowing global communication and collaboration.
- qwertyuiop924 10y agoBBSes: Yet another technology I missed, because I wasn't alive. Ah well. 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/ http://www.tim.org/.
- kevin_thibedeau 10y agoThe sad thing is I'm stuck on a codebase that uses Xmodem for core operations and have to forgo such niceties as having file name, size, and timestamp automatically handled. I don't know why they didn't just implement Ymodem like they should have.
- ceautery 10y agoFun times. My first experience with modem file downloads was the ASCII Express protocol on my old Apple //. Cutting my teeth on modem init strings, and keeping current with file protocols helped me break into IT despite not having a degree in it. 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.
- johng 10y agoMy favorite was HS/Link -- upload and download at the same time with speeds superior to Zmodem? Yes please! https://en.wikipedia.org/wiki/HS/Link https://en.wikipedia.org/wiki/HS/Link
- deleted 10y ago[deleted]
- dmd 10y agoMy impression of zmodem and kermit, from 13 years ago (remembering then from a decade prior's use): http://dmd.3e.org/2003/12/zmodem-vs-kermit/ http://dmd.3e.org/2003/12/zmodem-vs-kermit/
- jejones3141 10y agoKermit's design accommodated connections that zmodem couldn't (half-duplex, connections that don't let one send some control characters. seven bit connections, or connections between systems using ASCII and systems using EBCDIC), and the basic protocol was easy to write. You could use Kermit to send data between your C-64 and a Cray 1 or Burroughs Large system--and it was used to send data from the International Space Station to earth. Later versions supported sliding windows and large packets where possible and let one selectively quote characters, while still providing backwards compatibility with earlier versions.
- dmd 10y agoWell, yeah, exactly. Kermit was slow and careful and pretty well guaranteed to get your data across correctly, eventually. 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.
- spc476 10y agoMy impression? Kermit worked (if slowly) when other protocols wouldn't. Back in college, when I dialed into the University and attempted to download files, Kermit was the only one that would work across the insane university network (you dialed into a DEC terminal server, then you would issue a connect command to the actual computer you wanted. You could attempt to get an 8-bit clean path by sending a break character to get back to the terminal server, issue another command, then resume the connection, but for some reason, that almost never worked in my case).
- dewyatt 10y agoI think I used ZMODEM to pull a core dump off a McData FC switch a couple years ago. Used the core dump to recover the password for the switch.
- booleanbetrayal 10y agoI miss the days of ZModem and YModem.
- scoopr 10y agoAll the cool kids used SModem, which allowed for downloading and chatting at the same time!
- spacemanmatt 10y agoNeat - I thought BiModem was the only one that supported that!
- blank_dan 10y agoI'm disappointed that the wikipedia article makes no mention of Yam. Which boasted of the worst user interface ever invented.
- notlisted 10y agoSurprised nobody mentioned BiModem in the comments (popular at least in Europe). Simultaneous up- and downloads, which was great to get keep those up/down ratios at their proper levels.
- scurvy 10y agoI remember it in the US, but I can't remember how widespread it was.
- spacemanmatt 10y agoI loved BiModem. I used it to transfer files in both directions simultaneously while also chatting with the remote party. Very cool for the time.
- teh_klev 10y agoJust to add to the nostalgia, back in the day we used to use a protocol/app called BLAST[0] to grab data off of Data General mini-computers onto PC's back in the 80's. Hugely simple to use and damned reliable. [0]: https://en.wikipedia.org/wiki/BLAST_(protocol) https://en.wikipedia.org/wiki/BLAST_(protocol)
- mycall 10y agoKERMIT is still used for deep sea beacon communications.
- j45 10y agoZmodem was the first big leap forward. Interesting how efficiency is baked into the brains of so many folks who used to have to think about every byte they might transmit or receive.
- michaelcampbell 10y agoI had a small "brush with greatness" in ... ~1984, or so? I was on Compuserve at 1200 baud, and although I forget the circumstance, I had a cserve "chat" with Ward Christensen; the inventor of Xmodem. I can't even remember what we talked about, but he was surprised that I knew who he was just by his name.
- bronson 10y agoWhen modeming into the university unix system, I really enjoyed being able to type `sz file` and bam the file is on my local machine, with progress meter and everything. 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 https://github.com/bronson/rzh Haven't touched it much in a decade, alas.
- koytch 10y agoZmodem's code is uglier than Kermit's IMO. Gods help you if you have to read either, but Kermit is written better and EK is almost understandable once you fold all unneeded #define's. I'm surprised no-one mentioned the venerable UUCP. It has more variants than X/Y/Zmodem combined: at least 12.
- jamesbrownuhh 10y agoI remember trying out Zmodem early on, only to find that it obviously had some kind of bug in that it would reliably and consistently drop the line after a certain amount of data had been transferred. 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. :)