Commit Graph

961 Commits

Author SHA1 Message Date
DanielSvoboda de6f703d7d
I fixed the button, PKG patch version is older
I fixed the button, PKG patch version is older
2024-07-23 19:21:54 -03:00
squidbus 54b5900498 Replace remaining uses of QDir::currentPath() / user with UserDir. 2024-07-21 14:01:10 -07:00
georgemoralis 062ee9e092 one more memory fix 2024-07-21 23:16:46 +03:00
georgemoralis fe9b07da54 memory fix 2024-07-21 23:14:40 +03:00
georgemoralis 36ec7a1a43
Merge pull request #312 from Borchev/main
Add sceKernelGetDirectMemoryType, update sceKernelReserveVirtualRange
2024-07-21 22:52:50 +03:00
squidbus 70708fc69b Allocate more system reserved space on macOS and document restrictions. 2024-07-21 22:36:12 +03:00
squidbus 615f4e770f Support RIP relative memory operands in patched instructions. 2024-07-21 22:36:12 +03:00
squidbus 43c0f313f2 Fix user data path on macOS. 2024-07-21 22:36:12 +03:00
squidbus 225ca3ac5b Update format list for rebase and sort and remove duplicates. 2024-07-21 22:36:12 +03:00
squidbus cf03743631 Restore old keybindings for Windows and Linux. 2024-07-21 22:36:12 +03:00
squidbus 426d82d07b Only use date library on macOS. 2024-07-21 22:36:12 +03:00
squidbus b557de2c62 Make sure only system managed region can be moved on Windows. 2024-07-21 22:36:12 +03:00
squidbus 26e0fc6ad5 Only patch BMI1 instructions under Rosetta 2. 2024-07-21 22:36:12 +03:00
squidbus fadf03909c Add a few missing used formats from detiling. 2024-07-21 22:36:12 +03:00
squidbus 3e84d2b76c Define tessellation_factors_ring_addr relative to end of system reserved area. 2024-07-21 22:36:12 +03:00
squidbus e2adbd75c3 Reduce system reserved space to 0x700000000 and map fixed on macOS. 2024-07-21 22:36:12 +03:00
squidbus f943ce2710 Address review comments around memory and patches. 2024-07-21 22:36:12 +03:00
squidbus b3d97dcd89 Make sure system managed memory is in correct location on macOS. 2024-07-21 22:36:12 +03:00
squidbus 685b0bfd5e Fix missing logging on memory manager initalization. 2024-07-21 22:36:12 +03:00
squidbus 4fd3af995e Change format list from vector to array/span. 2024-07-21 22:36:12 +03:00
squidbus 68e1a6a596 Tidy up Vulkan extension list. 2024-07-21 22:36:12 +03:00
squidbus e06039d727 Set minimum macOS target to 11 and fix compile errors. 2024-07-21 22:36:12 +03:00
squidbus a4fd0d6386 Remap SDL face buttons to be usable without a keypad. 2024-07-21 22:36:12 +03:00
squidbus 175ffe8ce3 Add fallback system for unsupported pixel formats. 2024-07-21 22:36:12 +03:00
squidbus 35d629a730 Downgrade Vulkan requirement to 1.2 with extensions. 2024-07-21 22:36:12 +03:00
squidbus d9231b239c Migrate TLS patches to new patching system. 2024-07-21 22:36:12 +03:00
squidbus 6a6d5bad42 Fix one-off bug with user data registers. 2024-07-21 22:36:12 +03:00
squidbus 66fa29059c Add initial macOS support. 2024-07-21 22:36:12 +03:00
Borchev 5419212088 Fix formatting 2024-07-21 12:35:01 -07:00
Borchev f556f85279 Add sceKernelGetDirectMemoryType and update sceKernelReserveVirtualRange to search for free region when virtual_addr==0 2024-07-21 11:29:24 -07:00
TheTurtle 36d528743a
vk_scheduler: Fix pending op check 2024-07-21 17:41:46 +03:00
TheTurtle 403a5a57b1
vk_scheduler: Add api for defering operations (#311) 2024-07-21 15:42:32 +03:00
psucien 64459f1a76
Surface management rework (1/3) (#307)
* amdgpu: proper CB and DB sizes calculation; minor refactoring

* texture_cache: separate file for image_info

* texture_cache: image guest address moved into image info

* texture_cache: surface size calculation

* shader_recompiler: fixed sin/cos

Thanks to red_pring and gandalfthewhite0173

* initial preparations for subresources upload

* review comments
2024-07-20 12:51:21 +03:00
TheTurtle bfe3322977
spirv: Address some regressions in buffer loads (#304)
* spirv: Use correct index

* spirv: Fix indices during buffer load

* clang-format fix

* spirv: Index can be const

---------

Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
2024-07-19 19:36:07 +03:00
georgemoralis 60b1aa62a3
Merge pull request #281 from shadps4-emu/miscFixes6
Misc Fixes (forgot the number)
2024-07-19 16:35:19 +03:00
Vladislav Mikhalin d0d7ef06e8
Fixed buffer_store_* regression (#302) 2024-07-18 21:04:12 +03:00
georgemoralis c578ccc435 load every available prx from sce_module folder of game 2024-07-18 18:34:08 +03:00
georgemoralis 250bfbb494
Update liverpool_to_vk.cpp 2024-07-18 18:19:46 +03:00
georgemoralis 25e95c959a
Merge branch 'main' into miscFixes6 2024-07-18 18:18:10 +03:00
Dzmitry Dubrova 485d4fd0fb
kernel: Implement posix_pthread_once (#297)
* kernel: Implement posix_pthread_once

* Fix clang format
2024-07-17 23:34:22 +03:00
georgemoralis 0ed9ea5b85 force imedialog to input "shadps4" as name . That way we can pass games that want username . temp solution till imgui dialog prepared 2024-07-17 20:32:14 +03:00
georgemoralis 439c0be9a6 clang format fix 2024-07-17 17:57:54 +03:00
IndecisiveTurtle 1208661d64 Remove bc6 2024-07-17 17:06:09 +03:00
IndecisiveTurtle cd009cfec6 shader_recompiler: Normal gathers 2024-07-17 16:49:45 +03:00
IndecisiveTurtle 53fb73e95f rasterizer: Bump staging to 1GB
* Less chances of crashing
2024-07-17 16:22:04 +03:00
IndecisiveTurtle fcbaec51df liverpool_to_vk: Add more surface formats 2024-07-17 16:19:08 +03:00
IndecisiveTurtle 01dc7f5bfc Add comments 2024-07-17 15:52:40 +03:00
IndecisiveTurtle b89941fbd9 emulator: Add libSceUlt too 2024-07-17 15:44:20 +03:00
IndecisiveTurtle 0408d8596d emulator: Add libSceFiber and simplify logic 2024-07-17 15:37:32 +03:00
IndecisiveTurtle b6f011c8f6 event_queue: Add clear flag to events and don't return error 2024-07-17 14:50:26 +03:00
IndecisiveTurtle c64694c673 gnmdriver: Fix incorrect trailing nop insertion in indirect draws 2024-07-17 14:48:30 +03:00
IndecisiveTurtle 815ce11d2b fs: Defeat games with double slashes 2024-07-17 14:46:37 +03:00
georgemoralis 7ad44317f8
Merge pull request #252 from qurious-pixel/patch-1
Move "game_data" to RW directory inside user folder for linux
2024-07-16 23:05:29 +03:00
Vladislav Mikhalin f9e96793cc
Implemented load_buffer_format_* conversions (#295)
* Implemented load_buffer_format_* conversions

* clang-format insists on ugly things
2024-07-16 15:03:07 +03:00
squidbus 3ff11818ab Return EBUSY from sceKernelPollEventFlag instead of ETIMEDOUT. 2024-07-16 04:53:37 -07:00
TheTurtle 0dda5eb6ef
fs: Fix nullptr check in GetFile 2024-07-15 16:52:24 +03:00
TheTurtle 3b0a5aed33
fs: Use proper append operator 2024-07-15 15:42:35 +03:00
georgemoralis 0de914995f
Merge pull request #293 from shadps4-emu/misc-fixes3
Various linux fixes
2024-07-15 15:25:20 +03:00
IndecisiveTurtle 3c8b3f9a29 fs: Remove some unnecessary string conversions 2024-07-15 15:14:04 +03:00
IndecisiveTurtle 10a7110c7d Merge branch 'misc-fixes3' of https://github.com/shadps4-emu/shadPS4 into misc-fixes3 2024-07-15 15:05:29 +03:00
IndecisiveTurtle 356b59b041 kernel: Remove linux hack
* Breaks many games, only benefits BB. Tbd
2024-07-15 14:51:45 +03:00
IndecisiveTurtle 0599f4e6a5 fs: Fix case of getting the mount itself 2024-07-15 14:50:28 +03:00
georgemoralis 0298889131 windows std::filesystem fixes 2024-07-15 14:50:23 +03:00
georgemoralis ba0be91c73 clang format fix 2024-07-15 14:18:28 +03:00
IndecisiveTurtle 58d1cbd9b7 ssa_rewrite_pass: Correct phi node type for thread bitmask 2024-07-15 13:34:34 +03:00
georgemoralis c49afb4c17
Merge pull request #287 from polybiusproxy/dev
gnmdriver: Implement shader functions
2024-07-15 07:47:33 +03:00
jas0n098 6ec4a3d1b9
Replace deprecated pthread functions (#290)
pthread_attr_(set,get)stackaddr are deprecated and don't exist anymore on musl libc
2024-07-15 03:55:58 +03:00
IndecisiveTurtle ce6a01bd41 clang format 2024-07-15 03:47:10 +03:00
IndecisiveTurtle dbeed80e3b fs: Actually functional linux case insensitive search 2024-07-15 03:37:30 +03:00
IndecisiveTurtle 26f8fbf628 tls: Use gs segment for linux 2024-07-15 01:48:57 +03:00
IndecisiveTurtle 73d4aafc09 liverpool: Num submits should be atomic 2024-07-15 01:28:36 +03:00
IndecisiveTurtle dd7d232ac3 event_queues: Use std placeholders 2024-07-15 01:28:08 +03:00
psucien ed37fb32a7 review comments applied 2024-07-14 23:25:41 +02:00
raziel1000 02cba0100d Some functions called by Stardew Valley 2024-07-14 23:23:11 +03:00
georgemoralis 056dcf52ca initial ime dialog handling 2024-07-14 23:23:10 +03:00
georgemoralis b07bbecab4 replace unreachable with default return in sceKernelClockGettime 2024-07-14 23:23:10 +03:00
georgemoralis 4de9d9cf0d dataformat used by DMC4 2024-07-14 23:23:10 +03:00
raziel1000 ecad6cd1a7 - sceSaveDataDirNameSearch wip, needs testing and more work. 2024-07-14 23:23:10 +03:00
georgemoralis b4df90d8e4
Merge pull request #292 from shadps4-emu/games/00144
Missing graphics features for flOw & Flower
2024-07-14 23:07:46 +03:00
psucien 034301de88 libraries: gnmdriver: added missing ASC PM4 dump 2024-07-14 18:27:28 +02:00
psucien 746792eda0 libraries: kernel: added `sceKernelGetEventId` 2024-07-14 18:20:31 +02:00
psucien dc50cc55fb
missing line fix 2024-07-14 17:11:54 +02:00
psucien b8916787b2 renderer: debug markers for ability to match cmdlists with rdoc captures 2024-07-14 11:37:52 +02:00
psucien 8144f835a9 amdgpu: additional heuristic for CB extents detection
Found in CUSA00144
2024-07-14 10:59:22 +02:00
Live session user a1fbab5de7 Move game_data to RW directory inside user folder for linux 2024-07-13 16:44:13 -07:00
psucien f041276b04 recompiler: added support for discard on export with masked EXEC 2024-07-13 14:57:01 +02:00
Daniel R 83c8204d23
shader_recompiler/frontend: Implement opcodes (#289)
`S_ASHR_I32` and `BUFFER_LOAD_DWORD`.
2024-07-13 12:37:25 +03:00
psucien 1b94f07a6a recompiler: proper VS inputs initialization 2024-07-13 01:00:24 +02:00
Daniel R. 379e3b7607
Merge branch 'dev' of https://github.com/polybiusproxy/shadPS4 into dev 2024-07-12 11:04:23 +02:00
Daniel R. 0649234fc2
`clang-format` 2024-07-12 11:03:55 +02:00
Daniel R 547490a664
Merge branch 'shadps4-emu:main' into dev 2024-07-12 11:00:58 +02:00
Daniel R. 88426e0399
gnmdriver: Implement shader functions 2024-07-12 11:00:11 +02:00
psucien a75851f7e2 hot fix: reduce geometry staging 3Gb -> 512Mb 2024-07-11 20:29:53 +02:00
Daniel R. 1421f82bf5
Another ifdef (sigh) 2024-07-11 15:29:36 +02:00
Daniel R. a049bd3135
Fix Linux builds 2024-07-11 15:16:50 +02:00
Vladislav Mikhalin 262bf3d337 Fixed an issue with number of components of shader attributes 2024-07-11 16:10:23 +03:00
Daniel R 914aa10875
Misc implementations and fixes. (#250)
* Implement `sceKernelFtruncate` and `sceKernelUnlink`.

* Remove unused variable.

* Implement `sceKernelReserveVirtualRange`, misc fixes

* Fix `sceKernelReserveVirtualRange`.

* Add TODO on reserve

* Replace comment with assert.

* Add missing copyright header

* Add `UNREACHABLE` for `IOFile::Unlink`.

* Move NT API initialization out of the header

* Fix bug where files were always mapped as read only.

* `clang-format`
2024-07-11 15:35:58 +03:00
Vladislav Mikhalin 989f88837d
Filesystem errors and Base Array Layers (#280)
* Filesystem errors and Base Array Layers

* Fixed build for POSIX

* forgot 1 file
2024-07-11 14:37:21 +03:00
psucien ba5fb78c5a fix for large delays precision + Linux build 2024-07-11 13:14:42 +03:00
psucien 0bb5240202 kernel: added HR timers and asio service thread 2024-07-11 13:14:42 +03:00
psucien 465cb0413e kernel: equeue: minor refactoring 2024-07-11 13:14:42 +03:00
georgemoralis 5a078e3902 forgot to register avplayer module 2024-07-10 19:15:58 +03:00
georgemoralis 5beb607435
More HLE stuff and fixes (#273)
* sceKernelOpen truncate is not neccesary

* fixup scePthreadCondSignal

* dummy error , ime dialogs stubbed

* sceErrorDialog implemenation (no ui)

* small fix in sceSaveDataGetEventResult and sceAppContentTemporaryDataMount2.

* ime dialog structs and functions definations

* added stubbed avplayer

* Open folder should be first on context menu

---------

Co-authored-by: raziel1000 <ckraziel@gmail.com>
2024-07-10 19:20:19 +03:00
Vinicius Rangel 94d1a6b0b9
impl V_CMP_CLASS_F32 common filter masks (#276) 2024-07-10 02:24:01 +03:00
DanielSvoboda aef6d2e488
fix shortcut name with unaccepted characters 2024-07-09 00:55:48 -03:00
DanielSvoboda 63b0465a33
add V_MAD_U32_U24 (#262)
* V_MAD_U32_U24

* adjust V_MAD_I32_I24 for bit extraction

* optional bit extraction parameter

* Update vector_alu.cpp

* clang-format

* Update src/shader_recompiler/frontend/translate/vector_alu.cpp

Co-authored-by: TheTurtle <47210458+raphaelthegreat@users.noreply.github.com>

* Update vector_alu.cpp

* Update translate.h

---------

Co-authored-by: TheTurtle <47210458+raphaelthegreat@users.noreply.github.com>
2024-07-09 01:35:01 +03:00
psucien ab6a1fb5f0
Merge pull request #247 from viniciuslrangel/device-selector
Improve physical device selection in Vulkan renderer
2024-07-08 22:04:51 +02:00
Stolas 2620919f0b
Added Legacy Min/Max ops (#266)
* Forwarding V_MAX_LEGACY_F32 to V_MAX3_F32. Fixes Translation error in Geometry Wars 3.

* Forwarded to correct op

* Implemented Legacy Max/Min using NMax/NMin

* Added extra argument to Min/Max op codes

* Removed extra translator functions, replaced with bool

* Formatting
2024-07-08 12:24:12 +03:00
Vinicius Rangel 574b8a458c
Fix sceAudioOutOpen not handling audio param attributes
and returning error incorrectly when some mask is applied
2024-07-08 01:29:58 -03:00
offtkp 0619af24a7 Eliminate compiler warning 2024-07-08 01:17:42 +03:00
Vinicius Rangel 6cc8381d62
Improve physical device selection in Vulkan renderer
Fix when two discrete gpu are present & memory heap size is now considered while sorting physical devices
2024-07-07 17:02:35 -03:00
TheTurtle a9f482cdfc
config: Disable splash by default 2024-07-07 22:30:52 +03:00
georgemoralis 189033ae24
Merge pull request #253 from shadps4-emu/graphics/features_and_fixes
Graphics: missing features and fixes
2024-07-07 20:42:13 +03:00
psucien 6dbb842bec renderer: a bit more formats to support 2024-07-07 14:34:36 +02:00
psucien c7af8df2ad gnmdriver: added `sceGnmFindResourcesPublic` stub 2024-07-07 13:47:01 +02:00
psucien 19c85c78cf recompiler: switch instance data to storage buffers 2024-07-07 13:08:39 +02:00
psucien bf4bf4ccb2 recompiler: fix for gather4 components return 2024-07-07 13:00:52 +02:00
TheTurtle 379ec554a8
memory: Set virtual query offset 2024-07-07 01:26:17 +03:00
georgemoralis 575acc4bd9
Merge pull request #254 from DanielSvoboda/Create-Shortcut
fix linux again
2024-07-06 22:39:31 +03:00
psucien 1d608427ed renderer: don't let unbound color attachment affect pass's rendering area 2024-07-06 20:13:12 +02:00
DanielSvoboda 971d2f02ef
fix name file shortcut linux 2024-07-06 15:10:28 -03:00
DanielSvoboda d9c1456f28
fix linux again 2024-07-06 15:00:18 -03:00
georgemoralis 3f3acc5543
Merge pull request #246 from DanielSvoboda/Create-Shortcut
Create shortcut
2024-07-06 20:03:30 +03:00
DanielSvoboda 311ddbe2f9
fiz linux 2024-07-06 13:42:53 -03:00
DanielSvoboda f8e2b6d0cd
fix linux 2024-07-06 13:40:26 -03:00
psucien cfbe8b9e6d renderer: added support for instance step rates 2024-07-06 18:03:43 +02:00
psucien 986ed0662c gnmdriver, amdgpu: added gpu idle IRQ; submission lock logic improved 2024-07-06 18:03:34 +02:00
DanielSvoboda eff8a9e514
fix linux? 2024-07-06 12:55:24 -03:00
georgemoralis bf74888be4
Merge pull request #239 from shadps4-emu/miscFixes3
Misc fixes 3
2024-07-06 11:16:53 +03:00
georgemoralis d4d7e9f5f6 removed hardware info seems make perfomance issues , will test something more lightweight 2024-07-06 10:27:57 +03:00
DanielSvoboda c3bf56f3eb
add 'Create Shortcut' option
Added 'Create Shortcut' option to gui_context_menus

Implemented functionality to create shortcuts:
convertPngToIco: Converts PNG icons to ICO format.
createShortcutWin: Creates shortcuts on Windows using COM interfaces.
createShortcutLinux: Generates .desktop files for shortcut creation on Linux.
Note: Linux functionality has not been tested.
2024-07-05 20:57:54 -03:00
TheTurtle 38080b60af
shader_recompiler: Check usage before enabling capabilities (#245)
* vk_instance: Better feature check

* shader_recompiler: Make most features optional

* vk_instance: Bump extension vector size

* resource_tracking_pass: Perform BFS for sharp tracking

* The Witness triggered this
2024-07-06 02:42:16 +03:00
DanielSvoboda 56af77f1f4
add command line arguments GUI 2024-07-05 18:20:19 -03:00
georgemoralis 4ae879875e scePthreadMutexTimedlock added 2024-07-05 15:23:35 +03:00
georgemoralis 134541bdcd submodules updates 2024-07-05 15:08:33 +03:00
raziel1000 7ea87f69ea forgot duplicate. 2024-07-04 21:02:59 -06:00
Younes 8ce6ed4b59
Merge branch 'main' into miscFixes2 2024-07-04 20:51:04 -06:00
TheTurtle 3f123bbce2
thread_management: Fix windows build 2024-07-05 00:20:55 +03:00
DanielSvoboda 1d58a0403e
Fix ShowSplash size (#235)
* Fix ShowSplash size

* enable isShowSplash
2024-07-05 00:16:06 +03:00
psucien dd97b517f7
Recompiler: sampler patching (#236)
* recompiler: restored bfs in image instruction producers search

* recompiler: added pattern check for s# anisotropy modification

* added check if s# comes from constant load (e.g. EUD)
2024-07-05 00:15:57 +03:00
TheTurtle 6ceab6dfac
shader_recompiler: Implement most integer image atomics, workgroup barriers and shared memory load/store (#231)
* shader_recompiler: Add LDEXP

* shader_recompiler: Add most image integer atomic ops

* shader_recompiler: Implement shared memory load/store

* shader_recompiler: More image atomics

* externals: Update sirit

* clang format

* cmake: Add missing files

* shader_recompiler: Fix some atomic bugs

* shader_recompiler: Vs outputs

* shader_recompiler: Shared mem has side-effects, fix format component order

* shader_recompiler: Inline constant buffer impl

* video_core: Fix regressions

* Work

* Fixup a few things
2024-07-05 00:15:44 +03:00
georgemoralis a91c049754 added library to print system info to be able to debug user files better 2024-07-04 14:30:34 +03:00
georgemoralis fd39c50910 improved sceAppContentAppParamGetInt 2024-07-04 13:49:11 +03:00
georgemoralis 8d17f87a08 improved file not found return in sceKernelOpen 2024-07-04 11:38:23 +03:00
raziel1000 bdcadf63d2 scePthreadSetprio, scePthreadGetprio 2024-07-04 02:22:43 -06:00
raziel1000 e22ad65e70 .... 2024-07-04 01:57:03 -06:00
raziel1000 1968b2aa81 ... 2024-07-04 01:54:50 -06:00
raziel1000 c2c55fea87 mr clang format 2024-07-04 01:53:06 -06:00
raziel1000 0ecc54032c - Several SaveData functions. Dysmantle and we are doomed should save and load now. 2024-07-04 01:51:46 -06:00
georgemoralis 3875c00281 fixed linux compile? 2024-07-04 09:38:25 +03:00