Engineering:ZX Spectrum software

From HandWiki

The ZX Spectrum's software library was very diverse. While the majority of the software produced for the system was video games, others included programming language implementations, Sinclair BASIC extensions, databases, word processors, spread sheets, drawing and painting tools, and 3D modelling tools.

Games

Your Sinclair top 10

Between October 1991 and February 1992 Your Sinclair published a list of what they considered to be the top 100 games for the ZX Spectrum. Their top 10 were:[1][2]

  1. Deathchase
  2. Rebelstar
  3. All or Nothing
  4. Stop the Express
  5. Head Over Heels
  6. R-Type
  7. The Sentinel
  8. Rainbow Islands
  9. Boulder Dash
  10. Tornado Low Level

CRASH top 10

Between August and December 1991 CRASH published their list of the top 100 ZX Spectrum games, including in the top 10:[3]

  1. Rainbow Islands
  2. Chase H.Q.
  3. RoboCop
  4. RoboCop 2
  5. Dizzy
  6. Target
  7. Magicland Dizzy
  8. Batman: The Movie
  9. Operation Wolf
  10. Midnight Resistance

Techradar's "Top 30"

Techradar published their list of the best 30 ZX Spectrum games in 2012, underlining which games stood the test of time.[4]

  1. Elite – Firebird Games
  2. R-Type – Electric Dreams Software
  3. Chuckie Egg: A'n'F Software
  4. Manic Miner: Bug-Byte Software Ltd
  5. Knight Lore: Ultimate Play the Game
  6. Back to Skool: Microsphere
  7. Football Manager: Addictive Games Ltd
  8. Lunar Jetman: Ultimate Play the Game
  9. Horace Goes Skiing – Beam Software
  10. Boulder Dash – Front Runner
  11. Sim City: Infogrames
  12. Underwurlde: Ultimate Play the Game
  13. Super Hang-On: Electric Dreams Software
  14. Jet Set Willy: Software Projects Ltd
  15. Rainbow Islands: Ocean Software Ltd
  16. Tornado Low Level: Vortex Software
  17. Ant Attack: Quicksilva Ltd
  18. Chase H.Q.: Ocean Software Ltd
  19. Deus Ex Machina: Automata UK Ltd
  20. Lode Runner: Software Projects Ltd
  21. Gauntlet: US Gold Ltd
  22. Fantasy World Dizzy: Code Masters Ltd
  23. The Hobbit: Melbourne House
  24. Atic Atac: Ultimate Play the Game
  25. Tetris: Mirrorsoft Ltd
  26. Hyper Sports: Imagine Software Ltd
  27. The Way of the Exploding Fist – Melbourne House
  28. Daley Thompson's Decathlon: Ocean
  29. Skool Daze: Microsphere
  30. The Great Escape: Ocean

Notable developers

A number of current leading games developers and development companies began their careers on the ZX Spectrum. David Perry of Shiny Entertainment wrote Three Weeks in Paradise and Dan Dare. Tim and his brother Chris Stamper, along with Tim's girlfriend (later wife) Carole Ward and John Lathbury, published Jetpac, Atic Atac, Sabre Wulf and Knightlore: and many others, as Ultimate Play the Game, now known as Rare, maker of many famous titles for Nintendo and Xbox game consoles.[5] Alan Cox wrote Blizzard Pass, and is an ardent supporter of open source software.[6]

Other notable Spectrum game developers include:

Demos

Many demos were made for the Spectrum and compatible computers.[8][9][10][11][12][13][14][15][16] The demo scene on the Spectrum can probably be traced back to Castor Cracking Group, The Lords[17] and a few other groups and individuals back in 1986. The ZX Spectrum demo scene was slow to start,[18] but it started to rise in the late 1980s, most noticeably in Eastern Europe[13][19][20] and southern Europe.[21] Some demos were also released with magazines on cover tapes.[22]


The earliest demos were simple music players with music ripped from games and perhaps simple effects or text scrollers. Many scrolltext may contain rude words.[23] Many later demos feature so-called 'multicolor' effects (changing the color attributes of the ZX Spectrum's display configuration of 768 character blocks), which have to be fixed to a specific ZX Spectrum model. Megademos, demos with more content, usually split into several parts, appeared in the beginning of 90's, with the advent of The Lyra II by ESI. Most of the demos since 1996 have been "trackmos" (effects fixed to music), often featuring 3D objects, sometimes in low resolutions, to achieve more colours.

In the former Soviet Union and Eastern/Central Europe, the ZX Spectrum often has a cult status similar to the Commodore 64 in the Western Europe: it was the most popular 8-bit homecomputer and also the first computer for many computer and demoscene enthusiasts. Therefore, whereas many major Western European demo parties organise demo, music and graphics competitions for the Commodore 64, the parties in the east often have the corresponding ZX Spectrum competitions instead.

ZX Spectrum demos have been shown at multi-platform demoparties such as Assembly, and there used to be various Spectrum-only parties, such as Funtop in Moscow. The largest party today that regularly features the ZX Spectrum is Chaos Constructions in Saint Petersburg. Outside of Russia there is the Forever demoparty.[original research?]

Other software

Other software released for the Spectrum included:

Programming language implementations
Databases
Spreadsheets
Drawing and painting tools
3D modelling tools

Media

Tape

Because most British home computer owners used tape instead of disk storage into the mid-1980s,[33] most ZX Spectrum software was originally distributed on audio cassette tapes. The software is encoded on tape as a sequence of pulses that sound similar to the noises made by a modem. Since the Spectrum has only a rudimentary tape interface, data is recorded using an unusually simple and very reliable modulation: similar to pulse-width modulation but without a constant clock rate. Pulses of different widths (durations) represent 0s and 1s. A "zero" is represented by a ~244 μs pulse followed by a gap of the same duration (855 clock ticks each at 3.5 MHz) for a total ~489 μs;[34] "one" is twice as long, totalling ~977 μs. This allows for 1,023 "ones" or 2,047 "zeros" to be recorded per second. Assuming an even proportion of each, the resulting mean transmission rate is ~1,365 average bits/s. Higher speeds are possible using custom machine code loaders instead of the ROM routines.

In theory, a standard 48K program may take about 5 minutes to load: 49,152 bytes × 8 = 393,216 bits; 393,216 bits / 1,365 baud ≈ 288 seconds = 4:48 minutes. In practice, however, such a program usually takes between 3–4 minutes to load (because of different number of 0s and 1s encoded using audio frequency shift keying, and not all memory needs loading), and 128K programs could take up to 11:23 minutes to load. Experienced users can often tell the type of a file, e.g. file header, screen image or main block of code, from the way it sounds on the tape.[35]

The standard method of storing files on tape uses a combination of header and associated data blocks. Both types of blocks are preceded by pilot and synchronization signals, used to accommodate numerous physical variations present such as tape deck speed and distortion arising from tape stretching. Headers have a short size of 19 bytes (1 zero-value flag byte, 17 header information bytes, and 1 checksum byte), where the header information consists of a type byte, a 10-byte filename, a word data block length, and two word parameters. Depending on the type byte, the loader presents one of the follow messages: Program: <filename> for programs written in BASIC; Bytes: <filename> for machine code, screen dumps, etc.; or Character array: <filename> for an ASCII-encoded file.[36]

During standard loading and saving processes, the border of the screen flashes with cyan/red stripes for the pilot signal and yellow/blue stripes for the header and data blocks; which colour of the pair is used depends upon the bit that was last read from the tape. Pilot and synchronization signals are usually represented with a thick stripe size; on header and data blocks, the stripes are thinner. Striped border effects, as used in the standard loader or more complex ones (see below) can also be found on games written for other 8-bit computers, such as the Commodore C64, and the Amstrad CPC 464/664/6128: which, as it used the same Z80 CPU, often received ports of loading routines originally for the Spectrum[citation needed].

The Spectrum was intended to work with almost any cassette tape player, and despite differences in audio reproduction fidelity, the software loading process was designed to be reliable; nevertheless it was still possible for tapes to fail loading with the message R Tape loading error, 0:1. One common cause was the use of a cassette copy from a tape recorder with a different head alignment to the one being used. This could sometimes be fixed by pressing on the top of the player during loading, or wedging the cassette with pieces of folded paper, to physically shift the tape into the required alignment. A more reliable solution was to realign the head, which was easily accessible on a number of tape players, with a small (jeweller's) screwdriver.

Typical settings for loading were ¾ volume, 100% treble, 0% bass. Audio filters like loudness and Dolby Noise Reduction had to be disabled, and it was not recommended to use a Hi-Fi player to load programs. There were some tape recorders built specially for digital use, such as the Timex Computer 2010 Tape Recorder or Grundig CR 100 Data Recorder. The ZX Spectrum Plus 2 and 2A models are fashioned after an Amstrad CPC 464 and feature a built-in tape "datacorder".


It is possible to alter the colours between which the border alternates during loading, and/or to use more than two colours, in order to obtain more flashy visual effects during the loading process.

Complex loaders with unusual speeds or encoding were the basis of the ZX Spectrum copy protection schemes, although other methods were used including asking for a particular word from the documentation included with the game — often a novella — or the notorious Lenslok system. This had a set of plastic prisms in a fold-out plastic holder: the idea was that a scrambled two-letter code would appear on the screen, which could only be read by holding the prisms at a fixed distance from the screen courtesy of the plastic holder. This relied rather too much on everyone using the same size television, and Lenslok became a running joke with Spectrum users.

One very interesting kind of software was copiers. Most were copyright infringement oriented, and their function was only tape duplication, but when Sinclair Research launched the ZX Microdrive, copiers were developed to copy programs from audio tape to microdrive tapes, and later on diskettes. Best known were the Lerm suite produced by Lerm Software and Trans Express by Romantic Robot. As the protections became more complex (e.g. Speedlock) it was almost impossible to use copiers to copy tapes, and the loaders had to be cracked by hand, to produce unprotected versions. Special hardware, like Romantic Robot's Multiface which was able to dump a copy of the ZX Spectrum RAM to disk/tape at the press of a button, was developed, entirely circumventing the copy protection systems. "Snapshots" generated by these black boxes would later become the original filetype recognised by emulators: .SNA: although these memory dumps have been generally replaced by more complex files, incorporating original loading features and multi-level options.

ZX Microdrive

thumb|ZX Microdrive cartridge

The ZX Microdrive system was released in July 1983.[citation needed] While the drives were cheaper than floppy disk drives, the media was very expensive for software publishers to use for mass market releases (by a factor of 10, compared to tape duplication) and acquired a reputation for unreliability, with publishers reluctant to QA each and every item shipped.[37]

The main use became to complement tape releases, usually utilities and niche products like the Tasword word processing software and Trans Express.[citation needed]

No games are known to be exclusively released on Microdrive, but some companies allowed, and even aided, their software to be copied over. One such example was Rally Driver by Five Ways Software Ltd.[37]

Floppy disk

right|thumbnail|160px|The CF has a harder casing than a 3-inch floppy; the metal door is opened by a sliding plastic tab on the right side

Several floppy disk systems were designed for the ZX Spectrum. The most popular (excepting Eastern Europe,) were the DISCiPLE and +D systems released by Miles Gordon Technology in 1987 and 1988 respectively. Despite becoming popular and being reliable (from using standard Shugart disk drives), most releases were utility software. However, both systems had the ability to store memory images onto disk, snapshots, which later on could be loaded back into the ZX Spectrum and execution would commence from the point where they were "snapped", making them perfect for "backups". Both systems were also compatible with the Microdrive command syntax, which made porting existing software simpler.

The ZX Spectrum +3 featured a built-in 3" disk drive and enjoyed more success when it came to commercial software releases.

Most Russian releases since 1989 are made for the Beta 128 disc interface, the only system now in use there.

Others

In addition, software was also distributed through print media, fan magazines and books. The prevalent language for distribution was the Spectrum's BASIC dialect Sinclair BASIC. The reader would type the software into the computer by hand, run it, and save it to tape for later use. The software distributed in this way was in general simpler and slower than its assembly language counterparts, and lacked graphics. But soon, magazines were printing long lists of checksummed hexadecimal digits with machine code games or tools. There was a vibrant scientific community built around such software, ranging from satellite dish alignment programs to school classroom scheduling programs.

One unusual software distribution method were radio or television shows in e.g. Croatia (Radio 101), Serbia (Ventilator 202), Slovenia (Radio Študent), Poland , Czechoslovakia, Romania, Lebanon or Brazil , where the host would describe a program, instruct the audience to connect a cassette tape recorder to the radio or TV and then broadcast the program over the airwaves in audio format. In former Soviet Union, mostly in Russia and Ukraine unauthorised radio operators (so-called radio hooligans) often exchanged software from cassette tapes for Spectrum and other popular computers by broadcasting it.

Another unusual method which was used by some magazines were 7" 33⅓ rpm "flexidisc" records, not the hard vinyl ones, which could be played on a standard record player. These disks were known under various trademarked names including "Floppy ROM", "Flexisoft", and "Discoflex".

Popular music

A few pop musicians included Sinclair programs on their records. The Buzzcocks front man, Pete Shelley, put a Spectrum program including lyrics and other information as the last track on his XL-1 album. The punk band Inner City Unit put a Spectrum database of band information on their 1984 release, 'New Anatomy'. Also in 1984, the Thompson Twins released a game on vinyl.[38] The Freshies had a brief flirtation with fame and Spectrum games, with Frank Sidebottom making an early appearance in The Biz. (Previously, Freshies frontman Chris Sievey's song Camouflage contained a ZX81 music video as a B-side.) Aphex Twin included various loading noises on his Richard D. James album in 1996, most notably part of the loading screen from Sabre Wulf on Carn Marth.[39] Shakin' Stevens included his Shaky Game at the end of his The Bop Won't Stop album. The aim of the game was to guide your character around a maze, while avoiding bats.[40] Upon completion your score would be given in terms of a rank of disc, e.g. "gold" or "platinum". The game had a minor connection with one of his tracks, It's Late. Scottish band Urusei Yatsura included a Spectrum program that showed a satanic message in the beginning of the song[40] Thank You (from the album Everybody Loves Urusei Yatsura).

Other notable inclusions include the eighth studio album by the Stranglers, Aural Sculpture. Track 7 of side B on the cassette release includes a game called Aural Quest. This was developed by the band's keyboard player, Dave Greenfield, using the Quill Adventure System. It is notable for having two distinct versions, included on different masters of the album.[40] In 2017, Radiohead released a special edition of their OK, Computer album, called OKNOTOK. The included cassette tape features a ZX Spectrum program that generates random text and colours, whilst playing tones akin to a track included on the cassette.[40]

There was also a music program for the Spectrum 48K which allowed to play two notes at a time, by rapidly switching between the waveforms of the two separate notes, a big improvement over the mono Spectrum sound. The program was branded after the popular '80s pop band Wham!, and some of the biggest hits of this group could be played with the Spectrum. The program was called Wham! The Music Box and released by Melbourne House, one of the most prolific publishing houses at the time.

See also

References

  1. "The YS Top 100 Speccy Games Of All Time (Ever!)". Your Sinclair (73): 34–36. January 1992. http://www.ysrnry.co.uk/articles/ystop100_4.htm. Retrieved 2006-08-15. 
  2. "The YS Top 100 Speccy Games Of All Time Pt 5". Your Sinclair (74): 45. February 1992. http://www.ysrnry.co.uk/articles/ystop100_5.htm. Retrieved 2006-08-15. 
  3. "All Time Encyclopedia Top 100 Speccy Games". CRASH (94): 45–48. December 1991. http://www.crashonline.org.uk/94/top100.htm. Retrieved 2006-08-15. 
  4. Hartley, Adam (23 April 2012). "30 best ZX Spectrum games". http://www.techradar.com/news/gaming/30-best-zx-spectrum-games-594151. 
  5. Maher, Jimmy (2014-01-14). "The Legend of Ultimate Play the Game". The Digital Antiquarian. http://www.filfre.net/2014/01/the-legend-of-ultimate-play-the-game. 
  6. Bezroukov, Nikolai. "Alan Cox: and the Art of Making Beta Code Work". Portraits of Open Source Pioneers. http://www.softpanorama.org/People/Cox/index.shtml. 
  7. Maher, Jimmy (2014-01-21). "The Merry Pranksters of Automata". The Digital Antiquarian. http://www.filfre.net/2014/01/the-merry-pranksters-of-automata. 
  8. TechRadar: 10 of the coolest demoscene creations
  9. Vice: Demoscene - The Art of the Algorithms Looks At The History Of A Digital Subculture
  10. Collins, Karen. From Pac-Man to Pop Music: Interactive Audio in Games and New Media. 
  11. Impagliazzo, John (2009). "History of Nordic Computing 2". History of Nordic Computing. IFIP Advances in Information and Communication Technology 303: 291. doi:10.1007/978-3-642-03757-3. ISBN 978-3-642-03756-6. Bibcode2009hnc2.conf.....I. https://hal.inria.fr/hal-01301652. 
  12. Zone, Ray. 3DIY: 3D Moviemaking on an Indy Budget. p. 69. 
  13. 13.0 13.1 Woodcock, Colin. The ZX Spectrum on Your PC. p. 28. 
  14. Hacking Europe. p. 146. 
  15. Michael, Flenov. Hackish C++ Games & Demos. p. 9. 
  16. The Video Game Industry: Formation, Present State, and Future. pp. 139–140. 
  17. Your Sinclair: Quinquagesima
  18. Advanced ZAT Programming, issue 25, 1994: Demo&Co
  19. Your Sinclair: Megademo
  20. Demoscene – The Art of the Algorithms (2012)
  21. Hemdatornytt nr 2 1990, p 70
  22. World of Spectrum - Sinclair Infoseek
  23. Your Sinclair: Shock
  24. "ZXDB POWERED SOFTWARE SEARCH: HiSoft C". https://spectrumcomputing.co.uk/index.php?cat=96&id=0008252. 
  25. "ZXDB POWERED SOFTWARE SEARCH: HiSoft Pascal 4". https://spectrumcomputing.co.uk/index.php?cat=96&id=0008255. 
  26. "ZXDB POWERED SOFTWARE SEARCH: Micro-Prolog". https://spectrumcomputing.co.uk/index.php?cat=96&id=0008429. 
  27. "ZXDB POWERED SOFTWARE SEARCH: Forth". https://spectrumcomputing.co.uk/index.php?cat=96&id=0008178. 
  28. 28.0 28.1 Pearce, Nick (October–November 1982). "Zap! Pow! Boom!". ZX Computing: 75. 
  29. Wetherill, Steven (June 1984). "Tasword Two: The Word Processor". CRASH! (5): 126. 
  30. Gilbert, John (October 1985). "Art Studio". Sinclair User (EMAP) (43). https://archive.org/stream/sinclair-user-magazine-043/SinclairUser_043_Oct_1985#page/n27/mode/2up. 
  31. Carter, Alasdair (October–November 1983). "VU-3D". ZX Computing: 76–77. 
  32. "Psion Vu-3D". http://www.bioeddie.co.uk/Spectrum/vu-3d.htm. 
  33. Pountain, Dick (January 1985). "The Amstrad CPC 464". BYTE: pp. 401. https://archive.org/details/BYTE_Vol_10-01_1985-01_Through_The_Hourglass/page/n401/mode/2up. 
  34. Heide, Martijn van der; Kopanske, Martin; Kac, Tomaz (1997–1999). "Selecting a sample rate". Tape decoding with Taper. http://www.worldofspectrum.org/tapsamp.html#samplerate. 
  35. "Loader Bollocks". gaminglives.com. http://www.gaminglives.com/2010/03/25/loader-bollocks/. 
  36. Heide, Martijn van der (2005). "48K ZX Spectrum Technical Information". comp.sys.sinclair FAQ. http://www.worldofspectrum.org/faq/reference/48kreference.htm. 
  37. 37.0 37.1 "Microdrive revisited". CRASH (22). November 1985. http://www.crashonline.org.uk/22/opinion.htm. Retrieved 2006-08-10. 
  38. "General Info for: the Thompson Twins Adventure". SpectrumComputing.co.uk. https://spectrumcomputing.co.uk/index.php?cat=96&id=7104. 
  39. "Spectrum references in popular music". https://cl4.org/comp/spectrum/music/. 
  40. 40.0 40.1 40.2 40.3 Nostalgia Nerd (24 August 2020). "Hidden Code". https://www.youtube.com/watch?v=3zJWU1IR544.