Simple emulator of 6502 cpu in Golang.
Packages:
- cpu6502 -> 6502 CPU emulator
- bus -> Simple BUS to attach to the emulator to provide RAM addresses
- debugger -> SDL2 implementation to visualize the current CPU status
- go-sdl2 to run the debbugger
$ go mod tidy
$ make run
Based on the oneloanecoder series of NES emulator https://www.youtube.com/watch?v=nViZg02IMQo&list=PLrOv9FMX8xJHqMvSGB_9G9nZZ_4IgteYf
- Datasheet -> http://archive.6502.org/datasheets/rockwell_r650x_r651x.pdf
- More detailed datasheet with instruction descriptions -> https://www.princeton.edu/~mae412/HANDOUTS/Datasheets/6502.pdf
- Instruction set and Address modes details explained -> https://www.masswerk.at/6502/6502_instruction_set.html
- Vflag (overflow) explanation article -> http://www.6502.org/tutorials/vflag.html