73 Commits

Author SHA1 Message Date
ab6d0a0a7d chore: update dependencies 2022-01-21 19:05:37 -04:00
e72b11f946 feat: add more debug tools to gui 2021-12-09 05:21:05 -04:00
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
70e0b5868d chore: code cleanup 2021-11-30 03:59:44 -04:00
c10816c048 chore: imrpove private and public APIs 2021-11-24 22:12:26 -04:00
2405fd027f chore: remove Emulator struct 2021-11-21 05:27:04 -04:00
6f5e863645 chore: drop pixels-rs and add egui w/ wgpu backend 2021-11-15 21:34:24 -04:00
548945a4ee chore: remove imports of tracing macros 2021-10-30 16:41:06 +09:00
2bb8bd6d8f chore: update dependencies 2021-10-30 09:37:24 +09:00
8780c4a59b chore(emu): remove and replace EmulatorBuilder 2021-10-28 22:07:36 -03:00
293e5762c3 chore: small code-cleanup changes 2021-10-20 02:48:44 -03:00
352a65b705 chore(apu): update spsc depenency 2021-10-07 15:27:51 -03:00
ce121864d2 feat: implement cartridge saving
Implemented for MBC1, MBC2, MBC3 and MBC5
2021-09-20 04:13:25 -03:00
5882678bc5 chore: inline some functions
Some checks reported errors
continuous-integration/drone/push Build was killed
2021-09-20 01:34:41 -03:00
bcd67cb317 chore: begin refactor of public api 2021-09-20 01:34:21 -03:00
6087e3b20b chore: remove Cycle struct and begin scheduler design 2021-09-12 04:56:34 -03:00
10ac579c40 fix(main): Use LogicalSize and PhysicalSize properly 2021-09-11 22:56:40 -03:00
db012c7f4b fix(main): remove code unrelated to audio sync
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-07 02:09:02 -03:00
e42c87aeb7 fix(apu): quiet gameboy APU 2021-09-07 01:52:02 -03:00
9fa40f8584 fix(main): do not drop output stream 2021-08-18 22:39:55 -05:00
b10bc7b4fd chore(main): add flag that enables audio 2021-08-18 16:34:26 -05:00
360a9a7b65 chore(apu): improve code organization
All checks were successful
continuous-integration/drone/push Build is passing
2021-08-18 00:04:27 -05:00
9b2c91445a chore: enable audio by default
even if it sounds really bad right now
2021-08-17 21:25:55 -05:00
aa22e93049 chore: clean up TODO messages
All checks were successful
continuous-integration/drone/push Build is passing
2021-08-15 23:31:27 -05:00
1acb5de19d fix(main): GB frametime should be 59.73 Hz 2021-08-14 17:59:59 -05:00
79be38a1e6 fix(main): rename constant SCALE to WINDOW_SCALE
All checks were successful
continuous-integration/drone/push Build is passing
2021-08-14 01:02:18 -05:00
33be2e0e83 fix(main): tie emulation to 60Hz on host machine 2021-08-03 14:09:16 -05:00
e43cac8041 fix(apu): don't spin if ringbuf is full 2021-07-28 16:23:31 -05:00
903cfacad3 fix(apu): replace mpsc with spsc ringbuffer
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-28 02:01:04 -05:00
1a4546f4a4 chore: remove egui from project
I want to re-implement this later.
2021-07-27 22:38:21 -05:00
4fda7587ce chore(main): disable vsync 2021-07-18 21:33:52 -05:00
c1430594cf chore(apu): change access modifiers of some methods 2021-07-18 20:58:02 -05:00
8e2ef58b81 chore(main): remove rodio sink 2021-07-18 20:42:36 -05:00
b4b84d0cc5 fix(main): Allow emu to work on windows and linux
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-16 21:07:00 -05:00
cc0cb0dd8a chore(apu): satisfy clippy
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-15 22:58:23 -05:00
44b605970f chore(snd): rename some structs 2021-07-12 10:03:45 -05:00
91d19a7e66 chore(snd): mask unreadable bits from return values 2021-07-09 21:16:33 -05:00
40ca0abb72 feat: implement keyboard controls 2021-07-09 19:19:52 -05:00
548f3867d4 chore(main): remove windows-specific code 2021-07-09 17:25:38 -05:00
ce630baa5d feat(snd): implement audio playback using rodio
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-09 01:25:52 -05:00
9b3a5d49d2 chore: update error messages in expect() calls 2021-07-08 18:50:58 -05:00
fc4a898177 chore: reorganize select parts of codebase 2021-06-27 20:28:29 -05:00
aa4a898a6b fix: resolve type issue with debug feature enabled 2021-06-09 13:45:12 -05:00
1449ed3765 fix(joypad): reimplement joypad 2021-06-07 17:23:48 -05:00
d623800005 fix: apply clippy suggestions 2021-06-06 21:30:08 -05:00
b1bf6c5868 feat: integrate eui and pixels-rs for debug info 2021-06-02 01:50:35 -05:00
96cf705966 chore: update dependencies 2021-05-31 23:24:20 -05:00
4abb2833c4 chore: implement gamepad controls 2021-05-03 23:11:39 -05:00
b43c8ac7c9 feat(cartridge): grab title from the ROM 2021-04-14 01:21:45 -05:00
cbd085c25b chore: use Default::default instead of Type::Default 2021-04-13 23:02:13 -05:00