6500 Computer Systems

Commodore VIC-20

MOS 6500 Microprocessor

6500 ("6502") was a primitive microprocessor. Yet it was the standard CPU for 8-bit microcomputer systems in 1970s..1980s. 6500 was essentially a reduced Motorola 6800 (6800 design was more powerful, 6809 had 16-bit arithmetic and a MUL/multiply instruction). 6502 was load-operation-store architecture (LD/OP/ST, load/store, read-modify-write). It had only 3 computational registers which were not general-purpose registers (GPRs). All registers were 8-bit except PC/IP.

3 computational registers were A, X, Y. A was the accumulator which held the results of operations. X and Y were the index registers (a memory offset). Registers had to be continually moved to memory or transferred to another register. IIRC, register transfer instructions were limited. Some register combinations had no transfer instruction and had to be done indirectly


Had a variety of addressing modes, direct index, indirect index, zero page, etc. A 6500 "page" was 256 bytes (8 bits). Stack was hardwired at page #1 (0x100..0x1ff) which was indexed by 8-bit stack pointer.

Other registers were:
S/SP : stack register
P/SR : processor status register (conditions)
PC/IP : program counter (16-bit)

Commodore VIC-20

Commodore VIC-20 13KB running
VIC-20 running with expanded memory (8KB memory cartridge).

System was so limited it was practically useless (but one could learn computer programming with a VIC-20).

Atari 800 vs Commodore 64

Atari 800 lid up
Commodore 64

Atari 800 was one of the best 6500 systems. Better than a Commodore 64 in many ways.

The greatest advantage of Atari 800 over C64 was expandability. 800 had multiple card slots. Later Atari XL/XE were worse by loss of expandability.

Atari was faster, its 6502 ran at 1.7Mhz, C64's 6510 ran at 1.0Mhz.

Atari's graphics had more more colors (base colors plus luminance levels) and more graphics modes (resolutions).

Graphics chip of Atari (ANTIC), like Amiga, was a coprocessor that executed "display lists". Mixed modes were coded in Atari by 6502 placing into RAM "display list instructions" for ANTIC to execute.

Atari had a smooth-scrolling of its "playfield" which C64 had no counterpart.

C64's sprites were better, the only area in graphics C64 had an advantage. Atari's "player/missile" sprites had limitations in setting positions. C64's sprites could be set in any position and were larger.

C64's sound was far superior with its SID chip. For a user interested in music, C64 would've been a better system. In games that were ported to both, C64's voices almost sound like real musical instruments, while Atari's voices sounds like a primitive synthesizer.

Atari BASIC was better, having Atari-specific commands, and may have been faster. Atari had its own DOS and could boot into a useful notepad program.