Aided by a British government subsidy to schools for half of the price[5] the 380Z was sold mainly to educational institutions in the United Kingdom, with some also sold to industry. In 1979 a dual 8-inch disk system with 56KB of memory cost £3266, and a 16KB cassette-based system cost £965 (excluding VAT).[6]
Hardware
Architecture
Front panel
The 380Z was packaged in a large, black, 19-inch rack-mount, rectangular metal case containing the power supply, a number of printed circuit boards and the optional 5¼-inch floppy disk drives. The front panel had a pair of strong carrying handles, a keyswitch and a reset button. The keyswitch controlled power and also enabled the reset button. The keyboard was separate and came in a tough metal case.
Early versions were contained in a light blue metal case with a white front and had only a cassette interface or 8-inch floppy drives; only a small number of these were made. An optional 8-bit ASCIIpaper tape punch/reader was also used, as this was a common storage medium at the time - where previous use of a computer had been limited to a teletype machine connected to mainframe by telephone.
The system used a passive bus architecture with no motherboard – all electronics were contained on a number of cards interconnected by ribbon cable. The only microprocessor offered was a 4MHzZ80A.[4]
Memory
Memory was fitted in up to four banks of RAM, each of either 4KB (4×1024 bytes) or 16KB, although not every permutation was permitted.[7] Typical configurations were 16KB for cassette-based systems and 32, 48 or 64KB of memory on disk-based systems. Main memory was not used by the text or graphics video cards, although memory on the video cards was bank switched into a dedicated 1.5KB address block.[2]
The 380Z was also fitted with up to 6KB of firmware, known as COS.[2][7] On systems fitted with less than 64KB of RAM the COS reserved 1KB of system RAM, leaving the rest available to the user. On the 64KB RAM system a total of 56KB was available to the user, with the remainder used by COS or inaccessible because of the firmware ROM, video card, and memory-mapped I/O.[2]
Video
380Z with display
COS 3.4 (see below) and earlier systems came with a basic video card providing a 40×24 text-only monochrome display. Composite video output was provided for an external monitor, and an internal RF modulator provided a separate output to drive a television set. Later systems were supplied with an enhanced video card that was software-switchable between 40×24 and 80×24 character modes and supported a number of character attributes (underline, dim, reverse-video).[8] Both card types were fitted with their own dedicated video memory.
In addition to the text-mode video card the system could be enhanced with a high-resolution graphics (HRG) board. The board was fitted with a dedicated bank of 16KB of video memory and supported two graphics modes:
Medium resolution: 160×96 pixels, 4 bits per pixel (16 colours), 2 pages.
A programmable lookup table with an 8-bit output mapped the pixel value to one of 256 different colours (analogue RGB output) or intensities (composite video).
In RGB mode, each palette index can configured by specifying the amount of each primary colour. Possible ranges are 0 to 7 for Red and Green, and 0 to 3 for Blue (ex: 000 generates black; 773 generates white). This arrangement is known as 8-bit color and also used on other machines like the MSX2 or Atari Falcon.
[9]
Output from the graphics board was mixed with output from the text-only video card, allowing text and graphics to be easily overlaid. The graphics output only covered the top 20 lines of the text display and therefore text output could be set to use only the bottom 4 lines if overlap was not desired.
Storage
Mass storage was either via cassette tape or floppy disk (which required a disk controller card). The cassette interface operated at either 300bit/s (CUTS standard) or 1200bit/s.[10] COS 4.0 and later systems were not fitted with the cassette interface.
Early systems could be fitted with an optional single densityfloppy disk controller card that could interfaced to either internal 5¼-inch or external 8-inch floppy disk drives. Disk capacity was 80KB per side on 5¼-inch disks and 250.25KB per side on 8-inch disks. Double-sided disk drives were treated as two independent disks with a drive letter per side.[11] CP/M used the first 4 tracks on 5¼-inch disks and the first 3 tracks on 8-inch disks, reducing the usable capacity of a single density, single-sided 5¼-inch disk to 72KB.[11]
Later systems (referred to as the 380Z-D) were fitted with a double density Intelligent Disc Controller (IDC), which increased disk capacity to either 180KB (48 TPI drives) or 360KB (96 TPI drives) per side on 5¼-inch disks and 500.5KB per side on 8-inch disks.[12] Support for a "Winchester" hard disk drive could be provided using an intelligent Host Interface Board (HIB) that implemented a SASI interface. Hard disk systems were mainly used as file servers for networked LINK 480Z systems.[13]
Interface cards
The passive bus allowed a number of cards to be installed in the 380Z. All systems required:
CPU/RAM – holding the Z80A CPU, firmware ROMs, and up to 32KB of RAM. The card also provided a parallel Centronics printer port (not always connected).
Video, either a VDU-40 or VDU-80 card – providing the 40×24 or the switchable 80×24/40×24 character text displays, respectively.
The system firmware contained only a basic monitor program, known as COS (standing for Cassette Operating System in the COS 3.4 and earlier systems[14] and Central Operating System in the later disk-only systems[15]). The monitor could be used to load application programs, such as BASIC, from cassette or to boot the disk operating system. COS also provided a software front panel allowing the display of registers and memory, and supporting breakpoints and single-stepping of machine code.
The COS monitor was stored in either 4KB (COS 3.4 and earlier) or 6KB (COS 4.0 and later) of ROM;[7] in the latter case part of the ROM was bank switched.[16]
COS services
COS provided a number of basic hardware control functions, such as keyboard input, writing text to the video card and disk input/output. COS functions were called by means of the Emulator Trap (EMT) pseudo-opcode, which used the Z80 RST30H instruction to call the EMT handler function.[15] The EMT handler read the first byte following the RST30H instruction to determine which EMT function was being requested; all parameters were passed in registers. A call-relative pseudo-opcode was also implemented using RST28H.
Main COS versions
COS versions were mainly tied to the new hardware functions they supported.
COS 2.2 –
COS 2.3 – cassette-only, 40×24 video card.
COS 3.0 – floppy disk support.
COS 3.4C – cassette-only, 40×24 video card.
COS 3.4M – main COS version supporting single density disks and the 40×24 video card.
COS 4.0 – 80×24 text display, no cassette support.
COS 4.2 – double density disk drives (380Z-D).
Software
Operating systems
The main disk operating system was CP/M, initially CP/M 1.4 and later CP/M 2.2.[17]MP/M II was used on the file server version, which supported a network of LINK 480Z computers using CP/NET.
Application software
Many standard CP/M applications were available, such as WordStar. Research Machines also produced their own assembler (ZASM), text editor (TXED) and BASIC interpreter. Brian Reffin Smith, then at the Royal College of Art in London, wrote 'Jackson', one of the first digital painting programs, which ran on the 380Z and which was distributed across UK schools.