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
0289be60ef
fix: dont close file handle early
2022-10-21 05:12:04 -03:00
93922b65e3
feat(cpu): implement format 6 THUMB instructions
2022-10-21 05:12:04 -03:00
c6608748c6
chore: rename title
2022-10-21 05:12:04 -03:00
8e383d55d7
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-10-21 05:12:03 -03:00
8926026b5b
chore: move a single statement lol
2022-10-21 05:12:03 -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
90e0d9139c
chore: ignore .bin files
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
f89a37936f
chore(bios): allow reading from BIOS
2022-10-21 05:12:02 -03:00
8bb7ea6be6
fix(cpu): interim solution to weird program counter behaviour on illegal tst instruction
2022-10-21 05:12:01 -03:00
60a1f7fa99
chore(cpu): implement behaviour for undefined test instruction
2022-10-21 05:12:01 -03:00
b3b8182f85
fix(cpu): fix PC offset when barrel shifter and bit 4 of DP is set
2022-10-21 05:12:01 -03:00
19094b492e
chore: remove reccomended extension
2022-10-21 05:12:01 -03:00
56e660714c
fix(cpu): implement S set + rd == 15 case for data processing
2022-10-21 05:12:01 -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
5c7539cd26
feat(cpu): implement CMN
2022-10-21 05:12:00 -03:00
7c20e5fdb5
fix(barrel_shifter): fix PC being 1 word ahead in barrel shifter
2022-10-21 05:12:00 -03:00
f79e7126ee
feat(cpu): Implement RSC
2022-10-21 05:12:00 -03:00
15e92bc6af
feat(cpu): implement RSB
2022-10-21 05:12:00 -03:00
47fc96fe00
feat(cpu): implement BIC
2022-10-21 05:12:00 -03:00
4ac5ad42c6
feat(cpu): implement EOR
2022-10-21 05:12:00 -03:00
c93153672f
feat(cpu): implement ADD
2022-10-21 05:11:59 -03:00
a46dd448f4
feat(cpu): implement fix for ADC and implement SBC
2022-10-21 05:11:59 -03:00
01f75112ce
chore(barrel_shifter): remove panic from ASR
2022-10-21 05:11:59 -03:00
051b98bc02
fix(barrel_shifter): should not modify cpsr when amount == 0
2022-10-21 05:11:59 -03:00
5d0bc1b335
chore(cpu): refactor the barrel shifter once again
2022-10-21 05:11:59 -03:00
43d011538e
feat(cpu): implement ADC
...
ADC interacting w/ the Barrel Shifter is not working though
2022-10-21 05:11:59 -03:00
f3ad5e90ff
feat(cpu): implement RRX for Barrel Shifter
2022-10-21 05:11:58 -03:00
9b867c02e0
feat(cpu): implement SUB in THUMB format 3
2022-10-21 05:11:58 -03:00
2ba09868ba
feat(cpu): implement ARM SUB in data processing
2022-10-21 05:11:58 -03:00
9394754593
feat(cpu): implement MVN
2022-10-21 05:11:58 -03:00
41bab3d6ba
chore(cpu): refactor barrel shifter
2022-10-21 05:11:58 -03:00
99b686b2d7
fix(cpu): use barrel shifter in data processing immediates
2022-10-21 05:11:58 -03:00
daad98bbfe
feat(cpu): implement format 12 thumb instructions
2022-10-21 05:11:57 -03:00
2fb01577af
feat(cpu): implement some already decoded format 3 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
5ed5c5d52d
feat(cpu): implement like 1 THUMB instruction
2022-10-21 05:11:57 -03:00
01385ee46b
chore: distinguish between undefined ARM and THUMB instr
2022-10-21 05:11:57 -03:00
0eba3aca1f
chore(cpu): lay groundwork for THUMB instruction decoding and execution
2022-10-21 05:11:57 -03:00