diff options
| author | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-10-31 03:02:18 -0400 |
|---|---|---|
| committer | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-11-01 12:35:46 -0500 |
| commit | d5c8b1cbedffb7212fa05d4cae9fde631989d834 (patch) | |
| tree | 2fa2c086d43b8d55927c8745a799f843f47634fb /src/video_core/buffer_cache | |
| parent | 72a8b41fd5fb3a25868eed1b05ef26f91dea92df (diff) | |
nx2: give each vi2 event slot its own source
vi2 31 hands out one event per slot (index < 8, picked by the sdk from a
free bitmap), and 261..272 bind a slot to a display event source or unbind
it: 261 vsync; 263, 265, 267, 269 and 271 the refresh rate, HDR status, HDR
paper white, buffer max resolution and mode capability change
notifications. Every slot used to be a fresh 60 Hz vsync event and the bind
commands were auto stubs, so change events fired on every vblank and games
re-queried 103/104/105 every frame (Kirby Air Riders rebuilt its window
images whenever its HDR status event fired).
Slots now fire on vblank until bound; a change binding fires once and then
stays quiet, since nothing here changes. 32 carries a handle descriptor and
the client's handle before the index; it returns that slot's event (games
call it for the vsync slot, which title 1 waits on before its first frame).
Diffstat (limited to 'src/video_core/buffer_cache')
0 files changed, 0 insertions, 0 deletions
