Commit Graph

1427 Commits

Author SHA1 Message Date
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
georgemoralis
7df3919617 added 0.3.0 version 2024-09-23 18:17:50 +03:00
TheTurtle
cd7268a70e
video_core: Separate dirty flags and better gpu invalidation (#1034) 2024-09-23 18:03:42 +03:00
Vinicius Rangel
10d29cc007
Save fixes (#1031)
* Add ElfInfo to track current game info in a singleton

* SaveData compatibility with old firmwares

* sceKernelOpen: fix for write-only mode

* imgui: add font to render non-ascii characters

* save_data: fix Backup Job including old backup in the new backup

* Save backup: fix to avoid filling the queue

 Also limiting 1 backup / 10sec

* Save backup: fix search not handling empty pattern

*backup time improv
2024-09-23 14:50:49 +03:00
squidbus
a5001d11a8
shader_recompiler: Increase push constants user data to full capacity. (#1032) 2024-09-23 13:40:33 +03:00
TheTurtle
ee38eec7fe
shader_recompiler: Additional scope handling and user data as push constants (#1013)
* shader_recompiler: Use push constants for user data regs

* shader: Add some GR2 instructions

* shader: Add some instructions

* shader: Add instructions for knack

* touchups

* spirv: Better names

* buffer_cache: Ignore non gpu modified images

* clang format

* Add log

* more fixes
2024-09-23 08:55:43 +02:00
psucien
fb5bc371cb hot-fix: unnecessary optimization removed 2024-09-22 19:56:07 +02:00
IndecisiveTurtle
e1d03c35fd hotfix: Fix mipmap query for images 2024-09-22 19:17:54 +03:00
squidbus
654f85a4b1
core: Reduce some library log spam. (#1023) 2024-09-22 14:13:58 +02:00
squidbus
bfe2e1e57c
vulkan: Use closest available equivalent to missing clamp modes. (#1007) 2024-09-22 15:07:05 +03:00
squidbus
a18419dd73
shader_recompiler: Exclude non-float results from output modifiers. (#1016) 2024-09-22 15:03:17 +03:00
korenkonder
8811cc5cc6
Add V_CVT_PK_U8_F32 opcode (#1022) 2024-09-22 15:02:34 +03:00
korenkonder
5db27109c9
Optimise out unnecessary shifts (#1021) 2024-09-22 15:02:20 +03:00
Vinicius Rangel
581ddfec4d
SaveLib PR related fixes (#1011)
* Safety checks in all SFO readings

* SaveData: log backup error and continue & fix possible concurrent file editing

* SaveData: Fix issue with old firmwares
2024-09-22 08:16:06 +03:00
TheTurtle
edde0a3e7e
hotfix: Revert ADDC change 2024-09-22 01:53:10 +03:00
squidbus
dd184fd95d
shader_recompiler: Use SetDst in more instructions. (#1015) 2024-09-22 01:41:19 +03:00
psucien
5f4ddc14fc
Image subresources barriers (#904)
* video_core: texture: image subresources state tracking

* shader_recompiler: use one binding if the same image is read and written

* video_core: added rebinding of changed textures after overlap resolve

* don't use pointers; slight `FindTexture` refactoring

* video_core: buffer_cache: don't copy over the image size

* redundant barriers removed; fixes

* regression fixes

* texture_cache: 3d texture layers count fixup

* shader_recompiler: support for partially bound cubemaps

* added support for cubemap arrays

* don't bind unused color buffers

* fixed depth promotion to do not use stencil

* doors

* bonfire lit

* cubemap array index calculation

* final touches
2024-09-21 21:45:56 +02:00
squidbus
913a46173a
resource_tracking_pass: Allow derivatives for 2D array images. (#1000) 2024-09-21 14:19:01 +02:00
squidbus
171e475f80
save_data: Fix save data list back button. (#1003)
* save_data: Fix save data list back button.

* common: Add more null checks in CString.

Co-authored-by: Vinicius Rangel <me@viniciusrangel.dev>

---------

Co-authored-by: Vinicius Rangel <me@viniciusrangel.dev>
2024-09-21 10:21:53 +03:00
squidbus
4fe81231f6
vulkan: Add alternatives when nullDescriptor is not supported. (#1001)
* vulkan: Add alternatives when nullDescriptor is not supported.

* vulkan: Set identifying name on null image/image view/buffer
2024-09-21 03:50:57 +03:00
squidbus
eaa92b5a65
vulkan: Upgrade format queries to use format feature flags 2. (#941) 2024-09-21 00:05:16 +03:00
Daniel R.
c3d5824279
libraries/kernel: add sceKernelMmap to HLE 2024-09-20 17:53:18 +02:00
Vinicius Rangel
0f4bcd8c83
Rewrite Save Data & Impl Save Data Dialog (#824)
* core: Rewrite PSF parser & add encoder

add .sfo hex pattern to /scripts

* core/fs: allow to mount path as read-only

* common: Add CString wrapper to handle native null-terminated strings

* SaveData: rewrite to implement full functionality

* mock value for SYSTEM_VER

* SavaData: backup features

* SavaData: SaveDataMemory features

* imgui Ref-counted textures

- has a background thread to decode textures

* imgui: rework gamepad navigation

* PSF: fixed psf not using enum class for PSFEntryFmt (was a standard old ugly enum)

- Add null check to CString when itself is used in a nullable field

* SaveDataDialog implementation

- Fix Mounting/Unmounting check of SaveInstance
2024-09-20 12:34:19 +03:00
ElBread3
077f8981a7
QOL: Set Log Filter On Save (#991)
* set log filter on reset

* clang format
2024-09-20 12:07:45 +03:00
¥IGA
5638735af6
Set High Priority for Windows (#961) 2024-09-20 07:54:30 +03:00
squidbus
048b8aef58
videoout: Make present thread realtime on macOS. (#990) 2024-09-20 01:28:35 +03:00
korenkonder
60f315a54d
video_core: stride fix (#986)
I don't know why it was forced to be 1 while in reality it should be as is
2024-09-19 21:43:03 +02:00
psucien
7b8f0d2a19 core: file_sys: fix for racing in fs mount 2024-09-19 21:42:19 +02:00
korenkonder
07de1ee977
Sort opcodes by their indices. Group them too when applicable (#945) 2024-09-19 20:29:56 +02:00
Daniel R.
c0f7de9fde
core: name avplayer threads 2024-09-19 20:19:29 +02:00
georgemoralis
7b8bc90157
MiscFixes11 (#984)
* fixed an issue in sceSaveDataSetSaveDataMemory , makes chariot CUSA00739 goes ingame

* added branch name into sdl window title
2024-09-19 18:46:07 +03:00
georgemoralis
cf4824a008 hotfix2 : fix previous fix 2024-09-19 12:34:45 +03:00
georgemoralis
26cca79582 hot fix : always check if eboot.bin is available in path 2024-09-19 12:17:05 +03:00
TheCamrew
38a13832b3
Improve es_ES translation & fix typos (#974)
Replaced Latin American Spanish terms with equivalent Spain-specific vocabulary.

Adjusted grammatical structures to reflect common usage in Spain.
2024-09-19 07:16:05 +03:00
adjonesey
868cffd793
Fix Regression #932 (#973) 2024-09-19 07:15:42 +03:00
psucien
2aab7e05ee
libraries: gnmdriver: sceGnmResetVgtControl added (#965) 2024-09-17 22:10:50 +02:00
Raven
84e2c4d3bb
Add other 64-bit floating point shader instructions (#944) 2024-09-17 18:01:33 +02:00
psucien
4a0bd876ff hot-fix: make profiler to show real frame time 2024-09-17 09:45:10 +02:00
squidbus
28ec489dbe
cpu_patches: Revert to ahead-of-time patching on Linux for now. (#949) 2024-09-17 00:53:41 +03:00
squidbus
da1e4ff5eb
signals: Fix compilation on GCC. (#934) 2024-09-16 12:54:47 +03:00
Vladislav Mikhalin
faea291295
Do not wait for audio packets without audio stream (#939) 2024-09-16 12:54:20 +03:00
Daniel R.
dcf245b814
shader_recompiler: Implement basic 64-bit floating point support (#915)
* shader_recompiler: Implement basic 64-bit floating point support

* Fix formatting
2024-09-15 22:53:08 +02:00
squidbus
75a4df53a5
cpu_patches: Patch just-in-time using signal handlers. (#852)
* cpu_patches: Patch just-in-time using illegal instruction handler.

* core: Add common signal dispatch system and use for on-demand TCB patches.

* page_manager: Re-add userfaultfd implementation.
2024-09-15 23:48:34 +03:00
TheTurtle
b09b28c7f3
graphics_pipeline: Move some depth configuration to dynamic state (#931)
* graphics_pipeline: More proper masking

* pipeline_cache: Skip setting depth/stencil fields when test is disabled

* pipeline_cache: More fixes to depth stencil state

* vk_rasterizer: Use dynamic state for depth bounds and bias

* pipeline_cache: Missed depth bias enable

* vk_rasterizer: Add stencil dynamic states

* thread: Reduce spammy log

* Remove some leftover state

* pipeline_cache: Allocate pipelines from pools

* vk_graphics_pipeline: Remove bindings member

Saves about 1KB from each pipeline
2024-09-15 22:42:14 +02:00
TheTurtle
c8d0d5637a
semaphore: Fix semaphore wait list leaking (#928)
Co-authored-by: Daniel R. <47796739+polybiusproxy@users.noreply.github.com>
2024-09-15 19:08:37 +03:00
psucien
9203e28b21
Merge pull request #918 from raven02/patch-5
Add PM4 opcodes
2024-09-14 20:24:41 +02:00
Raven
b14f447060
Add DS_READ2ST64_B32 (#916)
* Add DS_READ2ST64_B32

* Fix CLANG

* Fix CI again

* Parameter update for DS_READ
2024-09-14 21:16:12 +03:00
Raven
1879c9d12f
Add PM4 opcodes 2024-09-15 01:46:39 +08:00
Daniel R.
febc1a9e17
core/libraries/save_data: Fix inaccurate behaviour on sceSaveDataSetupSaveDataMemory (#913) 2024-09-14 19:00:22 +02:00
Raven
5c5c02cb04
Add S_XOR_B32 opcode (#911)
* Add S_XOR_B32

* Stub S_OR_B32
2024-09-14 18:52:30 +03:00
Raven
12a0a02e38
Map BUFFER_AUTOMIC SMIN/SAMX/AND/OR/XOR/INC/DEC (#910) 2024-09-14 18:52:20 +03:00
squidbus
e30255e0d2
vulkan: Disable exceptions for getImageFormatProperties and account for errors. (#906) 2024-09-14 17:12:08 +03:00
nnn27
1ea6db6045
Fix initialization of change_layers (#907) 2024-09-14 15:07:34 +02:00
Emulator-Team-2
c924457e28
Implement IMAGE_SAMPLE_L_O opcode (#899) 2024-09-13 19:20:35 +02:00
Luke Warner
c181102a02
Implement S_ABSDIFF_I32 shader instruction (#902) 2024-09-13 19:02:17 +02:00