Kotlin 6502/65C02 microprocessor simulator
Go to file
Irmen de Jong d0dfb24172 virtual machine 2019-09-16 01:17:54 +02:00
.idea virtual machine 2019-09-16 01:17:54 +02:00
gradle/wrapper initial 2019-09-11 02:17:59 +02:00
src virtual machine 2019-09-16 01:17:54 +02:00
.gitignore virtual machine 2019-09-16 01:17:54 +02:00
.travis.yml trigger 2019-09-13 01:43:58 +02:00
LICENSE fix disassembler address display 2019-09-14 17:25:41 +02:00
README.md moved stuff around, added some more kdocs 2019-09-14 21:11:20 +02:00
build.gradle.kts ide settings and build config 2019-09-15 01:56:48 +02:00
gradle.properties tweak 2019-09-13 01:20:57 +02:00
gradlew initial 2019-09-11 02:17:59 +02:00
gradlew.bat initial 2019-09-11 02:17:59 +02:00
settings.gradle.kts initial 2019-09-11 02:17:59 +02:00

README.md

saythanks Build Status

KSim65 - Kotlin/JVM 6502/65C02 microprocessor simulator

Written by Irmen de Jong (irmen@razorvine.net)

Software license: MIT, see file LICENSE

6502

This is a Kotlin/JVM library that simulates the 8-bit 6502 and 65C02 microprocessors, which became very popular in the the early 1980's.

Properties of this simulator:

  • Written in Kotlin. It is low-level code, but hopefully still readable :-)
  • Designed to simulate hardware components (bus, cpu, memory, i/o controllers)
  • IRQ and NMI simulation
  • Aims to be clock cycle-precise (not yet 100% correct right now)
  • Aims to implements all 6502 and 65c02 instructions, including the 'illegal' 6502 instructions (not yet done)
  • correct BCD mode for adc/sbc instructions on both cpu types
  • passes several extensive unit test suites that verify instruction and cpu flags behavior
  • maximum simulated performance is a 6502 running at ~100 Mhz (on my machine)

Documentation

Still to be written. For now, use the source ;-)