Matthew Berry
7d34186893
add exit button under file menu
2021-07-19 18:00:21 -07:00
Matthew Berry
c1aa798d73
persist keybindings across runs
2021-07-19 18:00:02 -07:00
Matthew Berry
692a25800e
auto-increment selection, don't capture when window is closed
2021-07-18 18:38:41 -07:00
Matthew Berry
40b485780c
in-memory keybinding changes
2021-07-18 18:25:10 -07:00
Matthew Berry
2bcd5a3120
remove unused frontend sync field
2021-07-13 22:03:26 -07:00
Matthew Berry
b4db516096
always make main menu show in stubbed controller
2021-07-13 22:02:11 -07:00
Matthew Berry
151b451f23
updated to new version of cult bios that fixes audio crunch
2021-07-13 08:16:57 -07:00
Matthew Berry
8676c3824d
ignore cimgui dylib
2021-07-10 17:19:45 -07:00
Matthew Berry
d85e358c54
fix Minish Cap saves (compat with mGBA), write EEPROM save files
2021-07-05 02:04:33 -07:00
Matthew Berry
79d9a75649
eeprom size detection
2021-07-05 00:36:48 -07:00
Matthew Berry
4ce01591ee
passing dennis' eeprom tests
2021-07-02 18:02:16 -07:00
Matthew Berry
e5ec0eab9f
hide "Select BIOS" when no emulator is running
2021-06-29 20:22:35 -07:00
Matthew Berry
dd87534e8d
start to a debugger frontend for the gba
2021-06-29 08:46:33 -07:00
Matthew Berry
bcd9658fb2
default gbc to no bios
2021-06-28 19:48:59 -07:00
Matthew Berry
2a4c7f9ee5
all setting gba and gbc bios
2021-06-27 17:02:34 -10:00
Matthew Berry
bd7e588fdd
refactor file explorer to parse extensions/hidden entries on render
2021-06-27 16:22:55 -10:00
Matthew Berry
6b516a6567
moved sync under new emulator menu
2021-06-23 17:53:18 -10:00
Matthew Berry
35b593d95e
add basic configuration and default gba bios
2021-06-23 16:18:52 -10:00
Matthew Berry
fb8c4f2d60
remove blending until it can be re-implemented properly
2021-06-23 11:09:37 -10:00
Matthew Berry
e047f42f73
allow emulator to be started without rom, clear settings between roms
...
Had to refactor a decent bit in order to support running the program
without a running emulator. Now will open with the menu bar selected to
help indicate that a rom should be opened. Some day it might be nice to
just render something into vram to show on the screen instead, but
that's a future issue.
Also added screen clearing between frames, although this might break
blending. Will need to revisit. This allows imgui to render properly
when no emulator is rendering, though.
Finally, I made it clear settings between roms, since the options for
syncing, blending, etc were getting out of sync with the actual state of
the emulator. In the future, I should make sure that these are tied into
actual emulator state.
2021-06-22 19:12:37 -07:00
Matthew Berry
c940dfbf00
got rid of ability to filter by extension
...
it did not provide much
2021-06-18 20:38:22 -07:00
Matthew Berry
fa7f2901e4
compile and use the correct shader program per emulator
2021-06-18 18:39:57 -07:00
Matthew Berry
97d4f1d5bb
added breadcrumbs, hidden files, and disabling extensions to file explorer
2021-06-18 17:42:16 -07:00
Matthew Berry
f5d60285cd
file explorer that lets you open both gb and gba games from the same program
2021-06-18 17:39:50 -07:00
Matthew Berry
fca039bd12
refactor out frontend to drive the emu frame-by-frame, add pause/sync
...
Now the Frontend drives the Emu, which is wrapped with an Accessor which
will eventually define which actions are available per Emu, and wrap
around calls into that Emu.
Added the ability to pause and toggle audio syncing from the menu bar.
2021-06-16 19:39:37 -07:00
Matthew Berry
c7bc2c31f9
very minimal imgui frontend
2021-06-11 08:50:21 -07:00
Matthew Berry
3b71156bd3
fix timing of thumb ldmia writeback
2021-06-06 12:46:50 -07:00
Matthew Berry
e706c5f64f
updated readme gif and added cryboy gifs to readme dir
2021-05-28 00:31:15 -07:00
Matthew Berry
1372453133
remove unused variable and one extra call to to_u32
2021-05-27 00:09:34 -07:00
Matthew Berry
92c33f5872
fix fps calculation causing crashes above 2148 fps
2021-05-26 00:07:21 -07:00
Matthew Berry
71131ac86a
increment affine reference points before hdma
...
This alone seems to fix Golden Sun. Many games like Gadget Racers still
don't work, but this seems to be a closer approximation of "correct".
Finally, the best game for the GBA is playable... I'm sad that this was
all it took to "fix" lol.
2021-05-25 00:23:34 -07:00
Matthew Berry
7b114029a9
make all ppu regs use read__byte and write_byte
2021-05-24 22:49:19 -07:00
Matthew Berry
2f983c5045
use better variable names in reg bg render func
2021-05-23 14:47:44 -07:00
Matthew Berry
65ea773adb
removed redundant util files
2021-05-21 15:18:25 -07:00
Matthew Berry
00e7795e6f
update readme to reflect addition of cryboy codebase
2021-05-19 01:12:15 -07:00
Matthew Berry
6d00710121
touched up tmcnt read logic slightly
2021-05-18 21:05:55 -07:00
Matthew Berry
026b86c891
add minor docs to thumb move shifted reg
2021-05-17 21:04:54 -07:00
Matthew Berry
d5c06fef98
thumb load address does not need set_reg
2021-05-16 21:03:43 -07:00
Matthew Berry
cf804e723c
applied formatter to whole project
2021-05-15 00:04:54 -07:00
Matthew Berry
8ccb8cb31b
clear the bottom bits of IF properly
2021-05-14 23:41:49 -07:00
Matthew Berry
a8ed1e7f6b
simplified cli, made tests run headless again
2021-05-13 22:49:21 -07:00
Matthew Berry
9e2f742d1d
make graphics tests output the correct colors, fix dmg colors
2021-05-12 01:00:37 -07:00
Matthew Berry
f2151a0a25
move gb color correction to gpu, unify display logic for gb and gba
2021-05-11 00:47:32 -07:00
Matthew Berry
be81650f54
move gb display from rgb24 to bgr16
2021-05-10 03:18:43 -07:00
Matthew Berry
8b6f300f67
simplify arm branch exchange logic
2021-05-09 23:48:23 -07:00
Matthew Berry
bdda6b0509
copied over cryboy tests and made them run again
2021-05-08 22:25:21 -07:00
Matthew Berry
f6fdd071d1
abstract common keyboard input between emus
2021-05-08 01:08:16 -07:00
Matthew Berry
fceb5ee988
abstract scheduler between gb and gba
2021-05-07 16:30:19 -07:00
Matthew Berry
26d747801d
Moved CryBoy into the crab codebase, along with all associated changes
...
The next step will be abstracting features between the two, like the
scheduler, apu, display, and anything else than can be abstracted. Once
this is abstracted, I can go back to trying to fix the CryBoy APU that
started having trouble once it was on the scheduler. This will ensure
consistency between the two projects.
2021-05-06 00:29:04 -07:00
Matthew Berry
b8a7fc1428
simplify register rotates a little bit
2021-05-02 19:08:06 -07:00