# ZTerm

ZTerm is a shareware terminal emulator for Macintosh operating system. It was introduced in 1992 for System 7 and has been updated to run on macOS. Its name comes from its use of the ZModem file transfer protocol, which ZTerm implemented in a particularly high-performance package. In contrast to the built-in macOS Terminal app, which only communicates with other programs, ZTerm only communicates with hardware serial ports.

## Description

When it was first introduced in 1992, ZTerm was one of the highest-performing terminal emulators on the Mac, both in terms of basic text display as well as file transfer performance. ZTerm was widely regarded as the best terminal program on the Mac.
Its hardware support included carrier detect (CD), hardware hangup (DTR) and hardware flow control, as well as speeds up to 119,200 bit/s on those machines that supported it. These features were not universally supported in Mac hardware, so many terminal emulators simply didn't bother to implement them at all. Even if these speeds were offered, most emulators of the era were so slow that they had trouble keeping up with faster modems, especially 9600 bit/s and faster.
ZTerm supported one of the widest variety of file transfer protocols available on the Mac, including a full implementation of ZModem, YModem, YModem-G, almost all of the common varieties of XModem with different packet sizes and error correction methods, and even the rare but useful B protocol (CIS-B) for use on Compuserve. ZTerm also supported auto-starting transfers from ZModem and CIS-B, where commands from the host triggered transfers from the client.
Additionally, ZTerm included a complete PC graphics character set and ANSI escape codes, including color. This made it one of the few terminals on the Mac that properly displayed ASCII art, and allowed full interaction with PC-based bulletin board systems (BBS) that used these features extensively. ZTerm added the ability to use the mouse to position the cursor, sending the correct stream of ANSI codes to move it from the current to the clicked location.
Finally, ZTerm included a 10-verb built-in scripting language that allowed it to automate basic tasks. In addition to be able to run these manually, when a service was dialed using an entry in the editable Dial menu, ZTerm would look for a script with the same name and run it automatically.

## Versions

The first public version of ZTerm was 0.9, which was released in 1992. Two major versions followed; 1.0 of April 1994 was a major release that added 16-color ANSI support instead of 8-color, user-selected fonts including Shift JIS support, Kermit protocol support, and auto-opening of downloaded files. The latter was useful when used with offline mail readers like Blue Wave. Version 1.0.1, released in October 1995, was mostly a bug-fix release.
By 2002, the BBS world had largely disappeared. However, a number of devices (including some routers and lab equipment) still used serial ports to communicate, typically for diagnostic and debugging purposes. On 19 April 2001, Alverson released version 1.1b4 that ran on Mac OS X 10.0, Mac OS 8.6 and Mac OS 9 using Carbon. Later a "Classic" version was released that did not require Carbon, allowing it to run on older machines that could not support Mac OS 8 or Mac OS 9. On 18 July 2011, Alverson released a Universal Binary version 1.2 that runs on Mac OS X 10.4 through Mac OS X 10.14. Because this version is not 64-bit, however, ZTerm will not run on Mac OS X 10.15 and above.
On modern machines without built-in serial ports, ZTerm can identify and use a wide variety of USB-based serial devices. The list of supported hardware includes the standard Macintosh serial ports and Geoport on pre-PowerPC G3 CPU PowerPC Macintosh computers, the built-in Apple internal modem slot and the USB ports on PowerPC G3, PowerPC G4, PowerPC G5, and Intel-based Macintosh computers. ZTerm can be configured to work with adapters, including various USB port to serial port adaptors (such as those made by Keyspan) and Apple internal modem slot to serial port adaptors (such as the Stealth Serial Port and the now-discontinued Griffin Technology gPort), giving it a unique use for BBSers and hardware tinkerers.