Matthew Berry
7001db8c90
update mmio from chained conditionals to case statement
2022-08-21 15:47:11 -07:00
Matthew Berry
e36b633522
support open bus for io registers
2022-08-19 21:50:12 -07:00
Matthew Berry
004ff2c197
bump BitField library to 0.1.5 and make DMAXCNT_H reads respect
...
read/write-only bits
2022-08-17 17:11:18 -07:00
Matthew Berry
73712b10ba
make io register byte accesses respect non-writable bits (FIX SUPERSTAR SAGA)
...
The fact that this fixes Supestar Saga is both happy and sad for me. I spent so
much time trying to fix that game before, but I didn't even mean to fix it this
time. Either way, it works now. Finally.
2022-08-17 17:06:57 -07:00
Matthew Berry
7c45654b16
update dma unmapped reads
2022-08-16 14:18:42 -07:00
Matthew Berry
4505072049
update default soundbias value
2022-08-16 14:17:56 -07:00
Matthew Berry
01cb35398c
removed to_s
reg implementations since they exist by default now
2022-08-16 14:17:30 -07:00
Matthew Berry
a353dce7f3
rewrite blending routine to match all tonc bld_demo cases
...
minor perf regression in emerald title screen (~205fps -> ~200fps)
2022-08-11 22:24:36 -07:00
Matthew Berry
4cfd5b6fa7
add event types where they were missing
2022-08-10 10:07:07 -07:00
Matthew Berry
6b3f2e8415
minor sprite render refactoring for readability
2022-07-18 17:48:48 -07:00
Matthew Berry
6604a4800e
GBA RTC implemented :)
...
Works in RTC test roms, Pokemon Emerald, and Sennen Kazoku
2022-07-16 17:58:02 -07:00
Matthew Berry
5f6a3310a1
rename methods and paths of audio classes to increase gb/gba similarity
...
maybe this will help merge them someday
2022-07-14 19:48:05 -07:00
Matthew Berry
dfdd319ca9
rename value
to other
in SoundChannel#===
2022-07-13 19:05:59 -07:00
Matthew Berry
1a40e281ed
try adding blocks around the imgui api to make it a little easier to work with
...
hopefully this means I won't forget to close groups or pop styles anymore
2022-06-26 14:28:22 -07:00
Matthew Berry
61b21b4233
temporarily patch rcnt to return 0x8000 so that sonic advance boots
2022-06-24 23:06:25 -07:00
Matthew Berry
ed1a8214c6
use Slice#unsafe_slice_of for reading sprites from oam
2022-06-15 20:41:57 -07:00
Matthew Berry
b06c4f87ed
remove mmio wrapping
...
not sure why I added this to begin with since it doesn't happen on hardware
2022-04-22 18:53:04 -07:00
Matthew Berry
9ce8710aca
remove debugging __FILE__ arg to switch_mode
2022-04-03 11:46:47 -07:00
Matthew Berry
515d12aaa2
prevent scheduler window from crashing the emulator when minimized
2022-03-26 14:19:10 -07:00
Matthew Berry
0f21ea6aea
adjust address limit for vram u8 writes based on display mode (fix OpenLara)
2022-03-26 13:58:18 -07:00
Matthew Berry
020aafd156
reset vblank flag at line 227
2022-03-14 17:25:45 -07:00
Matthew Berry
bbfdd90fb8
rough pass at access timing to improve performance
2022-03-04 12:26:29 -08:00
Matthew Berry
4001dae0b8
Refactor Config to allow temporary command-line overrides
2022-01-11 21:27:34 -08:00
Matthew Berry
5405b3978b
Upgrade ImGui to v1.86
2022-01-09 18:17:13 -08:00
Matthew Berry
c33dc77feb
Fix CI, lock ImGui v1.85 bindings (and remove gl3w init)
2022-01-08 21:50:52 -08:00
Matthew Berry
aa623089ff
Remove catch-all conversions on reads
2022-01-08 10:11:05 -08:00
Matthew Berry
0c7e952b8f
Standardize formatting again
2022-01-08 10:02:33 -08:00
Matthew Berry
1e0dc878dd
Change config to method-call implementation
2022-01-08 09:59:53 -08:00
Matthew Berry
5e4bf19377
style: pull out constants and break up large functions
2021-12-27 21:28:07 -08:00
Matthew Berry
cf323648a5
parse cartridge type to enum
2021-08-06 21:31:39 -07:00
Matthew Berry
dc6b2915dc
time out imgui menu after 3 seconds without mouse movement
2021-08-01 22:29:59 -07:00
Matthew Berry
e3dd781f71
add menu to change window size or fullscreen
2021-08-01 21:54:20 -07:00
Matthew Berry
606bf07800
allow scaling the viewport
2021-08-01 21:27:45 -07:00
Matthew Berry
f31a0b72c9
fix blending when booting straight into game
2021-08-01 17:51:40 -07:00
Matthew Berry
719ca57c64
abstract shader implementation
2021-08-01 17:49:20 -07:00
Matthew Berry
9b0a5536b5
render crab start screen + lots of opengl changes
2021-08-01 15:14:11 -07:00
Matthew Berry
1d381e8ca8
change clear color + minor cleanup
2021-08-01 10:59:10 -07:00
Matthew Berry
2ed4868973
minor frontend cleanup
2021-07-31 16:16:33 -07:00
Matthew Berry
39f031adb5
add scheduler debug window
2021-07-21 22:13:10 -07:00
Matthew Berry
c9c5155333
refactor debugging windows
2021-07-21 20:19:36 -07:00
Matthew Berry
bf1154945b
abstract pause logic and interaction with vsync
2021-07-21 08:47:39 -07:00
Matthew Berry
e9a403fcf6
pausing: add shortcut, remove window, add titlebar messages
2021-07-21 08:39:01 -07:00
Matthew Berry
b86aabd8e0
redesign the structure of the menu bar
2021-07-20 21:29:12 -07:00
Matthew Berry
eefeeb6b63
flip event processing order so that keyboard events are processed first
2021-07-20 20:50:06 -07:00
Matthew Berry
e4e5ebda3b
rename event handlers
2021-07-20 20:48:45 -07:00
Matthew Berry
e02b31bcc7
cleanup exits
2021-07-20 20:28:22 -07:00
Matthew Berry
edd80c2ba1
bind exit to ctrl+q
2021-07-20 19:58:00 -07:00
Matthew Berry
119300b76c
add recent rom list in menu
2021-07-20 08:47:39 -07:00
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