Rekai Nyangadzayi Musuka
2afd6dbf9e
fix: create and draw ui even when running in gdb mode
2024-03-05 20:59:30 -06:00
Rekai Nyangadzayi Musuka
422e0d00b8
chore: improve debug messages
2024-02-14 15:35:38 -06:00
Rekai Nyangadzayi Musuka
32e54c67bf
feat: revamp controls, add support for X and Y buttons
2024-02-14 13:25:24 -06:00
Rekai Nyangadzayi Musuka
0ad017cf43
chore: upgrade to Zig v2024.1.0-mach
2024-02-12 20:22:02 -06:00
Rekai Nyangadzayi Musuka
62db837442
chore: remove unnecesary gdb.zig file
2024-01-13 16:10:42 -06:00
Rekai Nyangadzayi Musuka
117a95d3a9
feat: implement ARM7 gdbstub
2023-12-27 21:35:59 -06:00
Rekai Nyangadzayi Musuka
ed72427c71
tmp: progress towards gdb stub
2023-12-27 19:52:15 -06:00
Rekai Nyangadzayi Musuka
7f98f4cc26
fix: pass more test roms
2023-12-27 18:54:48 -06:00
Rekai Nyangadzayi Musuka
51076597e8
feat: implement Oam buffer
2023-12-27 16:02:39 -06:00
Rekai Nyangadzayi Musuka
334cd432d4
tmp: some debug logs for dmas lol
2023-12-14 21:14:58 -06:00
Rekai Nyangadzayi Musuka
b903f2c4a8
feat: implement DMAFILL
2023-12-14 01:42:53 -06:00
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
3a35c5b428
feat: implement VRAM allocation
2023-10-03 00:35:34 -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
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
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
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