Commit Graph

1443 Commits

Author SHA1 Message Date
Alessandro Toia
1be907ed93 overlay: simplify window_size even more for !horizontal_stretch 2023-05-09 17:15:38 -07:00
FlightlessMango
3f8f036ee8 params: add cstdint header 2023-05-07 23:01:23 +02:00
Alessandro Toia
e77585d848 params: add missing bottom-center layout 2023-05-07 13:26:00 -07:00
Alessandro Toia
7b5c0a43c6 overlay: simplify window_size for !horizontal_stretch 2023-05-06 21:55:43 -07:00
Alessandro Toia
ed85504dec overlay: fix spacing when not using horizontal_stretch 2023-05-05 17:12:41 -07:00
Bill Li
9b0aec0540 nvml: Do not include header nvctrl.h if not build with xnvctrl support 2023-05-05 20:15:01 +02:00
Bill Li
2101090f00 nvml: Use #ifdef HAVE_XNVCTRL to check if xnvctrl is available 2023-05-05 20:15:01 +02:00
Alessandro Toia
3daf7d73b3 param: horizontal_stretch 2023-05-04 22:41:34 -07:00
FlightlessMango
2ffc579b7f config: add /etc/MangoHud.conf as an option
[skip ci]
2023-05-05 03:04:15 +02:00
FlightlessMango
6c46794496 cpu: core mhz: if scaling isn't available, use /proc/cpuinfo instead 2023-05-05 02:53:17 +02:00
FlightlessMango
b2c88c2dfd param: engine_short_names 2023-05-05 02:01:00 +02:00
FlightlessMango
cbf531e6c8 nvml: use xnvctrl if available to get fan speed 2023-05-05 01:48:43 +02:00
FlightlessMango
4161139597 amdgpu: run_thread default to true 2023-05-02 18:52:23 +02:00
FlightlessMango
e2711b8059 hud elements: fix gamescope graphs size 2023-05-01 13:58:35 +02:00
FlightlessMango
7853af98d0 mangoapp: amdgpu: pause the polling thread when it's not needed 2023-05-01 13:52:26 +02:00
FlightlessMango
9bc90493be amdgpu: reduce polling period 2023-04-29 22:31:47 +02:00
Alessandro Toia
98c9897430 Fix layout for core_load 2023-04-29 12:51:58 -07:00
Alessandro Toia
c534f33156 When using horizontal layout set table_columns param to current count of table_columns 2023-04-27 21:48:05 -07:00
Alessandro Toia
a45816b8e1 Replace TableNextColumn() with ImguiNextColumnFirstItem() and ImguiNextColumnOrNewRow() 2023-04-27 21:43:28 -07:00
FlightlessMango
f7a712110f intel: drm_dev use string instead 2023-04-27 11:59:00 +02:00
FlightlessMango
7ea1f33fa1 overlay: init_gpu: bring back checkNvidia 2023-04-27 09:31:02 +02:00
FlightlessMango
ddfc32211f overlay: removed unused include 2023-04-27 09:25:25 +02:00
FlightlessMango
20b729cca4 Overlay: intel drm: change printf to spdlog 2023-04-26 05:44:39 +02:00
FlightlessMango
38a1328536 Overlay: find the correct drm for intel 2023-04-26 05:26:54 +02:00
FlightlessMango
1d8f9f6601 hud_elements: fix gamescope debug graphs width
The width was not calculated the same way as in frame_timing.
Leading the graphs to occupy different amounts of space
2023-04-25 07:18:43 +02:00
jackun
95b7b44b6f
Nuke io_stats, io_read/write params are enough 2023-04-24 22:12:38 +03:00
jackun
e61321717e
[OpenGL] Use MESA_query_renderer if avail; GL "WSI" enum 2023-04-24 22:12:38 +03:00
Arvind Doobary
d41a74ca1a
Show amdgpu junction and memory temp, if available
Added config parameter `gpu_junction_temp` and `gpu_mem_temp`

Closes #841
2023-04-23 17:30:21 +03:00
FlightlessMango
1093de8c44 nvml: fan: get rpm instead of percentage 2023-04-23 07:27:22 +02:00
jackun
238a621c11
Use snprintf instead 2023-04-22 22:12:47 +03:00
FlightlessMango
c7ab967b92 Remove MANGOAPP ifdefs 2023-04-22 03:59:48 +02:00
FlightlessMango
83d265637e params: preset 4: add throttling 2023-04-22 03:59:28 +02:00
FlightlessMango
12b16247ce hud elements: gpu fan: add next col/row func 2023-04-22 03:59:08 +02:00
FlightlessMango
69e4b2d877 params: update preset 4 2023-04-22 00:02:21 +02:00
FlightlessMango
d99e48db5d hud elements: cpu_power and gpu_power: hide decimal above 3 digits 2023-04-21 23:56:15 +02:00
FlightlessMango
11bc5111eb mangoapp: move some variables to hudelements 2023-04-21 23:21:59 +02:00
FlightlessMango
8e4857a5c6 mangoapp: frame_timing: set height when not horizontal 2023-04-20 03:42:32 +02:00
FlightlessMango
7eea724f37 amdgpu: hwmon fan: fix typo 2023-04-20 03:14:08 +02:00
FlightlessMango
016728b450 nvctrl: fan speed 2023-04-20 03:10:21 +02:00
FlightlessMango
2df384cdd7 nvml: fan speed 2023-04-20 03:09:14 +02:00
FlightlessMango
5aec3d817b amdgpu: fan speed 2023-04-20 03:08:25 +02:00
FlightlessMango
4b69f23fb5 Add gpu_fan param and hwmon fan reading
Co-authored-by: Andreas Rachev <andreasratchev@gmail.com>
2023-04-20 03:07:39 +02:00
Alessandro Toia
78d99a6aab Fix exec_name overlapping with previous column when not in compact mode 2023-04-18 21:47:47 -07:00
FlightlessMango
7f945627f5 params: fix issue where env options were not applied 2023-04-18 00:31:55 +02:00
FlightlessMango
7225aaa628 parse_overlay_env: don't use sort_elements here 2023-04-18 00:19:05 +02:00
FlightlessMango
a67a6bc79d hud elements: exec_name: push the name one column over 2023-04-18 00:17:24 +02:00
FlightlessMango
034b378e10 hud elements: replace ImGuiTableSetColumnIndex with TableNextColumn 2023-04-16 22:28:46 +02:00
jackun
06edee4071
Revert "X11 keyboard poller thread"
This reverts commit 1055bc0c6c.

Needs some more time to bake. Too random if it works or not.
2023-04-16 20:02:34 +03:00
Atemu
39080290a2 blacklist: add SteamVR's vrcompositor
Limiting frame rate in vrcompositor has catastrohpic consequences and it's not
something the user will ever see the HUD on. Every SteamVR user with a global
frame rate limit has to explicitly blacklist vrcompositor, so it's better to
have this upstream.
2023-04-16 16:29:32 +02:00
Kira Bruneau
2918b6ef1b amdgpu: fix reading apu power & temperature 2023-04-16 03:32:49 +02:00
FlightlessMango
0a2b8a73ab Fix horizontal separator drawing in the wrong place 2023-04-16 03:24:21 +02:00
FlightlessMango
544589aa20 legacy_elements: don't add to functions vector unless it's enabled 2023-04-16 02:20:57 +02:00
FlightlessMango
8f79e9cef3 sampler: don't apply picmip unless it's set in config 2023-04-15 20:29:47 +02:00
Oliver Chang
a155c10df3 Add missing division for fallback AMD CPU power calculation. 2023-04-13 18:37:59 +02:00
FlightlessMango
05444cb021 gpu: amdgpuinfo: ifdef linux for windows build 2023-04-09 19:18:35 +02:00
FlightlessMango
b8bd09d638 More windows fixes 2023-04-09 19:06:46 +02:00
FlightlessMango
302fb6ad19 windows build: use mingw d3d12 headers instead of wine 2023-04-09 18:40:52 +02:00
FlightlessMango
c9d3a70a48 sampler: use instance params 2023-04-09 17:01:54 +02:00
Alessandro Toia
328df38ecc Remove not needed cerr 2023-04-06 22:43:09 -07:00
Alessandro Toia
4b2e78a9d7 vulkan: make sure to parse config before checking parameters 2023-04-06 22:41:53 -07:00
FlightlessMango
070fa1be84 presets: don't clear options when parsing 2023-04-06 09:53:02 +02:00
FlightlessMango
915a3babad Add preset param and allow for preset config 2023-04-06 08:35:44 +02:00
FlightlessMango
a6715b1bf6 Hud elements: Put frame_timing inside a child window to prevent it messing with the parent layout
Co-authored-by: Alessandro <gort818@gmail.com>
2023-04-06 07:44:21 +02:00
sfrcorne
020e8485e2 small fix for average cpu_power 2 2023-04-04 20:53:19 +02:00
sfrcorne
2187b9ef19 small fix for average cpu_power 2023-04-04 02:42:49 +02:00
sfrcorne
a98a402619 Fix for AMD Ryzen 7000 CPU when using the iGPU. 2023-04-04 02:42:49 +02:00
sfrcorne
cd74b27da2 Cleanup cpu.cpp and and support for gpu_metrics_v2_3 2023-04-04 02:42:49 +02:00
Emil Velikov
1b3f8b29bc meson: restrict most libMangoHud.so symbols
With the introduction of the static library, we forgot the version
script. As a result we were spilling all the internal symbols.

Fixes: d4aa74c ("Create static and shared libs separately")
Closes: https://github.com/flightlessmango/MangoHud/issues/933
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2023-04-03 02:21:42 +02:00
FlightlessMango
ce5e0683f0 Nearest filter param 2023-04-03 00:04:24 +02:00
FlightlessMango
4fb0bb328b Bicubic filtering param 2023-04-03 00:04:24 +02:00
FlightlessMango
de29e057de Trilinear filtering param 2023-04-03 00:04:24 +02:00
FlightlessMango
5fe07a0ac3 Anisotropic filtering param 2023-04-03 00:04:24 +02:00
FlightlessMango
9b9e6e7b68 Sampler hook and picmip param 2023-04-03 00:04:24 +02:00
Emil Velikov
80d394c0cd meson: make libMangoHud.so append_libdir_mangohud aware
The library does not honour the correct install location. Seems like it
was broken for a while and I didn't catch it with my recent rework...
Since all the scripts flip the default "true" to "false" 🤦

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2023-04-02 23:11:05 +02:00
FlightlessMango
c037a0cca7 amdgpu: add gpu_metrics_v2_3 2023-03-28 22:29:59 +02:00
FlightlessMango
d59375b0c9 amdgpu: add support for gpu_metrics_v2_3 2023-03-28 22:27:12 +02:00
FlightlessMango
22d374cc13 steam deck: fix fan speed 2023-03-28 21:47:09 +02:00
Leopard1907
1f841ef1a6 blacklist: Add Amazon client
Amazon Games App client needs this.
2023-03-28 02:59:05 +02:00
jackun
313abbe6a7
[OpenGL] Check GL_VENDOR too to determine GPU's vendor id
Try to fix #965
2023-03-27 19:27:04 +03:00
jackun
1055bc0c6c X11 keyboard poller thread 2023-03-20 03:53:53 +01:00
Hannes Mann
3cebc55a35 hud_elements: Show FPS limit method 2023-03-16 03:33:42 +01:00
Hannes Mann
e1f41bbb92 glx,egl,vulkan: Limit FPS early or late depending on config 2023-03-16 03:33:42 +01:00
Hannes Mann
f92c8b1b76 overlay_params: Add FPS limit method 2023-03-16 03:33:42 +01:00
Artem Polishchuk
d323752d0b build: Fix building with GCC 13 2023-03-14 21:54:37 +01:00
Emil Velikov
5c86369758 meson: explicitly annotate version.h as dependency
Currently we list the custom_target (aka vcs_tag() as part of the
sources. Although since it's not an explicit dependency meson/ninja are
free to compile the C/C++ files, before the file is generated.

Closes: https://github.com/flightlessmango/MangoHud/issues/862
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2023-03-13 21:56:18 +01:00
Emil Velikov
f47f777e26 meson: unwrap ld_libdir_mangohud handling, remove ld_libdir_abs
Currently we have ld_libdir_abs which defaults to false. In that case,
both the mangohud shell wrapper, as well as the json files, reference
the DSOs directly without any path component.

This means that at run-time the dynamic linker, vulkan loader as well as
pressure-vessel will need to jump through hoops and figure out the
bitness of the DSO, whether one wants the 32 or 64bit one and even then
there will be confusing messages like:

fatal: /usr/lib/libMangoHud.so: wrong ELF class: ELFCLASS32

When set to true, as seen in the in-tree build.sh we'll append empty
path to LD_LIBRARY_PATH (bad), the full path with the $LIB token will be
used with LD_PRELOAD (good) and json files (bad).

Since we are generating separate json files, we can use the actual path
(while $LIB currently works, it's not really strict json nor documented
as supported). We can also drop the dubious LD_LIBRARY_PATH manipulation

This basically reinstates the prepend_libdir_vk=true option that was
dropped earlier.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-13 21:53:27 +01:00
Emil Velikov
dd374d4c9e meson: remove prepend_libdir_vk option
The option is always true for all distributions that build Mangohud.
While only the in-tree PKGBUILD disables it for undocumented reasons.

In practise the option will be enabled across the board - in different
manner, with latter commit. But for now, just remove it.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-13 21:53:27 +01:00
Emil Velikov
491510d41c meson: produce per cpu_family json files
This will allow us to remove the $LIB from the json files and simplify
the related lib handling.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-13 21:53:27 +01:00
Emil Velikov
5d53d0dcc3 meson: inline PROJECT_NAME in mangohud.json.in
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-13 21:53:27 +01:00
Emil Velikov
def59db953 meson: remove ld_libdir_prefix option
The option defaults to false in-tree and across all distributions. The
only alleged use-case is the build.sh/build-srt.sh scripts. Although the
output of those scripts is absolutely identical with or w/o the flag.

Remove it.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-13 21:53:27 +01:00
FlightlessMango
06b46fd5d7 Fix building with mingw 2023-03-12 14:44:40 +01:00
FlightlessMango
c64ff84007 horizontal/compact layout fixes + battery_watt/battery_time params 2023-03-12 14:12:56 +01:00
FlightlessMango
47f822f19c mangohudctl: reload_config variable in msg sctruct 2023-03-12 14:12:56 +01:00
Emil Velikov
08c26d595f meson: do not pick system vulkan, when explicitly disabled
For this to actually work, we also need to set dep_vulkan for all users.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-12 14:08:42 +01:00
Emil Velikov
047bc2e7f7 tests: make it work aka hide HUDElements
Currently the test is pulling an external reference to HUDElements,
which is unresolved so the test fails to link.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-12 14:08:42 +01:00
FlightlessMango
d84c85609a overlay: position: bottom center 2023-03-11 19:55:24 +01:00
FlightlessMango
175493c89c horizontal: default to max width 2023-03-11 19:55:24 +01:00
FlightlessMango
8cf92ff8a6 overlay: horizontal_separator func 2023-03-11 19:55:24 +01:00
Alessandro Toia
3e136db6a8 gamepad: Change DS5 to DS4/5 as DS4 was added to hid_playstation in kernel 6.2 2023-03-07 16:12:14 -08:00
FlightlessMango
d0f8c8aa94 mangoapp: control: rerload_config option 2023-03-07 18:19:23 +01:00
Emil Velikov
221d335006 meson: remove mangoapp_32bit option
Was introduced as a means to shorten the build cycles. With the static
lib helper it should no longer be needed.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-04 22:23:35 +02:00
Emil Velikov
eecd451068 meson: build with -Werror=missing-declarations
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-04 21:40:56 +02:00
Emil Velikov
eecf901aed hud_elements: remove unused LinearToSRGB
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-04 21:40:56 +02:00
Emil Velikov
f1a86fe10f inject: drop unneeded declarations/function
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-04 21:40:56 +02:00
Emil Velikov
581b6b3375 meson: move util_files next to its user
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-04 21:40:56 +02:00
Emil Velikov
270beefdf3 meson: drop no_override_init_args
No longer needed

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-04 21:40:56 +02:00
Emil Velikov
ef169bd28b meson: remove unused MANGOAPP_LAYER define
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-04 21:31:25 +02:00
Emil Velikov
b714f54cd4 dbus: reshuffle HAVE_DBUS handling
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-04 21:31:25 +02:00
Emil Velikov
535c1f0a83 mangoapp: reshuffle ifdef MANGOAPP guards
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-04 21:31:25 +02:00
Emil Velikov
da219457e5 mangoapp: control.cpp -> control.c
There's nothing C++ in there, so rename the file appropriately.

While in there, use C99 initializers, annotate static functions as
such and pull the implicit stdbool.h.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-04 21:31:25 +02:00
Emil Velikov
8e1c389f22 mangoapp: split proto details into separate header
Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-04 21:31:25 +02:00
Emil Velikov
8a1c56ba25 meson: remove broken -Dwith_dlsym
The option does not even build, so let's remove it.

Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2023-03-04 21:17:28 +02:00
Alessandro Toia
7b255a8cbd blacklist: Add RSI Launcher.exe 2023-02-08 20:47:55 -08:00
FlightlessMango
3190778086 Don't update metrics if we're not logging and not displaying 2023-02-07 12:09:10 +01:00
FlightlessMango
475026a183 amdgpu: move defines to header 2023-02-07 07:27:30 +01:00
Alessandro Toia
87cc5c62fa vulkan: Remove unused VkPhysicalDeviceFeatures 2023-02-01 16:20:03 -08:00
Alessandro Toia
5d1877c2a3 Remove extraneous break 2023-02-01 16:18:50 -08:00
Kenton Groombridge
ffa7048543 vulkan: fix implicit instantiation of 'std::basic_stringstream<char>'
Add a missing include to fix the following build error seen with clang
15.0.7:

../MangoHud-0.6.8/src/vulkan.cpp:1523:22: error: implicit instantiation of undefined template 'std::basic_stringstream<char>'
   std::stringstream ss;
                     ^
/usr/include/c++/v1/iosfwd:146:32: note: template is declared here
    class _LIBCPP_TEMPLATE_VIS basic_stringstream;
2023-01-31 22:04:22 +01:00
FlightlessMango
8450291777 vulkan: Do not modify pCreateInfo in CreateDevice 2023-01-24 12:05:03 +01:00
FlightlessMango
302ceaa3e6 logging: flush after each write 2023-01-24 07:36:53 +01:00
FlightlessMango
25b170d480 logging: change frametime to float 2023-01-23 15:36:00 +01:00
FlightlessMango
d6c7b3c101 logging: write to file while logging 2023-01-23 15:16:17 +01:00
FlightlessMango
f883e2cba1 set log_interval to 0 by default 2023-01-23 15:16:17 +01:00
azn1999
f7a1cc159c Fix FPS limiter
Note: the egl limiter is already correct
2023-01-23 06:57:52 +01:00
Alessandro Toia
f6d980696d Fix not finding wine binary, with 64bit only wine 2023-01-19 18:50:45 -08:00
Alessandro Toia
f76527d14f Revert "Fix reporting temp of AMD zen4 CPUs"
This reverts commit edac405d57.
Didn't actually fix the issue oops
2023-01-19 18:32:59 -08:00
FlightlessMango
0ae106dba5 hud_elements: remove extra '}' 2023-01-20 03:21:21 +01:00
Echo J
ba7e2cb313 Logging: Switch to a different sleep function
This fixes a freeze with zink when automatic logging is enabled

I didn't test this on Windows, so please report any issues there
2023-01-20 03:13:21 +01:00
FlightlessMango
7c54ea819c params: exec_name: don't show unless enabled 2023-01-20 02:44:43 +01:00
FlightlessMango
99c72d30cf check for mangoapp_layer option for manifest 2023-01-19 00:45:56 +01:00
FlightlessMango
abb5359cdd Blacklist: add gamescope
Co-authored-by: Valters <valters.tomsons@protonmail.com>
2023-01-17 16:26:11 +01:00
Alessandro Toia
f7c3ec2072 Add redlauncher(CDPR) to blacklist 2023-01-15 11:49:56 -08:00
Alessandro Toia
edac405d57 Fix reporting temp of AMD zen4 CPUs, zen4 doesn't use Tdie, use Tctl instead 2023-01-15 11:48:47 -08:00
Bitwolf
a67ba60773 Blacklist GOG Galaxy 2.0
FPS counter appears in the client, it probably shouldn't.
2023-01-14 00:48:13 +01:00
FlightlessMango
d4aa74c149 Create static and shared libs separately 2023-01-11 09:09:33 +01:00
FlightlessMango
6f23cdeaf1 mangoapp: meson option to install lib32 2023-01-10 13:38:05 +01:00
FlightlessMango
03d64e5afb params: exec_name 2023-01-08 05:26:21 +01:00
Alessandro Toia
b2bcd889f0 Skip OpenGL impl if vulkan is loaded togther with zink or wined3d. 2023-01-06 21:55:33 -08:00
FlightlessMango
e3995ffcbf mangoapp: compile using static mangohud_library 2023-01-05 07:42:54 +01:00
Alessandro Toia
7b248efef7 Check if libvulkan is loaded when opengl is also loaded and skip opengl rendering
Fixes #866 #852 issues with zink and multiple games using DXVK that load OpenGL for some reason
2023-01-04 18:05:56 -08:00
Alessandro Toia
b61f83f522 Add lib_loaded function to check for current loaded libraries 2023-01-04 18:05:56 -08:00
Kurt Kartaltepe
1a3fa6e4ff overlay: Fixup device detection on intel GPUs
This resolves missing GPU names due to deviceID only being computed for
AMD gpus. It also filters out display adapters so there is less noise in
the logs when scanning cards.
2022-12-28 23:07:36 +01:00
FlightlessMango
7dee12a75a params: toggle_hud_position 2022-12-12 16:23:47 +01:00
FlightlessMango
61596104ce params: hud_compact default off 2022-12-12 16:02:01 +01:00
Alessandro Toia
5bf4091cdf Add window padding if hud_compact = 0 2022-12-11 15:02:03 -08:00
FlightlessMango
ddbb4f5be1 intel: use json for parsing intel_gpu_top output 2022-11-29 06:18:37 +01:00
FlightlessMango
f8ca49f627 allow for compact hud layout 2022-11-12 08:50:54 +01:00
FlightlessMango
e38413b2d8 use intel_gpu_top for gpu stats 2022-11-01 12:01:50 +01:00
Zebediah Figura
2f01d15690 Bind a zero pixel unpack buffer if necessary when uploading fonts texture 2022-10-29 11:41:59 +02:00
FlightlessMango
e6c5ff4a4b overlay.cpp: fixed renamed check metrics function 2022-10-27 03:45:17 +02:00
FlightlessMango
cb7d2a2447 amdgpu tests 2022-10-27 03:44:00 +02:00
Gustavo Parreira
96f72e2352 fix: Look for NAVI in device name for AMD GPUs 2022-10-15 19:15:50 +02:00
Vir Chaudhury
c670203a5b add logging for when the OpenGL context fails to initialize 2022-10-11 14:54:11 +02:00
Stephan Lachnit
b8b6d61b25 Build mangoapp and mangohudctl for any CPU architecture
On 32-bit-only machines, building these for the 32-bit architecture makes sense.

Signed-off-by: Simon McVittie <smcv@debian.org>
2022-10-11 14:41:47 +02:00
Deis Dupeyron
b46908bdbc src/battery.cpp: fix getTimeRemaining for energy_now 2022-10-11 14:37:20 +02:00
FlightlessMango
ebb0f969de params: don't enable hud_no_margin and log_versioning with full 2022-09-19 06:42:33 +02:00
FlightlessMango
a76e8a26f5 hud elements: battery: adjust remaining time for normal and horizontal view 2022-09-12 00:54:44 +02:00
FlightlessMango
57c4e4e6c2 increase width based on table_columns 2022-09-12 00:53:37 +02:00
FlightlessMango
bc89947df0 hud_elements: battery: don't show plug or watt in horizontal 2022-09-09 23:51:33 +02:00
FlightlessMango
4f49ffea7b frame_timing: minor adjustments for horizontal and mangoapp 2022-09-09 23:51:00 +02:00
FlightlessMango
3949c6c87f amdgpu: change cpu/gpu temps from max to avg 2022-09-09 22:51:00 +02:00
MasterDevX
99f0e4139c Add support for it8603 sensor 2022-09-09 21:14:12 +03:00
FlightlessMango
d0a1c4ea07 horizontal view and hud_no_margin 2022-09-05 13:50:27 +02:00
jackun
dcabe6b33f
Explicitly include array 2022-08-22 22:30:51 +03:00
jackun
021df9b932
env -u doesn't affect "piped" commands, use unset instead 2022-08-07 15:41:17 +03:00
jackun
a05dd84bf5
Don't use unsetenv in exec
Hopefully fixes #809
2022-08-07 14:18:35 +03:00
Alessandro Toia
08431a0221 Fix reporting amdgpu clock speed 2022-08-01 19:47:16 -07:00
FlightlessMango
5f43fcd121 logger: control: use hudelements 2022-08-01 02:07:59 +02:00
FlightlessMango
e9a7865a90 logger: reinit on config reload 2022-08-01 01:50:33 +02:00
tisim
732439b8e6 changing Logger class from struct pointer to 3 variables
removing commented line of code
2022-08-01 01:26:10 +02:00
jackun
85007fe0bd
Use separate font atlas for vulkan
vkCreateSwapchainKHR and vkQueuePresentKHR may share the same ImGui context accidentally and
vkCreateSwapchainKHR might (re)create font image and destroy old font atlas while vkQueuePresentKHR is still rendering :(
2022-07-29 02:11:28 +03:00
FlightlessMango
14dcd153ae control: send msg when log stops 2022-07-28 02:48:35 +02:00
FlightlessMango
ef4ace2e2a logging: versioning 2022-07-28 01:19:16 +02:00
Alessandro Toia
52c24afae9 Don't check for conf file if blacklisted 2022-07-26 12:28:10 -07:00
jackun
05133ae3cd
When pci_dev is set, don't skip AMD gpu if device id doesn't match 2022-07-17 20:28:27 +03:00
jackun
e132bb9268
Lower api minor version
Apparently too new of a version implicit layer might also not get loaded
2022-07-15 01:21:47 +03:00
jackun
e5d52c202e
Add meson install_tags, bump meson to 0.60 2022-07-14 17:36:49 +03:00
jackun
50720d2215
Install data files only if include_doc option is set 2022-07-14 15:32:05 +03:00
Stephan Lachnit
5709832576 Install MangoApp layer into libdir_mangohud
This makes the installation path adapt correctly to the value of
the append_libdir_mangohud option, which defaults to putting it in a
subdirectory ${libdir}/mangohud. Without this, the path in the JSON
manifest (which does respect append_libdir_mangohud) is inconsistent
with the actual location of the library.

Resolves: https://github.com/flightlessmango/MangoHud/issues/795
Co-authored-by: Simon McVittie <smcv@collabora.com>
2022-07-13 20:48:09 +03:00
jackun
c6bc257e11
Remove unnecessary row/column changes in HudElements::gpu_stats
Somehow missed these. Fixes f78107e6
2022-07-13 20:38:18 +03:00
jackun
032abbb031
Fix mangoapp frame time alignment 2022-07-13 20:31:44 +03:00
jackun
61716494c1
Check if data logger is valid 2022-07-13 19:23:24 +03:00
jackun
acfc62a434
Check if ImGui::BeginTable actually begun 2022-07-13 19:06:08 +03:00
FlightlessMango
421ca3b57b mangoapp: don't resize window if fps_only 2022-07-08 00:53:14 +02:00
Trigg
dfad000928 - Unsaved change from XA_ATOM to XA_CARDINAL 2022-07-08 00:22:47 +02:00
trigg
661cb205e4 Add and remove XAtom in gamescope mode 2022-07-08 00:22:47 +02:00
FlightlessMango
17f3ebb7bd mangoapp: unused previous_pid variable 2022-07-08 00:07:02 +02:00
FlightlessMango
4eb6c83d81 mangoapp: disable checking vulkan layer for now 2022-07-05 16:56:47 +02:00
Alessandro Toia
32cd485568 Remove uppercase MANGOHUD_LOG_LEVEL strings 2022-06-27 12:07:46 -07:00
Alessandro Toia
f0c3d123f5 Simplify MANGOHUD_LOG_LEVEL TO SPDLOG_LEVEL 2022-06-27 12:03:25 -07:00
Alessandro Toia
6e2e1d3967 Add check for valid log_level when using MANGOHUD_LOG_LEVEL 2022-06-26 17:25:19 -07:00
Alessandro Toia
c27de42465 use MANGOHUD_LOG_LEVEL env var to control SPDLOG_LEVEL 2022-06-26 11:51:47 -07:00
Alessandro Toia
5b44ef7d07 Convert printf to spdlog 2022-06-26 10:36:29 -07:00
Alessandro Toia
bab3529c74 If fps_only is enabled then disable legacy_layout 2022-06-23 17:15:31 -07:00
Alessandro Toia
ce53794d5f Blacklist: add StarCitizen_Launcher.exe and InsurgencyEAC.exe 2022-06-21 22:11:40 -07:00
jackun
0916dadea6
Convert some "printfs" to spdlog 2022-06-21 18:11:36 +03:00
Alessandro Toia
22abf62b76 Disable fcat when full is present in conf file 2022-06-18 16:59:54 -07:00
Alessandro Toia
3f15f2322f Disable fcat when using MANGOHUD_CONFIG=full 2022-06-18 16:48:30 -07:00
jackun
27c9863119
Set initial client socket handle to "invalid" value 2022-06-12 19:35:50 +03:00
Alessandro Toia
b699b16d2a gamepad: disable gamepad_battery_icon by default 2022-06-10 18:17:22 -07:00
jackun
a8a0a245e6
Bump layer api version 2022-05-28 14:38:49 +03:00
jackun
c19d37ab76
Temporary perma fix for vkQueueSubmit blocking on "used" semaphore when multiple swapchains are sent to vkQueuePresentKHR 2022-05-27 08:46:27 +03:00
jackun
f680c28f1f
Generalize control over socket so it works with OpenGL too 2022-05-23 18:07:39 +03:00
PMunkes
6a010d8eab Introduce FCAT overlay support
This introduces support to overlay FCAT markers on top of other HUD elements.
For more information about nVidia's FCAT tool see: https://nvidia.com/en-us/geforce/technologies/fcat/technology
This patch includes support for the existing parameter infrastructure and it is fully dynamic.

Squashed commit:

Refactor FCAT to use existing parameter handling infrastructure

With this patch the FCAT overlay should be hooked up into the normal
parameter handling infrastructure. This includes support for
configuration file options, which are also part of this commit.
2022-05-23 17:53:49 +03:00
FlightlessMango
f81369bd68 amdgpu: average gfx and cpu power as float 2022-05-19 07:40:27 +02:00
FlightlessMango
3184a44b96 Remove update_hw_info thread from log keybind 2022-05-18 02:45:11 +02:00
Alessandro Toia
a18cabb152 Move gamepad_update to update_hw_info 2022-05-16 16:13:46 -07:00
jackun
39ba57daa1
s/is/are/g 2022-05-16 13:16:45 +03:00
jackun
8a628e6a77
Rename GL files to avoid some confusion with upstream Dear ImGui files 2022-05-16 13:06:07 +03:00
jackun
3e6b35560c
Use overlay_new/end_frame with mangoapp 2022-05-16 11:06:23 +03:00
FlightlessMango
1447778fd4 amdgpu: improve polling perf by reading with c
Co-authored-by: Martin Roukala <martin.roukala@mupuf.org>
2022-05-16 09:01:13 +02:00
FlightlessMango
10e17b3153 Use Hudelements params in logging 2022-05-16 04:38:37 +02:00
jackun
b404fb948e
Set width by table_columns if not specified. Set "text" values to next column with no_small_text 2022-05-15 13:30:22 +03:00
jackun
753dd96325
Use overlay_new/end_frame to push/pop custom ImGui styles 2022-05-15 02:02:50 +03:00
jackun
f78107e662
Wrap columns to new row depending on table_columns param 2022-05-15 02:02:50 +03:00
jackun
85db56b36b
[dbus] Skip rendering MPRIS info if locking fails
D-Bus code gets randomly stuck for some reason.
2022-05-15 02:02:50 +03:00
jackun
f4cbb8b14b
When available (i.e. using vulkan), check vendor/device id and skip device if no match 2022-05-14 19:51:08 +03:00
jackun
ac7c898ba7
Use uint32_t for device id etc 2022-05-14 19:51:08 +03:00
jackun
d73932ad17
Clean up getAmdGpuInfo_actual 2022-05-14 19:50:57 +03:00
Alessandro Toia
9eb8447e14 Check if param gamepad_battery is enabled 2022-05-13 17:09:48 -07:00
FlightlessMango
3e57824f00 Fix zink detection from opengl path 2022-05-11 16:17:02 +02:00
FlightlessMango
5167e72649 gpu_metrics: send v1_0 to sysfs instead 2022-05-11 15:35:23 +02:00
jackun
bd2f7b24b8
Snapshot some paths so moving stuff around doesn't randomly break things 2022-05-10 19:05:36 +03:00
FlightlessMango
17d4c1dd4a amdgpu: use gtt_used for APUs 2022-05-10 15:39:08 +02:00
FlightlessMango
19fbd9bf9b Nvidia: only do throttling checks if enabled 2022-05-10 14:02:18 +02:00
FlightlessMango
5d6ebe2f38 Logging: use same data for benchmark and summary 2022-05-09 13:05:54 +02:00
FlightlessMango
6119fa80d1 mangoapp: layer: remove unused get_device_chain_info func 2022-05-06 10:30:50 +02:00
FlightlessMango
b30302c889 amdgpu: prefer hwmon over gpu_metrics for gpu temp
Co-authored-by: Martin Roukala <martin.roukala@mupuf.org>
2022-05-06 10:21:11 +02:00
FlightlessMango
bcf16a0def amdgpu: fixed incorrect gpu load for centipercent
Co-authored-by: Martin Roukala <martin.roukala@mupuf.org>
2022-05-06 10:20:04 +02:00
jackun
f0177703ea
Rename to frame_count for consistency 2022-05-04 07:14:46 +03:00
FlightlessMango
ec5952d834 amdgpu: changed clocks to average 2022-05-04 05:10:40 +02:00
FlightlessMango
8b7a1995a9 amdgpu: fix cpu temp and watt 2022-05-03 16:08:03 +02:00
FlightlessMango
f9cfdeb080 Add gpu throttling status
Co-authored-by: Martin Roukala <martin.roukala@mupuf.org>
2022-05-03 11:00:05 +02:00
FlightlessMango
ae85730448 Improve amdgpu polling
Co-authored-by: Martin Roukala <martin.roukala@mupuf.org>
2022-05-02 11:45:05 +02:00
FlightlessMango
350dca5d21 Dynamic width when fps_only 2022-04-26 18:57:37 +02:00
jackun
e4b23c937e
Deal with disappearing cpus
Reinit if cpu is brought offline/online, e.g. `echo 0 > /sys/devices/system/cpu/cpu1/online`

Fix #737
2022-04-25 10:29:15 +03:00
FlightlessMango
5349226fa5 amdgpu: average load over .5s 2022-04-23 16:34:35 +02:00
Alessandro Toia
06e3e9f663 Remove frametime when using fps_only param 2022-04-20 17:30:32 -07:00
FlightlessMango
4f9d870c72 fan: add some checks 2022-04-04 07:59:21 +02:00
FlightlessMango
66876b79f5 fix typo in fan element 2022-04-04 07:40:22 +02:00
FlightlessMango
65e70c9cfb fan param 2022-04-04 07:07:31 +02:00
jackun
425b98ae9a
[dbus] Fix trying to deinit non-active service(s)
Also, don't log with spdlog. It's already dead by then probably.
2022-04-02 00:52:45 +03:00
jackun
1f90b0b2aa
Revert "overlay: remove HUDElements.params setter"
This reverts commit 14ddc9563f.

HUDElements.params gets stale. Needs a proper fix though.
2022-04-01 21:51:18 +03:00
jackun
3ee1048acf Check if amdgpu gpu_metrics can be read and do some sanity-checks 2022-03-31 09:04:11 +03:00
Emil Velikov
e50a969586
hud_elements: one assignment per line
Stay consistent with the rest of the project.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2022-03-30 10:20:29 +03:00
Emil Velikov
14ddc9563f
overlay: remove HUDElements.params setter
HUDElements.params is already set in the parse_overlay_config() call
before we even get here.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2022-03-30 10:20:29 +03:00
Emil Velikov
1dfb14da47
overlay_params: make parse_overlay_env() static
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2022-03-30 10:20:29 +03:00
Emil Velikov
6f85e388e5
overlay_params: mutate log_interval just after parsing
Currently we mutate the log_interval (if mangoapp is built), within the
logger itself. Move that to parse_overlay_config() where the actual
value is being parsed/set.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2022-03-30 10:20:29 +03:00
Emil Velikov
2b7db32f54
Const annotate overlay_params& across the board
Most of the API does not modify it, so annotate it as const.
This makes it earlier to reason what's happening.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2022-03-30 10:20:27 +03:00
Emil Velikov
f8e9ecb9fe
overlay: remove unused calculate_benchmark_data() declaration
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2022-03-30 10:18:46 +03:00