| Some of the most popular peripherals produced for the ZX Spectrum are introduced in the sections below. Many of the items
				listed are supported by several modern emulators. Brief details of virtually every
				expansion developed for the original ZX Spectrum are available from the
				Sinclair Hardware Index. Sinclair Interfaces:Sinclair Research produced 2 official interfaces for use with the ZX Spectrum, both of which are documented below. Of these,
				the ZX Interface II is the simpler, being essentially a Joystick interface and ROM cartridge slot. The ZX Interface I is much
				more complex, and is discussed in more detail. Please refer to the '48K Reference'
				page for additional information.
 
				ZX Interface IThe ZX Interface I allows up to 8 ZX Microdrives to be connected to a single ZX Spectrum, features an RS-232 port, and provides
					networking facilities that allow up to 255 machines to directly communicate with each other. Sinclair BASIC includes
					commands to access the features of the ZX Interface I and the ZX Microdrive. The following system variables are used in
					addition to those specified for the standard machine:
 Notes   Address Name    Contents
X1      23734   FLAGS3  Flags
X2      23735   VECTOR  Address used to extend the BASIC interpreter
X10     23737   SBRT    ROM paging subroutine
2       23747   BAUD    Two byte number determining the baud rate
                        calculated as follows:
                        BAUD=(3500000 / (26 * baud rate)) - 2
1       23749   NTSTAT  Own network station number
1       23750   IOBORD  Border colour used during I/O. You can poke
                        any colour you want.
N2      23751   SER_FL  2 byte workspace used by RS232
N2      23753   SECTOR  2 byte workspace used by Microdrive
N2      23755   CHADD_  Temporary store for CH_ADD
1       23757   NTRESP  Store for network response code
1       23758   NTDEST  Beginning of network buffer contains
                        destination station number 0-64
1       23759   NTSRCE  Source station number
X2      23760   NTNUMB  Network block number 0-65535
N1      23762   NTTYPE  Header type code
X1      23763   NTLEN   Data block length 0-255
N1      23764   NTDCS   Data block checksum
N1      23765   NTHCS   Header block checksum
N2      23766   D_STR1  Start of 8 byte file specifier
                        2 byte drive number 1-8
N1      23768   S_STR1  Stream number 0-15   *See note.
N1      23769   L_STR1  Device type... "M", "N", "T" or "B"
N2      23770   N_STR1  Length of file name
N2      23772   D_STR2  Second 8 byte file specifier
                        used by MOVE and LOAD commands
N1      23782   HD_00   Start of workspace for SAVE, LOAD, VERIFY and
                        MERGE data type code
N2      23783   HD_0B   Length of data 0-66535
N2      23785   HD_0D   Start of data 0-65535
N2      23787   HD_0F   Program length 0-66535
N2      23789   HD_11   Line number
1       23791   COPIES  Number of copies made by SAVE
        23792   Start of Microdrive MAPs or CHANSNote: The original user manual differs slightly from this entry, specifying a range of 1-15.
				The command CAT #0, 7 will put the value 0 in address 23768, as will some OPEN and MOVE commands.
 
ZX Interface II Intended to be a multi-purpose addition to the ZX Spectrum, the ZX Interface II provided two Joystick ports, and a ROM cartridge socket that allowed games to be loaded instantly. It met these goals very well, but was not particularly popular. The joystick interface itself was largely a success, with many games including support for the 'Sinclair' joystick types. Technical details on the joystick are available in the Joystick Interfaces section. On the other hand, the ROM cartridge socket was not successful: only 10 titles were released on ROM cartridge, and as many of the most popular games (the Horace series, and several by Ultimate) were already available on cassette at around half the price, no market was ever developed. Sinclair had hoped to produce many more titles on cartridge, including several utilities and programming languages, but the lack of popular support for the interface saw it being withdrawn from sale within a year of release. Printers:Adding a printer to a ZX81 or ZX Spectrum is very easy; the most popular models simply attached to the edge connector and could be
				accessed immediately using Sinclair BASIC. The most common printers are listed below, with links to additional information
				where this is available. Please see the emulators page
				for details of those available on your platform that include printer emulation.
 
				ZX PrinterThe ZX Printer was released in 1981 and is compatible with the ZX80 (with ROM upgrade),
					ZX81 and ZX Spectrum. It is an extremely compact 32 column printer which uses aluminium coated paper. The printed image is 'burned' onto
					the surface of the paper by two metal pins which travel across the paper. A voltage is passed through these pins which causes a spark
					to be produced, leaving a black dot. See the documentation section
					if you need a copy of the original manual or
					service guide. The ZX Printer is addressed in the same way
					as the Alphacom 32 and Timex TS2040, with the following notes:
 
 
 
						D0 and D7 are both latched so that they remain high until the computer writes something to the printer. So even if you don't
						make use of the information you've read in, you should output an instruction (with appropriate data) to reset the latches until the next
						signal. These bits may be in either state on switch on, and aren't affected by the feed button.
 The paper detect signal is also used internally by the printer to make sure that the styli stop off the paper. Note that if power is applied
						to the stylus, the paper signal will go high even if the printer is between scans, so the stylus must be turned off before attempting
						to detect the edge of the paper.
 
 
Alphacom 32The Alphacom 32 was one of the leading alternatives to the ZX Printer. Slightly larger than the ZX Printer, the Alphacom 32
					uses thermal paper and features 32 column output as standard. Print speed is around 2 lines per second,
					which is considerably faster than the ZX Printer. Replacement paper rolls are still offered for sale - try
					Roltech. Specifications are as the Timex TS2040,
					with a 240V adaptor being required, rather than 120V as mentioned below.
 
 
QL-800 PrinterA 9-pin dot-matrix printer was introduced shortly after the release of the QL. Styled to match the QL in appearance, the
					printer attached directly to the SER1 port on the back of the machine, and was accessible using the OPEN #[n], ser command,
					followed by PRINT #[n], LIST #[n], etc. ([n] is a channel number). The technical specifications for the QL-800 printer are:
 
 
 
						Multiple modes per line are permitted. Bold, Double-Strike, Double-Width, Superscript/Subscript, Proportional and Italic character
					modes are also available.Print Method: Impact Dot Matrix.Print Head: 9 pin.
 
Print Mode: Various
							
								Standard Pica: 10 cpiStandard Elite: 12 cpiStandard Condensed: 17 cpiHigh Quality Pica: 10 cpiHigh Quality Elite Pica: 12 cpi
 
 
 
 
						4 dip switches on the back of the printer allow various settings to be adjusted, after the initialization process:Paper Width: 4 - 10 inches.Paper Thickness: 0.07 - 0.1 mm.
 
Power Supply:
					
						Input: 117V AC, 220/240V AC +/- 10%, 50/60Hz +/- 3%Power Consumption: 30W (self-test), 15W (standby)
 
 Switch No.      Function                On      Off     Default
   1-1          Baud rate selection      See below        OFF
   1-2          Baud rate selection      See below        OFF
   1-3          Page length setting     12in    11in      OFF
   1-4          Character zero shape     Ø       0        OFFSwitch 1-1 and 1-2 control the baud rate: Switch 1-1       Switch 1-2     Baud Rate
   OFF             OFF            9600
   ON              OFF            4800
   OFF             ON             2400
   ON              ON             1200The RS-232C, 25 pin serial interface connector is wired as shown below: Pin	Signal		Purpose
 1	FG		Frame Ground
 3	RXD		Input Data
 7	SG		Signal Ground
 20	DTR		Busy/Ready state
			On  (+3 ~ +25V) = Ready
			Off (-3 ~ -25V) = BusyTimex TS2040The original ZX Printer was not imported to the US directly, rather Timex distributed a branded version of the Alphacom 32
					(see above). The TS2040 can be used with any of the Timex or Sinclair systems. The technical specifications of the TS2040 are:
 
 
 
						A self-test mode is built-in to aid troubleshooting. This mode is accessed by pressing the [OFF] button once while
					holding down the [ON/ADVANCE]. The TS2040 will repeatedly print a line of 8's and a line of 1's.Paper Type: Thermal paper, black or blue print, end-of-roll indicator.Roll Size: 4.33in (110mm) Wide x 1.9in (48mm) Diameter x up to 25m (82 feet) Length.
 
Power Supply: DVE part no. DV-2412a
							
								Input: 120V AC, 60Hz, 35WOutput: 24V AC, 1.2A
 
 
 The TS2040 is wired as a z80 I/O port, selected by A2 being at low level and A7 being at high level. No other address
					lines are recognised. To send information to the printer, use: OUT (FB), A - opcode D3 FB, assuming the data is in register A.
					The data bits have the following meanings:
 
 
 
						All these lines remain in the state they were last at, until new data is sent to the printer. At switch on, or after pressing
					the feed button, D7 is set low; D2 is left high once feed is finished. The other data lines are not used.(D2) High level means stop the motor, low means start it.(D7) High level applies power to the print head.
 
 
 To fetch information from the printer, the z80 instruction: IN A, (FB) - opcode DB FB; will put the data into the accumulator.
					The following bits are used:
 
 
 
						The TS2040 was originally introduced at a cost of $99.95.(D6) Will be read as low if the printer is there, high if it is not, and is used solely to check if the printer is connected.(D0) This is high when the printer is ready for the next bit.(D7) This line is high for the start of a new line.
 
 
 
Seikosha GP-50sA (relatively) expensive alternative to the Alphacom 32 and the ZX Printer, the Seikosha GP-50s provided a significantly higher quality
					output as compensation. The GP-50s is a plain paper, dot matrix printer capable of producing up to 40 characters per second, across a
					maximum of 46 columns. Tractor-fed paper may also be used if preferred.
 
 The maximum paper width that can be used is 5in, and the printer came fitted with a ZX Spectrum compatible
					cable/interface. Being a dot matrix design, it was significantly more noisy in use than the thermal alternatives, but the attached
					'flip-over' paper cover helped reduce this somewhat during use. A manual paper-feed allows paper to be finely aligned, and the printer
					is a distinctive grey/white colour.
 
 The GP-50s originally cost £69.95 (ex. VAT)
 Mass Storage Devices:The primary storage medium for the ZX Spectrum (and earlier models) was traditional cassette tape. As programs became more
				complex, and as both programmers and users became increasingly frustrated at the poor reliability and slow loading times associated
				with tape, several alternatives were developed. The ZX Microdrive from Sinclair Research was widely anticipated, and sold extremely
				well; the Sinclair QL (and ICL One-Per-Desk variant) has 2 microdrives built-in.
 
 Various disk-drives and improved tape-based systems were also introduced - the ZX Spectrum pre-dates affordable floppy disk
				drives, although these became increasingly popular options throughout the mid 1980s as prices fell. The ZX Spectrum +3 includes a 3in
				disk drive as standard, as do competing models from other vendors. Please refer to the disk reference
				page for details of disk-based systems.
 
				ZX MicrodriveThe ZX Microdrive was a tape cartridge system, announced in April 1982 and launched in June 1983, although 
				development on the system may have begun as far back as 1981.
				Used in conjunction with the ZX Interface I to provide
				a faster alternative to cassette tape, Microdrive cartridges contained 6 metres of 1.9mm magnetic tape
				stored in an endless loop configuration offering 85KB of storage, which could be accessed at speeds of around
				15KB/sec.  Up to 8 Microdrives could be connected to a ZX Spectrum via the ZX Interface I.  Later 
				improvements to the Microdrive format would allow the QL to use around 100KB per cartridge, but the two 
				formats were incompatible with each other.
 
 » ZX Microdrive [nvg.ntnu.no]
 » Microdrive Development [nvg.ntnu.no]
 
 
Rotronics WafadriveThe Rotronics Wafadrive is similar in concept to the ZX Interface I and Microdrive combination, although quite different in design.
					It attaches to the expansion connector of the original ZX Spectrum and is powered directly by the computer via a short ribbon cable;
					although a pass-through connector is included, further expansion is limited because of this.
 
 Two tape drives are provided, each capable of using cartridges of up to 128K in capacity (16K and 64K cartridges were also
					produced), with RS-232 and Centronics ports also included. In common with the ZX Microdrives, the cartridges were actually
					continuous loops of tape, rather than disks as might be suggested by their external appearance. Data is retrieved from tape by
					reading it as it passes over the tape head, but the loop only runs in one direction making access times a little slower than from disk.
					The whole tape must loop around if data is 'behind' the current tape position. Wafadrive and Microdrive tapes are not compatible with
					each other.
 
 The Wafadrive Operating System is copied to addresses between 23754 and 26046 when the system is connected. This can cause
					some software to fail, and cannot easily be relocated without additional software or hardware. Several commercial backup utilities
					allowed programs to be transferred between cassette and Wafadrive cartridge, in common with other mass storage systems.
 
 Although relatively popular as a bulk storage device, the Wafadrive was eventually sold off very inexpensively following the collapse
					of Rotronics in 1986, and very few commercial applications were available ('Spectral Writer', a word processing package, was
					included with the drive). See the
					documents page for a link to the Wafadrive Command Summary.
					Sintech can occasionally supply wafers of various different capacities.
 
 
 
						Storage capacity: Up to 128K per drive (formatted).Transfer rate: 18K Baud.Tape speed: 10" per second (fast search = 15" per second).
 
Timing: Formatting (timings are approximate).
							
								16K: 47 seconds.64K: 2 minutes 30 seconds.128K: 4 minutes 42 seconds.
 
Timing: Cataloguing (timings are approximate).
							
								16K: Up to 8.5 seconds.64K: Up to 27 seconds.128K: Up to 47 seconds. Emulation of the Rotronics Wafadrive is provided by RealSpec for MS-DOS
					and Microsoft Windows systems.
 
 
Timex TS2020 Program RecorderThe TS2020 is a simple cassette recorder, with built-in loudspeaker, tape counter, tone control and VU meter, designed for use with any of the
				Timex systems introduced to North America. The technical specifications of the TS2020 are:
 
 
 
					The TS2020 was originally introduced at a cost of $49.95.Output Power: 500mw.Speaker: 2in (50mm).Impedance: 8 Ohms.Tape Speed: 1-7/8in (4.75cm) per second.Frequency Response: 200-6300Hz.
 
Power Supply: The TS2020 can be powered by batteries, or an (optional) AC Adaptor.
						
							Input: 6V DV via 4 'AA' Batteries or 120V AC, 60Hz 
 
 
 Miscellaneous: |