Commit Graph

79 Commits

Author SHA1 Message Date
Rekai Nyangadzayi Musuka 034f2e8d1d feat: implement hofs and vofs on io bus 2022-02-16 04:29:04 -04:00
Rekai Nyangadzayi Musuka d275a4890f feat: implement scrolling 2022-02-16 03:37:25 -04:00
Rekai Nyangadzayi Musuka ce97a52868 feat: add support for multiple BGs in Mode 0 2022-02-16 03:27:06 -04:00
Rekai Nyangadzayi Musuka d2d4667f7b feat: document mode 0 2022-02-16 03:05:19 -04:00
Rekai Nyangadzayi Musuka 5835b509e4 feat: Mode 0 MVP 2022-02-16 02:27:15 -04:00
Rekai Nyangadzayi Musuka 338122ed43 chore: use zig slices for fun 2022-02-13 05:28:56 -04:00
Rekai Nyangadzayi Musuka e5a76a3c02 chore: give DISPCNT DISPSTAT and VCOUNT to PPU struct 2022-02-13 04:28:15 -04:00
Rekai Nyangadzayi Musuka ec25a9aae4 feat: implement BG Scrolling Registers 2022-02-13 04:04:10 -04:00
Rekai Nyangadzayi Musuka aca7fc9a60 feat: implement OAM 2022-02-13 02:30:02 -04:00
Rekai Nyangadzayi Musuka 78080b4682 fix: zero initialize all allocated memory 2022-02-05 15:54:53 -04:00
Rekai Nyangadzayi Musuka 6c7934be70 fix: resolve off by n * 2 when accessing Palette during BG Mode 4 2022-02-01 22:56:53 -04:00
Rekai Nyangadzayi Musuka f6e4b4931f chore: don't panic on unsupported BG mode 2022-01-30 02:43:11 -04:00
Rekai Nyangadzayi Musuka 8c248ffb11 chore: zero-initialize VRAM 2022-01-30 02:39:16 -04:00
Rekai Nyangadzayi Musuka 769c67b9d4 chore: remove some magic constants 2022-01-12 00:46:20 -04:00
Rekai Nyangadzayi Musuka fd5006b29d fix(ppu): properly access Mode 4 palette 2022-01-10 07:23:54 -04:00
Rekai Nyangadzayi Musuka 7c5d2d2389 feat(ppu): implement Mode 4
Implementation is not tested. Pending on LDM and STM so that I can
run beeg.gba
2022-01-10 03:35:24 -04:00
Rekai Nyangadzayi Musuka 0d4c850218 chore: remove premature inlines 2022-01-10 01:24:14 -04:00
Rekai Nyangadzayi Musuka c54145ce3c chore: improve code clarity 2022-01-09 23:34:33 -04:00
Rekai Nyangadzayi Musuka ead6d1ce49 feat(ppu): improve timings + implement BG mode 3 bitmap 2022-01-09 22:16:34 -04:00
Rekai Nyangadzayi Musuka 581285a434 fix: allocate framebuf on heap 2022-01-08 20:30:57 -04:00
Rekai Nyangadzayi Musuka 8fb666624f fix(ppu): deallocate palette RAM on cleanup 2022-01-07 22:27:08 -04:00
Rekai Nyangadzayi Musuka 568c374131 chore: code cleanup 2022-01-07 20:00:42 -04:00
Rekai Nyangadzayi Musuka 9f64804763 fix: by convention deinit() should not take pointers to self 2022-01-07 19:16:23 -04:00
Rekai Nyangadzayi Musuka c6123d8a6d feat: implement PPU Timings in Scheduler 2022-01-05 21:18:33 -04:00
Rekai Nyangadzayi Musuka f709458638 feat(sched): add HBlank and VBlank events to the scheduler 2022-01-05 17:34:59 -05:00
Rekai Nyangadzayi Musuka 5ea888f68c feat(bus): implement Palette RAM and DISPSTAT 2022-01-04 03:29:56 -06:00
Rekai Nyangadzayi Musuka 8b9a80b279 fix(bus): restrict Game ROM and VRAM to a 16-bit bus 2022-01-04 03:08:12 -06:00
Rekai Nyangadzayi Musuka 3aa680ab8c chore: remove all memory leaks 2022-01-03 20:08:55 -06:00
Rekai Nyangadzayi Musuka 8257a3899a feat(ppu): implement VRAM 2022-01-03 19:52:10 -06:00