aa6c897c1a
* 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 |
||
---|---|---|
.gitignore | ||
dcc6502.c | ||
LICENSE | ||
Makefile | ||
README.md |
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.