Rekai Nyangadzayi Musuka
|
2dc3864dca
|
chore: use stdlib endian-aware integer read/write functions
|
2022-06-03 13:26:55 -03:00 |
Rekai Nyangadzayi Musuka
|
38afb567b9
|
chore: misc style improvements
|
2022-05-27 22:09:15 -03:00 |
Rekai Nyangadzayi Musuka
|
517ed7a835
|
chore: remove awful ptr casts in backup.zig and bios.zig
|
2022-05-27 20:24:09 -03:00 |
Rekai Nyangadzayi Musuka
|
af2ad6c924
|
chore: improve APU accuracy + scheduler refactoring
|
2022-05-20 16:01:12 -03:00 |
Rekai Nyangadzayi Musuka
|
9d590b099a
|
feat: handle DMA IRQs (maybe?)
|
2022-05-05 22:04:59 -03:00 |
Rekai Nyangadzayi Musuka
|
640b1f7c5d
|
chore: pass destoer's cond_invalid test
|
2022-04-30 20:42:47 -05:00 |
Rekai Nyangadzayi Musuka
|
002287ecfe
|
fix: incorrect order-of-operations in ARM BL impl
|
2022-04-27 23:15:39 -05:00 |
Rekai Nyangadzayi Musuka
|
9cce4d9859
|
chore: misc improvements
|
2022-04-21 10:15:52 -03:00 |
Rekai Nyangadzayi Musuka
|
75ba9a4bf9
|
fix: improper lifetime for *Arm7tdmi ptr in Bus
*Arm7tdmi ptr is now assigned one scope up so that it lives as least
as long as Bus does
|
2022-04-21 07:56:17 -03:00 |
Rekai Nyangadzayi Musuka
|
9b9b6c0d6f
|
feat: implement ARM read open bus
|
2022-04-13 23:28:14 -03:00 |
Rekai Nyangadzayi Musuka
|
76b4d56ca6
|
feat: Initial Implementation of DMA Audio
|
2022-04-10 04:50:09 -03:00 |
Rekai Nyangadzayi Musuka
|
c100d64fcb
|
chore: tick scheduler on memory access
|
2022-04-09 19:43:27 -03:00 |
Rekai Nyangadzayi Musuka
|
80e714e2eb
|
chore: reimplement bus read/writes
|
2022-04-08 16:48:43 -03:00 |
Rekai Nyangadzayi Musuka
|
1901a471e4
|
feat: minor performance improvements
|
2022-03-18 09:49:49 -03:00 |
Rekai Nyangadzayi Musuka
|
04d54ec97a
|
chore: move DMA and Timers from io to bus
|
2022-03-15 08:25:26 -03:00 |
Rekai Nyangadzayi Musuka
|
85f0b13f4a
|
feat: improve DMA Transfer support
|
2022-03-03 02:10:29 -04:00 |
Rekai Nyangadzayi Musuka
|
d6ef53fd67
|
feat: DMA Transfer MVP
|
2022-02-28 12:34:00 -06:00 |
Rekai Nyangadzayi Musuka
|
ac0486be1b
|
chore(io): replace some bitfields with enums
|
2022-02-24 17:20:23 -06:00 |
Rekai Nyangadzayi Musuka
|
5368ff912d
|
feat: pass retAddr.gba
|
2022-02-21 15:34:46 -06:00 |
Rekai Nyangadzayi Musuka
|
c2cf2d2965
|
feat: implement Hblank and Vcount Interrupts
Also implemented unique behaviour when writing to IF
|
2022-02-21 14:45:47 -06:00 |
Rekai Nyangadzayi Musuka
|
3746cf6025
|
chore: don't panic on 32-bit I/O
|
2022-02-19 06:45:39 -04:00 |
Rekai Nyangadzayi Musuka
|
f6c8d7ca07
|
chore: stub CPU HALTing
|
2022-02-17 00:27:34 -04:00 |
Rekai Nyangadzayi Musuka
|
8ab7a178c1
|
chore(cpu): reimplement bank switching logic
|
2022-02-12 04:33:32 -04:00 |
Rekai Nyangadzayi Musuka
|
783706193b
|
fix: properly decode format 11 instructions
|
2022-02-12 03:13:38 -04:00 |
Rekai Nyangadzayi Musuka
|
ee27053db3
|
chore: remove TODOs and some useless imports
|
2022-02-06 19:07:23 -04:00 |
Rekai Nyangadzayi Musuka
|
7441dd151c
|
fix: improper condition check and initialization of register
|
2022-02-06 18:41:16 -04:00 |
Rekai Nyangadzayi Musuka
|
2842345111
|
chore: remove unnecessary @as calls
|
2022-02-05 21:01:39 -04:00 |
Rekai Nyangadzayi Musuka
|
b4d20fb264
|
chore: refactor ARMv4 decoding
|
2022-02-05 13:46:55 -04:00 |
Rekai Nyangadzayi Musuka
|
746158043d
|
chore: add more debug information to CPU panic method
|
2022-02-05 13:46:24 -04:00 |
Rekai Nyangadzayi Musuka
|
25300c8a9f
|
chore: give more descriptive panic messages when changing mode fails
|
2022-02-04 16:54:57 -04:00 |
Rekai Nyangadzayi Musuka
|
27d0ba8c7e
|
chore: clean up THUMB instruction decoding
|
2022-02-04 15:57:46 -04:00 |
Rekai Nyangadzayi Musuka
|
b233981a34
|
feat: rename ARM and THUMB SWI functions
|
2022-02-04 04:34:47 -04:00 |
Rekai Nyangadzayi Musuka
|
1b8db0c427
|
chore: group THUMB and select ARM instructions together (same file)
|
2022-02-04 04:18:20 -04:00 |
Rekai Nyangadzayi Musuka
|
6ab4610a81
|
fix(cpu): properly decode format 7 and 8
|
2022-02-03 01:29:18 -04:00 |
Rekai Nyangadzayi Musuka
|
027e4fb57b
|
feat(cpu): implement THUMB format 17
|
2022-02-02 22:31:08 -04:00 |
Rekai Nyangadzayi Musuka
|
1378c809e6
|
feat(cpu): implement THUMB format11
|
2022-02-02 22:30:46 -04:00 |
Rekai Nyangadzayi Musuka
|
99492a6782
|
chore: progress towards passing ldr/str thumb in armwrestler
|
2022-02-02 21:14:46 -04:00 |
Rekai Nyangadzayi Musuka
|
045c98de1f
|
chore: use if-else when decoding THUMB instructions
|
2022-02-02 18:48:47 -04:00 |
Rekai Nyangadzayi Musuka
|
d95efa5b12
|
feat: implement LDM/STM behaviour when S is set
|
2022-02-02 16:12:47 -04:00 |
Rekai Nyangadzayi Musuka
|
30bad76e44
|
feat(cpu): decode and implement all necessary ARM CPU instructions
|
2022-02-02 12:06:41 -04:00 |
Rekai Nyangadzayi Musuka
|
c34c2ee6eb
|
feat(cpu): implement ARM SWP and SWPB
|
2022-02-02 08:44:33 -04:00 |
Rekai Nyangadzayi Musuka
|
48017b45f5
|
feat(cpu): Implement Multiply Long ARM instructions
|
2022-02-01 22:09:38 -04:00 |
Rekai Nyangadzayi Musuka
|
a80600156d
|
feat(cpu): implement format 18 THUMB instructions
|
2022-02-01 19:12:01 -04:00 |
Rekai Nyangadzayi Musuka
|
0d7600ed7a
|
chore: more detailed panic message
|
2022-02-01 19:11:56 -04:00 |
Rekai Nyangadzayi Musuka
|
ca41f6a85c
|
feat(cpu): implement format 10 THUMB instructions
|
2022-02-01 17:56:11 -04:00 |
Rekai Nyangadzayi Musuka
|
dd632975f8
|
fix(cpu): properly decode multiply instructions
|
2022-01-30 02:16:12 -04:00 |
Rekai Nyangadzayi Musuka
|
a459d4b433
|
feat(cpu): implement ARM multiply instructions
|
2022-01-30 02:04:24 -04:00 |
Rekai Nyangadzayi Musuka
|
8d1df7ae43
|
fix(cpu): properly decode ldm stm thumb instructions
|
2022-01-30 01:12:34 -04:00 |
Rekai Nyangadzayi Musuka
|
6ffaf12804
|
fix(cpu): properly decode THUMB PUSH and POP at comptime
|
2022-01-30 00:16:13 -04:00 |
Rekai Nyangadzayi Musuka
|
e18f10126e
|
feat(cpu): implement thumb push / pop and stub format 13 thumb instrs
|
2022-01-29 23:22:10 -04:00 |