Egghead.page Logo

How Many Sprites Could the Commodore VIC-20 Display?

The Commodore VIC-20 could not display any hardware sprites on screen at once, as the system lacked dedicated sprite hardware entirely. This article details the technical limitations of the VIC video chip, explains how developers simulated moving objects using character graphics, and contrasts these capabilities with the later Commodore 64.

The heart of the VIC-20 graphics system was the MOS Technology VIC chip, specifically the 6560 or 6561 model depending on the region. Unlike later video chips found in home computers of the mid-1980s, this integrated circuit did not include logic for hardware sprites. Hardware sprites are independent graphic objects that can move across the screen without interfering with the background data, managed directly by the video chip rather than the main CPU. Because the VIC chip lacked this feature, the official hardware sprite count for the VIC-20 is zero.

Despite this limitation, programmers found ways to create the illusion of moving objects through software techniques. The most common method involved using user-defined characters. By redefining specific character codes in the computer’s memory, developers could change the appearance of blocks on the screen to resemble players or enemies. However, this method was restrictive. Moving these character-based objects required the CPU to rewrite screen memory constantly, which consumed significant processing power and often resulted in flicker or slower movement compared to hardware-driven systems.

This architectural decision distinguished the VIC-20 from its famous successor, the Commodore 64. The C64 utilized the VIC-II chip, which supported eight independent hardware sprites with multi-color capabilities. The absence of sprites on the VIC-20 was a cost-saving measure intended to keep the machine affordable as the first computer to sell for under $300. While this made the VIC-20 accessible, it constrained the complexity of action games that could be developed for the platform. Ultimately, while software workarounds existed, the Commodore VIC-20 possessed no hardware capability to display sprites on screen.