Commit Graph

43 Commits

Author SHA1 Message Date
Rekai Nyangadzayi Musuka f52e1ab6b9 feat: implement (?) NDS9 DMA Controllers
TODO: deduplicate please
2023-12-14 01:16:24 -06:00
Rekai Nyangadzayi Musuka ea63b04056 feat: implement (?) nds7 dma transfer controllers 2023-12-14 00:39:00 -06:00
Rekai Nyangadzayi Musuka e0171e5b65 feat(ppu): support text backdrop 2023-11-23 00:31:54 -06:00
Rekai Nyangadzayi Musuka 3a1ebfb6e6 chore: unify "enum { nds7, nds9 }"s 2023-11-22 00:19:37 -06:00
Rekai Nyangadzayi Musuka 16233f3cd8 chore: implement a non-working mode 0 2023-11-14 00:22:43 -06:00
Rekai Nyangadzayi Musuka 64b1bdbe19 fix(nds): impl enough i/o to get ARM7WRESTLER booting 2023-11-04 19:28:54 -05:00
Rekai Nyangadzayi Musuka 37aff56c22 feat(ppu): implement vblank, hblank and coincidence interrupts 2023-11-04 03:22:11 -05:00
Rekai Nyangadzayi Musuka bf08e93508 fix(ppu): engines don't have unique vcount + dispstat (cpus do) 2023-11-04 02:34:34 -05:00
Rekai Nyangadzayi Musuka 83f94f6d9d feat(cpu): implement HALT 2023-11-04 01:21:52 -05:00
Rekai Nyangadzayi Musuka 16b3325fe3 feat(ppu): introduce concept of 2 graphics engines + refactor 2023-11-04 00:39:00 -05:00
Rekai Nyangadzayi Musuka 13f5497808 chore(io): stub nds{7, 9} dma i/o registers 2023-11-03 21:07:28 -05:00
Rekai Nyangadzayi Musuka ac3927333b chore(bus, io): consistency when logging unimpl'd read/writes 2023-11-02 00:32:41 -05:00
Rekai Nyangadzayi Musuka 81c17b9965 chore(cp15): ignore cp15 registers written to by libnds crt0 (?) 2023-11-02 00:24:19 -05:00
Rekai Nyangadzayi Musuka 1a56a1a285 chore(bios): impl bios handlers 2023-10-30 21:57:34 -05:00
Rekai Nyangadzayi Musuka 95dfeceb00 chore: stub NDS7 DMA registers 2023-10-09 19:28:59 -05:00
Rekai Nyangadzayi Musuka 7f4dad485f feat: implement IPCFIFO IRQs
turbo now passes rockwrestler!!!
2023-10-09 19:28:59 -05:00
Rekai Nyangadzayi Musuka 825b6e95ac feat: implement IPCSYNC irqs 2023-10-09 02:52:11 -05:00
Rekai Nyangadzayi Musuka c72e36ef6b chore: rename some io decls 2023-10-08 16:53:59 -05:00
Rekai Nyangadzayi Musuka ea3b6ba8fd chore: remove unnecessary value in vram update fn 2023-10-08 16:20:19 -05:00
Rekai Nyangadzayi Musuka 7e2ab0fa6d chore: update dependencies 2023-10-07 03:23:11 -05:00
Rekai Nyangadzayi Musuka 3a35c5b428 feat: implement VRAM allocation 2023-10-03 00:35:34 -05:00
Rekai Nyangadzayi Musuka 77caa9ae52 feat: pass TCM tests in rockwrestler 2023-09-29 23:35:16 -05:00
Rekai Nyangadzayi Musuka f0b5bb1207 feat: implement WRAM 2023-09-29 22:22:41 -05:00
Rekai Nyangadzayi Musuka eba2de39fb feat(io): implement ipcsync (non-irq) and ipcfifo (non-irq) 2023-09-28 21:07:20 -05:00
Rekai Nyangadzayi Musuka 2484f634d8 feat(i/o): implement working sqrt unit, broken div unit 2023-09-28 03:45:58 -05:00
Rekai Nyangadzayi Musuka d90cd699b6 chore: refactor scheduler + nds7/nds9 group structs 2023-09-26 23:25:36 -05:00
Rekai Nyangadzayi Musuka 2f06f178e2 fix(v5te): properly implement qadd/qsub/qdadd/qdsub 2023-09-19 21:25:26 -05:00
Rekai Nyangadzayi Musuka bc5597c73e chore(io): abstract away io masks 2023-09-19 20:28:01 -05:00
Rekai Nyangadzayi Musuka 5dbd681ba1 feat: implement broken IPCFIFO 2023-09-15 21:25:40 -05:00
Rekai Nyangadzayi Musuka 78eea74515 tmp: clean up nds7/nds9 io for a bit 2023-09-15 19:36:58 -05:00
Rekai Nyangadzayi Musuka 6518fcc68b feat: implement basic cp15 coprocessor 2023-09-15 14:21:51 -05:00
Rekai Nyangadzayi Musuka 8eaadff0c3 feat(cpu): implement QADD/QSUB and SMLA<x><y> 2023-09-07 20:01:36 -05:00
Rekai Nyangadzayi Musuka c6a30e62b7 fix(cpu): resolve issues with ARMv5T ldm/stm impl in ARMWRESTLER 2023-09-06 01:29:47 -05:00
Rekai Nyangadzayi Musuka 53c664bc61 chore(ui): default to 1600x900 window 2023-09-05 21:40:11 -05:00
Rekai Nyangadzayi Musuka 1fc1f5782b chore(bus): force align writes to NDS7/NDS9 Bus 2023-09-05 21:40:05 -05:00
Rekai Nyangadzayi Musuka cd3a3dbe63 fix(emu): resolve double free with main mem ptr 2023-09-05 17:13:17 -05:00
Rekai Nyangadzayi Musuka 0c6f710822 feat(platform): draw fullscreen triangle instead of quad 2023-09-05 17:13:17 -05:00
Rekai Nyangadzayi Musuka 4c57f0b5f4 chore(emu): fix spelling mistakes 2023-09-04 22:24:14 -05:00
Rekai Nyangadzayi Musuka 3bc13b527e fix(emu): share same main mem allocation between ARM7 + ARM9 2023-09-04 22:22:57 -05:00
Rekai Nyangadzayi Musuka cef711a497 ci: add CI 2023-08-06 23:13:11 +01:00
Rekai Nyangadzayi Musuka 5951a948e9 chore: use Zig v0.11.0 2023-08-06 23:11:56 +01:00
Rekai Nyangadzayi Musuka a2779e6cfd chore: add empty README 2023-08-01 15:15:36 -05:00
Rekai Nyangadzayi Musuka e32d6534c6 feat: initial commit
some basic ROMs already boot (ARM946E-S only), working on Armwrestler
and Rockwrestler next so I can ensure CPU compatability for but ARMv5TE
and ARMv4T
2023-08-01 15:13:18 -05:00