Commodore Plus/4 Serial Bus Printer Communication Explained
The Commodore Plus/4 utilized a standard serial bus architecture to interface with peripherals, maintaining compatibility with existing Commodore printers while leveraging its unique hardware design. This article explores the technical mechanisms behind the Plus/4’s serial port, detailing how the TED chip and Kernal ROM managed data transmission, handshaking protocols, and potential compatibility nuances compared to its predecessors like the Commodore 64.
At the hardware level, the Plus/4 featured a 6-pin DIN connector identical to those found on the VIC-20 and Commodore 64. This port implemented the Commodore IEEE-488 derived serial bus, often referred to as the IEC bus. The physical layer relied on three main signal lines for data transfer: Serial Data, Serial Clock, and Serial Attention, along with ground and power lines. This standardized connection allowed users to plug in popular peripherals such as the MPS 801 or 1526 printers without requiring additional interface cartridges or adapters.
Data transmission was managed primarily through the system’s Kernal ROM rather than dedicated hardware controllers. The CPU handled the serial handshaking through bit-banging techniques, where software routines toggled the data and clock lines to synchronize communication between the computer and the printer. While the Plus/4 incorporated the TED (Text Editing Device) chip for video and sound processing, the serial bus operations remained a function of the main processor executing Kernal subroutines. This software-driven approach ensured flexibility but placed the timing burden on the CPU cycles.
One significant technical consideration involved the CPU clock speed. The Plus/4’s 7509 processor typically ran at 750 kHz, which was slower than the 1 MHz found in the Commodore 64. Because the serial handshaking routines were cycle-sensitive, this difference occasionally caused timing discrepancies with software designed specifically for the C64’s faster architecture. However, for standard printer commands and basic file transfers, the Kernal routines adjusted sufficiently to maintain stable communication, ensuring that most Commodore-branded printers functioned correctly out of the box.
Ultimately, the Commodore Plus/4 handled serial bus communications by adhering to the established IEC protocol while relying on robust Kernal ROM routines to manage the physical signaling. Although the internal architecture differed from earlier models due to the integration of the TED chip and changes in memory mapping, the external behavior remained consistent enough to support the existing ecosystem of serial printers. This design choice preserved peripheral compatibility, allowing users to leverage their existing hardware investments despite the Plus/4’s distinct internal engineering.