Features of FATVIC

By Thomas Lövskog
2 min read

Table of Contents

Introduction

FATVIC represents a complete modernization of the classic MOS 6560/6561 VIC (Video Interface Chip) that powered the Commodore VIC-20. Designed as a drop-in replacement, FATVIC maintains full backward compatibility with the original VIC chip while adding sophisticated modern capabilities that transform this retro platform into a powerful graphics and audio system.

Built around a Lattice ECP5 FPGA, FATVIC bridges the gap between vintage computing nostalgia and contemporary hardware design, offering hobbyists and developers an enhanced platform for both preservation and innovation.

Core Design Philosophy

FATVIC's development centered on three fundamental principles:

Backward Compatibility: Every original VIC-20 program runs unmodified. The register interface, timing characteristics, and behavior of the original chip are faithfully reproduced.

Modern Enhancement: An unlock sequence enables advanced features without breaking compatibility. This elegant approach allows vintage software to coexist with modern capabilities.

Production-Ready Implementation: Version 1.4 represents a complete, tested specification with full Verilog implementation suitable for immediate FPGA deployment.

Memory

With the addition of the FATVIC director in place of the 74LS138 BLKn decoder, the memory can be extended.

Inside the FPGA are 8k SRAM for the BLK0, there is also SRAM for the CHARROM as well as sprite information. All of these 8k are addressable by the FATVIC.

The director adapter also disables the cartridge ports RAM1,2 and 3 chip select signals.

The Color SRAM is 8 bit wide and holds additional information.

The FATVIC has 32 additional registers that is hidden at power up and reset. It is 100% compatible.

Audio / Video

VGA output through a mini DIN mounted in the same space as the ordinary audio/video DIN connector. Changes done are reversable.

It also has a 24bit stereo codec.

VGA Output

While maintaining the original composite video outputs, FATVIC adds native VGA output:

  • 640×480 progressive scan
  • 4-bit RGB color per channel
  • Separate horizontal and sync signals
  • Clean, crisp digital display output
  • Resistor network DACs for analog RGB generation

Graphics

The FATVIC has some additional features for graphics. First of, it has 16 times the color SRAM for a new color for each scanline instead of each 8 scanlines. This for compatibility with various modifications and software.

There is a enhanced text mode display with 40 x 25 and 80 x 25 characters, with the same character set as normal.

Since color RAM is 8-bit I have thought about extending this to support;

  • 2 sets of fonts, which would make it possible to have the standard ASCII characters as well as custom, not either or.
  • Automatic inverse of video.
  • 2 additional bits for 4 different palettes (including multicolor).

Besides that it is not really set in stone what I will go for. It is a matter of walking a fine line between keeping this a VIC-20 with slight enhancements, and making a Frankensteins monster, just because. For that I have the NeoCore 65C816 based computer.

But I have some ideas for both extended tile management, a bitmap mode with hardware accelerated drawing functions and block move. Also 8-32 sprites on the drawing board.

The future will see what I end up doing. Since much of this will be reused for NeoCore, there is not a question of development resources.

Tagged in:

FATVIC

Last Update: February 03, 2026

About the Author

Thomas Lövskog

Electronic Consultant with 35 years of experience with PCB design. Works with anything from Mobile Phones, industrial automation systems, through cryptographic and cybersecurity systems.

View All Posts