1
0
mirror of https://github.com/sethm/symon.git synced 2024-06-30 06:29:30 +00:00
Commit Graph

155 Commits

Author SHA1 Message Date
Seth Morabito
e157f4a972 More cleanup of the monitor. Added binary file load command. 2010-01-16 21:17:37 -08:00
sethm
a3e57274a2 - Major overhaul of the Simulator control class (where 'main' lives).
- Removed the CommandParser class entirely, as the weird dependency between
  Simulator and CommandParser never made me comfortable.
- Added a Command inner class to Simulator that handles some of the
  command line tokenizing.
2010-01-16 19:22:22 -08:00
Seth Morabito
5c7a98df86 Playing around with the command parser and the Simulator class. Safe to ignore. 2010-01-16 08:56:34 +00:00
Seth Morabito
f174f0312f * Correct implementation of Indirect Indexed and Indexed Indirect addressing modes.
* Unit tests for Indirect Indexed and Indexed Indirect.
* Updated copyright dates.
* Started moving to JUnit 4.
2010-01-15 08:20:03 +00:00
Seth Morabito
d858a50f1b - Updated Cobertura Maven plugin to version 2.3 (threadsafe)
- Finished refactor of instruction argument address decoding.
  Much DRYer now (but could still be DRYer yet).
2010-01-10 02:28:55 -08:00
sethm
4104d6212e Added Indirect X Mode Tests 2010-01-10 01:18:45 -08:00
Seth J. Morabito
ac88786df7 - Continued refactoring of address decoding.
- Device read and write may now throw MemoryAccessException, and appropriate
  throws clauses have been added throughout the code.
2010-01-09 16:53:04 -08:00
Seth Morabito
a01090a16e Part-way through the Great Refactoring of Instruction Decoding(tm) 2010-01-09 19:51:56 +00:00
Seth Morabito
d25e8325ad Updated README to reflect current state of implementation 2009-01-07 18:29:20 -08:00
Seth Morabito
ed943687bf Implemented Relative mode (branch) instructions and unit tests. Fixed
a bug in the instruction size table.
2009-01-07 18:26:11 -08:00
Seth Morabito
f21a0d76e9 Implemented Absolute,Y addressing mode and unit tests. 2009-01-07 16:50:36 -08:00
Seth Morabito
dccf73a6b7 Implemented instructions using the Absolute,X addressing mode. There's
light at the end of the tunnel now!
2008-12-29 21:47:19 -08:00
Seth Morabito
107aca7777 Implemented Zero Page,X, Zero Page,Y, and Indirect addressing mode instructions, along with unit tests. 2008-12-29 20:46:48 -08:00
Seth Morabito
66fc63a36e Updated README to reflect current status. 2008-12-28 23:14:32 -08:00
Seth Morabito
4b28ab4808 Implemented Absolute addressing mode instructions. All unit tests pass. 2008-12-28 23:11:16 -08:00
Seth J. Morabito
fa142df203 Updated README to reflect current state. 2008-12-28 17:55:58 -08:00
Seth J. Morabito
24458da79e Implemented Accumulator mode instructions. Grouped all unimplemented (65C02 and 65816 only) instructions together in a single fall-through area of the instruction decoding switch statement. Added an unimpelmented instruction trap member variable. 2008-12-28 17:55:02 -08:00
Seth J. Morabito
c93a03d4f4 Improved README. Fixed typo in InstructionTable.java 2008-12-27 21:46:13 -08:00
Seth J. Morabito
8bcd8a4a75 Whitespace and indentation canonicalization. That's what I get for using two editors. 2008-12-27 21:09:47 -08:00
Seth J. Morabito
d54ad18b17 All zero page instructions implemented. Tests passing. 2008-12-27 20:59:10 -08:00
Seth J. Morabito
ecde55c6b8 Started on Zero Page opcodes and tests. 2008-12-27 13:01:07 -08:00
Seth J. Morabito
de0742f59f Started skeleton of Zero Page tests. 2008-12-27 09:59:49 -08:00
Seth J. Morabito
7766e76362 BCD is finally working. I thought that would never happen.
All Immediate Mode and Implied Mode opcodes have been implemented.  Next up, zero page!
2008-12-27 01:43:07 -08:00
Seth J. Morabito
06ed74e89c Fixed the BRK instruction. Added SBC and ADC in Binary Coded Decimal
mode.  More unit tests.
2008-12-26 02:13:11 -08:00
Seth J. Morabito
b46c4e1bec Finished implementing all implied mode instructions, with tests. 2008-12-23 16:36:09 -08:00
Seth J. Morabito
f012ba7775 More implied mode instructions implemented, with tests. 2008-12-23 16:06:09 -08:00
Seth J. Morabito
473b47e832 At long last, implemented BRK. Lots more unit tests for stack processing, as well. 2008-12-23 02:21:27 -08:00
Seth J. Morabito
46a5943736 Implemented set/clear flag instructions. More tests, but SBC is still BROKEN. 2008-12-20 02:00:45 -08:00
Seth J. Morabito
088b0823e1 More unit tests. SBC partially working, but I need to figure out what's going wrong. 2008-12-15 02:26:13 -08:00
Seth J. Morabito
1bd59b048b Some API changes, lots of test changes. 2008-12-14 23:43:04 -08:00
Seth J. Morabito
6443cacdb9 Implemented ADC 2008-12-14 01:54:53 -08:00
sethm
1c6c5fdaeb Implemented boolean immediate mode instructions. 2008-12-14 01:09:23 -08:00
Seth Morabito
3f74489757 Renamed project to "Symon". 2008-12-13 14:59:22 -08:00
Seth Morabito
9a6a256073 1. CPU now correctly sets Zero and Negative flags for LDA, LDX, and LDY
immediate mode instructions.

2. Added unit tests for LDA, LDX, LDY immediate mode instructions.
2008-12-13 01:53:15 -08:00
sethm
59e5572039 Process Status Register bits have been added. 2008-12-13 00:50:14 -08:00
Seth Morabito
7e36444193 Added stack functions. 2008-12-12 01:02:31 -08:00
Seth Morabito
6915331cca Added LDX, LDY immediate. 2008-12-12 00:45:55 -08:00
sethm
fb3db6b65f Our first test program is running! 2008-12-12 00:37:54 -08:00
sethm
7ccde7dc1b Reformatting 2008-12-11 21:47:41 -08:00
Seth Morabito
d18c1c7f82 Instruction Table interface. 2008-12-11 19:33:44 -08:00
Seth Morabito
8df561d292 Changed the CPU and Device interface a bit. 2008-12-11 17:22:39 -08:00
Seth J. Morabito
a54dbc323d Profiling. Made a new directory for exceptions. 2008-12-11 16:38:39 -08:00
Seth Morabito
6f678af3df Renamed AddressDecoder to Bus 2008-12-11 11:41:05 -08:00
Seth J. Morabito
0e212e71e5 Tests for AddressDecoder. Fixed a bug in isComplete(). 2008-12-10 19:57:38 -08:00
Seth Morabito
af7743b385 Much saner implementation of 'overlaps' method. 2008-12-08 22:12:28 -08:00
Seth J. Morabito
5bbd72d44e Unit testing. MemoryRange work. 2008-12-08 20:40:27 -08:00
Seth J. Morabito
541e7c609c Fixed configuration for Cobertura. Requires Cobertura 2.2 so the location of the instrumentation file can be found under the 'target' directory 2008-12-08 14:57:00 -08:00
Seth J. Morabito
929c7df9b0 Added Cobertura (formerly jcoverage) plugin to pom.xml 2008-12-08 14:45:22 -08:00
Seth J. Morabito
061eeba85c There is already an existing project (albeit defunct) named j6502. Name changed to lm6502. 2008-12-08 14:28:44 -08:00
Seth J. Morabito
316d0feac6 Standardized tabs, indent, and whitespace. Finally! 2008-12-08 14:03:23 -08:00