The VIC (Video Interface Chip), specifically known as the MOS Technology 6560 (NTSC version) / 6561 (PAL version), is the integrated circuit chip responsible for generating video graphics and sound in the VIC-20 home computer from Commodore. It was originally designed for applications such as low cost CRT terminals, biomedical monitors, control system displays and arcade or home video game consoles.
The chip was designed by Al Charpentier in 1977 but Commodore could not find a market for the chip. In 1979, MOS Technology began work on a video chip named MOS Technology 6564 intended for the TOI computer and had also made some work on another chip, MOS 6562 intended for a color version of the Commodore PET. Both of these chips failed due to memory timing constraints (both required very fast and thus expensive SRAM, making them unsuitable for mass production). Before finally starting to use the VIC in the VIC-20, chip designer Robert Yannes fed features from the 6562 (a better sound generator) and 6564 (more colors) back to the 6560, so before beginning mass production for the VIC-20 it had been thoroughly revised.
Its features include:
Unlike many other video circuits of the era, it does not offer dynamic RAM refresh capabilities. Thus the VIC-20 employed the more expensive static RAM (SRAM) chips. This is likely the reason why the machine was sold with just 5 KB of RAM. Memory expansions for the VIC-20 either used SRAM as well or implemented their own refresh circuit.
The VIC was programmed by manipulating its 16 control registers, memory mapped to the memory address range $9000–$900F in the VIC-20 address space. The on-chip A/D converters were used for dual paddle position readings by the VIC-20, which also used the VIC's light pen facility. The VIC preceded the much more advanced VIC-II, used by the VIC-20's successors, the C64 and C128.
VIC-20s with expansion RAM have their video memory (550 bytes) at $1000 and when it is not present, $1E00. User-defined character sets must be placed within the first 5k of system RAM. The default PETSCII character ROM is at $8000 and each character takes 8 bytes to store. Up to 128 characters may be used at any one time. While the PET had a backslash (\) in its character set, this was replaced on the VIC-20 (and all subsequent Commodore machines) with a British pound sign (£).
Programmable characters are the only way of creating graphics and animation on the VIC as the chip does not have sprites or an all-points-addressable bitmap mode. Of the 16 colors in the palette, eight may be used for the foreground (per the color RAM at $9400) and border while the others are limited to the background and auxiliary multicolors. The MSB of the color RAM is a flag used to indicate if that character is multicolor or high resolution. Due to the extreme blockiness of the former, most VIC-20 games use hires characters.
The VIC does not support scrolling or raster interrupts like on the VIC-II, but the scanline counters could be polled for a specific point on the screen to produce raster effects. This feature was rarely used in games except for a few titles like Imagic's Demon Attack.
Sound programming on the VIC is done by placing a frequency value in one of the four registers at $900A-$900D (they are turned off by writing a zero to them). The first three are square wave generators pitched half an octave from each other and the fourth is for white noise.
The VIC has 16 read/write registers listed below:
Register | Hexadecimal | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
---|---|---|---|---|---|---|---|---|---|
0 | 9000 | Interlace | Horizontal origin | ||||||
1 | 9001 | Vertical origin | |||||||
2 | 9002 | VA9 | Number of columns | ||||||
3 | 9003 | R0 | Number of rows | 8/16 | |||||
4 | 9004 | Raster line (bits 8–1) | |||||||
5 | 9005 | Video addr (bits 13–10) | Char addr (bits 13–10) | ||||||
6 | 9006 | Light pen horizontal | 1 | ||||||
7 | 9007 | Light pen vertical | |||||||
8 | 9008 | Paddle X | |||||||
9 | 9009 | Paddle Y | |||||||
10 | 900A | enable | Oscillator 1 frequency | ||||||
11 | 900B | enable | Oscillator 2 frequency | ||||||
12 | 900C | enable | Oscillator 3 frequency | ||||||
13 | 900D | enable | White noise frequency | ||||||
14 | 900E | Aux color | Volume | ||||||
15 | 900F | Background | RV | Border |
The full palette of sixteen colors was generated based on variations of YPbPr signals:
Number — name | Y | Pb (rel.) | Pr (rel.) |
---|---|---|---|
0 — black | 0 | 0 | 0 |
1 — white | 1 | 0 | 0 |
2 — red | 0.25 | −0.3826834 | 0.9238795 |
3 — cyan | 0.75 | 0.3826834 | −0.9238795 |
4 — purple | 0.5 | 0.7071068 | 0.7071068 |
5 — green | 0.5 | −0.7071068 | −0.7071068 |
6 — blue | 0.25 | 1 | 0 |
7 — yellow | 0.75 | −1 | 0 |
8 — orange | 0.5 | −0.7071068 | 0.7071068 |
9 — light orange | 0.75 | −0.7071068 | 0.7071068 |
10 — light red | 0.5 | −0.3826834 | 0.9238795 |
11 — light cyan | 1 | 0.3826834 | −0.9238795 |
12 — light purple | 0.75 | 0.7071068 | 0.7071068 |
13 — light green | 0.75 | −0.7071068 | −0.7071068 |
14 — light blue | 0.5 | 1 | 0 |
15 — light yellow | 1 | −1 | 0 |
Note: Y has 5 possible values (0, 0.25, 0.5, 0.75 and 1); Pb and Pr have 7 possible values (-0.9238795, −0.7071068, −0.3826834, 0, 0.3826834, 0.7071068, 0.9238795)
The Amiga 500, also known as the A500, was the first popular version of the Amiga home computer, "redefining the home computer market and making so-called luxury features such as multitasking and colour a standard long before Microsoft or Apple sold these to the masses." It contains the same Motorola 68000 as the Amiga 1000, as well as the same graphics and sound coprocessors, but is in a smaller case similar to that of the Commodore 128.
The Commodore 64, also known as the C64, is an 8-bit home computer introduced in January 1982 by Commodore International. It has been listed in the Guinness World Records as the highest-selling single computer model of all time, with independent estimates placing the number sold between 12.5 and 17 million units. Volume production started in early 1982, marketing in August for US$595. Preceded by the VIC-20 and Commodore PET, the C64 took its name from its 64 kilobytes(65,536 bytes) of RAM. With support for multicolor sprites and a custom chip for waveform generation, the C64 could create superior visuals and audio compared to systems without such custom hardware.
MOS Technology, Inc. ("MOS" being short for Metal Oxide Semiconductor), later known as CSG (Commodore Semiconductor Group) and GMT Microelectronics, was a semiconductor design and fabrication company based in Audubon, Pennsylvania. It is most famous for its 6502 microprocessor and various designs for Commodore International's range of home computers.
The RadioShack TRS-80 Color Computer, later marketed as the Tandy Color Computer, is a series of home computers developed and sold by Tandy Corporation. Despite sharing a name with the earlier TRS-80, the Color Computer is a completely different system and a radical departure in design based on the Motorola 6809E processor rather than the Zilog Z80 of earlier models.
The Commodore 128, also known as the C128, C-128, or C= 128, is the last 8-bit home computer that was commercially released by Commodore Business Machines (CBM). Introduced in January 1985 at the CES in Las Vegas, it appeared three years after its predecessor, the Commodore 64, the bestselling computer of the 1980s. Approximately 2.5 million C128s were sold during its four year production run.
The VIC-20 is an 8-bit home computer that was sold by Commodore Business Machines. The VIC-20 was announced in 1980, roughly three years after Commodore's first personal computer, the PET. The VIC-20 was the first computer of any description to sell one million units, eventually reaching 2.5 million. It was described as "one of the first anti-spectatorial, non-esoteric computers by design...no longer relegated to hobbyist/enthusiasts or those with money, the computer Commodore developed was the computer of the future."
The Commodore Plus/4 is a home computer released by Commodore International in 1984. The "Plus/4" name refers to the four-application ROM-resident office suite ; it was billed as "the productivity computer with software built in".
The VIC-II, specifically known as the MOS Technology 6567/6566/8562/8564, 6569/8565/8566 (PAL), is the microchip tasked with generating Y/C video signals and DRAM refresh signals in the Commodore 64 and Commodore 128 home computers.
The Commodore 65 is a prototype computer created at Commodore Business Machines in 1990–1991. It is an improved version of the Commodore 64, and it was meant to be backwards-compatible with the older computer, while still providing a number of advanced features close to those of the Amiga.
The 8563 Video Display Controller (VDC) was an integrated circuit produced by MOS Technology. It was used in the Commodore 128 (C128) computer to generate an 80-column RGB video display, running alongside a VIC-II which supported Commodore 64-compatible graphics. The DCR models of the C128 used the later and more technically advanced 8568 [D]VDC controller.
The MOS Technology "Agnus", usually called Agnus, is an integrated circuit in the custom chipset of the Amiga computer. The Agnus, Denise and Paula chips collectively formed the OCS and ECS chipsets.
The Motorola 6845, or MC6845, is a display controller that was widely used in 8-bit computers during the 1980s. Originally intended for designs based on the Motorola 6800 CPU and given a related part number, it was more widely used alongside various other processors, and was most commonly found in machines based on the Zilog Z80 and MOS 6502.
The VIC-1211 Super Expander is a cartridge for the VIC-20 home computer. It was designed to provide several extensions to the BASIC interpreter on the computer, mostly to help with programming graphics and sound. It also provided 3 KB of extra RAM. The cartridge was created by Commodore Business Machines (CBM) and released in 1981.
The MOS Technology 8568 Video Display Controller (VDC) was the graphics processor responsible for the 80 column or RGBI display on the Commodore 128DCR personal computer.
A video display controller (VDC), also called a display engine or display interface, is an integrated circuit which is the main component in a video-signal generator, a device responsible for the production of a TV video signal in a computing or game system. Some VDCs also generate an audio signal, but that is not their main function. VDCs were used in the home computers of the 1980s and also in some early video picture systems.
The 7360/8360 TExt Display (TED) was an integrated circuit made by MOS Technology, Inc. It was a video chip that also contained sound generation hardware, DRAM refresh circuitry, interval timers, and keyboard input handling. It was designed for the Commodore Plus/4 and 16. Packaging consisted of a JEDEC-standard 48-pin DIP.
The Atari 2600 hardware was based on the MOS Technology 6507 chip, offering a maximum resolution of 160 x 192 pixels (NTSC), 128 colors, 128 bytes of RAM with 4 KB on cartridges. The design experienced many makeovers and revisions during its 14-year production history, from the original "heavy sixer" to the Atari 2600 Jr. at the end. The system also has many controllers and third-party peripherals.
Composite artifact colors is a designation commonly used to address several graphic modes of some 1970s and 1980s home computers. With some machines, when connected to an NTSC TV or monitor over composite video outputs, the video signal encoding allowed for extra colors to be displayed, by manipulating the pixel position on screen, not being limited by each machine's hardware color palette.