Difference between revisions of "8bit Printer Ports"

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search
(CPC Schneider International - 8 bit Printer Port Mod)
 
(49 intermediate revisions by 6 users not shown)
Line 1: Line 1:
The CPC [[Printer Port]] has only 7bit data. Which is okay for english 7bit ASCII character sets, but not enough for 8bit character sets. Also, printing bitmap graphics usually requires 8bit data (though Amstrads own printers are probably working with 7bit).
+
The CPC [[Printer Port]] has only 7 bit data. Which is sufficient for English 7 bit ASCII character sets, but not enough for 8 bit character sets. Also, printing bitmap graphics usually requires 8 bit data (though usually can also print 7 pixels columns combined with a reduced line-feed rate). Amstrad's DMP1 works perfectly with 7 bit, but Amstrad's later DMP2000/DMP2160 include a few functions that won't work on 7 bit ports - so even the official CPC printers aren't fully compatible with the CPC printer port.
  
* [[Connector:Printer port]]
+
There's a software solution though, proposed by [[Amstrad Computer User]] using a replacement driver (only for printers accepting EPSON control codes).
  
== Internal 8bit Printer Ports/Mods ==
+
== Internal 8 bit Printer Ports/Mods ==
  
=== Happy Computer 8bit Printer Port upgrade (DIY) ===
+
=== Happy Computer 8 bit Printer Port upgrade (DIY) ===
A fine method to upgrade to full 8bit has been described in the german magazine "Happy Computer Sonderheft 4/86": Disconnect the D7 pin from ground, and wire it to the [[8255|PIO]]s Tape WR DATA pin instead (That is, Pin 12 of the 8255 chip).
+
A good method to upgrade to full 8 bit has been described in the german magazine "[[Happy Computer (Schneider Sonderheft)]] 2/85 and 4/86":  
 +
* Disconnect the D7 pin from ground, and wire it to the [[8255|PIO]]s Tape WR DATA pin instead (That is, Pin 12 of the 8255 chip).
  
Sharing that pin will cause no problems (as long as you do not attempt to send data to the tape drive and to printer at the same time). Of course, you will also have to customize your software, or BIOS ROM, or the BIOS jump vectors in RAM, in order to take advantage of the modification.
+
Sharing that pin will cause no problems (as long as you do not attempt to send data to the tape drive and to printer at the same time). Of course, you will also have to customize your software, or BIOS ROM, or the BIOS jump vectors in RAM, in order to take advantage of the modification. In contrast, this DIY is supported by [[FutureOS]].
  
=== 8bit Printer Port in KC Compact ===
+
* For details see: [[Happy Computer 8bit Printer Mod]]
  
The [[KC Compact]] uses the Bit5 of [[8255|PPI]] Port C as 8th printer bit (this is same as the Happy Computer mod, see above).
+
=== CPC Schneider International - 8 bit Printer Port Mod ===
  
=== 8bit Printer Port in CPC Plus ===
+
DIY from [[CPC Schneider International]] (issue 12'85, page 64), this solution uses joystick port pin 8 or keyboard connector pin 2. Both PINs are connected to Pin 11 of the 74LS145 Decoder.
In the CPC Plus, Bit 3 of [[CRTC]] Register 0Ch can be used as eighth printer bit. For compatibility to normal CPCs it might be possible to enable/disable this feature by a 'jumper' on the mainboard.
+
This fix can be implemented completely external with a cable from Joystickport to the Printercable without any modification on the CPC itself required. However also a permanent internal connection can be created.
 +
* For details see: [[CPCI 8bit Printer Mod]]
 +
 
 +
=== PC Amstrad International - 8 bit Printer Port Mod ===
 +
 
 +
DIY from [[PC Amstrad International]] (issue 8/9'91, page 69-70), this solution uses PPI.Pin12 (same as the [[Happy Computer 8bit Printer Mod]]).
 +
 
 +
=== 8 bit Printer Port in KC Compact ===
 +
 
 +
The [[KC Compact]] uses the bit 5 of [[8255|PPI]] Port C as 8th printer bit (this is same as the Happy Computer mod, see above). Although the 8th bit is a built-in feature, the KC Compact Firmware doesn't support it. But it's supported by [[FutureOS]].
 +
 
 +
=== 8 bit Printer Port in Aleste 520EX ===
 +
 
 +
The [[Aleste 520EX]] includes an 8bit printer port, using PSG Ext Port B for data (which does not exist on the CPC), and PPI port C, Bit 4 for strobe (which would be Tape Motor in CPC). The Aleste doesn't have the normal CPC-style [[Printer Port]] at Port EFXXh. The BIOS functions are patched accordingly; including for supporting the 8th bit (unlike the CPC Plus and KC Compact, which do not support the 8th bit in BIOS functions).
 +
 
 +
=== 8 bit Printer Port in CPC Plus ===
 +
In the CPC Plus, Bit 3 of [[CRTC]] Register 0Ch can be used as eighth printer bit. For compatibility to normal CPCs, this feature can be disabled by removing the 10 kOhm resistor R30 on the mainboard (aka R130 in the schematic). See [[LK Links]] for more info. Although the 8th bit is a built-in feature, the CPC Plus Firmware doesn't support it. However the 8 bit printer port of the CPC Plus is supported by [[FutureOS]].
  
 
== External Printer Ports ==
 
== External Printer Ports ==
  
Reportedly, the following hardware exists:
+
* [[8bit Printer Port (Amstrad Action)]] (DIY) - connects to Expansion Port (uses Port FBF8h/FBF9h)
 +
* [[8bit Printer Port (Paul Bauriedl)]] (DIY) - connects to Printer Port (splits port EFxxh to 2 x 4 bit)
 +
* [[BrunWord|BrunWord's Eight Bit Status port]] - connects to Printer Port (splits port EFxxh to whatever, details are unknown)
 +
* [[CPCI 8bit Printer Mod]] (DIY) - connects bit 7 to Joystick_1_Select signal (can be connected internally or externally)
 +
* [[CPCISA by Yarek]] can be used with various ISA bus printer cards (8bit, one- or bi-directional types, SPP, XPP, EPP, etc.)
 +
* [[KDS 8-Bit Printer Port]] ([[KDS]] Electronics) - connects to Printer Port (splits port EFxxh to whatever fragments - details are unknown)
 +
* [[Panda Electronics Communications Interface Unit]] (dual RS232 plus PPI-based 8bit printer port) (Panda Electronics Ltd)
 +
* [[RS232|RS232 Interfaces]] (various manufacturers) - can be used to access RS232-compatible printers with full '''8 bit''' support
 +
* [[Schneiderware Centronics Port]] - connects (via a separate motherboard) to Expansion Port (uses a [[8255 PPI chip]])
 +
 
 +
Also, reportedly, the following external hardware exists:
 +
 
 +
* 8 bit Printer Port (Pride Utilities) ([[Pride Utilities 8bit Printer Port|details]])
 +
* 8 bit Printer Port with Dual RS232 ([[Timatic Systems]])
 +
* 8 bit Printer Port with 16 bit I/O port ([[HoneySoft]]) (see [[Media:Amstrad Computer User8509037.jpg|advert]])
 +
 
 +
Other external printer-related hardware (though not 8bit related):
 +
 
 +
* Centronics to serial 8-pin DIN Adaptor for "Gabriele 9009" daisy-wheel printer from Triumph-Adler (DIY, [[CPC Schneider International]] 12-1985, pages 88, 89)
 +
* KDS Printer T Switch ([[KDS]]) - allows to connect 2 printers, the desired printer can be selected via software
 +
 
 +
 
 +
== Software solution (only for printers that support EPSON control codes) ==
 +
 
 +
Written by J. G. Gribbs and published in [[Amstrad Computer User]] magazine in July of 1991.
 +
 
 +
<gallery>
 +
image:ACU9107-056.jpg
 +
image:ACU9107-057.jpg
 +
 
 +
</gallery>
 +
 
  
* Communicator 104 (KDS Electronics) (1992) Reportedly: "Serial and Parallel interface" (or, actually, [[Mini-Max Modem]])
+
== See also ==
* 8bit Printer Port (KDS Electronics) (this may be same as above)
+
* 8bit Printer Port (Pride Utilities) ([[Pride Utilities 8bit Printer Port|details]])
+
* 8bit Printer Port with Dual RS232 ([[Timatic Systems]])
+
  
There's nothing else known about that hardware.
+
* [[Connector:Printer port|Printer Port Pin-Outs]]
 +
* [[Amstrad/Schneider Printer Support for 7bit Printer Ports]]
  
[[Category:Hardware]] [[Category:DIY]]
+
[[Category:Printers and printer ports]] [[Category:DIY]]

Latest revision as of 21:12, 26 February 2022

The CPC Printer Port has only 7 bit data. Which is sufficient for English 7 bit ASCII character sets, but not enough for 8 bit character sets. Also, printing bitmap graphics usually requires 8 bit data (though usually can also print 7 pixels columns combined with a reduced line-feed rate). Amstrad's DMP1 works perfectly with 7 bit, but Amstrad's later DMP2000/DMP2160 include a few functions that won't work on 7 bit ports - so even the official CPC printers aren't fully compatible with the CPC printer port.

There's a software solution though, proposed by Amstrad Computer User using a replacement driver (only for printers accepting EPSON control codes).

Internal 8 bit Printer Ports/Mods

Happy Computer 8 bit Printer Port upgrade (DIY)

A good method to upgrade to full 8 bit has been described in the german magazine "Happy Computer (Schneider Sonderheft) 2/85 and 4/86":

  • Disconnect the D7 pin from ground, and wire it to the PIOs Tape WR DATA pin instead (That is, Pin 12 of the 8255 chip).

Sharing that pin will cause no problems (as long as you do not attempt to send data to the tape drive and to printer at the same time). Of course, you will also have to customize your software, or BIOS ROM, or the BIOS jump vectors in RAM, in order to take advantage of the modification. In contrast, this DIY is supported by FutureOS.

CPC Schneider International - 8 bit Printer Port Mod

DIY from CPC Schneider International (issue 12'85, page 64), this solution uses joystick port pin 8 or keyboard connector pin 2. Both PINs are connected to Pin 11 of the 74LS145 Decoder. This fix can be implemented completely external with a cable from Joystickport to the Printercable without any modification on the CPC itself required. However also a permanent internal connection can be created.

PC Amstrad International - 8 bit Printer Port Mod

DIY from PC Amstrad International (issue 8/9'91, page 69-70), this solution uses PPI.Pin12 (same as the Happy Computer 8bit Printer Mod).

8 bit Printer Port in KC Compact

The KC Compact uses the bit 5 of PPI Port C as 8th printer bit (this is same as the Happy Computer mod, see above). Although the 8th bit is a built-in feature, the KC Compact Firmware doesn't support it. But it's supported by FutureOS.

8 bit Printer Port in Aleste 520EX

The Aleste 520EX includes an 8bit printer port, using PSG Ext Port B for data (which does not exist on the CPC), and PPI port C, Bit 4 for strobe (which would be Tape Motor in CPC). The Aleste doesn't have the normal CPC-style Printer Port at Port EFXXh. The BIOS functions are patched accordingly; including for supporting the 8th bit (unlike the CPC Plus and KC Compact, which do not support the 8th bit in BIOS functions).

8 bit Printer Port in CPC Plus

In the CPC Plus, Bit 3 of CRTC Register 0Ch can be used as eighth printer bit. For compatibility to normal CPCs, this feature can be disabled by removing the 10 kOhm resistor R30 on the mainboard (aka R130 in the schematic). See LK Links for more info. Although the 8th bit is a built-in feature, the CPC Plus Firmware doesn't support it. However the 8 bit printer port of the CPC Plus is supported by FutureOS.

External Printer Ports

Also, reportedly, the following external hardware exists:

Other external printer-related hardware (though not 8bit related):

  • Centronics to serial 8-pin DIN Adaptor for "Gabriele 9009" daisy-wheel printer from Triumph-Adler (DIY, CPC Schneider International 12-1985, pages 88, 89)
  • KDS Printer T Switch (KDS) - allows to connect 2 printers, the desired printer can be selected via software


Software solution (only for printers that support EPSON control codes)

Written by J. G. Gribbs and published in Amstrad Computer User magazine in July of 1991.


See also