VIC-1211A Super Expander
The VIC-1211A is a peripheral produced by Commodore for its VIC-20 computer. This utility cartridge provides 3K of additional Random Access Memory (RAM) and a BASIC extension (providing enhancements to the VIC-20's built in programming language). Like all of the utility cartridges produced by Commodore for the VIC-20, the Super Expander came in a brown plastic cartridge case.
A VIC-20 with a VIC-1211A Super Expander inserted in its cartridge slot will indicate 6519 bytes free (the VIC-1210 3K RAM Cartridge shows 6655 bytes free). The few missing bytes are used by the expander itself for BASIC extension functions. The Super Expander gives the BASIC interpreter extra commands that are less esoteric than PEEKing and POKEing memory locations. Commands to read the joystick and paddle port are implemented as well as commands that allow a user to more easily draw high resolution graphics (such as lines, arcs and circles). Sound is also easier to program as the method to specify note pitch and volume has been simplified.
SOUND s1, s2, s3, s4, v
...substituting values for the variables will set the pitch values of the VIC's three tonal voices (s1 to s3), the noise voice (s4) and set the global volume (v) of all the voices. Furthermore, the Super Expander's "music writing" mode - an extension to the PRINT command - allows notes to written by name (i.e. C, D, E...) and tempo, octave & note duration to be specified by letter code.
DRAW c, X1, Y1 to X2, Y2
...substituting numerical values for the variables listed will draw a high-resolution line between the points specified by the two pairs of X & Y co-ordinates. The color of the line is specified by substituting "c" with a value between 0 and 15.
Without the Super Expander the same graphic and sound functions can only be accomplished by using POKE commands and FOR...NEXT loops.
The VIC-1211A Super Expander makes greater use of the VIC-20's function keys by attaching some of the most commonly used BASIC commands to them. With a Super Expander installed, a single press of any of these keys will type a whole command word (such as PRINT) on the screen instantly. The function keys can also be made to recall other commands as specified by the user.
The Super Expander high resolution screen area is 160×160 pixels (although technically the VIC 6560 chip was capable of 192×200). Multicolor high resolution mode can also be used although the pixels are twice as wide as mono-color pixels (meaning a reduced resolution of 80×160). Both graphic modes can be used simultaneously. Screen co-ordinates in the commands such as DRAW are not expressed directly in the 0..159 or 0..80 range but scaled up to 0..1023 per axis. Because of the slow pixel-by-pixel method by which graphics are drawn to the screen, the Super Expander's high resolution modes are too slow to use in fast-paced arcade type games.
Unfortunately, programs written using the special commands of the VIC-1211A Super Expander can only be run on a VIC-20 with a Super Expander installed. Because the Super Expander was not ubiquitous among VIC-20 owners in the 1980s, software requiring it was almost non-existent. One of the few titles that made use of the Super Expander was the Fantasy/RPG/Management game "Citadel" which displayed high-resolution graphics in its loading screen.