ZX Printer - Timex Printer 2040
Details about ZX Priner and Timex Printer 2040.
It is small box, plugged into ZX bus. It has through slot, but only ZX81 compatibile.
Interface of Timex Printer 2040 contains one 74LS10 (3 × NAND).
It decodes A2=0, A7=1, /IORQ=0. The 74LS139 could
work much better - one half could decode A7,
/IORQ and one extra signal (like A0 or A1), while the second would generate buffered /RD and /WR, decoding A2.
The Timex Printer 2040 is seen in ports #F0..#F3 and #F8..#FB,
so the TS2068 ULA doesn't use such addresses in internal decoding. (The BEU support was piervousely based on #FC and #FD ports.)
The cable has 7 wires and screen. D1 is not connected
unlike ZX Printer, becuse the 2040 printer doesn't have
two paper feed modes (slow for printing and fast for
/ADR - black
/WR - red
D2 - yellow
D0 - orange
D6 - green
D7 - blue
/RD - brown
GND - screen
Description from Warajevo 2.51
7.3.2. 'ZX PRINTER' PORTS
Every port with address bit A2=0 acts on the printer (usually 251). We implemented following features:
Output: bit D1: motor speed
bit D2: motor on/off
bit D7: styli on/off
Input: bit D0: encoder bit
bits D1-D5: always 1
bit D6: printer present
bit D7: out of paper
Brief description of implementation of the ZX printer emulation: When D2=1 (motor off), writing to this port is ignored. When D2=1, the state of bit D7 sent to this port is buffered. When the buffer fills itself, or when the motor is again off, the buffer is sent to the printer. One pixel on ZX printer is emulated with a one pixel (or with a square of four pixels, depending of /P option) on the Epson or HP Laser Jet printer. If D1=0 (motor works fast), the buffer takes four rows of pixels. When D1=1, buffer takes only one row of pixels. For input, the bit D0 is connected to READY of the printer, bit D6 to ACK and bit D7 to 'Out of paper' signal. The latching of the bits D0 and D7 is not emulated, but this is not important.
All routines for the ZX printer which use standard protocol (reading the encoder bit) will be correctly emulated, including ROM routines. There is a small problem with ROM routines that will wait forever if the printer is switched on, but off-line. Then switch off the printer, or change it to ONLINE state.
Files for download
- ts2040io.zip 22.5kB (2006-02-19 21:09)
- Interface board of Timex Printer 2040. Eagle data files.
- alp32_pc.zip 662.5kB (2005-09-10 01:48)
- Connect ZX Printer or Timex 2040 to PC. Schematics, source code in C, example printing scanned.
Links to other pages
- Parallel interface for ZX Spectrum
- Parallel interface for ZX Spectrum and clones - overview of various types.
- ISA slots for ZX Spectrum (I/O mapped). LPT, 2×RS232, Floppy Disk Controller and sound card.