Commit Graph

472 Commits

Author SHA1 Message Date
Rekai Nyangadzayi Musuka 45d0dd04ca chore: update dependencies 2022-01-21 04:18:59 -04:00
Rekai Nyangadzayi Musuka cf2357f917 feat: add disassembler that is aware of immediate values 2021-12-16 12:16:58 -04:00
Rekai Nyangadzayi Musuka 3fb7edd333 chore: add some missing comments to instruction decoding 2021-12-16 12:16:36 -04:00
Rekai Nyangadzayi Musuka 3ab512d663 fix(ppu): implement proper PPU reset behaviour 2021-12-09 10:46:27 -04:00
Rekai Nyangadzayi Musuka 61156ca8a8 fix(cart): rename enum variant and enable MBC3 w/ battery 2021-12-09 09:30:47 -04:00
Rekai Nyangadzayi Musuka 2c411d5792 chore(cart): add test for all-whitespace title 2021-12-09 07:27:52 -04:00
Rekai Nyangadzayi Musuka 4c657c9832 chore: update dependencies 2021-12-09 06:23:32 -04:00
Rekai Nyangadzayi Musuka e72b11f946 feat: add more debug tools to gui 2021-12-09 05:21:05 -04:00
Rekai Nyangadzayi Musuka bbcbbd8ce3 chore: fix dependency conflict 2021-12-06 13:36:23 -04:00
Rekai Nyangadzayi Musuka c4226e6e76 Merge branch 'main' of ssh://git.musuka.dev:2222/paoda/gb into main 2021-12-06 13:34:14 -04:00
Rekai Nyangadzayi Musuka 409314a4e5 fix(dbg): don't crash when attempting to read data as executable code 2021-12-06 13:33:22 -04:00
Rekai Nyangadzayi Musuka 952bf68bd0 chore: add extension to recommended 2021-12-06 13:24:05 -04:00
Rekai Nyangadzayi Musuka 865c11d53c chore: update dependencies 2021-12-03 16:34:12 -04:00
Rekai Nyangadzayi Musuka 90d2da9272 chore(gui): implement basic disassembler
Also implement CPU and Interrupt debug information.

Of note:
1. IE and IRQ status boxes are slightly misaligned
2. Whenever the disassembler accidentally reads into game data rather
   than executable code the emulator crashes
   * Thus I should turn Instruction decoding into a Result<> rather than
     panic on failure
2021-11-30 10:23:06 -04:00
Rekai Nyangadzayi Musuka 4a1a21a08f chore: satisfy clippy 2021-11-30 04:13:12 -04:00
Rekai Nyangadzayi Musuka 9d23b571fb chore: update cargo.toml 2021-11-30 04:00:34 -04:00
Rekai Nyangadzayi Musuka 70e0b5868d chore: code cleanup 2021-11-30 03:59:44 -04:00
Rekai Nyangadzayi Musuka a0e3c7c602 chore: remove useless default implementations 2021-11-25 04:07:45 -04:00
Rekai Nyangadzayi Musuka ef4f3d9ec6 chore(cart): refactor sections of cartridge code 2021-11-25 03:32:22 -04:00
Rekai Nyangadzayi Musuka 7f872a554b chore(cart): code cleanup 2021-11-25 03:32:18 -04:00
Rekai Nyangadzayi Musuka dda0257655 fix(cart): support cartridge headers w/ manufactor codes 2021-11-25 00:12:35 -04:00
Rekai Nyangadzayi Musuka c10816c048 chore: imrpove private and public APIs 2021-11-24 22:12:26 -04:00
Rekai Nyangadzayi Musuka 2405fd027f chore: remove Emulator struct 2021-11-21 05:27:04 -04:00
Rekai Nyangadzayi Musuka 939c25ce1a chore: update comment 2021-11-15 22:05:26 -04:00
Rekai Nyangadzayi Musuka 6f5e863645 chore: drop pixels-rs and add egui w/ wgpu backend 2021-11-15 21:34:24 -04:00
Rekai Nyangadzayi Musuka ce5d58e1d2 chore(ppu): rename some structs 2021-11-07 14:37:40 -06:00
Rekai Nyangadzayi Musuka ebcd5bec5c fix(cart): reset sub-cycle counting in RTC
specifically when RTC S is written to
2021-11-07 13:05:41 -06:00
Rekai Nyangadzayi Musuka f2c49b398c chore(cart): improve code quality of RtcClock 2021-11-05 23:05:36 -03:00
Rekai Nyangadzayi Musuka 6f76571d6c chore: update README 2021-11-05 22:40:31 -03:00
Rekai Nyangadzayi Musuka 55da5a29d8 chore: remove more getters 2021-11-01 18:04:22 +09:00
Rekai Nyangadzayi Musuka 7dfcd44820 chore(emu): remove bus and bus_mut from cpu 2021-11-01 17:56:42 +09:00
Rekai Nyangadzayi Musuka 80a15039e0 chore(apu): improve accuracy of Channel 1 2021-10-30 21:53:08 +09:00
Rekai Nyangadzayi Musuka 32405c0734 fix(apu): implement some obscure behaviour for ch1,2 & 3 2021-10-30 20:04:16 +09:00
Rekai Nyangadzayi Musuka 2ef8fefbb7 chore(apu): implement more obscure behaviour
implement capacitor
2021-10-30 18:41:31 +09:00
Rekai Nyangadzayi Musuka 548945a4ee chore: remove imports of tracing macros 2021-10-30 16:41:06 +09:00
Rekai Nyangadzayi Musuka 1526b4a09d fix(cart): improve title parsin
Now both Tokimeki Memorial titles are read properly
2021-10-30 15:48:47 +09:00
Rekai Nyangadzayi Musuka 4125ea5c74 fix(instr): fix timing issues with select instructions
instr_timing now runs (and fails on everything)
2021-10-30 14:02:28 +09:00
Rekai Nyangadzayi Musuka b9519d9b7a chore(bus): stub some CGB IO registers 2021-10-30 14:02:05 +09:00
Rekai Nyangadzayi Musuka 01278ca83f chore: reduce size of public interface 2021-10-30 10:28:20 +09:00
Rekai Nyangadzayi Musuka 2bb8bd6d8f chore: update dependencies 2021-10-30 09:37:24 +09:00
Rekai Nyangadzayi Musuka 080c1e7518 fix(bus): don't panic on non-existent cartridge 2021-10-28 22:19:38 -03:00
Rekai Nyangadzayi Musuka 765f9d8288 Merge branch 'main' of ssh://musuka.dev:2222/paoda/gb 2021-10-28 22:08:04 -03:00
Rekai Nyangadzayi Musuka 8780c4a59b chore(emu): remove and replace EmulatorBuilder 2021-10-28 22:07:36 -03:00
Rekai Nyangadzayi Musuka e19a540650 chore: upgrade to rust 2021 2021-10-22 01:42:40 -03:00
Rekai Nyangadzayi Musuka 4cfd951ede chore(ppu): improve bg-sprite priority functionality 2021-10-20 20:08:09 -03:00
Rekai Nyangadzayi Musuka de8fe1a367 chore(ppu): remove object buffer iter_mut method 2021-10-20 19:41:27 -03:00
Rekai Nyangadzayi Musuka c5fa41b20d chore(ppu): refactor FetcherState 2021-10-20 19:40:29 -03:00
Rekai Nyangadzayi Musuka 552cfd4a18 chore(ppu): sort OAM Memory 2021-10-20 17:36:38 -03:00
Rekai Nyangadzayi Musuka 4c516804e4 fix(ppu): refactor and improve accuracy of background fetcher 2021-10-20 16:58:19 -03:00
Rekai Nyangadzayi Musuka 9b3ab73bb1 fix(ppu): incremental improvements to accuracy of ppu fetcher 2021-10-20 05:21:49 -03:00