CCS64

CCS64 is a shareware Commodore 64 emulator known for being very accurate. VICE is a free alternative.

Hardware emulated

 * CPU 6510, MMU 82S100. All imaginable programs should work. The emulation of CPU is cycle exact and considers all strange side-effects.
 * VIC 6566/6567/6569. All imaginable graphics modes and effect should work. The emulation of VIC is pixel exact and considers all strange effects, both known and unknown, as it emulates the inner workings of the VIC chip.
 * SID 6581/8581. Nearly perfect regarding the digital core emulation. Approximated emulation regarding the filter emulation and analog amplifier output. The emulation of SID is cycle exact and constructs fully synthetic samples in 8 or 16 bits resolution.
 * CIA 6526. All features of the I/O circuits. The emulation of CIA is cycle exact.
 * Keyboard. All keys including Restore.
 * CPU 6502. All imaginable programs should work. The emulation of CPU is cycle exact and considers all strange side-effects.
 * VIA 6522. All features of the I/O circuits. The emulation of VIA is cycle exact.
 * GCR Read/Write electronics. Handles different densities and all kind of syncronization patterns.
 * Head step motor. Handles 84 half-tracks.
 * Disk rotation motor.
 * Read/Write electronics. The pulse generation is cycle exact.
 * Tape motor.
 * Play button sense.
 * Printer at serial port with device number from 4 to 7 emulated at kernel level. Normal file operation from BASIC should work.
 * 1764 Ram Expansion Unit (REU). Configurable in steps from 128 Kb to 16 Mb. Emulation is cycle exact.
 * ROM/RAM Cartridges with custom hardware. Besides from normal kind of cartridges, seventeen types of custom hardware are emulated.
 * Digital joystick. Supports up to three fire buttons.
 * Mouse C1351.
 * Paddles.
 * Parallell cable connected between the C64 user port and the 1541 diskdrive.
 * RAM Expansion. Configurable at any size at locations $2000-$C000.
 * Up to four connected 1541 diskdrives.
 * Can combine REU and normal cartridges.

Resources

 * Website
 * Technical documentation
 * Description of RAW tape (.TAP) format
 * Description of C64 cartridge (.CRT) format