85 Commits

Author SHA1 Message Date
f9e7128061 fix: properly decode format 11 instructions 2022-10-21 05:12:18 -03:00
599a1f2973 chore: remove TODOs and some useless imports 2022-10-21 05:12:18 -03:00
22424ca69c fix: improper condition check and initialization of register 2022-10-21 05:12:18 -03:00
8006ca31e6 chore: remove unnecessary @as calls 2022-10-21 05:12:16 -03:00
06e20666bd chore: refactor ARMv4 decoding 2022-10-21 05:12:14 -03:00
36687c5c67 chore: add more debug information to CPU panic method 2022-10-21 05:12:14 -03:00
dd9b20030a chore: give more descriptive panic messages when changing mode fails 2022-10-21 05:12:13 -03:00
c0db2a987b chore: clean up THUMB instruction decoding 2022-10-21 05:12:13 -03:00
271f42cf0e feat: rename ARM and THUMB SWI functions 2022-10-21 05:12:13 -03:00
01e15584da chore: group THUMB and select ARM instructions together (same file) 2022-10-21 05:12:13 -03:00
3e786d02ac fix(cpu): properly decode format 7 and 8 2022-10-21 05:12:12 -03:00
e6a0eab667 feat(cpu): implement THUMB format 17 2022-10-21 05:12:12 -03:00
523b9d2736 feat(cpu): implement THUMB format11 2022-10-21 05:12:12 -03:00
c37546d273 chore: progress towards passing ldr/str thumb in armwrestler 2022-10-21 05:12:11 -03:00
152dafbdf7 chore: use if-else when decoding THUMB instructions 2022-10-21 05:12:10 -03:00
85e0924669 feat: implement LDM/STM behaviour when S is set 2022-10-21 05:12:10 -03:00
696cc1b359 feat(cpu): decode and implement all necessary ARM CPU instructions 2022-10-21 05:12:10 -03:00
151de2eab4 feat(cpu): implement ARM SWP and SWPB 2022-10-21 05:12:10 -03:00
da681c946e feat(cpu): Implement Multiply Long ARM instructions 2022-10-21 05:12:09 -03:00
7013389288 feat(cpu): implement format 18 THUMB instructions 2022-10-21 05:12:09 -03:00
443520ecae chore: more detailed panic message 2022-10-21 05:12:09 -03:00
96d7285111 feat(cpu): implement format 10 THUMB instructions 2022-10-21 05:12:08 -03:00
e1fec48a0e fix(cpu): properly decode multiply instructions 2022-10-21 05:12:07 -03:00
0778ee8dd7 feat(cpu): implement ARM multiply instructions 2022-10-21 05:12:07 -03:00
eabf787305 fix(cpu): properly decode ldm stm thumb instructions 2022-10-21 05:12:07 -03:00
980e4ff5dd fix(cpu): properly decode THUMB PUSH and POP at comptime 2022-10-21 05:12:06 -03:00
d6ed071bc6 feat(cpu): implement thumb push / pop and stub format 13 thumb instrs 2022-10-21 05:12:06 -03:00
a3d53d40fb feat(cpu): implement THUMB format 9 loads / stores 2022-10-21 05:12:06 -03:00
b9a81baa47 feat(cpu): implement THUMB ldmia stmia 2022-10-21 05:12:06 -03:00
97b236225e chore: implement THUMB format 4 instructions 2022-10-21 05:12:05 -03:00
2643504eb5 chore: relocate barrel_shifter zig file 2022-10-21 05:12:05 -03:00
f7518d1bab feat(cpu): implement format2 THUMB instructions 2022-10-21 05:12:05 -03:00
800ca798cd feat(cpu): implement format19 THUMB instructions 2022-10-21 05:12:05 -03:00
d714ffb4f9 chore: account for THUMB BL instruction when mimicking mGBA logs 2022-10-21 05:12:04 -03:00
7bc186a03c feat(cpu): implement format16 THUMB instructions 2022-10-21 05:12:04 -03:00
b94b87d186 feat(cpu): implement format 1 THUMB instructions 2022-10-21 05:12:04 -03:00
93922b65e3 feat(cpu): implement format 6 THUMB instructions 2022-10-21 05:12:04 -03:00
464479b986 chore: mark indexing methods as inline 2022-10-21 05:12:03 -03:00
de1c84914c feat: create emulator thread 2022-10-21 05:12:03 -03:00
8e7766e694 chore: disable logging by default 2022-10-21 05:12:03 -03:00
4858dbc5dc chore: revert fastboot changes 2022-10-21 05:12:03 -03:00
c4e131b92d chore: binary logging + file logging + DP chanes + fastBoot changes 2022-10-21 05:12:02 -03:00
2e54be76d6 chore: rename skipBios to fastBoot 2022-10-21 05:12:02 -03:00
7914268702 chore: set correct values for select banked registers on fast boot 2022-10-21 05:12:02 -03:00
4bdb85834c feat(cpu): implement SWI 2022-10-21 05:12:02 -03:00
eb632056a2 feat(cpu): implement banked registers 2022-10-21 05:12:01 -03:00
fbc9de0335 fix(cpu): improve MRS and MSR instructions 2022-10-21 05:12:01 -03:00
daad98bbfe feat(cpu): implement format 12 thumb instructions 2022-10-21 05:11:57 -03:00
96d21f27a5 feat(cpu): implement THUMB format 5 instructions 2022-10-21 05:11:57 -03:00
793110f315 chore: mgba log now supports printing THUMB instructions 2022-10-21 05:11:57 -03:00