Commit Graph

1481 Commits

Author SHA1 Message Date
tGecko
4ce95e55e0
add log type to log file (#1260) 2024-10-06 14:53:53 +03:00
fireph
351e4861ca
Working touchpad support (#1257)
* Working touchpad support

Tested on PS5 controller plugged in via USB.

* fix lint
2024-10-06 13:00:35 +03:00
nishinji
2fd4861d3e
CI: Build outside the main branch (#1239) 2024-10-06 02:26:19 +03:00
squidbus
60092ce849
vulkan: Use view of null buffer for texel buffers if nullDescriptor not supported. (#1231) 2024-10-06 02:25:12 +03:00
squidbus
2a7d56dbf2
shader_recompiler: Remove outdated image array warning. (#1256) 2024-10-06 01:42:58 +03:00
psucien
927bb0c175
Initial support of Geometry shaders (#1244)
* video_core: initial GS support

* fix for components mapping; missing prim type
2024-10-06 01:26:50 +03:00
squidbus
5bb45dc7ba
vulkan: Respect maximum sampler LOD bias. (#1254) 2024-10-06 01:05:24 +03:00
squidbus
8576d5e72c
shader_recompiler: Set array size to max UBO size when 0. (#1251)
* shader_recompiler: Set array size to max UBO size when 0.

* vulkan: Account for fallbacks when setting depth attachment format.
2024-10-05 22:31:52 +03:00
squidbus
ee57c2fd69
vulkan: Fix two more validation errors. (#1250) 2024-10-05 21:35:02 +03:00
¥IGA
1dabea7514
Fix a Qt warning (#1249) 2024-10-05 21:34:53 +03:00
ElBread3
2b8c2ce423
Fix list sorting for some categories (#1242)
* fix list sorting for serial, firmware version, and game size

* bad apple!!

* qol
2024-10-05 21:34:38 +03:00
Vinicius Rangel
a5968b630d
imgui: fix blocking keyboard at startup (#1237)
* imgui: dont capture any input without an active nav window

fix keyboard not being available as soon as the emulator opens

* imgui: cleanup renderer assigning unnecessary sType to vulkan structures
2024-10-04 19:06:08 +03:00
Mahmoud Adel
76644a0169
add Opcodes to switch case (#1233)
* add Opcodes to switch case

Added Opcodes to switch case, they were done here but weren't added to switch 9f79764b01 (diff-9a6c2e2027c03231e88aaaab30908baecae202661839f35c31a777fec2500c7aR659)

* clang
2024-10-04 11:24:45 +03:00
tGecko
ec6579cb4f
Hide cursor on key/button press (#1211) 2024-10-04 08:49:18 +02:00
korenkonder
9f79764b01
Add various V_CVT opcodes (#1223) 2024-10-04 08:48:05 +02:00
squidbus
be411b37d4
vulkan: Fix dynamic vertex binding stride validation errors. (#1229) 2024-10-04 07:51:08 +03:00
Vinicius Rangel
49ceff71a2
Devtools fixes1 (#1228)
* imgui: fix nav with dock & fps display disabled by default

* devtools: change basic fps scale

* imgui: scale font with display dpi
2024-10-04 06:44:36 +03:00
korenkonder
da519f9091
Moved opcode to it's proper location (#1221) 2024-10-03 22:47:26 +02:00
Vinicius Rangel
af398e3684
Devtools: PM4 Explorer (#1094)
* Devtools: Pause system

* Devtools: pm4 viewer

- new menu bar
- refactored video_info layer
- dump & inspect pm4 packets
- removed dumpPM4 config
- renamed System to DebugState
- add docking space
- simple video info constrained to window size

* Devtools: pm4 viewer - add combo to select the queue

* Devtools: pm4 viewer - add hex editor

* Devtools: pm4 viewer - dump current cmd

* add monospaced font to devtools

* Devtools: pm4 viewer - use spec op name

avoid some allocations
2024-10-03 22:43:23 +02:00
¥IGA
009f956d8d
imgui: Makes the window edges rounded (#1143) 2024-10-03 19:28:41 +02:00
ElBread3
ff13aff862
video_core: IMAGEGATHER4_C_O (#1210) 2024-10-03 18:48:54 +02:00
dbz400
54dafce541
Add V_CVT_F64_I32 (#1219) 2024-10-03 18:48:28 +02:00
Daniel R.
5e26294e27
video_core: disable warnings on vulkan 2024-10-03 16:57:33 +02:00
georgemoralis
ed24632ceb
Fix some network,npmanager issues (#1215)
* improved np toolkit callbacks

* added ExecuteGuest in callback

* clang format
2024-10-03 14:03:26 +03:00
squidbus
7209b7d786
shader_recompiler: Shader param fixups (#1199) 2024-10-03 10:50:51 +03:00
squidbus
1a34c2a189
core: Fix some missing uses of ExecuteGuest. (#1214) 2024-10-03 08:38:24 +03:00
squidbus
388d717205
audio_core: Fix return value types and shift some error handling to library. (#1212) 2024-10-03 07:01:39 +03:00
Mikasa-san
7e533ccf50
Refactor audio handling with range checks, buffer threshold, and lock… (#1200)
* Refactor audio handling with range checks, buffer threshold, and lock fixes

- Added range checks for handle to avoid invalid index access in AudioOutOutput, AudioOutSetVolume, and AudioOutGetStatus.
- Added a constant AUDIO_STREAM_BUFFER_THRESHOLD for the buffer threshold (was previously a magic number).
- Set the freq parameter correctly in the SDL_AudioSpec structure in AudioOutOpen.
- Fixed locking issues in AudioOutOutput to avoid unlocking before it's locked.

* Refactor audio handling with range checks, buffer threshold, and lock fixes

- Added range checks for handle to avoid invalid index access in AudioOutOutput, AudioOutSetVolume, and AudioOutGetStatus.

- Added a constant AUDIO_STREAM_BUFFER_THRESHOLD for the buffer threshold (was previously a magic number).

- Set the freq parameter correctly in the SDL_AudioSpec structure in AudioOutOpen.

- Fixed locking issues in AudioOutOutput to avoid unlocking before it's locked.

- Removed tab spaces to fix format clang error
2024-10-02 18:34:16 +03:00
tGecko
93317911eb
fix music playing when it shouldn't (#1203) 2024-10-02 18:33:36 +03:00
CrazyBloo
394b7fa671
replace trophy xml error with assert (#1197) 2024-10-02 12:31:55 +03:00
Paris Oplopoios
d20efcb0d2
Some nits and fixes on paths (#1190)
* Some nits and fixes

* More path conversions

* Add some more logging

* Log the path too
2024-10-02 07:18:00 +03:00
Vinicius Rangel
ee1e55d5e1
SaveData: implement sceSaveDataTransferringMount (#1191)
* SaveData: fix icon overriding

* SaveData: implement sceSaveDataTransferringMount
2024-10-02 06:38:18 +03:00
CrazyBloo
61f750bdd9
trp data extracts to game_data/serial instead of folder name (#1194)
* trp data extracts to game_data/serial instead of folder name

* format
2024-10-02 06:37:43 +03:00
squidbus
e68774d449
shader_recompiler: Define fragment output type based on number format. (#1097)
* shader_recompiler: Define fragment output type based on number format.

* shader_recompiler: Fix GetAttribute SPIR-V output type.

* shader_recompiler: Don't bitcast on SetAttribute unless integer target.
2024-10-01 23:42:37 +03:00
squidbus
75adf7c8d1
vulkan: Fix some common validation errors. (#1101)
* vulkan: Fix some extension support related validation errors.

* vulkan: Fix validation error on zero-size buffer.

* vulkan: Fix primitive list restart validation error.
2024-10-01 23:42:20 +03:00
CrazyBloo
65f72372f0
trophy icon + platinum fixes (#1093)
* trophy icon + platinum fixes

cleaned up some parts too

* format

* implement turtles review

* use fs native where possible, clang format

* implement vinicius suggestions

* format

* final reviews

* mutex for trophy queue, remove unneeded field

* format
2024-10-01 23:39:43 +03:00
Vladislav Mikhalin
7d96c9d634
Use correct scissor rects (#1146)
* WIP

* Proper combination of scissors

* convert static functions to lambdas
2024-10-01 21:42:01 +03:00
squidbus
3dea1a9f81
qt: Create addons directory if it does not exist. (#1186) 2024-10-01 20:11:41 +03:00
DanielSvoboda
3a36615da7
sort menu (#1183) 2024-10-01 18:02:47 +03:00
squidbus
e4c8626806
qt: Fix message box for game overwrite. (#1181) 2024-10-01 15:49:30 +03:00
squidbus
bf3e43b016
vulkan: Use dynamic vertex buffer strides when dynamic bindings unavailable. (#1164) 2024-10-01 09:54:06 +03:00
ElBread3
82c7c6aed1
add mappings for kernel versions (#1171) 2024-10-01 09:16:15 +03:00
squidbus
7084fc4c41
config: Add option to change DLC install path. (#1176) 2024-10-01 07:54:15 +03:00
DanielSvoboda
dda5cc411f
fix wolf2022 cheats download (#1173) 2024-10-01 07:53:20 +03:00
bigol83
348da93ee6
Fix BB random fmv hang (#1170) 2024-09-30 19:20:57 +03:00
Paris Oplopoios
cda2317ddb
Fix loading (#1169) 2024-09-30 19:05:55 +03:00
ElBread3
603f709784
Added sceKernelRmdir (#1137)
* add sceKernelRmdir

* since result is remove count, probably don't use that

* fixes + posix_rmdir

* fix return value problem
2024-09-30 14:25:25 +03:00
hspir404
fc6c755e5a
Fix some typos (#1161) 2024-09-30 14:24:28 +03:00
Paris Oplopoios
cbbf3505e7
Fix path bugs & wrap seeks in an if (#1154)
* Fix path bugs

* Wrap most seeks in an if
2024-09-30 12:42:59 +03:00
dbz400
c7ff0419ad
Fix V_CMP_CLASS_F32 (#1153) 2024-09-30 11:36:26 +03:00
squidbus
398019867b
sdl: Fix use of functions that now return SDL_bool (#1160) 2024-09-30 06:47:55 +03:00
Paris Oplopoios
d9f287eaa2
Fix fmt error (#1150) 2024-09-29 14:02:46 +02:00
Daniel R.
80bf46da4c
core/memory: Pooled memory implementation (#1085) 2024-09-29 10:28:41 +03:00
squidbus
5e98a3e1d8
vulkan: Fix crash when resizing window. (#1142) 2024-09-29 08:25:44 +03:00
DanielSvoboda
40d00e3066
progressBar DownloadUpdate (#1141) 2024-09-29 08:24:21 +03:00
DanielSvoboda
a4168150ed
+ tr (#1136) 2024-09-29 00:01:35 +03:00
¥IGA
36271b9cdf
Best icons for flags (#1133) 2024-09-28 21:49:48 +03:00
tGecko
dc96338c2e
Improve keyboard navigation in game list (#1132)
* Improve keyboard navigation

* don't start game in elf viewer mode or gridview mode with empty item selected

* fix eventFilter return
2024-09-28 21:04:47 +03:00
tGecko
7b5d66e5c1
Add volume slider for title/background music (#1130)
* add volume slider

* add translations

* stop music when checkbox unchecked

* remove GUI build command args

* combine functions

* add accidentaly removed copyright and licencing information
(thanks QT Designer)
2024-09-28 19:54:28 +03:00
Yury
1dd2e46fce
ru_RU translation fixes (#1118) 2024-09-28 19:53:42 +03:00
DanielSvoboda
4e4f3d7504
menu description | rename: Release/Nightly (#1116)
* menu description

* improve texts

* TR

* Release_Nightly
2024-09-28 16:01:27 +03:00
Paris Oplopoios
65bd62e98b
Reduce assert to a warning (#1115) 2024-09-28 15:44:07 +03:00
squidbus
7476287649
kernel: Quiet sceKernelWaitEventFlag error log on timeout. (#1120) 2024-09-28 09:38:42 +02:00
DanielSvoboda
651ab4c62c
add translation options music (#1111)
* add translation options music

* +
2024-09-27 18:15:56 +03:00
IndecisiveTurtle
ebebafed64 hotfix2: Actually fix errors
Ahhhh
2024-09-27 03:21:08 +03:00
IndecisiveTurtle
cf342e7a4b hotfix: descriptor set lifetime fix 2024-09-27 02:56:50 +03:00
squidbus
50fc5e339d
liverpool_to_vk: Add MRT feature flags to supported number formats. (#1087) 2024-09-27 01:57:22 +03:00
Paris Oplopoios
c73fad6772
Error reporting on failed memory allocation (#1091)
* Error reporting on failed memory allocation

* Formatting
2024-09-27 01:56:59 +03:00
Paris Oplopoios
eef0e6fc63
Fix build on GCC (#1080)
* Fix build on GCC

* Yes thank you clang-format

* Just remove static
2024-09-26 20:39:55 +03:00
georgemoralis
23f4b304b8 hot fix of the hot fix (again) 2024-09-26 18:24:05 +03:00
georgemoralis
0b7126e3be hot-fix: check if path is empty 2024-09-26 18:14:25 +03:00
DanielSvoboda
675fd4b31a
fix translation (#1083)
Changed from checkUpdate.cpp to check_update.cpp

Removed this part, as the function that used it no longer exists:

<details>
<summary><strong>See removed text</strong></summary>

```ts
		<message>
			<location filename="../checkUpdate.cpp" line="352"/>
			<source>Failed to open the ZIP file</source>
			<translation>Failed to open the ZIP file</translation>
		</message>

			<location filename="../checkUpdate.cpp" line="420"/>
			<source>File name is empty. Possibly corrupted ZIP.</source>
			<translation>File name is empty. Possibly corrupted ZIP.</translation>
		</message>
		<message>
			<location filename="../checkUpdate.cpp" line="445"/>
			<source>Failed to create directory</source>
			<translation>Failed to create directory</translation>
		</message>
		<message>
			<location filename="../checkUpdate.cpp" line="464"/>
			<source>Error decompressing file</source>
			<translation>Error decompressing file</translation>
		</message>
		<message>
			<location filename="../checkUpdate.cpp" line="487"/>
			<source>Failed to open output file</source>
			<translation>Failed to open output file</translation>
		</message>
		<message>
			<location filename="../checkUpdate.cpp" line="497"/>
			<source>Unsupported compression method for file:</source>
			<translation>Unsupported compression method for file:</translation>
		</message>
		<message>
			<location filename="../checkUpdate.cpp" line="510"/>
			<source>Failed to create TAR extraction directory</source>
			<translation>Failed to create TAR extraction directory</translation>
		</message>
		<message>
			<location filename="../checkUpdate.cpp" line="525"/>
			<source>Failed to extract the TAR file</source>
			<translation>Failed to extract the TAR file</translation>
		</message>
```

</details>

And it was standardized, all files with the correct formatting.
2024-09-26 17:30:07 +03:00
Vinicius Rangel
b7e2903911
Fix fmt::UTF exception for empty strings (#1084) 2024-09-26 17:21:31 +03:00
Paris Oplopoios
6295d6c416
Use fs::path::native whenever possible, avoid unnecessary fs->string conversions in GUI code (#1064)
* Use filesystem::path whenever possible, remove fs::path::string

* My hatred for Windows grows with every passing day

* More Qt stuff

* custom u8string formatter for fmt library

* Use u8string for imgui

* Fix toml errors hopefully

* Fix not printing issue

* Oh and on SDL

* I hate Windows even more today

* fix toml reading utf-8 paths

also small fix for fmt::UTF

* Formatting

* Fix QT path to run games

* Fix path logging in save data

* Fix trophy path handling

* Update game_list_frame.cpp

fixed snd0path

* Update main_window.cpp

fix snd0path

* Update main_window.cpp

* paths finally fixed

* git info in WIP versions title

---------

Co-authored-by: Vinicius Rangel <me@viniciusrangel.dev>
Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
2024-09-26 11:41:59 +03:00
tGecko
54e2179337
Add playback of background/title music in game list (#1033)
* add playback of background/title music

* clang_format

* add windows multimedia build instructions

* fix typo accidentally made to arm

* address comments

* loop music

* feedback

* fix CI

* add newline

* playBGM off by default

---------

Co-authored-by: Charles <charles@superfocus.ai>
2024-09-26 09:12:41 +03:00
Vinicius Rangel
ddb82a690b
Save lib fixes III (#1069)
* SaveDataMemory: increase memory if needed

* SaveDataDialog: fix intention to hide save details
2024-09-26 07:56:38 +03:00
RDN000
e67c10de01
Update sq translation (#1076) 2024-09-26 07:54:57 +03:00
psucien
6a70d08043 hot-fix: missing clear-to-blit (WAW) image barrier 2024-09-25 23:07:38 +02:00
oltolm
5a4d5b9f31
use ComPtr in gui_context_menus.h (#719)
* use ComPtr in gui_context_menus.h

* fix pragma diagnostic

* fix compiler warnings
2024-09-25 18:39:04 +03:00
squidbus
45e206e248
shader_recompiler: Sample images using correct result type. (#1068) 2024-09-25 14:20:28 +03:00
squidbus
11c155d0f1
amdgpu: Fix buffer comparison by naming padding fields for initialization. (#1050) 2024-09-25 14:08:10 +03:00
squidbus
f657ab3cc6
vulkan: Only reduce viewport minDepth if using depth clip control. (#969) 2024-09-25 12:43:54 +03:00
Lander Gallastegi
a984d44fd3
Swapchain recreation and window resizing (#933)
* Always present acquired swapchain images

Always present acquired swapchain images in order to be able to acquire them again.

fix #865

* Recreate swapchain if window is resized

* Respect aspect ratio when blitting to frame

* Make SDL window resizable

* clang-format

* designator order (building with gcc)

Fix /shadPS4/src/video_core/renderer_vulkan/vk_instance.cpp:314:9: error: designator order for field ‘vk::PhysicalDeviceVulkan12Features::samplerMirrorClampToEdge’ does not match declaration order in ‘vk::PhysicalDeviceVulkan12Features’

* Clear frame before blitting

* clang-format

* Revert "designator order (building with gcc)"

There already is a PR opened for this.

This reverts commit 7f8ccf4b1e.
2024-09-25 12:43:08 +03:00
tGecko
1ec8f34a99
Add nullptr check in scePthreadSetprio function (#1028) 2024-09-25 12:20:03 +03:00
squidbus
b2de662d67
vulkan: Enable VULKAN_HPP_NO_EXCEPTIONS broadly. (#995)
* vulkan: Enable VULKAN_HPP_NO_EXCEPTIONS broadly.

* vulkan: Use structured bindings for result where possible.
2024-09-25 12:19:38 +03:00
squidbus
36ef61908d
renderer_vulkan: Refactor surface and depth format mapping. (#1067)
* renderer_vulkan: Refactor surface and depth format mapping.

* image: Convert usage to feature flags for format support checks.
2024-09-25 12:10:44 +03:00
Vinicius Rangel
cc99f52606
Error dialog implementation (#1062) 2024-09-25 06:48:27 +03:00
DanielSvoboda
f79da986e3
Auto Update (#1006)
* Updater

* clang

* Adding Updater icon

* Updater

* TR

* settings_dialog.ui

* Changelog for Pre-release only

* Adding Dump and Download icons

* Forgot this...

* fix linux and resize

* powershell_unzip | changelog fix

Does not use zlin-ng to unpack, now uses powershell on windows and on linux/mac uses unzip or 7z, and if it does not find it, it will ask if you want to install it before extracting.

Do not show the changelog button if: The current version is a pre-release and the version to be downloaded is a release.

* Clang

* formatting

* links fixed

---------

Co-authored-by: Xphalnos <164882787+Xphalnos@users.noreply.github.com>
2024-09-24 23:03:15 +03:00
Daniel R.
19cb4ec05d
clang-format 2024-09-24 21:27:29 +02:00
Daniel R.
3f12fb0c91
core/libraries: implement configurable username 2024-09-24 21:23:18 +02:00
jnack
beb809b612
add V_CMPX_LE_I32 (#1056) 2024-09-24 18:22:31 +03:00
Paris Oplopoios
6da67645e9
Fixup designator order (#1039) 2024-09-24 17:18:35 +03:00
Paris Oplopoios
23bf8bf5e7
Patch insertq (#635)
* Patch `insertq`

* Don't clobber flags, fix asserts a bit

* Format code

* Fixup some edge cases

* A couple nits

* Remove extraneous space
2024-09-24 17:03:32 +03:00
baggins183
7f9bc0abbd
fix lane inst decoding (#1051) 2024-09-24 12:29:57 +03:00
Vinicius Rangel
1620eea37b
Save data: fix nullptr & concurrent file write (#1049)
* Save data: fix nullptr & concurrency file write

* Save data memory: fix overriding icon
2024-09-24 06:50:18 +03:00
squidbus
4ba19a02b0
core: Add wrapper for calling into guest code. (#967) 2024-09-23 20:30:16 +03:00
Daniel R.
8c8a6ccddd
core/memory: Fix sceKernelMTypeProtect setting VMA type (#1037)
* I hate programming and will furiously smash my monitor if I ever see another oversight of this caliber ever again in my goddamn life

* Merge both protect functions together
2024-09-23 18:49:57 +02:00
Paris Oplopoios
5799091044
Patch extrq (#943)
* Use a singleton for instruction decoding

* Use singleton class

* Patch `EXTRQ`

* Fixup signal context functions

* Update CMakeLists.txt

---------

Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
2024-09-23 19:19:52 +03:00
Vinicius Rangel
5a8e8f5936
Frame graph + Precise 60 fps timing (#998)
* video info: add frame graph

Toggle advanced info with CTRL+F10.
Also fixed imgui using gamepad for nav in wrong situations

* 60fps!

Implemented a timer that accumulates the time spent sleeping and sleeps for the remaining time.
Also measure entire PresentThread time instead of just the time spent in Flip.

* sceKernelGettimeofday: replace chrono by win32 api. Better performance

bb uses this function too much. Consuming almost 30% of cpu time
2024-09-23 18:43:51 +03:00
georgemoralis
a016792371 starting 0.3.1 WIP 2024-09-23 18:42:11 +03:00