1
0
mirror of https://github.com/rkujawa/rk65c02.git synced 2024-12-12 10:30:23 +00:00
Commit Graph

278 Commits

Author SHA1 Message Date
Radosław Kujawa
216450da52 Enable debug-safe optimizations.
Also ggdb for tests.
2018-04-26 14:16:32 +02:00
Radosław Kujawa
e2bf924fa9 Make sure doff is initialized. 2018-04-26 14:16:04 +02:00
Radosław Kujawa
8ca86735df Add tests for BBRx, BBSx. 2018-04-16 12:27:53 +02:00
Radosław Kujawa
4ff3f390db Fix assembling opcode 0xFF (BBS7). 2018-04-16 12:26:52 +02:00
Radosław Kujawa
a2fdb78d2b BBR and BBS instructions have 2 operands. 2018-04-16 12:14:31 +02:00
Radosław Kujawa
7445c275e6 Add test cases for ROR and ROL.
Too old to ROR and to ROL.
2018-04-13 12:26:06 +02:00
Radosław Kujawa
6d7f0abef0 Comment WAI/interrupt behaviour. 2018-04-13 11:25:30 +02:00
Radosław Kujawa
fae3445e58 Add test cases for TRB and TSB. 2018-04-12 15:28:47 +02:00
Radosław Kujawa
e5448f50eb Fix expected PC address. 2018-04-12 15:13:48 +02:00
Radosław Kujawa
0ac5932e75 Doxify more. 2018-04-12 12:45:05 +02:00
Radosław Kujawa
578955e4a1 Add test case for invalid opcode handling. 2018-04-12 11:40:33 +02:00
Radosław Kujawa
d0728c8ade Emulate invalid instructions.
Treat them as NOPs of different length just as real 65C02.
2018-04-10 13:56:37 +02:00
Radosław Kujawa
f0471947fc Doxify more. 2018-04-10 12:49:11 +02:00
Radosław Kujawa
901e9626d5 Add initial Doxyfile. 2018-04-10 12:18:19 +02:00
Radosław Kujawa
faec05b87e Start doxifying the documentation. 2018-04-10 12:17:59 +02:00
Radosław Kujawa
95368a186a Remove leftover attempt at CLI. 2018-04-10 10:23:32 +02:00
Radosław Kujawa
ed4b2786b6 Simplify ROM loading by providing utility function. 2018-04-10 10:12:27 +02:00
Radosław Kujawa
96f955e8c1 Update year. 2018-04-09 17:07:21 +02:00
Radosław Kujawa
fe94c747e5 Add test case for signed comparison. 2018-04-09 15:00:02 +02:00
Radosław Kujawa
eeb564d69f Make log less verbose. 2018-04-06 14:27:05 +02:00
Radosław Kujawa
adef30da21 Load the example at 0xC000, stop the emulator after running. 2018-04-06 14:26:00 +02:00
Radosław Kujawa
5173d10a69 Add code to actually run the example. 2018-04-06 14:25:26 +02:00
Radosław Kujawa
b44dcdc91a Add example routine finding min among 3 numbers. 2018-04-05 00:32:53 +02:00
Radosław Kujawa
7cf3f263e3 Simplify handling ciritcal emulation errors. 2018-04-01 21:40:49 +02:00
Radosław Kujawa
68fa918d97 Document the way invalid opcodes are handled. 2018-04-01 21:16:58 +02:00
Radosław Kujawa
3c684fbf2c Fix zero page wrap for indexed indirect mode. 2018-03-31 15:03:22 +02:00
Radosław Kujawa
7c4d6cea3f Fix indirect indexed with Y addressing.
Also fix test case for this. Problem wasn't detected, because test case
was broken too.
2018-03-31 12:38:45 +02:00
Radosław Kujawa
4f299a6f36 Also fix zero page wrap for bus reads. 2018-03-28 14:18:50 +02:00
Radosław Kujawa
b35323cb3d Use logging function instead of printf. 2018-03-28 13:52:07 +02:00
Radosław Kujawa
390bbdc14e Add test cases for LSR and zero page wrap. 2018-03-28 13:47:18 +02:00
Radosław Kujawa
260ac09c01 Emulate zero page wrap for zp,x addressing. 2018-03-28 13:46:06 +02:00
Radosław Kujawa
0b2be69481 Add test case for ASL. 2018-03-28 13:18:44 +02:00
Radosław Kujawa
9ff0cb26fc Explicitely cast time to long long ints.
Avoid portability bullshit problems.
2018-03-27 13:30:33 +02:00
Radosław Kujawa
25e62f4be4 Avoid compiler warning (variable uninitialized). 2018-03-27 13:18:29 +02:00
Radosław Kujawa
e72871a5b6 Use clock_gettime instead of gettimeofday. 2018-03-27 12:53:08 +02:00
Radosław Kujawa
262321b363 Bring README up to date. 2018-03-26 16:45:07 +02:00
Radosław Kujawa
0f0c0196e4 Add logo. 2018-03-26 16:28:38 +02:00
Radosław Kujawa
9c16656198 Disable tracing by default. 2018-03-26 16:11:26 +02:00
Radosław Kujawa
afbd412879 Remove usused variable. 2018-03-26 14:31:07 +02:00
Radosław Kujawa
f4aa7c4508 Don't build the useless CLI for now... 2018-03-26 12:38:25 +02:00
Radosław Kujawa
ae3e782b74 Use boehm gc to manage memory.
I'm less likely to fuck this up now.
2018-03-26 12:36:47 +02:00
Radosław Kujawa
a98c8f1018 Print debug message before loading ROM. 2018-03-26 09:59:55 +02:00
Radosław Kujawa
85a53f89c8 Start implementation of display emulation.
Something like a character RAM for a start. When 65C02 writes into
this space, a callback will be executed that would allow redrawing
the emulated screen. Multiple backends can be supported this way.
2018-03-25 18:01:15 +02:00
Radosław Kujawa
13a4c73807 Unbreak BRK test case - add RAM for ISR vector. 2018-03-24 23:06:29 +01:00
Radosław Kujawa
63168d6f84 Increase log level for stepping test case. 2018-03-24 23:06:13 +01:00
Radosław Kujawa
fc1503c3f0 Add readable name for log level "none". 2018-03-24 23:05:42 +01:00
Radosław Kujawa
363bb56fc6 Make RAM size configurable. 2018-03-24 23:05:28 +01:00
Radosław Kujawa
eeb337a0d6 Don't forget newline when printing regs. 2018-03-24 00:14:41 +01:00
Radosław Kujawa
5fddf2c5dc More refactoring and improvements to logging! 2018-03-23 13:37:07 +01:00
Radosław Kujawa
0c77eeb505 Remove leftover debug code. 2018-03-23 11:23:16 +01:00