Commit graph

525 commits

Author SHA1 Message Date
TheTurtle c4c1dfaa62 fs: Use proper append operator 2024-07-15 15:42:35 +03: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
IndecisiveTurtle 16a778745d fs: Fix case of getting the mount itself 2024-07-15 14:50:28 +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 ff9a42621c tls: Use gs segment for linux 2024-07-15 01:48:57 +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
Live session user 958b894706 Move game_data to RW directory inside user folder for linux 2024-07-13 16:44:13 -07: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. 3a7d2ef6eb Fix Linux builds 2024-07-11 15:16:50 +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
georgemoralis a67c24a761 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 51557590be gnmdriver: added sceGnmFindResourcesPublic stub 2024-07-07 13:47:01 +02:00
TheTurtle 020e69dfb4 memory: Set virtual query offset 2024-07-07 01:26:17 +03: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 eee0a0cb52 .... 2024-07-04 01:57:03 -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
georgemoralis 827260e2fb Merge pull request #230 from shadps4-emu/stabilization12
reduced logging
2024-07-01 23:53:59 +03:00
georgemoralis 8ccd53d7f1 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 b72115bed4 shader_recompiler: More instructions 2024-07-01 22:42:45 +03:00
IndecisiveTurtle 0a900115e8 video_core: Fix some regressions 2024-07-01 18:26:22 +03:00
IndecisiveTurtle 20e9012490 code: Add additional logging during init 2024-07-01 13:56:14 +03:00
IndecisiveTurtle 3a3cb0c0a5 tls: Switch to trace logs 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
IndecisiveTurtle 383900bdbf tls: Fix linux crash 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 8a1f9d1dd4 linker: More null check 2024-06-26 18:05:31 +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
Alexandre Bouvier aae827786d fix system include paths 2024-06-25 18:17:16 +02: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
georgemoralis 1d0262da24 missing touchpad reset in scePadReadState 2024-06-24 13:26:18 +03:00
georgemoralis 9a129480a0 added sceKernelPwrite 2024-06-24 13:25:50 +03:00
psucien e6e3aa0080 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 7b4964dadd more clang format fix (final) 2024-06-22 18:17:40 +03:00
georgemoralis 1c5b3a8d1a clang fix 2024-06-22 18:12:04 +03:00
IndecisiveTurtle f830b08b3f linker: Set rela bits for all symbol types 2024-06-22 18:09:04 +03:00
IndecisiveTurtle ca6bf44589 kernel: Add noreturn 2024-06-22 18:09:04 +03:00
IndecisiveTurtle 9844aaaec2 kernel: Add scePthreadExit 2024-06-22 18:09:04 +03:00
IndecisiveTurtle e325574909 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 28f2de3e41 kernel: Implement some functions 2024-06-22 18:09:03 +03:00
IndecisiveTurtle b6fbf02849 kernel: Make sceKernelUsleep interruptible 2024-06-22 18:09:03 +03:00
georgemoralis 08d31edb45 added missing buttons and analog buttons to keyboard 2024-06-21 14:37:49 +03:00
georgemoralis c8a736c7c6 fixed stupid directory iterator issue 2024-06-20 22:29:08 +03:00
georgemoralis e09392291a better dirents 2024-06-20 21:13:17 +03:00
georgemoralis f170c61229 initial dents support 2024-06-20 18:09:40 +03:00
georgemoralis d81ef0dd9f posix_pthread_yield , scePadGetHandle 2024-06-20 17:10:14 +03:00
georgemoralis ba1f459a23 partially added analog controls 2024-06-17 12:52:25 +03:00
georgemoralis 78204fce27 fixes to the old pad code 2024-06-17 09:02:06 +03:00
georgemoralis 7ebe9380e2 clang fix 2024-06-17 09:02:06 +03:00
georgemoralis 1e00fa5664 new pad module structured using modulegenerator , added common pad structures and function signatures 2024-06-17 09:02:06 +03:00
raziel1000 6516a3a12e Missing sceKernelUuidCreate nid 2024-06-15 17:01:20 -06:00
TheTurtle c725e18f01 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 e5c27356f2 videoout: register buffers in texture cache at VO creation time 2024-06-15 23:24:33 +02:00
psucien 42af4aab41 video_core: shaders hash switched to one from binary header 2024-06-15 23:24:32 +02:00
psucien 95e3bd049c tracy: added PthreadMutex markup 2024-06-15 23:20:14 +02:00
psucien b8c57ddcf8 gnmdriver: fix for pm4 dump name in some erroneous cases 2024-06-15 23:20:14 +02:00
psucien 8429fa1c0e libraries: fix for Windows crash during LLE libc initialization 2024-06-15 20:04:36 +02:00
Younes 825657ced1 - 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 556d88ecb4 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 0fce689830 Added LibPngDec
(tested with Metal Slug 3, Risk of Rain, Deadbolt and Nidhogg)
2024-06-14 01:37:26 -06:00
TheTurtle 1e5fed2e8a core: Fixup linux support (#195)
* tls: Implement for linux

* core: Implement memory manager for linux
2024-06-14 00:58:57 +03:00
georgemoralis 732bd3c69b Merge pull request #184 from shadps4-emu/externals/tracy
Tracy profiler
2024-06-12 17:19:44 +03:00
georgemoralis e749836126 fixed windows qt build 2024-06-11 23:26:13 +03:00
georgemoralis 53fc8dec8c really fixed typo 2024-06-11 22:41:35 +03:00
georgemoralis 81e4000432 fix typo 2024-06-11 19:36:17 +03:00
georgemoralis 0217e43fb9 added libScePosix nanosleep 2024-06-11 16:42:15 +03:00
psucien ce62ae31e5 tracy: basic markup and project palette 2024-06-11 12:14:33 +02:00
georgemoralis fbca6f3302 Merge pull request #190 from shadps4-emu/stabilization_three
Stabilization three
2024-06-11 07:25:55 +03:00
raziel1000 7ba9ad6cca - Added trophy decryption when extracting a fpkg. trp icons and xmls are dumped to game_data/<title> (can be restored if deleted by accident by opening the trophy viewer)
- Added a trophy viewer (right click on game ==> trophy viewer)
- Enabled Run button.
- Switched gui settings to toml.
- Added recent files (6 max)
- Applied @raphaelthegreat suggestions and corrections (Thanks a lot).
- Fixed several bugs and crashes.
- Full screen should disabled by default.
- Added region in list mode.
- Added a simple temp elf list widget.
- Added messages when extracting pkg (ex: installing a patch before the game...etc)
2024-06-10 20:42:21 -06:00
psucien 1dd9f7a99e timer_management: sceKernelUsleep on <1ms delays 2024-06-10 23:48:06 +02:00
TheTurtle 752995e209 kernel: Implement gettimeofday + other misc fixes (#187)
* kernel: Add gettimeofday

* kernel: Move sceKernelReleaseDirectMemory where it belongs

* savedata: Stub sceSaveDataDialogUpdateStatus to return finished

* memory: Add lock to VirtualQuery and remove debug print

* clang format

* fixed linux build?

* special case for sceKernelWrite (stdin,stdout,stderr)

* special case for case savedata mount

* reduced mutex spamming

* added missing default rwlock attributes init

* kernel: Add more sleep functions

* file_system: Add some functions

* memory: Missed adding some functions

* kernel: Moved some functions to time

* kernel: Fix build error

---------

Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
2024-06-10 22:59:12 +03:00
georgemoralis f3a88e100a fixed posix_stat error return 2024-06-10 18:09:22 +03:00
georgemoralis e4e9383779 fixed possible nullptr crash on rwlock create 2024-06-10 18:01:50 +03:00
raphaelthegreat d151558b0f Fix linux build 2024-06-10 12:13:24 +03:00
raphaelthegreat 5f97816fd7 core: Rework memory manager 2024-06-10 02:13:44 +03:00
georgemoralis 953f9de448 Merge pull request #174 from shadps4-emu/kernel_stuff
- sceKernelOpen: added rdwr and append modes
2024-06-09 08:26:03 +03:00
raziel1000 6e4c970c5a added sceKernelSleep and small fix on usleep 2024-06-08 18:43:08 -06:00
georgemoralis 191d2d0b91 Merge pull request #175 from shadps4-emu/missing_gnm_calls
Additional GnmDriver functions
2024-06-09 00:58:45 +03:00
psucien 80be54140a gnmdriver: sceGnmDrawInitDefaultHardwareState175 added 2024-06-08 23:42:09 +02:00
georgemoralis e4c3825e31 clang format fix 2024-06-09 00:26:12 +03:00
georgemoralis 337a0ee728 added sceKernelTriggerUserEvent,sceKernelDeleteUserEvent 2024-06-09 00:23:58 +03:00
georgemoralis 9acc5460c4 partial sceKernelFStat 2024-06-08 23:53:38 +03:00
georgemoralis 91343f3cf5 added sceKernelPread 2024-06-08 23:25:20 +03:00
georgemoralis 50186055d3 added rtc and disc_map modules 2024-06-08 22:41:25 +03:00
raziel1000 2474d1ec43 posix_pthread_mutex_trylock
posix_pthread_attr_setdetachstate
posix_pthread_attr_destroy
posix_pthread_create_name_np
posix_pthread_join
2024-06-08 11:13:02 -06:00
georgemoralis e868993138 posix_usleep,posix_pthread_equal 2024-06-08 20:01:28 +03:00
raphaelthegreat e8cb8003b8 address_space: Don't reserve space again 2024-06-08 19:10:32 +03:00
georgemoralis f7a5e883f7 hackish random/urandom support 2024-06-08 10:22:28 +03:00
georgemoralis 072540a40d fixed sceKernelClose when decriptor is negative value 2024-06-08 09:56:57 +03:00
raziel1000 10b8e9a3bf - sceKernelOpen: added rdwr and append modes
- saveDataMount: added mount mode 9, 28 and 34
- pthread: added a bunch of needed functions
- mem: added sceKernelMapNamedDirectMemory
2024-06-08 00:23:55 -06:00
psucien 92bf7b35d4 libs: gnmdriver: get tessellation ring factor address 2024-06-08 01:19:52 +02:00
psucien 99e885bc9f libs: gnmdriver: map compute queue 2024-06-08 01:19:52 +02:00
georgemoralis c09c2da147 RWLocks implementation (#171)
* added dummy rwlock

* implemented part of rwlock functions (WIP)

* implemented the most important functions for rwlocks
2024-06-07 21:30:26 +03:00
TheTurtle 718ade970f video_core: Add depth buffer support and fix some bugs (#172)
* memory: Avoid crash when alignment is zero

* Also remove unused file

* shader_recompiler: Add more instructions

* Also fix some minor issues with a few existing instructions

* control_flow: Don't emit discard for null exports

* renderer_vulkan: Add depth buffer support

* liverpool: Fix wrong color buffer number type and viewport zscale

* Also add some more formats
2024-06-07 16:26:43 +03:00
raphaelthegreat 433bdf9aaa kernel: Fix stack corruption from OrbisTimesec 2024-06-05 22:27:28 +03:00
TheTurtle 4779381eec core: Properly implement TLS (#164)
* core: Split module code from linker

* linker: Properly implement thread local storage

* kernel: Fix a few memory functions

* kernel: Implement module loading

* Now it's easy to do anyway with new module rework
2024-06-05 22:08:18 +03:00
psucien d43ee1051c fix for name of the first dumped cmdb 2024-06-02 18:59:41 +02:00
psucien 09bacf155e Fixes and QoL (#159)
* to ensure that we're not unlocking submits too early

* a final touch

* video_core: texture_cache: fix for page table corruption

* core: linker: a name for the game main thread

* libraries: gnmdriver: an option to dump application command lists

* libraries: kernel: named guest threads

* video_core: added a heuristic for determination of CB/DB surface extents

* fix for rebase leftover
2024-06-01 23:50:03 +03:00
georgemoralis 088971f5b9 added app_content module 2024-05-31 15:03:05 +03:00
georgemoralis 91d888d4cd fixed a case in sceKernelCreateEventFlag (found in Super Meat boy) 2024-05-30 20:16:16 +03:00
georgemoralis 1b9bafa57e added sceSaveDataMount needed for Cursed Castilla 2024-05-30 19:14:06 +03:00
georgemoralis 924d5ce64b scePthreadCondTimedwait needed for Hyper Light Drifter 2024-05-30 19:14:06 +03:00
georgemoralis 632007a3c7 fixed sonic mania savedata 2024-05-30 19:14:06 +03:00
raphaelthegreat e637f52076 video_core: Moar shader instruction 2024-05-30 18:17:54 +03:00
raphaelthegreat 99d20d4119 video_core: Implement basic compute shaders and more instructions 2024-05-30 01:39:24 +03:00
psucien 4e58f3d6d4 clang fmt 2024-05-29 20:31:34 +02:00
psucien 8229f4a76b videoout, platform: fix for ooo irqs 2024-05-29 16:02:51 +02:00
psucien 4de443dd92 libraries: libc: fix for FSin implementation 2024-05-29 16:02:49 +02:00
georgemoralis 55a73279cf improvements in definations 2024-05-28 18:24:42 +03:00
georgemoralis 26c862c746 set,poll event flag 2024-05-28 15:13:56 +03:00
georgemoralis b8ced0db35 event flag implementation from previous pr 2024-05-28 14:29:53 +03:00
raphaelthegreat 05c4542301 video_core: Address some feedback 2024-05-27 22:13:55 +03:00
raphaelthegreat 8bd9bf1a7d video_core: Add image support 2024-05-27 18:25:45 +03:00
georgemoralis f850679b6e Merge pull request #146 from shadps4-emu/video_out/new_gpu_frontend
video_core: initial support for CE and ASC queues
2024-05-27 13:50:25 +03:00
TheTurtle 22b7ae4b63 video_core: Add constant buffer support (#147) 2024-05-26 15:51:35 +03:00
psucien b3c26564cd video_core: initial support for CE and ASC queues 2024-05-26 12:39:30 +02:00
TheTurtle 0aa04c60cb video_core: Bringup some basic functionality (#145)
* video_core: Remove hack in rasterizer

* The hack was to skip the first draw as the display buffer had not been created yet and the texture cache couldn't create one itself. With this patch it now can, using the color buffer parameters from registers

* shader_recompiler: Implement attribute loads/stores

* video_core: Add basic vertex, index buffer handling and pipeline caching

* externals: Make xxhash lowercase
2024-05-25 15:33:15 +03:00
psucien 3f6de86eb6 video_core: a fix for multi submits processing (temporary code) 2024-05-22 22:20:33 +02:00
psucien 74f92d0dae platform: restored use of magic_enum 2024-05-22 20:20:13 +02:00
georgemoralis 42b31266de fixed a few compiler issues 2024-05-22 14:18:05 +03:00
TheTurtle 4380066a90 video: Import new shader recompiler + display a triangle (#142) 2024-05-22 01:35:12 +03:00
georgemoralis 5f4ccba7c1 improved sceKernelWaitEqueue 2024-05-18 10:02:40 +03:00
georgemoralis e7e7112687 added _read in libkernel 2024-05-18 09:51:47 +03:00
georgemoralis 3d215a9911 fixed sceKernelGetCompiledSdkVersion thanks raziel1000 2024-05-18 09:51:47 +03:00
georgemoralis baa45d7e17 added sceKernelGetCompiledSdkVersion (which return games system version ) 2024-05-18 09:51:46 +03:00
georgemoralis 721916dffb clang format 2024-05-18 09:51:46 +03:00
georgemoralis f6e0cab1f0 added scePthreadEqual 2024-05-18 09:51:46 +03:00