“Let’s do a fast, horizontally scrolling shoot-em up with lots of colour and no attribute clash.” That was Andrew Hewson’s brief to Dominic Robinson in late 1986, as Robinson quoted it in Sinclair User. On the ZX Spectrum it was a hard thing to ask for. The machine could show only two colours in each 8×8 block of the screen, so a coloured sprite moving over coloured scenery usually dragged blocks of the wrong colour with it, the problem known as attribute clash. Most scrolling games of the time avoided it by using one or two colours. Zynaps, released in the summer of 1987, scrolled a full-colour landscape at 25 frames a second with sprites weaving through it, and Sinclair User’s reviewer wrote that “you’ll believe a Spectrum totally lacks attribute problems”.
Fast facts
- Publisher: Hewson Consultants.
- Spectrum programming: Dominic Robinson, his first original game after converting Uridium to the Spectrum.
- With: John Cumming, who programmed the Commodore 64 version; graphics by Steve Crow; music by Steve Turner of Graftgold.
- Released: summer 1987 for the ZX Spectrum (48K and 128K), Commodore 64 and Amstrad CPC; Atari ST and Amiga versions followed in 1988 at £19.99.
- Size: 16 levels on the Spectrum, 450 screens of scrolling by Hewson’s count; 12 levels on the Commodore 64.
- Reviews: CRASH 91%, CRASH Smash; Sinclair User Classic; Your Sinclair 8/10; ZZAP!64 90%, Sizzler.
- Award: CRASH readers’ Best Shoot ’Em Up of 1987.
Five months, one brief
Robinson had never finished a game of his own. He had been writing Spectrum routines because he was “very impressed with Uridium”, sent his demos to Hewson when it advertised for programmers, and got the job of converting it. When Sinclair User asked him in 1988 how Zynaps happened, he said: “I was staring at my desk one day, when Andrew Hewson said, ’Write me a horizontal scrolling shoot-‘em-up.’ I’ll try anything once, so off I went.” It took about five months. Your Sinclair, printing one of his routines that summer, gave his age as 21.
Hewson previewed it in the spring of 1987 as a game of 450 scrolling screens, told in what it called “a uniquely styled comic book format”, with chapters and episodes. CRASH reported that Robinson planned “to scroll the colour memory”, and ZZAP!64 found John Cumming busy on the Commodore version, “cramming in the high resolution scrolling, three-dimensional parallax starfield and as many sprites as possible”.
How it was done
Robinson described the work himself in Sinclair User’s “Background Noise” column in August 1987. The three versions were written at once, on Amstrad PCW8512s with fast assemblers and linkers, and sent down an RS232 link to the Spectrum, Commodore 64 and Amstrad CPC.
On the Spectrum, speed came first. To keep the sprites and scrolling smooth at 25 frames a second, he decided against drawing each frame in a spare buffer and copying it to the screen, the usual way to hide the drawing from the player. Instead the game drew straight into screen memory using “beam avoidance techniques”: the routines were synchronised to the 50 Hz interrupt and kept track of where the television’s beam was, so that nothing was drawn in a part of the picture that was being displayed. He called it “a difficult job but in the end well worth the trouble”, since otherwise the player would have seen “glitches and scissoring caused by displaying a partly updated picture”.
Colour came next. The scenery gave little trouble, because its parts never move relative to each other: keeping areas of different colours at least 8 pixels apart horizontally was enough. Sprites crossing each other were, in his word, “insoluble” unless every sprite was the same colour, so he chose colours carefully and gave the more important sprites priority. Sprites crossing the scenery “gave me terrible trouble until I realised that I could run the sprites behind the background”. That removed the clash and gave the picture a feeling of depth. Raffaele Cecco used the same idea in Exolon, and Sinclair User said that Exolon “follows the path set by Zynaps in using colour throughout”.
The attack waves were written in two small languages of Robinson’s own, “Manoeuvre” and “Episode” programs, run by interpreters in each version so that the same alien movements could be shared between the three machines. An alien moving in a sine wave on level one was simply:
program
vector 32
repeat forever
oscillate
endprogramThe vector 32 instruction starts the alien moving left, and oscillate repeats until it reaches the edge of the screen.
Steve Turner wrote the music, “and as was vitally important in this case, compact”. Robinson did the sound effects himself, with a multi-tasking structure and an eight-level priority system that let jobs such as updating the score run as background tasks in otherwise wasted processor time. The rainbow title and high-score screens used another of his routines, which Your Sinclair printed as a type-in: it changed the colour attributes for every line of pixels, and he had used it in Uridium as well.
Scooping fuel
The player flies a Scorpion fighter out of a space station, through an asteroid field and over stranger and stranger alien landscapes towards a final confrontation with the alien mother. Shooting a formation of aliens or a ground installation leaves a fuel pod. Scooping it up moves an indicator along a row of upgrades, from extra speed through pulse lasers and plasma bombs to homing and seeker missiles, and the player holds down fire to take the one shown. A mothership blocks the way out of each stage.
It is hard. One of ZZAP!64’s reviewers, signing as J.R., found that later levels “seem almost impossibly hard – but practice pays off”, and complained that the level restarts whenever the ship is destroyed. Your Sinclair made the same complaint: “Every time you lose a life you’re plonked right back to the start.”
Reviews
CRASH made the Spectrum version a Smash in July 1987, with 91% overall and 93% for graphics. One reviewer called it “the ultimate in Nemesis clones”, comparing it with Konami’s arcade game Nemesis; another wrote that “a classy shoot-’em-up can still be fresh and exciting”. Sinclair User made it a Classic: “Superb shoot-em-up with the fastest most detailed graphics anywhere. The game joysticks were designed for.” “You’ll believe a Spectrum can shunt sixteen sprites and background around at 25 frames per second,” its review began. Your Sinclair was cooler at 8 out of 10: “A good, wholesome shoot ’em up that’ll keep you playing but won’t knock you for six.”
The Commodore 64 version was a ZZAP!64 Sizzler at 90% in September 1987: “An immensely addictive, slick and infuriatingly difficult shoot ’em up.” Gary Liddon admitted it scored “zero on the originality scale” but praised the “almost faultless gameplay”. Amstrad Action gave the CPC version 85% for grab factor and 82% for staying power. The 16-bit versions a year later met a harder market: ACE’s Bob Wade found the Atari ST game “a difficult shoot-em-up that will cause plenty of frustration”, and ST Action thought it “falls at the game-play hurdle”.
By November 1987 CRASH was tired of imitators. “I’ve really had enough of all the recent Zynaps clones,” one reviewer wrote; another game “was just Zynaps turned through 90 degrees”.
Readers’ favourite
CRASH‘s Hotline chart counted readers’ votes, not sales (see Reading the charts). Zynaps entered at 17 in October 1987, climbed to 6 in November and 2 in December, and was 2 again in February 1988, the month Exolon took number 1. It was still in the chart at 12 in November 1988, more than a year after it entered.
When the same readers voted for the best games of 1987, Zynaps won Best Shoot ’Em Up with 34% of the vote. Exolon came second with 23%; CRASH called it “always the bridesmaid never the bride”. Between them the two Hewson games took 57% of the vote. Hewson put both on its Four Smash Hits compilation that winter, with Uridium Plus and Ranarama.
After Zynaps
Robinson and Cumming did not stay. In September 1987 Graftgold signed with Telecomsoft, and CRASH reported that Steve Turner and Andrew Braybrook would be joined there by the two programmers, “both from Hewson”. Robinson’s next work was the Spectrum conversion of Flying Shark for Firebird. “What with Zynaps and the Flying Shark conversion I seem to have been working non-stop,” he told Sinclair User in February 1988.
No source code for Zynaps has been published.
Sources
- Dominic Robinson, “Background Noise: Zynaps”, Sinclair User issue 65, August 1987, p. 30: Andrew Hewson’s brief; the PCW8512 development system; 25 frames a second, beam avoidance and the 50 Hz interrupt; the colour problems and running sprites behind the background; the Manoeuvre and Episode interpreters and the sine-wave example; Steve Turner’s music; the sound and multi-tasking.
- “Programmers with pedigree”, CRASH issue 39, April 1987, p. 128: preview (Robinson, Uridium, scrolling the colour memory).
- CRASH issue 41, June 1987, p. 124: preview (Robinson’s first original game; John Cumming; Steve Crow; Steve Turner; 450 screens; the comic-book format).
- ZZAP!64 issue 25, May 1987: preview of Hewson’s Eagles and Zynaps.
- ZZAP!64 issue 28, August 1987: preview (programmer John Cumming; 450 screens).
- CRASH issue 42, July 1987, p. 14: Spectrum review, CRASH Smash (16 levels, the weapons and fuel units, 91% overall).
- Sinclair User issue 64, July 1987, pp. 44–45: Spectrum review, Classic (author Dominic Robinson; “shunt sixteen sprites”).
- Your Sinclair issue 20, August 1987, p. 33: Spectrum review, 8/10.
- Dominic Robinson, “Start Tip 1”, Your Sinclair issue 20, August 1987, p. 55: the Rainbow Processor, used in Zynaps and Uridium; Robinson aged 21.
- ZZAP!64 issue 29, September 1987, pp. 8–9: Commodore 64 review, Sizzler, 90% (the Scorpion, 12 levels, the reviewers’ comments).
- Amstrad Action issue 24, September 1987, p. 54: Amstrad CPC review.
- Sinclair User issue 65, August 1987: Exolon review (“follows the path set by Zynaps”).
- CRASH issue 46, November 1987, p. 140: Thunderceptor review (“Zynaps clones”); Telecomsoft signs Graftgold, with Robinson and Cumming.
- CRASH Hotline Top 20: issue 45, October 1987; issue 46, November 1987, p. 58; issue 47, December 1987; issue 49, February 1988, p. 84; issue 58, November 1988.
- CRASH issue 48, January 1988: Four Smash Hits compilation (Exolon, Zynaps, Ranarama, Uridium Plus).
- CRASH issue 51, April 1988, p. 57: readers’ awards for 1987, Best Shoot ’Em Up.
- “C.O.D.E. T.A.L.K.: Dominic Robinson”, Sinclair User issue 71, February 1988, p. 62: Uridium, Andrew Hewson’s request, five months’ work, Flying Shark.
- Amiga Computing, September 1988: Hewson’s 16-bit releases, including Zynaps at £19.99.
- Bob Wade, Zynaps (Atari ST) review, ACE issue 13, October 1988.
- Zynaps (Atari ST) review, ST Action, October 1988, p. 40.