itsmattkc
577405a92c
ci: try pushing images to registry instead of cache when done
2026-08-04 10:00:07 -07:00
itsmattkc
025f7ae77e
docker/buildroot: fix bug where DRM was disabled
2026-08-03 17:31:14 -07:00
itsmattkc
c008b9baf3
buildroot: add more 5GHz SoftMAC Wi-Fi drivers
...
Includes lwfinger/rtw88 and morrownr/rtw89
2026-08-02 01:25:43 -07:00
itsmattkc
c4572178b9
gui: define DRM_CAP_ATOMIC_ASYNC_PAGE_FLIP if not defined
2026-08-01 12:26:10 -07:00
itsmattkc
7aebe8f7e8
gui: fix keyboard control mapping
2026-08-01 09:06:55 -07:00
itsmattkc
063e3cba67
gui: add support for v4l2request hardware decoding (orange pi)
2026-07-29 21:33:50 -07:00
itsmattkc
dc28618301
buildroot: fix broken patch
2026-07-29 16:50:41 -07:00
itsmattkc
f2e354bfc7
ci/buildroot/docker: fix bug and introduce 2w build too
2026-07-29 13:34:23 -07:00
itsmattkc
463aed33bf
ci/buildroot/docker: build orange pi zero 3 image
2026-07-29 13:08:22 -07:00
itsmattkc
4482b77b83
gui: improve power state handler
...
Fixes bug where power state would be retrieved every frame, causing unnecessarily high power usage.
Also, don't send "unknown" power state so the Wii U doesn't nag the user about it.
2026-07-22 08:52:01 -07:00
itsmattkc
da70a4fca4
buildroot: improvements to rpi builds
2026-07-21 16:56:00 -07:00
itsmattkc
934494c0ad
gui: revert "h264" force
...
I thought this was necessary to force software decoding, but actually my Pi buildroot image just lacked the "h264" FFmpeg decoder component
2026-07-10 15:35:06 -07:00
itsmattkc
a989f233fd
Create latencytest.ts
2026-07-10 15:34:08 -07:00
itsmattkc
5e5b674ba7
gui: software decoding improvements
2026-07-10 10:26:50 -07:00
itsmattkc
724f80bd87
buildroot: add options for building pipe or gui
2026-06-18 00:01:17 -07:00
itsmattkc
91ab3a0ccd
buildroot: for switch build, save log to config dir
2026-06-04 08:59:35 -07:00
itsmattkc
853ffca471
docker: use correct mkimage path
2026-05-08 08:19:38 -07:00
itsmattkc
4b6b0e65c5
buildroot: use newer boot script for switch
...
Might be related to #386
2026-05-08 08:03:55 -07:00
itsmattkc
c516647bec
gui: improve menus
2026-05-07 11:06:36 -07:00
itsmattkc
f956b9c356
Squashed commit of the following:
...
commit 7cb57b109f0eeade821d080a31975631cc8d2e56
Merge: 4fd52e4 08a3466
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Wed May 6 18:10:14 2026 -0700
Merge branch 'master' into new-ci
commit 4fd52e44530f820d89e618e68181f40f4bc54c6c
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Wed May 6 18:09:59 2026 -0700
docker: update for new system
commit bd055a288e8c536ac606655096b831256a0a16b4
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Wed May 6 18:08:55 2026 -0700
Update platform_nx_imu.c
commit f8e4d62e84a9efcde2b0aa0f4c3e6f855f65f458
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Wed May 6 17:39:05 2026 -0700
gui: fix inverted gyroscope axis with nintendo switch
commit f679b7cd4ce75c0343f8da5f4e3810346c127f09
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Wed May 6 16:03:55 2026 -0700
ci: fix file path
commit 5b66a246ceded84267a03e960e2ec30b76f1f563
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Wed May 6 16:02:12 2026 -0700
ci: keep docker but incorporate buildroot build
commit 882a18aba5c41a1b00750f9e1e3d5b2f012bb8ba
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Wed May 6 14:01:16 2026 -0700
ci: sign APK in CI rather than docker
Simplifies process and improves security
commit a8d8567b1d3fc7f2cf86dc90ab316bda2beac4bb
Author: MattKC <34096995+itsmattkc@users.noreply.github.com >
Date: Tue May 5 13:29:45 2026 -0700
ci: stupid cache action can't handle a relative path
commit 1b248a9a3bf6ee8158e1ac3dda432600bace528a
Author: MattKC <34096995+itsmattkc@users.noreply.github.com >
Date: Tue May 5 12:17:24 2026 -0700
ci: actually provide path to cache
commit 01f4f4055665638e28a76cd916b4fd7f2678b49d
Author: MattKC <34096995+itsmattkc@users.noreply.github.com >
Date: Tue May 5 11:00:33 2026 -0700
Update build.yml
commit 83b1cefc156e1967f1eacfb53cdaf010f3ff7e11
Author: MattKC <34096995+itsmattkc@users.noreply.github.com >
Date: Tue May 5 10:58:46 2026 -0700
Rename vanilla_nx_defconfig to vanilla_nintendoswitch_defconfig
commit ef8899d88b403606cf6e4992037ee12d000f5d75
Author: MattKC <34096995+itsmattkc@users.noreply.github.com >
Date: Tue May 5 10:58:05 2026 -0700
Update build.yml [skip ci]
commit 1e3d9a3f54a49c0892aa6c3968a1206792f13008
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Tue May 5 09:55:25 2026 -0700
ci: found em
commit 23934ced2dc6555f3676b1078ed36475e9bd6a20
Author: MattKC <34096995+itsmattkc@users.noreply.github.com >
Date: Tue May 5 08:57:43 2026 -0700
ci: just list all the files so i can see where the image ended up
commit 1d597cd34b94ab8f14e44bac6559da3904743559
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Mon May 4 17:54:22 2026 -0700
ci: maybe fix path
commit 4bdcae22c5d9ff1fd863f7447c5d346a632a3667
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Mon May 4 16:57:18 2026 -0700
ci: fix path
commit 2be8b79c32ed42fdc0fbf12e012300e0b44501c8
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Mon May 4 16:55:49 2026 -0700
ci: fix missing defconfig
commit fe8990e2abd5b38839235b48a3870cfbbe0bdeb6
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Mon May 4 15:38:44 2026 -0700
ci: fix path
commit 8e19c7264297b5df37a127da151fe2d85767006c
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Mon May 4 15:19:05 2026 -0700
ci: fix path
commit 9a44bfa3cd36db8868b3f011c9af27e8729d5f93
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Mon May 4 15:01:20 2026 -0700
ci: split buildroot off
2026-05-06 21:16:17 -07:00
itsmattkc
dab6f4ee56
buildroot: fix missing openssl dep
2026-05-06 15:10:03 -07:00
itsmattkc
23345f7646
gui: hopefully fix nintendo switch gyros?
2026-05-06 13:20:45 -07:00
MattKC
0ff08205ee
docker: revert linux build to debian bookworm
2026-05-05 11:18:21 -07:00
MattKC
ccc7ddf57f
ui: restore region setting
2026-05-05 09:23:43 -07:00
itsmattkc
9f25935292
ci: fix mistake
2026-05-04 09:23:02 -07:00
itsmattkc
8f730cef7b
ci: try using docker/build-push-action to cache
2026-05-04 09:06:34 -07:00
itsmattkc
54e5451549
buildroot: fix incorrect ifeq
2026-04-29 21:52:16 -07:00
itsmattkc
5cf53b5bd4
ui: get accel/gyro working on switch build
2026-04-29 15:24:58 -07:00
itsmattkc
940f5ceadf
ui: fix audio issue that specifically affected switch distro
2026-04-29 02:07:51 -07:00
itsmattkc
b6cdb1abc0
gui: clear predefined console in nintendo switch config
2026-04-26 09:30:15 -07:00
itsmattkc
2d9efc2957
gui: add setting to disable hardware decoding
2026-04-24 23:56:32 -07:00
itsmattkc
263e3f9383
cmake: simplified FindLibNL
2026-04-24 23:40:41 -07:00
itsmattkc
49a05a2be3
ci/docker: add nintendo switch buildroot image
2026-04-24 23:39:45 -07:00
itsmattkc
9c44c4e4a8
gui: more nintendo switch improvements
2026-04-24 09:51:29 -07:00
itsmattkc
03a6af2230
gui: improvements for nintendo switch
2026-04-24 09:49:53 -07:00
itsmattkc
90a2199645
gui: fixed pipe management bug
2026-04-24 09:48:10 -07:00
itsmattkc
1fe20344e4
gui: improved settings menu layout logic
2026-04-24 09:47:53 -07:00
itsmattkc
a74d645d03
gui: update old comment
2026-04-08 10:43:58 -07:00
itsmattkc
3385180831
cmake: only enable polkit on linux
...
Other platforms will need something else (if even applicable)
2026-04-08 10:43:58 -07:00
itsmattkc
07292fe862
buildroot: more work for nintendo switch [skip ci]
2026-03-20 12:45:47 -07:00
itsmattkc
3ebff34a65
cmake/buildroot: add options for DRM and VAAPI
2026-03-20 12:43:28 -07:00
itsmattkc
6e52b5cfa0
ui: add config option for fastdrm
2026-03-20 12:39:50 -07:00
itsmattkc
c6e5461c68
ui: minor improvements to EGL detection
2026-03-20 12:38:36 -07:00
itsmattkc
df4345cfe6
ui: make "fast DRM mode" an option disabled by default
2026-03-20 12:37:40 -07:00
itsmattkc
e5c9be8847
buildroot: improve defconfigs for pi zero/zero2
2026-03-18 17:12:46 -07:00
itsmattkc
d9f16d4802
cmake: move most gui code into a library so it can be re-used by tests
...
This may break something, but we'll see what the CI says.
2026-03-18 17:12:46 -07:00
itsmattkc
d925c70d74
buildroot: set boot to quiet
2026-03-18 17:12:46 -07:00
itsmattkc
04c18c7513
docker: fix android signing issue
2026-02-21 16:54:31 -08:00
itsmattkc
666ec618ae
lib: removed vestigial function
2026-02-19 14:06:17 -08:00
itsmattkc
c862da28f0
pipe: call rfkill immediately
2026-02-19 13:55:10 -08:00
itsmattkc
b05ae8b3ab
lib: fixed input packet on windows
2026-02-19 13:53:08 -08:00
itsmattkc
57b4e71a1f
pipe: ensure "READY" is the first thing to print
2026-02-17 16:57:11 -08:00
itsmattkc
3986a6d6bd
Squashed commit of the following:
...
commit 4ac92fd946
Author: MattKC <34096995+itsmattkc@users.noreply.github.com >
Date: Mon Feb 16 16:50:00 2026 -0800
Call "rfkill unblock wlan" as part of wpa_supplicant initialization
2026-02-16 17:56:54 -08:00
itsmattkc
45a2dd2363
docker: on unsigned android builds, copy the apk into place
2026-02-16 17:55:39 -08:00
itsmattkc
b3f092b661
gui: start passive animation for "key_bindings_more" too
2026-02-16 00:27:12 -08:00
itsmattkc
eff55c0d20
gui: close pipe connection if pipe reports other than READY
2026-02-16 00:13:07 -08:00
itsmattkc
0519c7b151
docker: skip android signing if no key present
2026-02-15 23:47:44 -08:00
itsmattkc
1bec364c35
gui: add config entry for recording/screenshot dir
...
Fixes #339
2026-02-15 09:41:04 -08:00
itsmattkc
a161a2b9a4
pipe: fix regression where stack memory becomes freed while threads are using it
2026-02-15 09:28:50 -08:00
itsmattkc
f9e7318952
gui: add setting for showing cursor in full screen
...
Fixes #342 , though I guess we should add a gui option at some point.
2026-02-13 13:37:57 -08:00
itsmattkc
c62bbac9b0
cmake: fix vendored ffmpeg nvdec support
2026-01-16 13:11:49 -08:00
itsmattkc
eb808d64ce
docker/cmake: should fix builds
2026-01-16 10:53:23 -08:00
itsmattkc
07e04a8791
cmake: fix hardware decoders, probably
2026-01-16 10:19:33 -08:00
itsmattkc
cca4c50e8f
cmake: simpler vendored ffmpeg configure args
2026-01-16 09:26:12 -08:00
itsmattkc
8d311381b0
cmake: link with vdpau if cuda is enabled
2026-01-15 12:29:30 -08:00
itsmattkc
8cd2d1dbfb
docker: add non-free debian sources for CUDA libraries
2026-01-15 11:32:34 -08:00
itsmattkc
309b290264
docker: add CUDA toolkit to linux builds
2026-01-15 08:59:47 -08:00
itsmattkc
26ff1d0a84
ui: if no CUDA path to display, don't use CUDA
...
Even if the user has an NVIDIA card, if Vanilla hasn't been compiled with CUDA support it has no way of getting the frame onto the screen
2026-01-15 08:59:38 -08:00
itsmattkc
1e184bd62f
Squashed commit of the following:
...
commit f65e382f41f1b1976b92c64707d6f427ac39a7d6
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Thu Jan 15 08:21:28 2026 -0800
finished nvdec support
commit de1767d4eadd139a2d0a76bef6d8c34e81f9e4fe
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Wed Jan 14 19:49:17 2026 -0800
begin nvdec impl
2026-01-15 08:21:45 -08:00
itsmattkc
9aecca7943
ui: improve hardware decoder detection
2026-01-14 19:08:41 -08:00
itsmattkc
95b705a405
ui: more robust checks for EGL availability
...
SDL2 prefers GLX over EGL, however we require EGL to present VAAPI decoded frames to the screen, so we set a flag to force it over to EGL.
However some hardware (notably NVIDIA GPUs) do not provide EGL pathways. We must detect this and un-force EGL if so. However the un-forcing requires a little more work than expected. This code should work now.
2026-01-14 18:41:12 -08:00
itsmattkc
fde6e0d3f2
ui: add another audio buffer
...
Will reduce audio crackling at the expense of some latency
2026-01-14 16:15:30 -08:00
itsmattkc
edff4bb1c0
ui: use "Wii U" only for name of first synced console
...
Most users will only have a single Wii U, and it's kinda ugly for it to be called "Wii U 1". Default to "Wii U" for the first synced console, and subsequent consoles will be "Wii U 2", "Wii U 3", etc.
2026-01-14 16:15:14 -08:00
itsmattkc
8e2f86712a
ci: missed another thing
2026-01-01 13:29:24 -08:00
itsmattkc
d9061be0ed
ci: missed some changes
2025-12-31 00:43:01 -08:00
itsmattkc
c808e834de
ci/docker: add pi zero 2w build
2025-12-30 15:52:38 -08:00
itsmattkc
f50df6290d
pipe/gui: set unmanaged at app-level rather than connection-level
...
Rather than setting NetworkManager to "unmanage" the Wi-Fi interface every sync/connection, do it once when the pipe starts. This way, there won't be any awkward shuffling as the pipe goes from syncing to connecting.
2025-12-30 10:36:31 -08:00
itsmattkc
e5f09b092a
lib: create listen sockets AFTER connection
...
This may fix connectivity issues where the internal kernel device changes after it's unmanaged in NetworkManager and/or the backend is changed from iwd to wpa_supplicant
2025-12-30 10:16:32 -08:00
itsmattkc
c30d889f0c
pipe: fix last remaining CPU thrasher
2025-12-30 02:56:00 -08:00
itsmattkc
590a163ef2
gui: default fullscreen on
...
Once again, while not necessarily ideal for desktop usage, all of our main touch-based targets will benefit from this
2025-12-30 02:29:25 -08:00
itsmattkc
09c6de3b7e
gui: greatly improve and simplify audio output
...
Significantly reduces audio latency
2025-12-30 02:07:06 -08:00
itsmattkc
a7d9c626f2
gui: in main menu, create console buttons first
...
Fixes #295
2025-12-30 02:07:06 -08:00
itsmattkc
969db197fd
lib: add extra debugging line
...
May come in handy?
2025-12-30 02:07:06 -08:00
itsmattkc
72380441c5
gui: use a combination of the Steam Virtual Gamepad and Steam Deck controllers on the Steam Deck
...
The Steam Deck provides a "virtual gamepad" that it expects games to use, however the "virtual gamepad" doesn't provide direct access to the Steam Deck's gyroscopes. We can bypass it, but then Steam Deck users lose usability features like remapping (and Vanilla will continue to receive inputs in the background, which are usually cut off on the virtual gamepad, which can cause accidental clicks). To try to get the best of both worlds, we use a hybrid approach where we use the virtual gamepad for everything EXCEPT the gyros, and then use the direct hardware access JUST sfor the gyros.
2025-12-29 16:03:17 -08:00
itsmattkc
2a0045b4f6
gui: return to settings after connection, but retain callback functionality
2025-12-29 14:12:13 -08:00
itsmattkc
53384ee384
Revert "gui: on connection select, return to settings"
...
This reverts commit b116d6cabc .
2025-12-29 14:08:48 -08:00
itsmattkc
1f57c5262d
gui: null check polkit subject
...
Not sure why this would happen but probably worth doing either way
2025-12-29 12:32:13 -08:00
itsmattkc
fea81782a3
pipe: try to detect if DHCP failed due to disconnection
2025-12-29 12:04:13 -08:00
itsmattkc
7f793e8c52
gui: fix regression regarding disconnects
2025-12-29 10:57:23 -08:00
itsmattkc
b11a9b2c16
gui: in settings, rename "Gamepad" to "Controls"
2025-12-29 10:56:34 -08:00
itsmattkc
dfb31f430d
pipe: don't use fprintf for string without format [skip ci]
2025-12-29 10:44:54 -08:00
itsmattkc
50b218b257
ci: allow other builds to complete if one fails [skip ci]
2025-12-29 10:44:03 -08:00
itsmattkc
65e1178c0e
fix closing race condition
2025-12-29 10:04:42 -08:00
itsmattkc
573b240280
use borderless fullscreen
...
This will probably be a superior experience in most cases, though we should double check this looks right on the Raspberry Pi and Android builds
2025-12-29 08:56:24 -08:00
itsmattkc
a27ba0e646
disable windowing option on platforms that don't need it (e.g. raspberry pi, android)
2025-12-28 20:07:31 -08:00
itsmattkc
2388c419be
add fullscreen toggle
...
For desktop users, this should be a nicer user experience
2025-12-28 19:28:33 -08:00
itsmattkc
a73632aca6
Squashed commit of the following:
...
commit cdfb6f8bd07e1e44850167dcfe4bbe393d6d40bf
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Sun Dec 28 10:36:34 2025 -0800
add user setting for swapping AB/XY
commit b230c8e86baae91f733e67f97494ee18dbcb85d0
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com >
Date: Sun Dec 28 10:25:34 2025 -0800
start impl
2025-12-28 10:44:10 -08:00
itsmattkc
b116d6cabc
gui: on connection select, return to settings
2025-12-28 10:38:12 -08:00
itsmattkc
70e0854908
implement fallback if EGL on X11 is not available
2025-12-27 23:04:16 -08:00
itsmattkc
a1ab0e042f
print SDL_GetError on failure to create renderer
2025-12-27 11:38:02 -08:00