Through this period, a number of new file transfer protocols for BBS users appeared in order to address issues in the original XMODEM.
[a] The only downside to ZMODEM was that it was very complex, which made it difficult or impossible to implement on some machines, especially the large installed base of systems like the Commodore 64.
[2] The move from 8-bit to 16-bit computers was taking place at the same time that MEGAlink was being introduced, and by the late 1980s any benefits in terms of simplicity had been mooted.
A 3-byte header consisting of the SOH character and two 8-bit integers is added in front of the data and a 1-byte checksum at the end, making the overall packet 132 bytes long.
[4] Because the phone system has a certain amount of latency, it takes some time for the ACK or NAK to travel back through the lines and trigger the sending of the next packet.
This not only reduces the relative effects of latency, but also increases the amount of data compared to extraneous information like the header and footer bytes, improving its channel efficiency.
Machines of the era had small amounts of memory, 64 kB was not uncommon, so large buffers were not easily arranged.
To allow operation over some networks, like PC Pursuit, XON and XOFF characters were escaped with a DLE and then XORed with 64.
[5] The original version of MEGAlink used 16-bit cyclic redundancy check (CRC), as was the case for many other XMODEM offshoots.