💾 Archived View for gemini.spam.works › mirrors › textfiles › apple › zmodem.gbbs captured on 2022-04-28 at 19:14:56.
⬅️ Previous capture (2020-10-31)
-=-=-=-=-=-=-
Zmodem comes to GBBS! -------------------- This past summer, between writing different versions of Shrinkit and GS-ShrinkIt, I wrote Zmodem drivers for several different bulletin board systems. If you are the sysop of a bulletin board which uses GBBS's ACOS language you can take advantage of a very good deal. For $21, I will send you a copy of the Zmodem drivers which work with GBBS. But before I go into a little more detail about this, let me explain a little more about the Zmodem drivers. Features: -------- o Both RZ and SZ completely conform to the public domain Zmodem 2.0 implementation by Chuck Forsberg using 16-bit CRCs. Both Zmodem Send (SZ) and Zmodem Receive (RZ) are completely and correctly implemented and take approximately 4k of space in the GBBS "use" buffer along with an extra 8k of buffer space in auxiliary memory. o There are special versions of RZ and SZ which use the Apple IIc's vertical-blanking interrupts for timing considerations. o Speed. Zmodem is a streaming protocol. This allows for faster transfers than Ymodem and helps 9600 baud transfers go close to their theoretical maximum. o Better error recovery. Zmodem can recover from errors better than Xmodem or Ymodem. If you have a really noisy line, chances are that Zmodem will continue the transfer long after Xmodem and Ymodem have given up. o Network friendly. RZ and SZ will not "jam" a network by sending XOFF characters in its data stream. Instead these characters are sent using Zmodem's escaping mechanism. What this means is that you won't have to setup your local node of PcPursuit or other service when calling a BBS that uses RZ and SZ. No special parameters for your node should be needed. Just call and transfer. o Zmodem is a "batch" protocol. Both drivers support sending and receiving batches of files. o Auto-Download support. If your terminal program supports Auto-Download, then using RZ with your BBS will automatically tell your communications software to begin downloading without ever touching a key! o Download resumption. If you have a communications program which supports resuming a download after you have been disconnected while downloading a huge file... no problem. Just call back and begin the download at the point where you left off. These Zmodem drivers properly support doing just that. o SZ (the BBS end receiving a file via Zmodem) supports both upload resumption (if you, as a sysop, like incomplete pieces of files laying around on your BBS), renaming an existing file, or just deleting a file on the BBS which the user is trying to upload. So, in the case of a duplicate file, you have great flexibility in what to do. o Automatic block resizing! Xmodem sends files with 128 byte blocks. Ymodem sends files with both 128 byte and 1k blocks. Zmodem can use any block size up to 1k. When downloading, RZ will take note of how noisy the phone line is and if there are enough errors RZ will halve the block size until some data gets through. If you have clean phone lines then RZ will start increasing the block size until it is streaming 1k blocks. So, the cleaner your phone lines are: the faster your transfers will be. If during the course of a download the phone lines become very noisy then RZ will make the blocks smaller -- and if the line becomes less noisy later during the download, RZ will start sending larger blocks.