1
0
mirror of https://github.com/rkujawa/rk65c02.git synced 2024-12-11 18:49:16 +00:00
Commit Graph

188 Commits

Author SHA1 Message Date
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
260ac09c01 Emulate zero page wrap for zp,x addressing. 2018-03-28 13:46:06 +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
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
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
Radosław Kujawa
5cb6f3488e Further improvements and refactoring to logging. 2018-03-22 15:08:51 +01:00
Radosław Kujawa
47aca32da7 Add minimal logging functionality. 2018-03-21 16:22:29 +01:00
Radosław Kujawa
d51277235b Use correct type for read(2)'ing. 2018-03-20 12:01:08 +01:00
Radosław Kujawa
a1785ae68d Bus access debugging can be enabled run-time via boolean. 2017-02-28 10:49:57 +01:00
Radosław Kujawa
10b9778383 Make this compile. 2017-02-25 12:56:17 +01:00
Radosław Kujawa
edab91de3f Refactor bus reads and writes to split common code. 2017-02-25 12:54:15 +01:00
Radosław Kujawa
1f072e1b11 Somewhat better serial device. Still one way only. 2017-02-25 02:04:12 +01:00
Radosław Kujawa
97c7709dc7 Fix device offset computation in bus writes. 2017-02-23 23:04:45 +01:00
Radosław Kujawa
6f875e13e7 Make serial device sort of work. One way. 2017-02-22 22:46:10 +01:00
Radosław Kujawa
dcf275939b Make bus read/writes possible to devices mapped anywhere, not only 0. 2017-02-22 22:43:58 +01:00
Radosław Kujawa
7ab946c5df First attempt at adding serial port emulated via named pipe on host. 2017-02-22 21:58:41 +01:00
Radosław Kujawa
53f0136cab Add cleanup function for RAM device. Also cosmetics. 2017-02-21 11:11:21 +01:00
Radosław Kujawa
ec235796c0 Merge branch 'master' of github.com:rkujawa/rk65c02 2017-02-20 21:32:22 +01:00
Radosław Kujawa
43e38e567d Further adjustments to get device subsystem working. 2017-02-20 21:29:52 +01:00
Radosław Kujawa
5cec9a9784 More work on devices subsystem. 2017-02-20 12:31:26 +01:00
Radosław Kujawa
7baefe9277 Attempt to design a semi-flexible device subsystem. 2017-02-19 21:45:15 +01:00
Radosław Kujawa
2608ab5846 Better comments. 2017-02-17 12:45:22 +01:00
Radosław Kujawa
cc61646ba9 Fix carry flag setting in comparison instructions. Resolve #2. 2017-02-15 21:58:42 +01:00
Radosław Kujawa
de1ab25427 Make runtime disassembly optional. 2017-02-15 21:38:51 +01:00
Radosław Kujawa
0b83a263d7 Introduce trace functionality. 2017-02-15 21:32:12 +01:00
Radosław Kujawa
6afb4531d5 The rk65c02_exec should return immediately after hitting breakpoint. 2017-02-15 19:56:22 +01:00
Radosław Kujawa
3286891ea8 Add missing prototype of debug_breakpoint_remove to include file. 2017-02-15 19:55:48 +01:00
Radosław Kujawa
ea5c09d7c0 Report failure when malloc errors. 2017-02-15 19:55:15 +01:00
Radosław Kujawa
3363959b87 Add breakpoints. 2017-02-14 11:17:40 +01:00
Radosław Kujawa
7db9b2f7c6 RMB1 instruction is 2 byte long (opcode + one operand). 2017-02-13 21:54:10 +01:00
Radosław Kujawa
c23136800a Unbreak BBR and BBS - they access zero page, don't act like immediate. 2017-02-13 18:39:51 +01:00
Radosław Kujawa
8de5574aab Handle accessing bus in zero page relative mode just as in zero page.
It should make things less awkward and still work fine, as the only
instructions using this mode are BBS and BBR. These only use first
operand as the address in zero page to read data from.
2017-02-13 18:37:14 +01:00
Radosław Kujawa
0cbbce4eeb Fix operands fetching for zero page relative addressing. 2017-02-13 09:37:11 +01:00
Radosław Kujawa
7f1c27af75 Fix carry flag handling for SBC. 2017-02-12 23:27:36 +01:00
Radosław Kujawa
23105b4861 Hopefully fix decimal mode handling. Hopefully. 2017-02-12 22:56:07 +01:00
Radosław Kujawa
8f4900a877 Add simplified assemble_single_implied for implied addressing mode. 2017-02-12 21:54:07 +01:00
Radosław Kujawa
0fc79103f8 Well, once again... 2017-02-12 21:51:20 +01:00