Amstrad PCW - Technical Design

Technical Design

All PCW models, including the PcW 16, used the Zilog Z80 range of CPUs: Z80 at a clock speed of 4 MHz but slowed to 3.4 MHz by the internal clock in the 8256 and 8512; Z80 at 4 MHz in the 9512, 9256, 9512+ and PCW10; and Z80A at 16 MHz in the PcW16.

The Z80 could only access 64 KB of RAM at a time. Software could work round this by bank switching, accessing different banks of memory at different times, but this made programming more complex and slowed systems down. The PCW's CP/M applications could not use more than 64 KB, and the system used the rest of the RAM as a RAM drive. On the other hand the standalone Locoscript word processor program was reported as using up to 154 KB as normal memory, and the rest as a RAM disk.

Unusually, the Z80 CPU in the PCW 8256, 8512, 9512, 9256 and 9512+ had no directly connected ROM (read-only memory, which most computers need to start the boot process). Instead, at startup, the ASIC (customised circuit) at the heart of the PCW provided access to part of the 1k ROM within the Intel 8041 microcontroller used to drive the printer. The Z80 would copy 256 bytes via the ASIC into RAM, providing sufficient instructions to load the first sector from a floppy. The ROM-based code cannot display text, being too small to support character generation; instead it displays a bright screen which is progressively filled by black stripes as the code is loaded from floppy.

To make the printer cheap enough to be included with every PCW, Amstrad placed the majority of its drive electronics inside the PCW cabinet. The printer case contained only electromechanical components and high current driver electronics; its power was supplied via a coaxial power connector socket on the monitor casing, and rather than using a traditional parallel interface, pin and motor signals were connected directly by a 34-wire ribbon cable to an 8041 microcontroller on the PCW's mainboard.

Most models of PCW were bundled with a 9-pin dot matrix printer mechanism, with the later 9512 and 9512+ models using a daisywheel (with a different cable; the printers were not interchangeable with the dot matrix models). These PCW printers could not, of course, be used on other computers, and the original PCW lacked a then-standard Centronics printer port. Instead, the Z80 bus and video signals were brought to an edge connector socket at the back of the cabinet. Many accessories including parallel and serial ports were produced for this interface. Some of the later models included a built-in parallel port; these could be bundled with either the dedicated Amstrad printer, or a Canon Bubblejet model.

The machines were built around the 8-bit Zilog Z80 processor, running at 4 MHz, and managed the relatively large amount of RAM main memory using a technique known as bank switching (allowing access to more than the Z80's normal 16-bit address bus reach of 64 kB). The PCW divided RAM into 16 kB sections, of which four could be accessed at any time. In CP/M, the memory used for the display was switched out while programs were running, giving more than 60 kB of usable RAM. While the Joyce architecture was designed with configurations of 128 kB and 256 kB of RAM in mind, no PCW was ever sold with 128 kB of RAM.

The PCWs were definitely not designed to play video games, although some software authors considered this a minor detail, releasing games like Batman, Head Over Heels, and Bounder. The PCW video system was not at all suited to games. In order that it be able to display a full 80 column page plus margins, the display's addressable area was 90 columns and the display had 32 lines. The display was, in fact, monochrome and bitmapped, giving a resolution of 720 by 256. Even with one bit per pixel, this occupied 23 kB of RAM, making software scrolling far too slow for fluid text manipulation. In order to improve this, the PCW implemented roller RAM, with a 512-byte area of RAM used to hold the address of each line of display data, effectively allowing very rapid scrolling. The video system also fetched data in a special order designed so that plotting a character eight scan lines high would touch eight contiguous addresses. This meant that very fast Z80 copy instructions like LDIR could be used. Unfortunately, it meant that drawing lines and other shapes could be very complicated.

The PcW16 does not share any hardware with the original PCW series, other than the Z80 CPU, and should be considered to be a completely different machine.

Read more about this topic:  Amstrad PCW

Famous quotes containing the words technical and/or design:

    A technical objection is the first refuge of a scoundrel.
    Heywood Broun (1888–1939)

    Delay always breeds danger; and to protract a great design is often to ruin it.
    Miguel De Cervantes (1547–1616)