8d1df7ae43
fix(cpu): properly decode ldm stm thumb instructions
2022-01-30 01:12:34 -04:00
6ffaf12804
fix(cpu): properly decode THUMB PUSH and POP at comptime
2022-01-30 00:16:13 -04:00
dc6931639f
fix(cpu): don't ignore 11th bit of THUMB BL offset
2022-01-29 23:53:40 -04:00
e18f10126e
feat(cpu): implement thumb push / pop and stub format 13 thumb instrs
2022-01-29 23:22:10 -04:00
0598ba402d
feat(cpu): implement THUMB format 9 loads / stores
2022-01-29 22:34:40 -04:00
b8a9aaee86
fix(cpu): resolve issues with unexpected PC value in THUMB
2022-01-29 22:07:36 -04:00
00058f6094
feat(cpu): implement THUMB ldmia stmia
2022-01-29 21:10:14 -04:00
2dde47318c
chore: implement THUMB format 4 instructions
2022-01-29 20:42:13 -04:00
ae4023e51c
chore: dedup code in THUMB instructions
2022-01-29 20:05:27 -04:00
bce067557f
chore: refactor and genericize ARM data processing calculations
2022-01-29 19:40:58 -04:00
e0acabf050
chore: relocate barrel_shifter zig file
2022-01-29 18:52:16 -04:00
599e068c7e
feat(cpu): implement format2 THUMB instructions
2022-01-29 18:46:27 -04:00
4ca65caef0
feat(cpu): implement format19 THUMB instructions
2022-01-29 18:25:50 -04:00
0c49bf2288
chore: account for THUMB BL instruction when mimicking mGBA logs
2022-01-29 18:14:00 -04:00
44dbdba48c
feat(cpu): implement format16 THUMB instructions
2022-01-29 17:44:04 -04:00
d85e0c8d05
feat(cpu): implement format 1 THUMB instructions
2022-01-29 17:29:30 -04:00
995633e9e8
fix: dont close file handle early
2022-01-29 01:18:45 -04:00
cfbd292edc
feat(cpu): implement format 6 THUMB instructions
2022-01-29 01:18:41 -04:00
95efb3f35d
chore: rename title
2022-01-28 23:27:03 -04:00
6a6dccf4d8
chore: refactor GBA Display Timings
...
This change should reflect that the Hblank bit of DISPSTAT is toggled on all scanlines
while also ensuring that the Vblank bit is set on all Vblank scanlines
2022-01-28 22:58:19 -04:00
ad1db4dc2e
chore: move a single statement lol
2022-01-28 22:57:48 -04:00
19359f7ee4
chore: mark indexing methods as inline
2022-01-28 17:11:29 -04:00
24f0922f86
feat: create emulator thread
2022-01-28 16:33:38 -04:00
b1cc985230
chore: disable logging by default
2022-01-25 18:20:30 -04:00
e5c8f0ce07
chore: revert fastboot changes
2022-01-25 18:20:01 -04:00
fbc5b309b0
chore: binary logging + file logging + DP chanes + fastBoot changes
2022-01-25 18:18:52 -04:00
899a9ead76
chore: ignore .bin files
2022-01-25 12:58:25 -04:00
540fbf739a
chore: rename skipBios to fastBoot
2022-01-25 11:15:17 -04:00
0546b1c308
chore: set correct values for select banked registers on fast boot
2022-01-25 11:14:15 -04:00
997dc1314c
feat(cpu): implement SWI
2022-01-25 10:34:21 -04:00
1456d0f317
chore(bios): allow reading from BIOS
2022-01-25 10:32:28 -04:00
6257418405
fix(cpu): interim solution to weird program counter behaviour on illegal tst instruction
2022-01-25 09:23:32 -04:00
985fefb9f6
chore(cpu): implement behaviour for undefined test instruction
2022-01-25 08:05:42 -04:00
95dd3e3df8
fix(cpu): fix PC offset when barrel shifter and bit 4 of DP is set
2022-01-24 17:52:01 -04:00
038c0a9283
chore: remove reccomended extension
2022-01-23 23:13:16 -04:00
702ff288d8
fix(cpu): implement S set + rd == 15 case for data processing
2022-01-19 07:46:49 -04:00
bf36a23722
feat(cpu): implement banked registers
2022-01-19 07:29:49 -04:00
fc5a3460dd
fix(cpu): improve MRS and MSR instructions
2022-01-18 20:17:00 -04:00
6177927049
feat(cpu): implement CMN
2022-01-18 15:09:25 -04:00
903b75c7c4
fix(barrel_shifter): fix PC being 1 word ahead in barrel shifter
2022-01-18 15:08:29 -04:00
8d786cbe25
feat(cpu): Implement RSC
2022-01-18 14:46:57 -04:00
212bc9e11d
feat(cpu): implement RSB
2022-01-18 14:36:03 -04:00
63a57ac954
feat(cpu): implement BIC
2022-01-18 14:28:47 -04:00
85dae5e1d7
feat(cpu): implement EOR
2022-01-18 14:27:07 -04:00
6189bf0315
feat(cpu): implement ADD
2022-01-18 14:25:29 -04:00
2f3213f693
feat(cpu): implement fix for ADC and implement SBC
2022-01-18 14:20:01 -04:00
a62cd9aa40
chore(barrel_shifter): remove panic from ASR
2022-01-18 14:19:58 -04:00
25c57a4cc7
fix(barrel_shifter): should not modify cpsr when amount == 0
2022-01-18 13:30:41 -04:00
a7a44c4463
chore(cpu): refactor the barrel shifter once again
2022-01-17 15:55:55 -04:00
d4d2fedfbe
feat(cpu): implement ADC
...
ADC interacting w/ the Barrel Shifter is not working though
2022-01-17 14:29:34 -04:00