1
0
mirror of https://github.com/rkujawa/rk65c02.git synced 2024-06-26 04:29:27 +00:00
Commit Graph

96 Commits

Author SHA1 Message Date
Radosław Kujawa
13ef3e2d08 Add PHX, PLX, PHY, PLY emulation and test cases. 2017-01-25 13:14:00 +01:00
Radosław Kujawa
acc0fad32e Add emulation of BIT instruction and test cases for it. 2017-01-25 10:10:00 +01:00
Radosław Kujawa
7915657355 Add bit testing macro. 2017-01-25 10:09:50 +01:00
Radosław Kujawa
95db0b7dd2 Add commented out debug message. 2017-01-25 10:09:38 +01:00
Radosław Kujawa
a570afb007 Add STA test cases for all addressing modes. 2017-01-24 22:18:52 +01:00
Radosław Kujawa
47028b0e26 Add commented out debug message. 2017-01-24 22:18:21 +01:00
Radosław Kujawa
90b6c06e32 Fix missing breaks in indirect zero page handling switch. 2017-01-24 22:18:02 +01:00
Radosław Kujawa
3a4a0a06d3 Add ORA tests, for all addressing modes. 2017-01-24 16:37:55 +01:00
Radosław Kujawa
39aaca5034 Correct indirect zero page Y behaviour. 2017-01-24 16:37:10 +01:00
Radosław Kujawa
20a39a8d6c Correct wrong ORA indirect zero page X size. 2017-01-24 16:36:39 +01:00
Radosław Kujawa
b047c4ff81 Add test cases for TAX, TAY, TXA, TYA. 2017-01-24 12:55:46 +01:00
Radosław Kujawa
cddba4c56b Don't hardcode ROM names in Makefile.
There's too many of them now, so the names are constructed from the
list of assembly files, automatically.
2017-01-24 12:36:27 +01:00
Radosław Kujawa
09f0a828e3 Add test cases for LDA addressing modes absolute X, absolute Y. 2017-01-23 16:33:03 +01:00
Radosław Kujawa
342a188314 Fix wrong mnemonic for absolute ORA. 2017-01-23 15:39:10 +01:00
Radosław Kujawa
6c3a203cdc Support all AND addressing modes. 2017-01-23 15:28:14 +01:00
Radosław Kujawa
0dd63f2bf0 Add ROL and ROR emulation. Too old to ror and to rol! 2017-01-23 15:25:32 +01:00
Radosław Kujawa
f9708ca049 Add STA, STY, STX emulation. 2017-01-23 15:02:21 +01:00
Radosław Kujawa
ee8a16a5ba Add ORA and EOR emulation. 2017-01-23 14:53:05 +01:00
Radosław Kujawa
6b7298cf8d Avoid intermediate variable in AND emulation. 2017-01-23 14:45:46 +01:00
Radosław Kujawa
aee947ad1f Don't forget to add LDY to CSV... 2017-01-23 14:44:55 +01:00
Radosław Kujawa
552fad8a7e LDY emulation. 2017-01-23 14:43:54 +01:00
Radosław Kujawa
5c38e5f05a Add emulation of LDX, TXA, TYA, TXS, TAX, TAY, TSX. 2017-01-23 14:38:50 +01:00
Radosław Kujawa
3b2080403b Ignore .DS_Store 2017-01-23 13:47:22 +01:00
Radosław Kujawa
ce492e6cd3 Support all addressing variants of STZ. 2017-01-23 13:46:17 +01:00
Radosław Kujawa
05f6599681 BSD/OS X awk does not like hexadecimal constants. 2017-01-23 13:41:31 +01:00
Radosław Kujawa
9c88afae2a BBRx and BBSx instructions have zero page relative addressing.
Add zero page relative as a separate addressing type and adjust
opcode definitions for these two type of opcodes.
2017-01-23 12:17:06 +01:00
Radosław Kujawa
ee16c64310 Implement absolute X, absolute Y addressing. 2017-01-23 10:48:37 +01:00
Radosław Kujawa
452e4b3806 Implement indirect zero page with X and indirect zero page with Y addressing. 2017-01-23 10:29:19 +01:00
Radosław Kujawa
3cbede06f8 Add test for LDA with absolute addressing. 2017-01-23 10:28:44 +01:00
Radosław Kujawa
9e32c3e493 Try to emulate all variants of LDA.
But some addressing modes are still unimplemented...
2017-01-23 10:27:51 +01:00
Radosław Kujawa
87c424557e Implement aboslute addressing mode. 2017-01-23 00:00:45 +01:00
Radosław Kujawa
5eede9333b Add emulation of PHP, PLP instructions and test cases for them. 2017-01-22 23:01:24 +01:00
Radosław Kujawa
074ecdccc3 No-operand INC has accumulator addressing mode, not implied. 2017-01-22 22:44:08 +01:00
Radosław Kujawa
1460817230 Correct mnemonic for LDX with Zero Page,Y addressing. 2017-01-22 22:40:32 +01:00
Radosław Kujawa
fb7d4b28e7 Add DEX, DEY emulation and test cases for them. 2017-01-22 22:35:50 +01:00
Radosław Kujawa
52247f0ce4 Implement CLC, SEC and test for them. 2017-01-22 13:50:04 +01:00
Radosław Kujawa
473e0e2636 Add INX, INY emulation and test cases.
Some comments while here.
2017-01-22 13:07:21 +01:00
Radosław Kujawa
e763ca0d3a Avoid getting instruction definition again when emulating.
While here try to make program counter incrementation more universal
and flexible.
2017-01-22 11:07:19 +01:00
Radosław Kujawa
c7633feb87 Add STZ emulation. 2017-01-21 21:46:35 +01:00
Radosław Kujawa
86c9c6414c Add function to write data onto bus according to choosen addressing mode. 2017-01-21 21:43:31 +01:00
Radosław Kujawa
8abbb88d0d Fix dependencies for static lib building. 2017-01-21 21:41:19 +01:00
Radosław Kujawa
2c7e67d69d Ignore headers generated during build and ROMs. 2017-01-21 16:03:31 +01:00
Radosław Kujawa
b6ed8892bb Add generation of emulation.h to Makefile. 2017-01-21 14:58:00 +01:00
Radosław Kujawa
1802bfbd1d Add missing includes, fix typo. 2017-01-21 14:57:49 +01:00
Radosław Kujawa
e3abea91ef Add awk script to automatically generate emulation.h from CSV. 2017-01-21 14:52:38 +01:00
Radosław Kujawa
0d5916eb7d Gotta generate header for emulation functions from CSV. 2017-01-21 12:08:00 +01:00
Radosław Kujawa
5ca671aecb Print value of PC register when unimplemented opcode encountered. 2017-01-21 09:13:43 +01:00
Radosław Kujawa
1820418c62 Adjust C header generation to take CSV header into account. 2017-01-20 23:23:25 +01:00
Radosław Kujawa
d2dc51cbd3 Add a header. Now looks nicer on GitHub! 2017-01-20 23:23:04 +01:00
Radosław Kujawa
07e1a008d9 Add preliminary stack tests, test ROMs for PLA, PHA. 2017-01-20 23:18:25 +01:00