Borchev
867f38fe13
Add pthread_attr_getstacksize thunk
2024-07-30 12:37:05 -07:00
georgemoralis
c1d01709be
kernel: Implement sceKernelSetVirtualRangeName ( #338 )
...
* Fix in searchFree should fix #337
* clang format fix
* sceKernelSetVirtualRangeName implementation
* improved vaddr conversion
* updated VirtualQuery to include name too
* unmap also removed name thanks @red_prig
* fixed copy...
2024-07-29 19:08:06 +03:00
squidbus
43d60a8ac9
Add sem_timedwait polyfill for macOS.
2024-07-28 16:42:33 -07:00
Dzmitry Dubrova
aa7c8ca2b6
Implement some pthread calls ( #332 )
2024-07-28 18:43:44 +03:00
TheTurtle
0d6edaa0a0
Move presentation to separate thread/improve sync ( #303 )
...
* video_out: Move presentation to separate thread
* liverpool: Better sync for CPU flips
* driver: Make flip blocking
* videoout: Proper flip rate and vblank management
* config: Add vblank divider option
* clang format
* videoout: added `sceVideoOutWaitVblank`
* clang format
* vk_scheduler: Silly merge conflict
* externals: Add renderdoc API
* clang format
* reuse
* rdoc: manual capture trigger
* clang fmt
---------
Co-authored-by: psucien <168137814+psucien@users.noreply.github.com>
2024-07-28 15:54:09 +02:00
TheTurtle
d84b4adc83
semaphore: Yet another race condition fix ( #327 )
2024-07-27 17:18:18 +03:00
georgemoralis
2841eba538
added /dev/urandom
2024-07-26 08:50:39 +03:00
georgemoralis
a4912b8245
commented sem_timedwait for linux untill @squidbus fix it
2024-07-26 08:16:32 +03:00
georgemoralis
64d305faeb
cleanup memory_management
2024-07-26 08:08:47 +03:00
raziel1000
fa76a723ad
Applied feedback from @raphaelthegreat
2024-07-26 07:59:35 +03:00
raziel1000
f29293c9fb
thread_management: some pthread functions
2024-07-26 07:53:18 +03:00
TheTurtle
a2cd1669b6
memory: Cleanups and refactors ( #324 )
...
* memory: Various fixes
* Added (Partial) sceKernelBatchMap/sceKernelBatchMap2
* memory: Rename and implement batch unmap
* memory: Remove uneeded assert
* memory: Commonize free search routine
* memory: Contains check is inclusive
* memory: Address some alignment issues
* clang format
---------
Co-authored-by: raziel1000 <ckraziel@gmail.com>
2024-07-25 23:01:12 +03:00
georgemoralis
36ec7a1a43
Merge pull request #312 from Borchev/main
...
Add sceKernelGetDirectMemoryType, update sceKernelReserveVirtualRange
2024-07-21 22:52:50 +03:00
squidbus
426d82d07b
Only use date library on macOS.
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
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
IndecisiveTurtle
b6f011c8f6
event_queue: Add clear flag to events and don't return error
2024-07-17 14:50:26 +03:00
squidbus
3ff11818ab
Return EBUSY from sceKernelPollEventFlag instead of ETIMEDOUT.
2024-07-16 04:53:37 -07: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
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
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
dd7d232ac3
event_queues: Use std placeholders
2024-07-15 01:28:08 +03:00
raziel1000
02cba0100d
Some functions called by Stardew Valley
2024-07-14 23:23:11 +03:00
georgemoralis
b07bbecab4
replace unreachable with default return in sceKernelClockGettime
2024-07-14 23:23:10 +03:00
psucien
746792eda0
libraries: kernel: added sceKernelGetEventId
2024-07-14 18:20:31 +02: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
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
georgemoralis
4ae879875e
scePthreadMutexTimedlock added
2024-07-05 15:23:35 +03: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
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
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
1968b2aa81
...
2024-07-04 01:54:50 -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
IndecisiveTurtle
a603bc7d88
shader_recompiler: More instructions
2024-07-01 22:42:45 +03:00
IndecisiveTurtle
ad10020836
video_core: Fix a few problems
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
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
georgemoralis
1413a70a92
added posix error write to errno
2024-06-30 10:40:06 +03:00
georgemoralis
084b2ab6d5
added sceKernelDeleteEventFlag
2024-06-30 10:11:44 +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
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
georgemoralis
521ff4d14b
clang format fixes
2024-06-26 20:32:08 +03:00
IndecisiveTurtle
c8ed338d5a
kernel: Const correctness
2024-06-26 18:24:06 +03:00
IndecisiveTurtle
e94149340e
kernel: Fix pread and pwrite
2024-06-26 18:09:58 +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
8f45be7d44
Merge pull request #213 from shadps4-emu/hle/trophies
...
A better stub for trophies
2024-06-25 18:38:35 +03:00
psucien
3b2a312f15
kernel: thread_management: silence compilation warning
2024-06-25 09:56:19 +02:00
georgemoralis
6d2b2779ea
added sceKernelPwrite
2024-06-24 13:25:50 +03:00
georgemoralis
94b9992d99
more clang format fix (final)
2024-06-22 18:17:40 +03:00
georgemoralis
11a3906243
clang fix
2024-06-22 18:12:04 +03:00
IndecisiveTurtle
11bfdf2348
kernel: Add noreturn
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
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
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
a0fe34b01f
tracy: added PthreadMutex markup
2024-06-15 23:20:14 +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
8362e2c497
fixed windows qt build
2024-06-11 23:26:13 +03:00
georgemoralis
8612907831
really fixed typo
2024-06-11 22:41:35 +03:00
georgemoralis
991d44bde6
fix typo
2024-06-11 19:36:17 +03:00
georgemoralis
e8fa9e0e89
added libScePosix nanosleep
2024-06-11 16:42:15 +03:00
psucien
7fcb758da2
timer_management: sceKernelUsleep on <1ms delays
2024-06-10 23:48:06 +02:00
TheTurtle
8ce58389ad
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
6f8d99fbf2
fixed posix_stat error return
2024-06-10 18:09:22 +03:00
georgemoralis
3318f12639
fixed possible nullptr crash on rwlock create
2024-06-10 18:01:50 +03:00