Egghead.page Logo

Commodore VIC-20 Boot Sequence Without Cartridge

When powering up the Commodore VIC-20 without an expansion cartridge, the computer undergoes a specific initialization routine managed by its Kernal ROM. This process verifies hardware integrity, counts available memory, and prepares the built-in BASIC interpreter for user input. The following sections detail the technical steps occurring from the moment the power switch is flipped until the familiar READY prompt appears on the screen.

Upon pressing the power switch, the MOS 6502 microprocessor receives a reset signal. This forces the CPU to read the reset vector located at the top of the memory map, directing it to the start address of the Kernal ROM. The Kernal immediately initializes the video interface chip to generate a signal for the television or monitor, ensuring output is visible before further processing occurs.

The most visible part of the startup process is the RAM test. The system reads and writes to each available byte of random access memory to ensure functionality. On the screen, this appears as a number rapidly counting up, representing the bytes of free memory detected. For an unexpanded VIC-20, this count stops at 3583, indicating the standard 3.5KB of usable RAM available for programs.

Once the memory check completes, the system checks the expansion port for a cartridge. Since no cartridge is inserted, the logic defaults to the internal BASIC ROM. The screen is cleared, the cursor is positioned, and the startup message displaying the copyright information and memory size is printed. Finally, the Kernal prints the word READY followed by a blinking cursor, signaling that the machine is idle and waiting for a BASIC command or program input.