The widely adopted ZMODEM uses a sliding window protocol. Rather than wait for positive acknowledgment after each block is sent, it sends blocks in rapid succession and resends unacknowledged blocks later. By avoiding delays due to latency, the bandwidth usable for transmission more closely approached the bandwidth of the underlying link. ZMODEM could also resume interrupted transfers without retransmitting the already-received blocks. In addition to developing the protocol, Forsberg developed software for sending and receiving files using ZMODEM.
Forsberg then wrote a version, Zmodem G, which was for use over "guaranteed error free" communications lines, such as Ethernet or short serial-to-serial computer connections. This protocol waived the usual retransmission overhead, to send files as fast as possible.
Originally, he wrote a program for Unix called rbsb (receive batch / send batch) which used block 0 to transmit a file's name, and optionally date and time, since Ward Christensen designed XMODEM to start at block 1, leaving block 0 available. Christensen suggested Forsberg call his protocol YMODEM because it was "one better" than Xmodem. Forsberg created the program YAM, which in traditional Unix nomenclature stood for Yet Another Modem after "Modem.asm", the original version of Xmodem released by Christensen in the CP/M User's group in 1977.
Forsberg most recently resided in Portland, Oregon, prior to his death. He ran data transmission software company Omen Technology which he founded in 1984.[3] Omen Technology published software tools such as ZComm (a terminal-based communications program that included the ZMODEM-90 file transfer protocol) and DSZ.[4][circular reference] He was an amateur radio operator (call sign WA7KGX)[5] and a licensed aircraft pilot.[3]
^ ab"About Omen Technology". Archived from the original on September 15, 2015. Retrieved February 16, 2012.{{cite web}}: CS1 maint: bot: original URL status unknown (link)