Commit Graph

831 Commits

Author SHA1 Message Date
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
georgemoralis 0228b5861c added scePthreadGetthreadid 2024-07-03 20:05:21 +03:00
georgemoralis 608301f86c dummy sceAppContentGetAddcontInfoList and fixed structs 2024-07-03 20:04:56 +03:00
georgemoralis af3bbc33e9 increase version 2024-07-02 00:39:10 +03:00
georgemoralis 94f83ad505 Updated version to 0.1.0 - Release 2024-07-02 00:35:54 +03:00
georgemoralis dc8d3b208c
Merge pull request #230 from shadps4-emu/stabilization12
reduced logging
2024-07-01 23:53:59 +03:00
georgemoralis afba6dbd66 clang format fix 2024-07-01 23:48:30 +03:00
georgemoralis 3b87c3c128 moved elf logging to DebugDump fuction , which can be enabled in config . This reduces main log file a lot 2024-07-01 23:07:57 +03:00
IndecisiveTurtle fe5bfa9d61 texture_cache: Always validate for now 2024-07-01 22:53:01 +03:00
IndecisiveTurtle a603bc7d88 shader_recompiler: More instructions 2024-07-01 22:42:45 +03:00
IndecisiveTurtle 2fe897eeda host_shaders: Fix R8G8 detiler 2024-07-01 20:25:43 +03:00
IndecisiveTurtle 7d4f0da40e video_core: Fix some regressions 2024-07-01 18:26:22 +03:00
IndecisiveTurtle 20e83b4d53 clang format 2024-07-01 13:56:14 +03:00
IndecisiveTurtle 410ba37ec2 code: Add additional logging during init 2024-07-01 13:56:14 +03:00
IndecisiveTurtle 7c7e9427ba tls: Switch to trace logs 2024-07-01 13:56:14 +03:00
IndecisiveTurtle 6774216038 shader_recompiler: Apply buffer swizzle on vertex attribs 2024-07-01 13:56:14 +03:00
IndecisiveTurtle b4d24d8737 renderer_vulkan: Prefer depth stencil read-only layout when possible
* Persona reads a depth attachment while it is being attached with writes disabled. Now this works without spamming vk validation errors
2024-07-01 13:56:14 +03:00
IndecisiveTurtle 22b930ba5e video_core: Track renderpass scopes properly 2024-07-01 13:56:14 +03:00
IndecisiveTurtle ad10020836 video_core: Fix a few problems 2024-07-01 13:56:14 +03:00
IndecisiveTurtle 114f06d3f2 tls: Fix linux crash 2024-07-01 13:56:14 +03:00
IndecisiveTurtle 10ef357f1f image: Fix image type of 1D Array 2024-07-01 13:56:14 +03:00
IndecisiveTurtle 5da79d4798 spirv: Add fragdepth and implement image query 2024-07-01 13:56:14 +03:00
georgemoralis 1f83824a8a
Merge pull request #225 from shadps4-emu/stabilization/10
Various fixes and improvements
2024-07-01 13:09:11 +03:00
psucien f03262421e texture_cache: force storage usage bit to all images 2024-07-01 09:58:52 +02:00
georgemoralis d2c1e58313
Merge pull request #220 from shadps4-emu/stabilization9
HLE stuff
2024-07-01 01:18:41 +03:00
georgemoralis 90b27352f8 eventflag : changed an assert to log as error 2024-07-01 00:51:38 +03:00
georgemoralis 24f78fac20 fixed name style 2024-07-01 00:50:07 +03:00
psucien 1f55eff9d8 libraries: gnmdriver: added initialization preamble to every first submit in a frame 2024-06-30 18:22:39 +02:00
psucien 14377b39b5 texture_cache: detiler: added missing micro8x2 2024-06-30 15:54:59 +02:00
georgemoralis 1413a70a92 added posix error write to errno 2024-06-30 10:40:06 +03:00
georgemoralis 8e01a1b6d8 libSceJpegEnc,libSceJson2 can be loaded LLE 2024-06-30 10:12:36 +03:00
georgemoralis d0278715cb added case for savedata (needed by flow) 2024-06-30 10:12:07 +03:00
georgemoralis 084b2ab6d5 added sceKernelDeleteEventFlag 2024-06-30 10:11:44 +03:00
psucien 2386b46726 libraries: gnmdriver: `sceGnmDrawInitToDefaultContextState` and `sceGnmDrawInitToDefaultContextState400` implementation 2024-06-30 01:21:39 +03:00
psucien 9121ecf123 renderer_vulkan: more formats conversion 2024-06-30 01:21:39 +03:00
psucien 3663c60f3d libraries: gnmdriver: fix for incorrect offset in `sceGnmDrawInitDefaultHardwareState175` 2024-06-30 01:21:39 +03:00
psucien cc945fb92e shader_recompiler: a simple bfs in image arg producer search 2024-06-30 01:21:39 +03:00
psucien c4061c3b95 amdgpu: fix for wrong constant ram offset in `WriteConstRam` decoding 2024-06-30 01:21:39 +03:00
psucien 2cbbcbd371
Metadata support (#223)
* texture_cache: more image usage flags

* texture_cache: metadata registration

* renderer_vulkan: initial CMask support

* renderer_vulkan: skip redundant FCE and FMask decompression passes

* renderer_vulkan: redundant VO surface registration removed

* renderer_vulkan: initial HTile support

* renderer_vulkan: added support for MSAA attachments

* renderer_vulkan: skip unnecessary metadata updates
2024-06-29 16:49:59 +03:00
georgemoralis b3f15dfe2e fixed posix_open return code 2024-06-28 23:19:33 +03:00
georgemoralis 1e717ab046 sceKernelOpen handle directory doesn't exist case 2024-06-28 23:06:15 +03:00
georgemoralis a810e47876 few more sceNet work 2024-06-28 23:00:01 +03:00
georgemoralis e54d574241 implemented a part of sceNet calls 2024-06-27 18:42:36 +03:00
georgemoralis 059f54838a
Merge pull request #219 from shadps4-emu/gnmdriver/hw_init
Complete HW state init functions
2024-06-27 17:33:58 +03:00
psucien 7fd832b68c things prettified 2024-06-27 15:47:18 +02:00
georgemoralis 0ada442cbc
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 91940781b8 libraries: gnmdriver: complete HW stat init functions 2024-06-27 13:36:55 +02:00
georgemoralis 521ff4d14b clang format fixes 2024-06-26 20:32:08 +03:00
IndecisiveTurtle 550bfa1c88 liverpool: Fix assert for compute queues 2024-06-26 20:00:09 +03:00
IndecisiveTurtle c8ed338d5a kernel: Const correctness 2024-06-26 18:24:06 +03:00
IndecisiveTurtle c081663aac translator: Merge ANDN2 with AND and impl ORN2 2024-06-26 18:16:01 +03:00
IndecisiveTurtle e94149340e kernel: Fix pread and pwrite 2024-06-26 18:09:58 +03:00
IndecisiveTurtle 3a80df007e linker: More null check 2024-06-26 18:05:31 +03:00
IndecisiveTurtle 4846704832 shader_recompiler: More instructions and fix for swords of ditto 2024-06-26 18:03:09 +03:00
IndecisiveTurtle 9bd3898829 kernel: Rework semaphore implementation 2024-06-26 17:57:18 +03:00
IndecisiveTurtle a2394109ee kernel: Cleanup filesystem code 2024-06-26 17:54:36 +03:00
psucien 3532fd1c9c
Merge pull request #215 from shadps4-emu/miscFixAgain
Misc fixes (mostly LLE)
2024-06-26 14:15:07 +02:00
georgemoralis 8a617be3b7 missed from previous commit 2024-06-26 14:57:18 +03:00
georgemoralis 7ef11a7bd8 added sceKernelGetFsSandboxRandomWord and dummy posix_connect 2024-06-26 14:56:41 +03:00
georgemoralis c511b1b0cf sceAudioOutGetPortState added 2024-06-26 14:48:32 +03:00
georgemoralis 84a39e2fb0 load existing lle modules from sys_module folder 2024-06-26 14:43:01 +03:00
Alexandre Bouvier a2224a9b6b fix system include paths 2024-06-25 18:17:16 +02:00
georgemoralis 8f45be7d44
Merge pull request #213 from shadps4-emu/hle/trophies
A better stub for trophies
2024-06-25 18:38:35 +03:00
psucien 9b3a89467e fix for Linux build 2024-06-25 17:14:12 +02:00
georgemoralis c8a149c983
Merge pull request #214 from shadps4-emu/miscFixes
Misc fixes
2024-06-25 17:55:57 +03:00
psucien 3b2a312f15 kernel: thread_management: silence compilation warning 2024-06-25 09:56:19 +02:00
psucien ff64dd74f6 libraries: trophy: a better stubs implementation 2024-06-25 09:43:26 +02:00
psucien acc4ef7b4c common: slot_vector: added `is_allocated` to check if the slot already exists 2024-06-25 09:43:25 +02:00
psucien 8475a62a46 common: `Common` namespace for the slot vector container 2024-06-25 09:31:32 +02:00
georgemoralis cee55355bf
Merge pull request #208 from Xphalnos/main
Adding Quickstart
2024-06-25 09:42:14 +03:00
psucien c04fbb75d8 libraries: gnm_driver: added `sceGnmDrawIndexIndirect` and `sceGnmDrawIndirect` 2024-06-24 22:53:59 +02:00
psucien 508d034263 libraries: gnm_driver: added `sceGnmSetEmbeddedPsShader` 2024-06-24 14:51:17 +02:00
georgemoralis 1b6cb32b34 re-fix 2024-06-24 13:46:45 +03:00
georgemoralis 640354667e insure we reset padData 2024-06-24 13:41:18 +03:00
georgemoralis ad4db71e00 missing touchpad reset in scePadReadState 2024-06-24 13:26:18 +03:00
georgemoralis 6d2b2779ea added sceKernelPwrite 2024-06-24 13:25:50 +03:00
Xphalnos 7fe5f12f29 Screenshots fix 2024-06-23 09:04:16 +02:00
psucien cb6b21de1f
Initial instancing and asynchronous compute queues (#207)
* gnm_driver: added `sceGnmRegisterOwner` and `sceGnmRegisterResource`

* video_out: `sceVideoOutGetDeviceCapabilityInfo` for sdk runtime

* gnm_driver: correct vqid index range

* amdgpu: indirect buffer, release mem and some additional irq modes

* amdgpu: added ASC commands processor

* shader_recompiler: added support for fetch instance id

* amdgpu: classic bitfields for T# representation (debugging experience)

* renderer_vulkan: skip zero sized VBs from binding

* texture_cache: image upload logic moved into `Image` object

* gnm_driver: `sceGnmDingDong` implementation

* texture_cache: `Image` usage flags moved; correct VO buffer pitch
2024-06-22 19:50:20 +03:00
georgemoralis 94b9992d99 more clang format fix (final) 2024-06-22 18:17:40 +03:00
georgemoralis 32225f4a8b more clang fix 2024-06-22 18:15:42 +03:00
georgemoralis 11a3906243 clang fix 2024-06-22 18:12:04 +03:00
IndecisiveTurtle 73d60b7e8d linker: Set rela bits for all symbol types 2024-06-22 18:09:04 +03:00
IndecisiveTurtle 11bfdf2348 kernel: Add noreturn 2024-06-22 18:09:04 +03:00
IndecisiveTurtle 741427040f shader_recompiler: Even more instructions 2024-06-22 18:09:04 +03:00
IndecisiveTurtle 30199fe701 kernel: Add scePthreadExit 2024-06-22 18:09:04 +03:00
IndecisiveTurtle 30351ad112 linker: Fix TLS for dynamic modules
* Technically not fully accurate but it works. TlsGetAddr should handle dynamic allocation of TLS blocks
2024-06-22 18:09:04 +03:00
IndecisiveTurtle 2506a285f4 kernel: Implement some functions 2024-06-22 18:09:03 +03:00
IndecisiveTurtle 7bdaeafdfd kernel: Make sceKernelUsleep interruptible 2024-06-22 18:09:03 +03:00
IndecisiveTurtle 8850c2f4be shader_recompiler: Add more instructions 2024-06-22 18:09:03 +03:00
georgemoralis 7519d4610c added missing buttons and analog buttons to keyboard 2024-06-21 14:37:49 +03:00
georgemoralis 19edb8155f fixed stupid directory iterator issue 2024-06-20 22:29:08 +03:00
georgemoralis 1b2c3ccc42 better dirents 2024-06-20 21:13:17 +03:00
georgemoralis 49601f58ed initial dents support 2024-06-20 18:09:40 +03:00
georgemoralis 0325e4795a posix_pthread_yield , scePadGetHandle 2024-06-20 17:10:14 +03:00
georgemoralis b17a57cb3d analog sticks works better now 2024-06-17 14:33:03 +03:00
georgemoralis 91e6d35e89 analog support via keyboard 2024-06-17 13:42:39 +03:00
georgemoralis 48d6ccd9bb partially added analog controls 2024-06-17 12:52:25 +03:00
georgemoralis 57c65cadb8 fixes to the old pad code 2024-06-17 09:02:06 +03:00
georgemoralis 9501bd77d4 clang fix 2024-06-17 09:02:06 +03:00
georgemoralis 0aa29428e1 new pad module structured using modulegenerator , added common pad structures and function signatures 2024-06-17 09:02:06 +03:00
psucien 5595da0a24 final touch: assert instead of log crit to crash earlier 2024-06-17 00:42:26 +02:00
psucien 0c32ea242b shader_recompiler: list all missing instructions during translation pass 2024-06-16 23:45:39 +02:00
psucien 396812bab6 shader_recompiler: added V_TRUNC VOP1/3 (496) 2024-06-16 23:39:45 +02:00
psucien d3ab612bdc shader_recompiler: pretty print for missing shader instructions 2024-06-16 23:11:36 +02:00
psucien ab4cc8b218 texture_cache: return back image view usage override 2024-06-16 22:30:18 +02:00
psucien 6e7fd21338 renderer_vulkan: simplified sRGB hack 2024-06-16 22:29:23 +02:00
psucien 3f92a68129 renderer_vulkan: BC3 formats conversion 2024-06-16 22:29:04 +02:00
psucien d054c3e0ad shader_recompiler: added V_MAX VOP2 (431, 433) 2024-06-16 21:34:23 +02:00
psucien be67fdc9c9 shader_recompiler: correct format for SSBO store op 2024-06-16 21:21:19 +02:00
psucien 37ceea2314 renderer_vulkan: added log entry for CS compiling 2024-06-16 20:51:35 +02:00
psucien 54f8616d6a shader_recompiler: added MUL_HI VOP2 (896) 2024-06-16 20:39:53 +02:00
psucien 1fc86a6c9d shader_recompiler: added SOPK MOVK (45) 2024-06-16 20:26:24 +02:00
raziel1000 52f3b74fdd Missing sceKernelUuidCreate nid 2024-06-15 17:01:20 -06:00
TheTurtle ca25333a1e
core: Address a few more regressions (#202)
* tls: Actaully fix TLS on linux

* emulator: Remove nptoolkit

* Not quite supported yet, makes games misbehave

* kernel: Back to SCHED_OTHER

* kernel: Remove unused signal function

* address_space: Fix Unmap call on linux

* clang format
2024-06-16 01:50:07 +03:00
psucien b02ec385b2 video_out: proper sRGB output workflow 2024-06-15 23:24:34 +02:00
psucien b2b45bf480 video_core: added support for alternate CB channels order 2024-06-15 23:24:33 +02:00
psucien b9602afc82 renderer_vulkan: sRGB swapchain 2024-06-15 23:24:33 +02:00
psucien e6f773f950 videoout: register buffers in texture cache at VO creation time 2024-06-15 23:24:33 +02:00
psucien bdb235716a texture_cache: don't set color attachment usage flag for packed images 2024-06-15 23:24:33 +02:00
psucien fd8ceacef7 video_core: shaders hash switched to one from binary header 2024-06-15 23:24:32 +02:00
psucien 37cbdad57b renderer_vulkan: static vector for vertex buffers ranges 2024-06-15 23:20:14 +02:00
psucien a0fe34b01f tracy: added PthreadMutex markup 2024-06-15 23:20:14 +02:00
psucien 142ad54876 gnmdriver: fix for pm4 dump name in some erroneous cases 2024-06-15 23:20:14 +02:00
psucien be6f523b6e renderer_vulkan: fixed buffers alignments 2024-06-15 23:20:13 +02:00
psucien 1e69f83d9e libraries: fix for Windows crash during LLE libc initialization 2024-06-15 20:04:36 +02:00
Younes 0fa7d5d02c
- sceKernelUuidCreate, sceAppContentAppParamGetInt, sceAppContentTemporaryDataMount2 (#199)
- PlayGo
- stub libusbd
-added /temp0 and /data mounts at emu start.
(Ghost Files: Memory of a Crime, Abyss: The Wraiths of Eden)
- some posix functions
2024-06-15 17:51:51 +03:00
TheTurtle c5d1d579b1
core: Many things (#194)
* video_core: Add a few missed things

* libkernel: More proper memory mapped files

* memory: Fix tessellation buffer mapping

* Cuphead work

* sceKernelPollSema fix

* clang format

* fixed ngs2 lle loading and rtc lib

* draft pthreads keys implementation

* fixed return codes

* return error code if sceKernelLoadStartModule module is invalid

* re-enabled system modules and disable debug in libs.h

* Improve linux support

* fix windows build

* kernel: Rework keys

---------

Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
2024-06-15 14:36:07 +03:00
raziel1000 080ec3e23e Added LibPngDec
(tested with Metal Slug 3, Risk of Rain, Deadbolt and Nidhogg)
2024-06-14 01:37:26 -06:00
TheTurtle 31bd502764
core: Fixup linux support (#195)
* tls: Implement for linux

* core: Implement memory manager for linux
2024-06-14 00:58:57 +03:00
georgemoralis 400d910743
Merge pull request #184 from shadps4-emu/externals/tracy
Tracy profiler
2024-06-12 17:19:44 +03:00
psucien 64569ff737 tracy: guards for missing vk profiler context 2024-06-11 22:57:37 +02:00