Rekai Nyangadzayi Musuka
11eae091db
chore: introduce zba-util
...
In an effort to reuse code between zba and zba-gdbstub, move common util
code (like the SPSC Channel I implemented in this commit) in a new lib
2023-03-10 00:05:31 -06:00
Rekai Nyangadzayi Musuka
e90d5a17ba
fix: ensure code builds + works
...
the gdbstub branch got merged into main, rebasing on top of main led to
a bunch of merge conflicts that had to be resolved. Unfortunately some
things got missed, and this commit covers the immediate problems that
the rebase caused
2023-02-23 17:27:42 -06:00
Rekai Nyangadzayi Musuka
ff609c85ba
feat: show game title as imgui screen title
2023-02-23 17:27:42 -06:00
Rekai Nyangadzayi Musuka
5e94cbfbea
feat: add imgui support using zgui
2023-02-23 17:27:42 -06:00
Rekai Nyangadzayi Musuka
01f5410180
feat: allow gui and gdbstub to run in parallel
2023-02-23 02:40:24 -06:00
Rekai Nyangadzayi Musuka
518b868249
feat: respond to API changes for software bkpts
2023-02-23 02:40:24 -06:00
Rekai Nyangadzayi Musuka
1f3cdd9513
feat: add gdb support to zba
2023-02-23 02:40:24 -06:00
Rekai Nyangadzayi Musuka
e380af7056
chore: use a more efficient decimal->bcd algorithm
...
This will not improve perf in any way because this code only gets run
one time a second orz
2023-02-21 23:22:42 -06:00
Rekai Nyangadzayi Musuka
c3f67e38a1
chore: exit early on shader compile failure
2022-11-29 22:25:04 -04:00
Rekai Nyangadzayi Musuka
429676ad43
feat(config): write config.toml to config dir, not data dir
2022-11-03 09:45:57 -03:00
Rekai Nyangadzayi Musuka
d859cee365
style: get rid of unnecessary type coersion
2022-10-29 00:06:08 -03:00
Rekai Nyangadzayi Musuka
16f8f4c953
feat: write default config.toml if it doesn't exist
...
also resolves panic on missing /zba or /zba/save directory by ensuring
those directories exist as soon as we know the data directory
2022-10-21 04:39:16 -03:00
Rekai Nyangadzayi Musuka
b133880064
chore(main): report errors slightly better
2022-10-17 18:30:40 -03:00
Rekai Nyangadzayi Musuka
fc53a40b3c
feat(config): add option to skip BIOS
2022-10-17 17:31:07 -03:00
Rekai Nyangadzayi Musuka
7097e21361
feat(cli): Add option to skip BIOS
2022-10-17 17:25:04 -03:00
Rekai Nyangadzayi Musuka
7b146ad7ca
fix(bios): set addr_latch even if bios is skipped
2022-10-13 00:35:22 -03:00
Rekai Nyangadzayi Musuka
293fbd9f55
feat(config): add support for (and read from) TOML config file
2022-10-13 00:29:48 -03:00
Rekai Nyangadzayi Musuka
622f479e07
feat: parse config.toml in data folder
...
Also took the chance to rework parts of the logic that determines
ZBA's save path
2022-10-13 00:27:18 -03:00
Rekai Nyangadzayi Musuka
92cfc763c0
chore: move util.zig
2022-09-19 16:07:19 -03:00
Rekai Nyangadzayi Musuka
9a8aaba1ab
chore: improve util and Gui API
2022-09-18 05:55:15 -03:00
Rekai Nyangadzayi Musuka
59669ba3a5
chore: rename arm7tdmi variables to just cpu
...
Less verbose, specifying arm7tdmi doesn't really do much when there's
no other CPU in the system
2022-09-03 17:56:37 -03:00
Rekai Nyangadzayi Musuka
5f8c6833f4
chore: improve init/deinit methods
2022-08-29 01:07:25 -05:00
Rekai Nyangadzayi Musuka
2c8616f610
feat: reimplement cpu logging
2022-07-27 14:50:28 -03:00
Rekai Nyangadzayi Musuka
53eec5c3ff
chore: don't init bus in Arm7tdmi init
2022-07-27 13:44:24 -03:00
Rekai Nyangadzayi Musuka
53191b0eeb
chore: change directory structure
2022-07-22 21:11:19 -03:00
Rekai Nyangadzayi Musuka
03ded099d2
chore: move audio sync, video sync variables
2022-07-21 11:05:49 -03:00
Rekai Nyangadzayi Musuka
db08edbdb9
chore: attempt to debug Rhythm Heaven
2022-06-16 00:03:51 -03:00
Rekai Nyangadzayi Musuka
7ff5f3b8e7
chore: remove code that pretends to remove DC offset
2022-06-04 09:47:58 -03:00
Rekai Nyangadzayi Musuka
c007bf4d8e
fix: remove DC offset from audio output
2022-05-26 17:10:10 -03:00
Rekai Nyangadzayi Musuka
697ec46cf1
chore: add debug keybinds for scheduler capacity + event count
2022-05-25 15:13:57 -03:00
Rekai Nyangadzayi Musuka
f130d1991c
chore: cleanup main
2022-05-23 12:50:01 -03:00
Rekai Nyangadzayi Musuka
e70fe73899
chore: redo apu sampling
2022-05-23 11:25:28 -03:00
Rekai Nyangadzayi Musuka
8dddb865cc
fix: resolve out-of-bounds error with 8bpp tall / horizontal sprites
...
Boot ROM is now enabled by default as well
2022-05-17 12:16:30 -03:00
Rekai Nyangadzayi Musuka
a667269d26
chore: reintroduce thread sleeping + simplify fps counter
2022-05-17 08:55:23 -03:00
Rekai Nyangadzayi Musuka
daf977ef06
feat: implement double buffering
2022-05-17 06:53:37 -03:00
Rekai Nyangadzayi Musuka
68012f84d3
chore: comment ARM MSR code + Audio issues
2022-04-30 22:17:34 -05:00
Rekai Nyangadzayi Musuka
f2f4bb205a
chore: misc print message improvements
2022-04-29 12:41:05 -05:00
Rekai Nyangadzayi Musuka
a87b46898b
chore: special case saving for ROMS without titles
2022-04-27 18:08:44 -05:00
Rekai Nyangadzayi Musuka
81db06d2fc
chore: change default window scale to 4x
2022-04-24 08:33:28 -04:00
Rekai Nyangadzayi Musuka
762494453f
chore: only sync to audio for now
2022-04-22 20:56:52 -03:00
Rekai Nyangadzayi Musuka
e3553bcbd6
feat: panic on unimplemented I/O in ReleaseSafe/Debug but not ReleaseFast
2022-04-22 20:56:52 -03:00
Rekai Nyangadzayi Musuka
9cce4d9859
chore: misc improvements
2022-04-21 10:15:52 -03:00
Rekai Nyangadzayi Musuka
75ba9a4bf9
fix: improper lifetime for *Arm7tdmi ptr in Bus
...
*Arm7tdmi ptr is now assigned one scope up so that it lives as least
as long as Bus does
2022-04-21 07:56:17 -03:00
Rekai Nyangadzayi Musuka
c3611a0f00
feat: add audio resampler
...
Also implement extremely naive audio sync
2022-04-20 06:27:06 -03:00
Rekai Nyangadzayi Musuka
172a59aefb
feat: schedule audio sampling on scheduler
...
DMA sound in games like Pokemon Emerald, Chobits, Love Hina, and Kirby:
Nightmare in Dream Land sound great save for conerns about resampling
2022-04-14 05:58:32 -03:00
Rekai Nyangadzayi Musuka
6b09250a56
chore: move some init code to functions
2022-04-14 00:52:21 -03:00
Rekai Nyangadzayi Musuka
9b9b6c0d6f
feat: implement ARM read open bus
2022-04-13 23:28:14 -03:00
Rekai Nyangadzayi Musuka
76b4d56ca6
feat: Initial Implementation of DMA Audio
2022-04-10 04:50:09 -03:00
Rekai Nyangadzayi Musuka
fae4b430ab
chore: update dependencies
2022-04-07 17:23:07 -03:00
Rekai Nyangadzayi Musuka
bd54cba8a0
feat: implement SRAM saving and loading
2022-03-22 14:41:18 -03:00