Make distant things small and close things large, and a flat picture reads as an object in depth. Sprite scaling is how racing games showed cars growing as they came closer, and how into-the-screen shooters flung enemies at the player years before polygon hardware was affordable. In the arcades it was Sega’s signature, from Turbo in 1981 to the “Super Scaler” games of Yu Suzuki. At home it was a hardware feature on a few machines, a software feat on the rest, and a selling point in adverts either way.
Fast facts
- Purpose: depth on 2D sprite hardware.
- Method: draw the same sprite at a size that depends on its distance; the hardware or the CPU skips or repeats rows and columns of the stored picture to get there.
- Early hardware: Sega’s Turbo (1981), which stretched sprites by slowing the clock that read them out.
- Arcade name: “Super Scaler”, the name attached to Sega’s boards for Hang-On, Space Harrier, Out Run, After Burner and Power Drift.
- Home hardware with it: Neo Geo (shrink only), Amstrad Plus/GX4000 (×2 and ×4 magnify only), Atari Lynx, Atari Jaguar, Mega-CD (through its own graphics hardware). The SNES scales backgrounds, not sprites; the Amiga and Mega Drive scale nothing.
- Successor: texture-mapped polygons.
Turbo: scaling with a slower clock
Sega’s Turbo, a 1981 racing game, used hardware built for the job. MAME’s emulation of the board, which it calls the Sega Z80-3D system, shows how. A sprite’s width was set by the rate at which its pixels were read out of ROM: each sprite had its own voltage-controlled oscillator, and a value written by the program changed the oscillator’s frequency. In Sega Retro’s summary, “the slower the clock signal, the larger the sprite on screen.” Height was handled digitally, by a lookup table that decided which rows of the picture to draw. The same hardware ran Subroc-3D and Buck Rogers: Planet of Zoom in 1982.
Sega’s Super Scaler games
Edge’s 1994 profile of Yu Suzuki summed up a decade: “some of the most influential games of the past decade, from early sprite scalers like Hang On and Out Run to the polygon-packed excesses of Virtua Racing”. ACE had said the same in 1991: “In the mid-eighties, Sega addressed itself to the problem of Sprite Scaling and Manipulation. This produced games like OutRun, Afterburner, Thunderblade and Power Drift; and further development has produced games like Line of Fire and now Rail Chase that would have been thought impossible a few years back.”
Suzuki’s game history, as Edge printed it:
| Game | Released | Hardware | Edge’s note |
|---|---|---|---|
| Hang-On | July 1985 | Hang On board | “the first in a series of great motorbike racing games from Sega” |
| Space Harrier | December 1985 | Space Harrier board | “an impressive display of Sega’s sprite-scaling technology” |
| Out Run | September 1986 | Out Run board (shared with Super Hang-On) | “one of the most playable racing games ever created” |
| After Burner | July 1987 | X Board | “a coin-spinner of immense proportions” |
| Power Drift | August 1988 | Y Board | “advanced sprite scaling and an axis of rotation” |
| G-LOC | May 1990 | Y Board | — |
The board names come from MAME’s driver sources, which model each generation’s sprite chip separately; the X Board also carried Thunder Blade, Line of Fire and GP Rider, and the Y Board Galaxy Force, Galaxy Force II and Rail Chase. Suzuki’s team made After Burner and Power Drift at a separate office called Studio 128, and later became Sega AM2.
Where the Super Scaler line begins depends on who is telling it. Asked for his favourite, Suzuki picked Out Run, “which was a big hit in 1987 — this was the first game to use the Super Scaler technology.” Later accounts start earlier: Wireframe called Hang-On Sega’s first “super scaler title”, and Bitmap Books’ history of the Master System says Hang-On used “SEGA’s cutting-edge ‘Super Scaler’ technology”. Either way, Suzuki saw the same leap again in his polygon games: “I think the impact this technology made at the time has now been repeated with Virtua Racing and Daytona GP.”
What the chips did
MAME’s reconstruction of the sprite lists shows the mechanism growing more capable board by board. The Hang-On hardware has a single 6-bit zoom factor per sprite, used as an index into a zoom ROM that decides which source rows to draw twice or skip. Space Harrier splits it into separate 6-bit horizontal and vertical factors. System 16B (the Golden Axe and Shinobi board) has 5-bit factors where “0 = full size, 0x10 = half size”, a shrink-only scaler. The Out Run board’s 10-bit factors run the other way too: “0x200 = full size, 0x100 = half size, 0x300 = 2x size”, so a car can be drawn larger than its stored artwork. The Y Board widens the factor to 11 bits. In every case the drawing loop is an accumulator: add the zoom factor for each row, and “if we carry into the high bit, skip an extra row”.
None of this was available on home machines of the time. The Master System had no way of smoothly scaling sprites, Bitmap Books notes, and neither did the Mega Drive. Activision’s home computer After Burner switched between sets of ready-drawn sprites of different sizes instead, as its entry describes.
Home hardware that scales
Neo Geo. SNK’s hardware specification describes reduction, not enlargement: “the sprite can be reduced from 100% to 0%. The reductions can be done in 256 levels vertically and 16 levels horizontally”, the horizontal limit following from a sprite column being 16 dots wide. A game that wanted a close-up drew its graphics large and shrank them for the wide view. The specification also describes a “3D scrolling display” built from 41 shrunken line sprites.
Amstrad Plus / GX4000. The opposite trade. Amstrad’s press release for the Plus range listed “16 sprites each with 16 x 16 pixels and each sprite can be magnified by 2 or 4”, and Zero’s GX4000 feature called it “simple times two and times four hardware sprite zoom”. Fixed steps like these enlarge a sprite; they cannot move it smoothly towards the player.
Atari Lynx. ACE’s handheld round-up credited “custom chips in there to give hardware sprite scaling, hardware scrolling”, and RAZE told its readers that a sprite could be scaled from 1/256 of its size to 256 times it. For the Lynx conversion of Hard Drivin’, C&VG’s GO! supplement reported, “the bizarre sprite scaling abilities of the Lynx have been used to simulate polygons”.
Atari Jaguar. The Jaguar’s Object Processor takes a two-phrase header for an unscaled object and three for a scaled one. Its technical reference manual explains the trick in one sentence: “scaling is achieved by incrementing the line buffer address independently of the counter controlling the multiplexer. For instance if the line buffer address is incremented twice as often as the counter then the image will be twice as wide.”
Mega-CD. The add-on’s hardware manual has a “Rotation Scaling” section, but it works on “stamps” drawn by the add-on into an image buffer, which the Mega Drive then displays as ordinary graphics; the base machine’s sprites are untouched. The press reported the feature as sprite scaling anyway: MegaTech’s launch issue promised “ultra-complex routines such as sprite scaling and rotation… at incredible speeds”, and The One judged the Mega CD’s “dedicated sprite chip, which allows for some impressive sprite-scaling and rotating effects” its only real advantage over the CD32.
The SNES: backgrounds, not sprites
Mode 7’s transform, in the SNESdev wiki’s description, is something “background mode 7” does “on its tilemap”, and Nintendo’s licensee manual (Super NES Development Manual, Book I) lists rotation, enlargement and reduction against the background modes 7 and EXTBG alone. It is a background function; the sprite layer cannot be scaled in any mode. Developers who wanted scaled sprites against a Mode 7 floor had to draw them into the background or scale them in software, which is why Nintendo Power was impressed that Ocean’s Jurassic Park used “Mode 7 effects to scale and rotate both rooms and sprites” and a separate “sprite-scaling technique used to make the dinosaurs move in a 3-D world”: “the only other game that accomplishes this technical feat is Super Empire Strikes Back”. The distinction was lost on much of the press. Mean Machines complained that the SNES Pit-Fighter lacked “the sprite-scaling that made the arcade machine so interesting and which the Super NES could have handled so easily”, and Grandslam’s Russell Kerrison, explaining why Bump ‘n’ Burn could not be Super Mario Kart, blamed the Amiga’s lack of an “equivalent of the SNES’ dedicated sprite-scaling chip”. The SNES had no such chip.
Software scaling at home
Where the hardware did nothing, the CPU did it, and adverts said so. Domark’s Pit-Fighter conversions were sold on “incredible graphics, digitised from real fighters, and amazing real time sprite scaling”. Magnetic Fields’ Lotus and Supercars games gave the team a reputation CU Amiga could call “their expertise with sprite scaling”. Kerrison’s verdict on the Amiga was that matching the SNES’s roaming Mario Kart course “to the extent it’s been done on the SNES — is virtually impossible”, so Bump ‘n’ Burn kept the characters and weapons and changed the driving. On the ST, a 1994 reader asked ST Format whether any STOS extension could “do sprite-scaling like in Space Harrier, or do I have to write my own routine?”; the magazine had heard rumours of one but had never seen it.
Sources
- MAME source code,
src/mame/sega/turbo.cppandturbo_v.cpp(the Sega Z80-3D system: Turbo, Subroc-3D, Buck Rogers; sprite X scaling by pixel clock, Y scaling by lookup), andsega16sp.cpp,segaorun.cpp,segaxbd.cppandsegaybd.cpp(Aaron Giles: Sega’s 16-bit sprite devices, zoom factors and the games on each board). https://github.com/mamedev/mame - Sega Retro, “Turbo” and “VCO Object” (web, secondary): the 1981 hardware and its analogue scaling. https://segaretro.org/VCO_Object
- Edge issue 9, June 1994, pp. 45–50, “Yu Suzuki: Sega’s driving force”: the profile, the game history and Suzuki on Out Run and the Super Scaler.
- ACE issue 48, September 1991: coin-op feature on Sega’s sprite scaling. Issue 31, April 1990: handheld round-up (the Lynx).
- Wireframe issue 50, April 2021, p. 40: Hang-On as Sega’s first “super scaler title”.
- Steve Jarratt and Damien McFerran, SEGA Master System: a visual compendium (Bitmap Books, 2019), pp. 60 and 90: Hang-On and Super Scaler technology; the Master System and Mega Drive unable to scale sprites smoothly.
- SNK, Neo-Geo Hardware Specification (1989): sprite reduction and the 3D scrolling display.
- Amstrad, press release for the Plus range, 20 August 1990; Zero issue 12, October 1990: GX4000 sprite magnification.
- RAZE issue 10, August 1991, pp. 20–21: the Lynx’s scaling range.
- Computer and Video Games GO! supplement, issue 121, December 1991: the Lynx Hard Drivin’. Issue 121, December 1991: Domark’s Pit-Fighter advertisement.
- Atari, Jaguar Technical Reference Manual, revision 8: the Object Processor.
- Sega, Mega-CD Hardware Manual v1.0, 14 October 1991: “Rotation Scaling”. MegaTech issue 1, December 1991. The One issue 60, September 1993.
- SNESdev Wiki, Mode 7 and PPU registers; Nintendo, Super NES Development Manual, Book I: rotation, enlargement and reduction for background modes 7 and EXTBG only.
- Nintendo Power issue 53, October 1993: Jurassic Park. Mean Machines issue 20, May 1992: SNES Pit-Fighter.
- The One issue 66, March 1994: Bump ‘n’ Burn work in progress, Russell Kerrison.
- CU Amiga, November 1994: Magnetic Fields. ST Format issue 54, January 1994: letters.