Commodore 64

From homebrew.pixelbath
Revision as of 00:43, 25 December 2018 by Mhoskins (talk | contribs) (more c5)
Jump to navigation Jump to search

The Commodore 64, also known as the C64 or the CBM 64, is an 8-bit home computer introduced in January 1982 by Commodore International. It is one of the most popular classic home computer systems, listed in the Guinness World Records as the highest-selling single computer model of all time, with independent estimates placing the number sold between 10 and 17 million units.

While the C64 is not a console per se, homebrew on the system closely parallels that on consoles, particularly with the use of sprite-based graphics and direct graphics- and sound-based routines.

Specs

  • CPU: MOS 6510 (6502 derivative)
  • Display: MOS Technology VIC-II 6567/8562 (NTSC), 6569/8565 (PAL)
  • RAM: 64.5 KB (102.5 color RAM in text mode, 37.5 KB for built-in BASIC)
  • Sound: Sound: MOS Technology 6581/8580 SID
  • Expansion: 44-pin cartridge slot
  • Storage: 170 KB double-sided 5.25" floppy with optional 1541 floppy drive

The C64 uses an 8-bit MOS Technology 6510 microprocessor, which is a close derivative of the 6502 with an added 6-bit internal I/O port that in the C64 is used for two purposes: to bank-switch the machine's read-only memory (ROM) in and out of the processor's address space, and to operate the datasette tape recorder. The C64 has 64½ KB of RAM, of which 1024×½ bytes are color RAM for text mode and 38 KB are available to built-in Commodore BASIC 2.0 on startup.

Homebrew

Since the C64 is a personal computer in every sense of the word, there is no proprietary method of deploying code to the machine. It has a built-in BASIC interpreter and programs can be assembled with only a basic knowledge of how the system works.

The Commodore 64's built-in BASIC interpreter allows even novice users to build games using the fairly robust built-in text mode. Some slightly-advanced routines are available to BASIC users, such as PEEKing and POKEing specific memory locations, but for the most part the interpreter is much slower than native code.

The best and most professional way to create homebrew on the Commodore is to use 6502 assembler, slightly modified for the 6510.

Resources