Skip to content
This repository was archived by the owner on Apr 17, 2025. It is now read-only.

Commit f17f604

Browse files
authored
Merge pull request #454 from uejji/3.7_devel
steamfork-device-support 202504.12-1
2 parents 4ac0480 + f01917d commit f17f604

21 files changed

Lines changed: 100 additions & 51 deletions

File tree

PKGBUILD/steamfork-device-support/PKGBUILD

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Maintainer: Fewtarius
22

33
pkgname=steamfork-device-support
4-
pkgver=2025.04.11
4+
pkgver=2025.04.12
55
pkgrel=1
66
pkgdesc='Hardware support provider for PC handhelds.'
77
arch=('any')
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
-- GPD Pocket 4
2+
-- OneXPlayer X1 Mini
3+
4+
local panel_id = "hsx_wqxga_lcd"
5+
local panel_name = "HSX WQXGA LCD Panel"
6+
7+
local panel_models = {
8+
{ vendor = "HSX", model = "YHB03P24" },
9+
}
10+
11+
local panel_refresh_rates = { 60, 144 }
12+
13+
14+
gamescope.config.known_displays[panel_id] = {
15+
pretty_name = panel_name,
16+
17+
-- These tables are optional
18+
colorimetry = (panel_colorimetry ~= nil) and panel_colorimetry,
19+
dynamic_refresh_rates = (panel_refresh_rates ~= nil) and panel_refresh_rates,
20+
hdr = (panel_hdr ~= nil) and panel_hdr,
21+
22+
dynamic_modegen = function(base_mode, refresh)
23+
local mode = base_mode
24+
debug("["..panel_id.."] Switching mode to "..mode.hdisplay.."x"..mode.vdisplay.."@"..refresh.."Hz")
25+
26+
-- Override blanking intervals if defined
27+
if panel_resolutions ~= nil then
28+
for i, res in ipairs(panel_resolutions) do
29+
if res.width == mode.hdisplay and res.height == mode.vdisplay then
30+
31+
if res.hfp ~= nil and res.hsync ~= nil and res.hbp ~= nil then
32+
gamescope.modegen.set_h_timings(mode, set_res.hfp, set_res.hsync, set_res.hbp)
33+
debug("["..panel_id.."] Overriding horizontal blanking interval")
34+
end
35+
36+
if res.vfp ~= nil and res.vsync ~= nil and res.vbp ~= nil then
37+
gamescope.modegen.set_v_timings(mode, set_res.vfp, set_res.vsync, set_res.vbp)
38+
debug("["..panel_id.."] Overriding vertical blanking interval")
39+
end
40+
41+
-- No need to iterate anymore
42+
break
43+
end
44+
end
45+
end
46+
47+
mode.clock = gamescope.modegen.calc_max_clock(mode, refresh)
48+
mode.vrefresh = gamescope.modegen.calc_vrefresh(mode)
49+
50+
return mode
51+
end,
52+
53+
matches = function(display)
54+
for i, panel in ipairs(panel_models) do
55+
if panel.vendor == display.vendor and panel.model == display.model then
56+
debug("["..panel_id.."] Matched vendor: "..display.vendor.." model: "..display.model)
57+
return 4000
58+
end
59+
end
60+
61+
return -1
62+
end
63+
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
#!/bin/bash
2-
export X11_ROTATION=left
3-
export GAMESCOPE_RES="-w 1280 -h 800"
42
export GAMESCOPE_ADDITIONAL_OPTIONS="--force-orientation right"
3+
export GAMESCOPE_RES="-w 1280 -h 800"
4+
export X11_ROTATION="left"
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
#!/bin/bash
2-
export X11_ROTATION=left
3-
export GAMESCOPE_RES="-w 1280 -h 720"
42
export GAMESCOPE_ADDITIONAL_OPTIONS="--force-orientation left"
3+
export GAMESCOPE_RES="-w 1280 -h 720"
4+
export X11_ROTATION="left"
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
#!/bin/bash
2-
export X11_ROTATION=left
3-
export GAMESCOPE_RES="-W 1280 -H 720 -w 1280 -h 720"
42
export GAMESCOPE_ADDITIONAL_OPTIONS="--force-orientation left"
3+
export GAMESCOPE_RES="-W 1280 -H 720 -w 1280 -h 720"
4+
export X11_ROTATION="left"
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
#!/bin/bash
2-
export X11_ROTATION=right
3-
export GAMESCOPE_RES="-w 1280 -h 800"
42
export GAMESCOPE_ADDITIONAL_OPTIONS="--force-orientation right"
3+
export GAMESCOPE_RES="-w 1280 -h 800"
4+
export X11_ROTATION="right"
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#!/bin/bash
2-
export X11_ROTATION=inverted
3-
export GAMESCOPE_RES="-w 1280 -h 800"
42
export GAMESCOPE_ADDITIONAL_OPTIONS="--force-orientation upsidedown"
5-
export STEAMFORK_GRUB_ADDITIONAL_CMDLINEOPTIONS+=" module_blacklist=ayaneo_platform"
3+
export GAMESCOPE_RES="-w 1280 -h 800"
4+
export X11_ROTATION="inverted"
5+
export STEAMFORK_GRUB_ADDITIONAL_CMDLINEOPTIONS="${STEAMFORK_GRUB_ADDITIONAL_CMDLINEOPTIONS} module_blacklist=ayaneo_platform"
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
#!/bin/bash
2-
export X11_ROTATION=left
3-
export GAMESCOPE_RES="-w 1280 -h 800"
42
export GAMESCOPE_ADDITIONAL_OPTIONS="--force-orientation right"
3+
export GAMESCOPE_RES="-w 1280 -h 800"
4+
export X11_ROTATION="left"
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
#!/bin/bash
2-
export X11_ROTATION=left
3-
export GAMESCOPE_RES="-w 1280 -h 800"
42
export GAMESCOPE_ADDITIONAL_OPTIONS="--force-orientation right"
3+
export GAMESCOPE_RES="-w 1280 -h 800"
4+
export X11_ROTATION="left"
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
#!/bin/bash
2-
export X11_ROTATION=right
3-
export GAMESCOPE_RES="-w 1280 -h 800"
42
export GAMESCOPE_ADDITIONAL_OPTIONS="--force-orientation right"
3+
export GAMESCOPE_RES="-w 1280 -h 800"
4+
export X11_ROTATION="right"

0 commit comments

Comments
 (0)