Difference between revisions of "Amstrad Serial Interface"

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search
(Pictures)
(Original serial interface (1985): Nothing bad about an external PSU!)
 
(25 intermediate revisions by 7 users not shown)
Line 7: Line 7:
 
The main difference between the interfaces is that they contain different firmware, and the older one required an external power supply.
 
The main difference between the interfaces is that they contain different firmware, and the older one required an external power supply.
  
=== Original serial interface ===
+
=== Original serial interface (1985) ===
  
Amstrad's first serial interface was one of the original peripherals released for the CPC. It was remarkable (in a bad way) for the necessity for an external, brick-like power supply.
+
Amstrad's first serial interface was one of the original peripherals released for the CPC. It was remarkable for the necessity for an external, brick-like power supply.
  
 
Software was supplied on ROM, mostly comprising utility commands for hobbyists rather than a comms application per se - though there was limited terminal emulation for connecting to the then-popular [[Prestel]] service]. The original, UK version included commands for file transfer entitled |SUCK and |BLOW, which used a proprietary Amstrad format similar to [[XModem]]-1k but, annoyingly, subtly incompatible. These commands were reputedly renamed for the US edition to avoid causing offence.
 
Software was supplied on ROM, mostly comprising utility commands for hobbyists rather than a comms application per se - though there was limited terminal emulation for connecting to the then-popular [[Prestel]] service]. The original, UK version included commands for file transfer entitled |SUCK and |BLOW, which used a proprietary Amstrad format similar to [[XModem]]-1k but, annoyingly, subtly incompatible. These commands were reputedly renamed for the US edition to avoid causing offence.
 +
 +
The French company [[M.E.R.C.I.]] sold a custom version of this interface, replacing the original 8k ROM with an 16k Rom adding a [http://en.wikipedia.org/wiki/Minitel minitel] emulator.
  
 
Because of the external power supply and the poor quality of the software, this model failed to establish itself as the "standard" serial interface in the way that (say) the [[DDI-1]] did for disc drives. This allowed other serial interfaces to flourish, such as those sold by [[Cirkit]] and [[KDS]].
 
Because of the external power supply and the poor quality of the software, this model failed to establish itself as the "standard" serial interface in the way that (say) the [[DDI-1]] did for disc drives. This allowed other serial interfaces to flourish, such as those sold by [[Cirkit]] and [[KDS]].
  
=== Pace serial interface ===
+
=== Pace serial interface (1986) ===
  
As a result, Amstrad dropped their original design and instead chose to remanufacture a [[Pace]] design. This included significantly improved hardware (a more compact interface and no external PSU) and vastly superior software.
+
As a result, Amstrad dropped their original design and instead chose to remanufacture a [[PACE]] design. This included improved hardware (a more compact interface thanks to SMD components and no external PSU) and vastly superior software. However, this redesign also reduced the quality of RS232 signalling by using 0V/5V output voltage instead of -12V/12V.
  
The software was a ROM version of Pace's terminal utility, [[Commstar]]. This was a user-friendly program with standard [[XModem]] file transfer functions. However, one foolish design decision was the idea of using a 24x80 screen with a single-line status display - though presenting a good user interface, this forced the use of software rather than hardware scrolling, making the interface unusable for terminal emulation at any speed above 2400 baud.
+
The software was a ROM version of the [[Commstar]] terminal utility from [[HoneySoft]]. This was a user-friendly program with standard [[XModem]] file transfer functions. However, one foolish design decision was the idea of using a 24x80 screen with a single-line status display - though presenting a good user interface, this forced the use of software rather than hardware scrolling, making the interface unusable for terminal emulation at any speed above 2400 baud.
 +
 
 +
The Amstrad/Pace version was announced on [[:File:ACU8612006.jpg|Amstrad Computer User, Dec 1986, page 6]]. A review occured in Amstrad Computer User, April 1987, pages 46 and 47.
  
 
== I/O Ports ==
 
== I/O Ports ==
  
   FADCh Amstrad RS323 Z8470 (Z80 DART) Channel A Data            (R/W)
+
Here are the I/O Ports (same for original and Pace version):
   FADDh Amstrad RS323 Z8470 (Z80 DART) Channel A Control/Status  (R/W)
+
 
   FADEh Amstrad RS323 Z8470 (Z80 DART) Channel B Data            (R/W)
+
   FADCh Amstrad RS232 [[Z80-DART/Z80-SIO chip|Z8470 (Z80 DART)]] Channel A Data            (R/W)
   FADFh Amstrad RS323 Z8470 (Z80 DART) Channel B Control/Status  (R/W)
+
   FADDh Amstrad RS232 [[Z80-DART/Z80-SIO chip|Z8470 (Z80 DART)]] Channel A Control/Status  (R/W)
   FBDCh Amstrad RS323 8253 Baudrate Timer 0 Channel A TX Clock    (R/W)
+
   FADEh Amstrad RS232 [[Z80-DART/Z80-SIO chip|Z8470 (Z80 DART)]] Channel B Data            (R/W)
   FBDDh Amstrad RS323 8253 Baudrate Timer 1 Channel A RX Clock    (R/W)
+
   FADFh Amstrad RS232 [[Z80-DART/Z80-SIO chip|Z8470 (Z80 DART)]] Channel B Control/Status  (R/W)
   FBDEh Amstrad RS323 8253 Baudrate Timer 2 Channel B RX/TX Clock (R/W)
+
   FBDCh Amstrad RS232 [[8253 chip|8253]] Baudrate Timer 0 Channel A TX Clock    (R/W)
   FBDFh Amstrad RS323 8253 Baudrate Timer 0-2 Control Registers  (W)
+
   FBDDh Amstrad RS232 [[8253 chip|8253]] Baudrate Timer 1 Channel A RX Clock    (R/W)
 +
   FBDEh Amstrad RS232 [[8253 chip|8253]] Baudrate Timer 2 Channel B RX/TX Clock (R/W)
 +
   FBDFh Amstrad RS232 [[8253 chip|8253]] Baudrate Timer 0-2 Control Registers  (W)
  
 
Note: Some interfaces might use a Z80 SIO (which is backwards compatible to the Z80 DART).
 
Note: Some interfaces might use a Z80 SIO (which is backwards compatible to the Z80 DART).
Line 47: Line 53:
 
== Alternative software ==
 
== Alternative software ==
  
The limitations of the Commstar software, and the desire to use more recently developed file transfer protocols (such as [[XModem]]-1k, [[YModem]] and [[ZModem]]) meant that many users chose to use their Amstrad serial interface with third-party software. This included:
+
The limitations of the [[Commstar]] software, and the desire to use more recently developed file transfer protocols (such as [[XModem]]-1k, [[YModem]] and [[ZModem]]) meant that many users chose to use their Amstrad serial interface with third-party software.
 
+
* [[Ansiterm]] - a fast AMSDOS utility (also known as ANSI.ARC)
+
* [[Charley's Comms ROM]] - sideways ROM capable of 4800 baud terminal emulation
+
* [[ZMP]] - ZModem file transfer under CP/M
+
 
+
A vast range of comms software was available for [[CP/M]], including [[Bulletin board|bulletin board]] hosts, offline readers (notably [[CRR]] - CP/M Read and Reply), and many terminals.
+
 
+
== 8250 Information (probably nonsense) ==
+
 
+
'''Below is information about the 8250 UART chip. As far as known, the Amstrad Serial Interface does NOT use that chip, a 8253 yes, but not a 8250. No idea why that information is here...?'''
+
 
+
Like the original interface, the Pace design used an 8250 [[UART]] chip (really???), which was reliable up to 9600 baud and could sometimes function at faster speeds. The possibility has been discussed of replacing this with a pin-compatible 16550 and gaining even faster transfer speeds, but this is not believed to have been tested.
+
 
+
This [http://www.systemed.net/pcw/cps8256.html webpage about the CPS8256] (the Amstrad serial interface for the PCW) also includes some CPC information. Caution: that webpage seems to be confused/bugged. There is no 8250 chip used at all. Baudrate MSB/LSB are exchanged, and for both CPC and PCW, the clock source should be 2MHz instead of 1.84375MHz, etc.
+
 
+
[http://en.wikipedia.org/wiki/8250_UART Link to Article on Wikipedia about the 8250 UART used (or rather NOT used???) in the interface]
+
 
+
== Manual ==
+
 
+
[[Original Amstrad RS232 interface|Manual of the original RS232 by Amstrad (OCR)]]
+
  
 
== Pictures ==
 
== Pictures ==
Line 76: Line 62:
 
Image:Amstrad rs232 2.jpg|The original Amstrad serial interface
 
Image:Amstrad rs232 2.jpg|The original Amstrad serial interface
 
Image:Amstrad rs232 power1.jpg|The original powersupply that came with the interface
 
Image:Amstrad rs232 power1.jpg|The original powersupply that came with the interface
File:NoPicture.gif|Circuit Board of old Interface
+
Image:AmstradRS232PSU_Rating.jpg|The original powersupply rating
 +
Image:Amstrad RS232C Box.jpg|Old interface, boxed
 +
Image:Amstrad RS232C Device.jpg|Old interface with PSU
 +
Image:Amstrad RS232C PCB.jpg|Old interface, PCB
 +
</gallery>
 +
 
 +
<gallery caption="Amstrad's original interface 300dpi scans">
 +
Image:Amstrad_RS232C_Top_EN.jpg|Interface Top (English)
 +
Image:Amstrad_RS232C_Top_FR.jpg|Interface Top (French)
 +
Image:Amstrad_RS232C_PCB_Top.jpg|Interface PCB Top
 +
Image:Amstrad_RS232C_PCB_Bottom.jpg|Interface PCB Bottom
 
</gallery>
 
</gallery>
  
 
<gallery caption="Amstrad's newer Pace serial interface">
 
<gallery caption="Amstrad's newer Pace serial interface">
 
File:Amstrad RS232.jpg|Newer Amstrad/Pace Interface
 
File:Amstrad RS232.jpg|Newer Amstrad/Pace Interface
File:NoPicture.gif|Circuit Board of new Pace Interface
+
File:Amstrad_RS232_Pace_Interface.jpg|Pace Interface
 +
File:Amstrad_RS232_Pace_PCB_Top.jpg|PCB Top
 +
File:Amstrad_RS232_Pace_PCB_Bottom.jpg|PCB Bottom
 +
File:ACU8701002.jpg|Advert (ACU, January 1987)
 
</gallery>
 
</gallery>
  
Line 108: Line 107:
 
</gallery>
 
</gallery>
  
[[Category:Hardware]] [[Category:Peripherals]] [[Category:Serial_interfaces]][[Category:Amstrad Products]]
+
== Manuals ==
 +
 
 +
* [[Media:RS232C Serial Interface (Amsoft UK) Manual.pdf|RS232C Serial Interface (Amsoft UK) Manual]] {{EN}} {{PDF}}
 +
* [[Media:RS232C Interface Serie (Amsoft FR) Manual.pdf|RS232C Interface Serie (Amsoft FR) Manual]] {{FR}} {{PDF}}
 +
* [[Original Amstrad RS232 interface|Manual of the original RS232 by Amstrad (OCR)]]
 +
* [[Media:RS232 (Pace) Manual.pdf|RS232 (Pace) Manual]] {{EN}} {{PDF}}
 +
 
 +
== Downloads ==
 +
 
 +
* [[Media:RS232101.ZIP|ROM Image for original version]] - 8K ROM
 +
* [[Media:RS232Mercitel14.rom|ROM Image for Mercitel version]] - 16K ROM
 +
* [[Media:AmstradPaceSerialInterfaceCommstarRomImage.zip|ROM Image for Pace version]] - Commstar 32K ROM (two 16K banks)
 +
* [[Media:PACE232.ZIP|ROM Image for Pace version]] - Commstar 32K ROM
 +
 
 +
[[Category:Peripherals]][[Category:Network]][[Category:Communication Software]] [[Category:Serial_interfaces]][[Category:Amstrad Products]][[Category:Expansion ROM]]

Latest revision as of 07:43, 11 April 2019

The Pace RS232 interface, as sold by Amstrad

The two Amstrad Interfaces

Amstrad released two RS232 interfaces, both using the same input/output addresses - and, ultimately, therefore establishing the standard for serial interfaces.

The main difference between the interfaces is that they contain different firmware, and the older one required an external power supply.

Original serial interface (1985)

Amstrad's first serial interface was one of the original peripherals released for the CPC. It was remarkable for the necessity for an external, brick-like power supply.

Software was supplied on ROM, mostly comprising utility commands for hobbyists rather than a comms application per se - though there was limited terminal emulation for connecting to the then-popular Prestel service]. The original, UK version included commands for file transfer entitled |SUCK and |BLOW, which used a proprietary Amstrad format similar to XModem-1k but, annoyingly, subtly incompatible. These commands were reputedly renamed for the US edition to avoid causing offence.

The French company M.E.R.C.I. sold a custom version of this interface, replacing the original 8k ROM with an 16k Rom adding a minitel emulator.

Because of the external power supply and the poor quality of the software, this model failed to establish itself as the "standard" serial interface in the way that (say) the DDI-1 did for disc drives. This allowed other serial interfaces to flourish, such as those sold by Cirkit and KDS.

Pace serial interface (1986)

As a result, Amstrad dropped their original design and instead chose to remanufacture a PACE design. This included improved hardware (a more compact interface thanks to SMD components and no external PSU) and vastly superior software. However, this redesign also reduced the quality of RS232 signalling by using 0V/5V output voltage instead of -12V/12V.

The software was a ROM version of the Commstar terminal utility from HoneySoft. This was a user-friendly program with standard XModem file transfer functions. However, one foolish design decision was the idea of using a 24x80 screen with a single-line status display - though presenting a good user interface, this forced the use of software rather than hardware scrolling, making the interface unusable for terminal emulation at any speed above 2400 baud.

The Amstrad/Pace version was announced on Amstrad Computer User, Dec 1986, page 6. A review occured in Amstrad Computer User, April 1987, pages 46 and 47.

I/O Ports

Here are the I/O Ports (same for original and Pace version):

 FADCh Amstrad RS232 Z8470 (Z80 DART) Channel A Data             (R/W)
 FADDh Amstrad RS232 Z8470 (Z80 DART) Channel A Control/Status   (R/W)
 FADEh Amstrad RS232 Z8470 (Z80 DART) Channel B Data             (R/W)
 FADFh Amstrad RS232 Z8470 (Z80 DART) Channel B Control/Status   (R/W)
 FBDCh Amstrad RS232 8253 Baudrate Timer 0 Channel A TX Clock    (R/W)
 FBDDh Amstrad RS232 8253 Baudrate Timer 1 Channel A RX Clock    (R/W)
 FBDEh Amstrad RS232 8253 Baudrate Timer 2 Channel B RX/TX Clock (R/W)
 FBDFh Amstrad RS232 8253 Baudrate Timer 0-2 Control Registers   (W)

Note: Some interfaces might use a Z80 SIO (which is backwards compatible to the Z80 DART).

For details on the I/O ports, see:

Although the Z80-DART (and Z80-SIO) support two channels, most or all existing CPC interfaces seem to use only one channel.

CP/M

The I/O ports are directly supported under CP/M (without needing additional drivers). Like many CP/M functions, the functions are located in the AMSDOS ROM (not on the CP/M disc). These functions are using hardcoded RAM addresses, which conflict with the BASIC memory map, so they can be used only under CP/M, not under BASIC.

Alternative software

The limitations of the Commstar software, and the desire to use more recently developed file transfer protocols (such as XModem-1k, YModem and ZModem) meant that many users chose to use their Amstrad serial interface with third-party software.

Pictures

Schematic and More (CPS8256)

Below shows schematic and pictures for the CPS8256 Serial Interface (for the Amstrad PCW, aka Schneider Joyce), ie. it is not really CPC hardware, however, the CPC interface should use a similar design (the major difference is probably that the CPC version contains a BIOS ROM, but no Centronics port). Credits: The gif and jpg's are from www.z80.eu.

Reviews

Manuals

Downloads