Rekai Nyangadzayi Musuka
|
f63ae76931
|
fix(cpu): handle edge case in LDRSH
|
2022-10-21 05:12:15 -03:00 |
Rekai Nyangadzayi Musuka
|
feded4ac25
|
chore: specify which compiler this project is built with
|
2022-10-21 05:12:15 -03:00 |
Rekai Nyangadzayi Musuka
|
f046787523
|
chore: reorganize util.zig
|
2022-10-21 05:12:15 -03:00 |
Rekai Nyangadzayi Musuka
|
bbd73550e8
|
fix: zero initialize all allocated memory
|
2022-10-21 05:12:15 -03:00 |
Rekai Nyangadzayi Musuka
|
fce560dd89
|
chore: don't commit *.sh files
|
2022-10-21 05:12:14 -03:00 |
Rekai Nyangadzayi Musuka
|
4776dc0788
|
Revert "fix: allow for 32-bit reads to KEYINPUT"
This reverts commit 3a51707280 .
|
2022-10-21 05:12:14 -03:00 |
Rekai Nyangadzayi Musuka
|
d8bd6da563
|
fix: resolve decoding mixup in THUMB format 8 instructions
|
2022-10-21 05:12:14 -03:00 |
Rekai Nyangadzayi Musuka
|
b569a32170
|
fix: allow for 32-bit reads to KEYINPUT
|
2022-10-21 05:12:14 -03:00 |
Rekai Nyangadzayi Musuka
|
06e20666bd
|
chore: refactor ARMv4 decoding
|
2022-10-21 05:12:14 -03:00 |
Rekai Nyangadzayi Musuka
|
36687c5c67
|
chore: add more debug information to CPU panic method
|
2022-10-21 05:12:14 -03:00 |
Rekai Nyangadzayi Musuka
|
dd9b20030a
|
chore: give more descriptive panic messages when changing mode fails
|
2022-10-21 05:12:13 -03:00 |
Rekai Nyangadzayi Musuka
|
c0db2a987b
|
chore: clean up THUMB instruction decoding
|
2022-10-21 05:12:13 -03:00 |
Rekai Nyangadzayi Musuka
|
c3ff2ed6c1
|
feat: parse cartridge header
|
2022-10-21 05:12:13 -03:00 |
Rekai Nyangadzayi Musuka
|
271f42cf0e
|
feat: rename ARM and THUMB SWI functions
|
2022-10-21 05:12:13 -03:00 |
Rekai Nyangadzayi Musuka
|
01e15584da
|
chore: group THUMB and select ARM instructions together (same file)
|
2022-10-21 05:12:13 -03:00 |
Rekai Nyangadzayi Musuka
|
17b91db2ef
|
feat: integrate zig-clap with ZBA
|
2022-10-21 05:12:13 -03:00 |
Rekai Nyangadzayi Musuka
|
3e786d02ac
|
fix(cpu): properly decode format 7 and 8
|
2022-10-21 05:12:12 -03:00 |
Rekai Nyangadzayi Musuka
|
c8f2db69df
|
fix(cpu): resolve edge cases in THUMB Format 5
|
2022-10-21 05:12:12 -03:00 |
Rekai Nyangadzayi Musuka
|
b4e0682801
|
fix(cpu): allow for select values to overflow
FuzzARM found these operations which panicked, when they should
have overflowed. These are now fixed
n = 8000
|
2022-10-21 05:12:12 -03:00 |
Rekai Nyangadzayi Musuka
|
af10c1b076
|
feat(cpu): implement format 13
While bugs do exist, at this point all THUMB and ARMv4 instructions
have been implemented! Yay!
|
2022-10-21 05:12:12 -03:00 |
Rekai Nyangadzayi Musuka
|
e6a0eab667
|
feat(cpu): implement THUMB format 17
|
2022-10-21 05:12:12 -03:00 |
Rekai Nyangadzayi Musuka
|
523b9d2736
|
feat(cpu): implement THUMB format11
|
2022-10-21 05:12:12 -03:00 |
Rekai Nyangadzayi Musuka
|
011d2f2f2a
|
chore: update to latest zig nightly
|
2022-10-21 05:12:11 -03:00 |
Rekai Nyangadzayi Musuka
|
c37546d273
|
chore: progress towards passing ldr/str thumb in armwrestler
|
2022-10-21 05:12:11 -03:00 |
Rekai Nyangadzayi Musuka
|
fbedebb938
|
fix(cpu): properly negate in NEG
|
2022-10-21 05:12:11 -03:00 |
Rekai Nyangadzayi Musuka
|
1773a3acc8
|
fix(cpu): reimplement THUMB offset shifts
|
2022-10-21 05:12:11 -03:00 |
Rekai Nyangadzayi Musuka
|
058c02150c
|
fix(cpu): op == 0b00 decodes to add in format 5
|
2022-10-21 05:12:11 -03:00 |
Rekai Nyangadzayi Musuka
|
8d841ead50
|
fix(cpu): account for overflow in THUMB alu MUL
|
2022-10-21 05:12:10 -03:00 |
Rekai Nyangadzayi Musuka
|
152dafbdf7
|
chore: use if-else when decoding THUMB instructions
|
2022-10-21 05:12:10 -03:00 |
Rekai Nyangadzayi Musuka
|
7dbd2fc556
|
fix(cpu): account for rn in rlist in block data transfer
|
2022-10-21 05:12:10 -03:00 |
Rekai Nyangadzayi Musuka
|
85e0924669
|
feat: implement LDM/STM behaviour when S is set
|
2022-10-21 05:12:10 -03:00 |
Rekai Nyangadzayi Musuka
|
97919f646d
|
feat(cpu): Pass all LDR/STR ARMwrestler tests
|
2022-10-21 05:12:10 -03:00 |
Rekai Nyangadzayi Musuka
|
696cc1b359
|
feat(cpu): decode and implement all necessary ARM CPU instructions
|
2022-10-21 05:12:10 -03:00 |
Rekai Nyangadzayi Musuka
|
151de2eab4
|
feat(cpu): implement ARM SWP and SWPB
|
2022-10-21 05:12:10 -03:00 |
Rekai Nyangadzayi Musuka
|
e7f6464564
|
fix: resolve off by n * 2 when accessing Palette during BG Mode 4
|
2022-10-21 05:12:09 -03:00 |
Rekai Nyangadzayi Musuka
|
da681c946e
|
feat(cpu): Implement Multiply Long ARM instructions
|
2022-10-21 05:12:09 -03:00 |
Rekai Nyangadzayi Musuka
|
e0e43eece5
|
fix: no buttons are pressed by default
|
2022-10-21 05:12:09 -03:00 |
Rekai Nyangadzayi Musuka
|
7013389288
|
feat(cpu): implement format 18 THUMB instructions
|
2022-10-21 05:12:09 -03:00 |
Rekai Nyangadzayi Musuka
|
443520ecae
|
chore: more detailed panic message
|
2022-10-21 05:12:09 -03:00 |
Rekai Nyangadzayi Musuka
|
96d7285111
|
feat(cpu): implement format 10 THUMB instructions
|
2022-10-21 05:12:08 -03:00 |
Rekai Nyangadzayi Musuka
|
7e6fc44191
|
feat(cpu): implement SWP
|
2022-10-21 05:12:08 -03:00 |
Rekai Nyangadzayi Musuka
|
9cb4ebaa7f
|
fix(cpu): perform MUL with u64s, throw away upper 32 bits
|
2022-10-21 05:12:08 -03:00 |
Rekai Nyangadzayi Musuka
|
3e4d7e7ed8
|
feat: implement keyboard input
|
2022-10-21 05:12:08 -03:00 |
Rekai Nyangadzayi Musuka
|
3a6951d93d
|
chore: don't panic on unsupported BG mode
|
2022-10-21 05:12:08 -03:00 |
Rekai Nyangadzayi Musuka
|
391096872e
|
chore: tempoarily disable fps counter
|
2022-10-21 05:12:08 -03:00 |
Rekai Nyangadzayi Musuka
|
eebf6fcae4
|
chore: zero-initialize VRAM
|
2022-10-21 05:12:07 -03:00 |
Rekai Nyangadzayi Musuka
|
8b7223cf35
|
chore: stub KeyInput I/O register
|
2022-10-21 05:12:07 -03:00 |
Rekai Nyangadzayi Musuka
|
e1fec48a0e
|
fix(cpu): properly decode multiply instructions
|
2022-10-21 05:12:07 -03:00 |
Rekai Nyangadzayi Musuka
|
0778ee8dd7
|
feat(cpu): implement ARM multiply instructions
|
2022-10-21 05:12:07 -03:00 |
Rekai Nyangadzayi Musuka
|
14d5160674
|
fix: allow 32-bit writes to DISPCNT
|
2022-10-21 05:12:07 -03:00 |