cveron / 6502Net

6502 Emulator in C#

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This is my implementation of a 6502 CPU simulator written in C#. It simulates a basic 6502 processor and memory.
It also has an application written in WPF that functions as a test harnesss and allows you to load a program into memory
and step through the program, set break points, and watch the various registers. 

This project is now feature complete. It successfully passes all of Klaus Dormann's tests including the IRQ tests.
Feel free to submit bug requests if you find an edge case!

Version History
.0.9.9 All OP Codes Implemented.
.1.0.0 All of Klaus Dormann's Tests pass successfully.

I used the following websites during implementation as a reference
http://visual6502.org/wiki
http://homepage.ntlworld.com/cyborgsystems/CS_Main/6502/6502.htm
http://www.atariarchives.org/alp/
http://en.wikipedia.org/wiki/MOS_Technology_6502
http://www.obelisk.demon.co.uk/6502/
http://www.6502.org/tutorials/

I used the following test programs to validate the simulator.
http://2m5.de/6502_Emu/ Klaus Dormann 6502 Test Suite (GPL License)

How to Compile Tests - Go grab the AS65 Compiler
http://www.kingswood-consulting.co.uk/assemblers/

Modify the 6502_functional_test.a65
load_data_direct = 0

Run the following command to generate the bin file and lst file
as65 -l -m -w -h0  6502_functional_test.a65

In the simulator Load the test
Set the Memory Offset to be 0x0400 and the PC to be 0x0400.

Program Listing starts at 400


About

6502 Emulator in C#

License:Other


Languages

Language:C# 99.8%Language:Batchfile 0.2%