Commit graph

316 commits

Author SHA1 Message Date
squidbus 6648589ef9 Set minimum macOS target to 11 and fix compile errors. 2024-07-21 22:36:12 +03:00
squidbus d42a32bbd8 Add initial macOS support. 2024-07-21 22:36:12 +03:00
Borchev b3350ceabb Fix formatting 2024-07-21 12:35:01 -07:00
Borchev 632cb2ef93 Add sceKernelGetDirectMemoryType and update sceKernelReserveVirtualRange to search for free region when virtual_addr==0 2024-07-21 11:29:24 -07:00
psucien 2b31ab1e71 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
georgemoralis 879b8dcfe8 Merge branch 'main' into miscFixes6 2024-07-18 18:18:10 +03:00
Dzmitry Dubrova 788bdf6d2a kernel: Implement posix_pthread_once (#297)
* kernel: Implement posix_pthread_once

* Fix clang format
2024-07-17 23:34:22 +03:00
georgemoralis baf9ee9125 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
IndecisiveTurtle 1c99ccf6dc Add comments 2024-07-17 15:52:40 +03:00
IndecisiveTurtle 5ce901d78b event_queue: Add clear flag to events and don't return error 2024-07-17 14:50:26 +03:00
IndecisiveTurtle 33615d1d32 gnmdriver: Fix incorrect trailing nop insertion in indirect draws 2024-07-17 14:48:30 +03:00
squidbus 378e136ba0 Return EBUSY from sceKernelPollEventFlag instead of ETIMEDOUT. 2024-07-16 04:53:37 -07:00
georgemoralis 6202c21106 Merge pull request #293 from shadps4-emu/misc-fixes3
Various linux fixes
2024-07-15 15:25:20 +03:00
IndecisiveTurtle 3e8540bb6a fs: Remove some unnecessary string conversions 2024-07-15 15:14:04 +03:00
IndecisiveTurtle c2c6aededa Merge branch 'misc-fixes3' of https://github.com/shadps4-emu/shadPS4 into misc-fixes3 2024-07-15 15:05:29 +03:00
IndecisiveTurtle f315f74f2d kernel: Remove linux hack
* Breaks many games, only benefits BB. Tbd
2024-07-15 14:51:45 +03:00
georgemoralis 9b3ea720a8 windows std::filesystem fixes 2024-07-15 14:50:23 +03:00
georgemoralis 909fcb5b75 clang format fix 2024-07-15 14:18:28 +03:00
georgemoralis 9a7a508b80 Merge pull request #287 from polybiusproxy/dev
gnmdriver: Implement shader functions
2024-07-15 07:47:33 +03:00
jas0n098 defd6cd6c0 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 d4e95f7bd3 clang format 2024-07-15 03:47:10 +03:00
IndecisiveTurtle a3619919e1 fs: Actually functional linux case insensitive search 2024-07-15 03:37:30 +03:00
IndecisiveTurtle 91ca33fe49 event_queues: Use std placeholders 2024-07-15 01:28:08 +03:00
psucien 77d0535f9f review comments applied 2024-07-14 23:25:41 +02:00
raziel1000 5d79c8d74c Some functions called by Stardew Valley 2024-07-14 23:23:11 +03:00
georgemoralis 055c84ca49 initial ime dialog handling 2024-07-14 23:23:10 +03:00
georgemoralis 1ca189bdda replace unreachable with default return in sceKernelClockGettime 2024-07-14 23:23:10 +03:00
raziel1000 3c2dc4deac - sceSaveDataDirNameSearch wip, needs testing and more work. 2024-07-14 23:23:10 +03:00
psucien ada0513de0 libraries: gnmdriver: added missing ASC PM4 dump 2024-07-14 18:27:28 +02:00
psucien 1c2a562131 libraries: kernel: added sceKernelGetEventId 2024-07-14 18:20:31 +02:00
Daniel R. 90a0180203 clang-format 2024-07-12 11:03:55 +02:00
Daniel R. 28ace24b3f gnmdriver: Implement shader functions 2024-07-12 11:00:11 +02:00
Daniel R 8a8c1f274b 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 6add8bfb96 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 2ca3b97c7d fix for large delays precision + Linux build 2024-07-11 13:14:42 +03:00
psucien 9ffe0ea70d kernel: added HR timers and asio service thread 2024-07-11 13:14:42 +03:00
psucien 6132e03a2c kernel: equeue: minor refactoring 2024-07-11 13:14:42 +03:00
georgemoralis 13d2d4aefb forgot to register avplayer module 2024-07-10 19:15:58 +03:00
georgemoralis a186223d8e 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 1bf8b1e36e Fix sceAudioOutOpen not handling audio param attributes
and returning error incorrectly when some mask is applied
2024-07-08 01:29:58 -03:00
psucien 51557590be gnmdriver: added sceGnmFindResourcesPublic stub 2024-07-07 13:47:01 +02:00
psucien 2da61fa0b3 gnmdriver, amdgpu: added gpu idle IRQ; submission lock logic improved 2024-07-06 18:03:34 +02:00
georgemoralis c231695ee8 Merge pull request #239 from shadps4-emu/miscFixes3
Misc fixes 3
2024-07-06 11:16:53 +03:00
TheTurtle 60c63da3fd 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
georgemoralis 34a6b19636 scePthreadMutexTimedlock added 2024-07-05 15:23:35 +03:00
raziel1000 0b9718c5b3 forgot duplicate. 2024-07-04 21:02:59 -06:00
Younes dbeaaa4f43 Merge branch 'main' into miscFixes2 2024-07-04 20:51:04 -06:00
TheTurtle effc52c931 thread_management: Fix windows build 2024-07-05 00:20:55 +03:00
TheTurtle d9873e30bc 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 f6b73f9e68 improved sceAppContentAppParamGetInt 2024-07-04 13:49:11 +03:00
georgemoralis 3727a8f00e improved file not found return in sceKernelOpen 2024-07-04 11:38:23 +03:00
raziel1000 ec750fa156 scePthreadSetprio, scePthreadGetprio 2024-07-04 02:22:43 -06:00
raziel1000 9ab33ee759 ... 2024-07-04 01:54:50 -06:00
raziel1000 409327ebe6 mr clang format 2024-07-04 01:53:06 -06:00
raziel1000 8abe23712f - Several SaveData functions. Dysmantle and we are doomed should save and load now. 2024-07-04 01:51:46 -06:00
georgemoralis 606a4e9ff0 fixed linux compile? 2024-07-04 09:38:25 +03:00
georgemoralis bec2a4be8b added scePthreadGetthreadid 2024-07-03 20:05:21 +03:00
georgemoralis 8505857628 dummy sceAppContentGetAddcontInfoList and fixed structs 2024-07-03 20:04:56 +03:00
IndecisiveTurtle b72115bed4 shader_recompiler: More instructions 2024-07-01 22:42:45 +03:00
IndecisiveTurtle 20e9012490 code: Add additional logging during init 2024-07-01 13:56:14 +03:00
IndecisiveTurtle 69797f4d5d video_core: Track renderpass scopes properly 2024-07-01 13:56:14 +03:00
IndecisiveTurtle 73c2697ed1 video_core: Fix a few problems 2024-07-01 13:56:14 +03:00
georgemoralis 91d553c800 Merge pull request #225 from shadps4-emu/stabilization/10
Various fixes and improvements
2024-07-01 13:09:11 +03:00
georgemoralis 21cc9c49fe Merge pull request #220 from shadps4-emu/stabilization9
HLE stuff
2024-07-01 01:18:41 +03:00
georgemoralis 30fe941ae2 eventflag : changed an assert to log as error 2024-07-01 00:51:38 +03:00
georgemoralis 28a48d894f fixed name style 2024-07-01 00:50:07 +03:00
psucien 5fb6daf583 libraries: gnmdriver: added initialization preamble to every first submit in a frame 2024-06-30 18:22:39 +02:00
georgemoralis 14b39ecab3 added posix error write to errno 2024-06-30 10:40:06 +03:00
georgemoralis dfed4e8501 added case for savedata (needed by flow) 2024-06-30 10:12:07 +03:00
georgemoralis 029f029c61 added sceKernelDeleteEventFlag 2024-06-30 10:11:44 +03:00
psucien d7e058ce96 libraries: gnmdriver: sceGnmDrawInitToDefaultContextState and sceGnmDrawInitToDefaultContextState400 implementation 2024-06-30 01:21:39 +03:00
psucien dba04e213d libraries: gnmdriver: fix for incorrect offset in sceGnmDrawInitDefaultHardwareState175 2024-06-30 01:21:39 +03:00
georgemoralis e557702698 fixed posix_open return code 2024-06-28 23:19:33 +03:00
georgemoralis 98809911c2 sceKernelOpen handle directory doesn't exist case 2024-06-28 23:06:15 +03:00
georgemoralis 163ebd3291 few more sceNet work 2024-06-28 23:00:01 +03:00
georgemoralis a7bdd721ee implemented a part of sceNet calls 2024-06-27 18:42:36 +03:00
georgemoralis ae709d6557 Merge pull request #219 from shadps4-emu/gnmdriver/hw_init
Complete HW state init functions
2024-06-27 17:33:58 +03:00
psucien d69779f291 things prettified 2024-06-27 15:47:18 +02:00
georgemoralis 0845d8f250 Stabilization8 (#218)
* disable configured flexible memory size (caused issues in some games)

* fixed case S_OR_B64 for blazing chrome

* submodules updates and fixes for latest SDL

* stubbed _sigprocmask (not handled and spams too much)

* added ReplaceOp case in Stencilop

* dummy ajm module added
2024-06-27 16:37:17 +03:00
psucien 0dfb003aca libraries: gnmdriver: complete HW stat init functions 2024-06-27 13:36:55 +02:00
georgemoralis 1bf2e69c97 clang format fixes 2024-06-26 20:32:08 +03:00
IndecisiveTurtle c5f2368e52 kernel: Const correctness 2024-06-26 18:24:06 +03:00
IndecisiveTurtle e705b58db7 kernel: Fix pread and pwrite 2024-06-26 18:09:58 +03:00
IndecisiveTurtle 674db5e4d2 kernel: Rework semaphore implementation 2024-06-26 17:57:18 +03:00
IndecisiveTurtle f489ecde86 kernel: Cleanup filesystem code 2024-06-26 17:54:36 +03:00
psucien 681ce9a1ff Merge pull request #215 from shadps4-emu/miscFixAgain
Misc fixes (mostly LLE)
2024-06-26 14:15:07 +02:00
georgemoralis dd0638572f missed from previous commit 2024-06-26 14:57:18 +03:00
georgemoralis ffa6c7e2fd added sceKernelGetFsSandboxRandomWord and dummy posix_connect 2024-06-26 14:56:41 +03:00
georgemoralis 1c5b77503c sceAudioOutGetPortState added 2024-06-26 14:48:32 +03:00
georgemoralis d7bbfbd629 load existing lle modules from sys_module folder 2024-06-26 14:43:01 +03:00
georgemoralis f880e701d4 Merge pull request #213 from shadps4-emu/hle/trophies
A better stub for trophies
2024-06-25 18:38:35 +03:00
psucien b77224435a fix for Linux build 2024-06-25 17:14:12 +02:00
georgemoralis a58bd0fe19 Merge pull request #214 from shadps4-emu/miscFixes
Misc fixes
2024-06-25 17:55:57 +03:00
psucien 71f66bb94b kernel: thread_management: silence compilation warning 2024-06-25 09:56:19 +02:00
psucien 523f1e1b15 libraries: trophy: a better stubs implementation 2024-06-25 09:43:26 +02:00
psucien 7ad9d4a0d3 common: Common namespace for the slot vector container 2024-06-25 09:31:32 +02:00
psucien 117f859021 libraries: gnm_driver: added sceGnmDrawIndexIndirect and sceGnmDrawIndirect 2024-06-24 22:53:59 +02:00
psucien 25ab44d64e libraries: gnm_driver: added sceGnmSetEmbeddedPsShader 2024-06-24 14:51:17 +02:00
georgemoralis 8b7dff7141 re-fix 2024-06-24 13:46:45 +03:00
georgemoralis 3a9734a551 insure we reset padData 2024-06-24 13:41:18 +03:00