Commit graph

1441 commits

Author SHA1 Message Date
DanielSvoboda f495425441 sort menu (#1183) 2024-10-01 18:02:47 +03:00
squidbus 6d055b95a2 qt: Fix message box for game overwrite. (#1181) 2024-10-01 15:49:30 +03:00
squidbus 106c3ea619 vulkan: Use dynamic vertex buffer strides when dynamic bindings unavailable. (#1164) 2024-10-01 09:54:06 +03:00
ElBread3 e2c02763de add mappings for kernel versions (#1171) 2024-10-01 09:16:15 +03:00
squidbus c6cb117e4e config: Add option to change DLC install path. (#1176) 2024-10-01 07:54:15 +03:00
DanielSvoboda 1889563783 fix wolf2022 cheats download (#1173) 2024-10-01 07:53:20 +03:00
bigol83 40fa9576e0 Fix BB random fmv hang (#1170) 2024-09-30 19:20:57 +03:00
Paris Oplopoios 130f3efbd8 Fix loading (#1169) 2024-09-30 19:05:55 +03:00
ElBread3 87a25d5b94 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 0c5f0aa7a0 Fix some typos (#1161) 2024-09-30 14:24:28 +03:00
Paris Oplopoios 7dbd1597e9 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 98ff32d0b8 Fix V_CMP_CLASS_F32 (#1153) 2024-09-30 11:36:26 +03:00
squidbus 289d692b98 sdl: Fix use of functions that now return SDL_bool (#1160) 2024-09-30 06:47:55 +03:00
Paris Oplopoios ccc137aba4 Fix fmt error (#1150) 2024-09-29 14:02:46 +02:00
Daniel R. 8e6ce69b55 core/memory: Pooled memory implementation (#1085) 2024-09-29 10:28:41 +03:00
squidbus bfeed1f7c6 vulkan: Fix crash when resizing window. (#1142) 2024-09-29 08:25:44 +03:00
DanielSvoboda b13381bacd progressBar DownloadUpdate (#1141) 2024-09-29 08:24:21 +03:00
DanielSvoboda 9dc2830870 + tr (#1136) 2024-09-29 00:01:35 +03:00
¥IGA 5988e70353 Best icons for flags (#1133) 2024-09-28 21:49:48 +03:00
tGecko 83d1fe1c4a 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 242e4a0117 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 9be3355d11 ru_RU translation fixes (#1118) 2024-09-28 19:53:42 +03:00
DanielSvoboda 50708431d6 menu description | rename: Release/Nightly (#1116)
* menu description

* improve texts

* TR

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

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

* Formatting
2024-09-27 01:56:59 +03:00
Paris Oplopoios df425c4549 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 192476b421 hot fix of the hot fix (again) 2024-09-26 18:24:05 +03:00
georgemoralis 3b6a20b2d4 hot-fix: check if path is empty 2024-09-26 18:14:25 +03:00
DanielSvoboda 2e081a04da 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 04483f779d Fix fmt::UTF exception for empty strings (#1084) 2024-09-26 17:21:31 +03:00
Paris Oplopoios 428af9223e 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 cac244cc03 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 396007bba3 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 27f8f12985 Update sq translation (#1076) 2024-09-26 07:54:57 +03:00
psucien d76cb2126e hot-fix: missing clear-to-blit (WAW) image barrier 2024-09-25 23:07:38 +02:00
oltolm 581ba00746 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 78eecef86e shader_recompiler: Sample images using correct result type. (#1068) 2024-09-25 14:20:28 +03:00
squidbus 1141c94a7e amdgpu: Fix buffer comparison by naming padding fields for initialization. (#1050) 2024-09-25 14:08:10 +03:00
squidbus ec8c1058b1 vulkan: Only reduce viewport minDepth if using depth clip control. (#969) 2024-09-25 12:43:54 +03:00
Lander Gallastegi 0bca802cb8 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 704dd0617f Add nullptr check in scePthreadSetprio function (#1028) 2024-09-25 12:20:03 +03:00
squidbus fc231438b2 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 c898eaebd2 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 7829edfc9d Error dialog implementation (#1062) 2024-09-25 06:48:27 +03:00
DanielSvoboda cec9e74e02 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. c498f92a6e clang-format 2024-09-24 21:27:29 +02:00
Daniel R. 4a958af04b core/libraries: implement configurable username 2024-09-24 21:23:18 +02:00
jnack fd5b2735b1 add V_CMPX_LE_I32 (#1056) 2024-09-24 18:22:31 +03:00
Paris Oplopoios a7672f660e Fixup designator order (#1039) 2024-09-24 17:18:35 +03:00
Paris Oplopoios 90c04d8447 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 51e919fe01 fix lane inst decoding (#1051) 2024-09-24 12:29:57 +03:00
Vinicius Rangel 840915b1be 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 71f683fd03 core: Add wrapper for calling into guest code. (#967) 2024-09-23 20:30:16 +03:00
Daniel R. e931c203f8 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 a425f7a63e 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 843d5d388e 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 6311406ba6 starting 0.3.1 WIP 2024-09-23 18:42:11 +03:00
georgemoralis 53f8b4cfaa added 0.3.0 version 2024-09-23 18:17:50 +03:00
TheTurtle 93abdab5b3 video_core: Separate dirty flags and better gpu invalidation (#1034) 2024-09-23 18:03:42 +03:00
Vinicius Rangel 9f0d78aae4 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 470895c170 shader_recompiler: Increase push constants user data to full capacity. (#1032) 2024-09-23 13:40:33 +03:00
TheTurtle 2b8e9d57af 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 0dd5fbd020 hot-fix: unnecessary optimization removed 2024-09-22 19:56:07 +02:00
IndecisiveTurtle 50968c8b0c hotfix: Fix mipmap query for images 2024-09-22 19:17:54 +03:00
squidbus 1a82b1d132 core: Reduce some library log spam. (#1023) 2024-09-22 14:13:58 +02:00
squidbus 564b4d3267 vulkan: Use closest available equivalent to missing clamp modes. (#1007) 2024-09-22 15:07:05 +03:00
squidbus f0ab14acb8 shader_recompiler: Exclude non-float results from output modifiers. (#1016) 2024-09-22 15:03:17 +03:00
korenkonder 734a0a896d Add V_CVT_PK_U8_F32 opcode (#1022) 2024-09-22 15:02:34 +03:00
korenkonder 126b2c30bd Optimise out unnecessary shifts (#1021) 2024-09-22 15:02:20 +03:00
Vinicius Rangel a73b5c3e02 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 d11415ca53 hotfix: Revert ADDC change 2024-09-22 01:53:10 +03:00
squidbus 7185dd8943 shader_recompiler: Use SetDst in more instructions. (#1015) 2024-09-22 01:41:19 +03:00
psucien 3939bc4f10 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 4fc28b39af resource_tracking_pass: Allow derivatives for 2D array images. (#1000) 2024-09-21 14:19:01 +02:00
squidbus 9123dc4228 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 32df2b8e43 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 1e9199fd94 vulkan: Upgrade format queries to use format feature flags 2. (#941) 2024-09-21 00:05:16 +03:00
Daniel R. 5e5d2cc008 libraries/kernel: add sceKernelMmap to HLE 2024-09-20 17:53:18 +02:00
Vinicius Rangel d2d51373b5 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 24a91d7daf QOL: Set Log Filter On Save (#991)
* set log filter on reset

* clang format
2024-09-20 12:07:45 +03:00
¥IGA 0f3a4aa40b Set High Priority for Windows (#961) 2024-09-20 07:54:30 +03:00
squidbus 770cbf14e9 videoout: Make present thread realtime on macOS. (#990) 2024-09-20 01:28:35 +03:00
korenkonder 03ba49a3e0 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 e71f5c6f93 core: file_sys: fix for racing in fs mount 2024-09-19 21:42:19 +02:00
korenkonder 6b52ee0644 Sort opcodes by their indices. Group them too when applicable (#945) 2024-09-19 20:29:56 +02:00
Daniel R. 63409fb26d core: name avplayer threads 2024-09-19 20:19:29 +02:00
georgemoralis 185667a44d 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 e9add1669a hotfix2 : fix previous fix 2024-09-19 12:34:45 +03:00
georgemoralis d8de458b73 hot fix : always check if eboot.bin is available in path 2024-09-19 12:17:05 +03:00
TheCamrew dbb89b9d86 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 a5c15e643e Fix Regression #932 (#973) 2024-09-19 07:15:42 +03:00
psucien c4ff866e34 libraries: gnmdriver: sceGnmResetVgtControl added (#965) 2024-09-17 22:10:50 +02:00
Raven 2a9b353f8b Add other 64-bit floating point shader instructions (#944) 2024-09-17 18:01:33 +02:00
psucien 6152fe8419 hot-fix: make profiler to show real frame time 2024-09-17 09:45:10 +02:00
squidbus d79d9c280f cpu_patches: Revert to ahead-of-time patching on Linux for now. (#949) 2024-09-17 00:53:41 +03:00