Disassembler for 6502 processors
Go to file
Tennessee Carmel-Veilleux aa6c897c1a Fixed cycle counting and finished 2.0
* Added rules for branch taken/not taken
* Fixed incorrect adding of cycles for many ALU instructions
* Fixed timing for ASL, DEC, INC, LSR, ROL, and ROR
* Renamed global opcode_table to g_opcode_table
* Normalized all hex output to be capitals
2014-07-24 23:00:31 -04:00
.gitignore Initial commit 2014-07-23 13:44:07 -04:00
dcc6502.c Fixed cycle counting and finished 2.0 2014-07-24 23:00:31 -04:00
LICENSE Initial commit 2014-07-23 13:44:07 -04:00
Makefile Added Makefile and cleaned-up indent 2014-07-23 14:57:21 -04:00
README.md Updated README.md 2014-07-23 14:16:22 -04:00

dcc6502

Disassembler for 6502 processors.

Features

  • Simple command-line interface
  • Single file, ANSI C source
  • Annotation for addresses of Nintendo Entertainment System (NES) system registers
  • Cycle-counting output
  • Machine code display inline with the disassembly

History tidbit

The original 1.0 version of dcc6502 was written overnight on Christmas eve 1998. At the time, I (Tennessee Carmel-Veilleux) was a 16-year-old NES hacker learning 6502 assembly. Of course, as many teenagers are, I was a bit arrogant and really thought my code was pretty hot back then :) Fast-forward 15 years and I'm a grown-up engineer who is quite a bit more humble about his code. Looking back, I think the tool did the job, but obviously, 15 years of experience later, I would have made it quite a bit cleaner. The disassembler has floated online on miscalleanous NES development sites since 1998. I decided to put it on github starting at version 1.4 and I will be cleaning-up the code over until version 2.0.

This disassembler has made the rounds and has been used for a lot of different purposes by many different people over the years. Hopefully it will continue to be useful going forward.