[PR #2721] [MERGED] Minor libkernel changes #2935

Closed
opened 2026-02-27 22:01:49 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/shadps4-emu/shadPS4/pull/2721
Author: @StevenMiller123
Created: 3/29/2025
Status: Merged
Merged: 3/29/2025
Merged by: @georgemoralis

Base: mainHead: homebrew-stuff


📝 Commits (6)

  • e345f95 sceKernelDebugOutText
  • c442fc7 Implement kernel exit
  • 9772098 Improved implementations for sceKernelDebugRaiseException functions
  • a39b3e6 Add missing exports
  • eed26ae Clang
  • 3ef7fd3 Merge branch 'shadps4-emu:main' into homebrew-stuff

📊 Changes

7 files changed (+61 additions, -5 deletions)

View changed files

📝 CMakeLists.txt (+2 -0)
src/core/libraries/kernel/debug.cpp (+20 -0)
src/core/libraries/kernel/debug.h (+14 -0)
📝 src/core/libraries/kernel/kernel.cpp (+2 -0)
📝 src/core/libraries/kernel/process.cpp (+6 -0)
📝 src/core/libraries/kernel/threads/exception.cpp (+12 -5)
📝 src/core/libraries/kernel/threads/pthread_spec.cpp (+5 -0)

📄 Description

This PR handles a few functions I spotted while messing around with Apollo Save Tool.

  • Adds libkernel exports for posix_pthread_key_create, posix_pthread_getspecific, and posix_pthread_setspecific
  • Implements the libkernel exit function with an unreachable message containing the status code.
  • Implements sceKernelDebugOutText based on hardware observations.
  • More accurately implements sceKernelDebugRaiseException and sceKernelDebugRaiseExceptionOnReleaseMode, and modifies the unreachable to contain the error code passed to the function.

So far this doesn't appear to regress anything, though I don't have a test case for sceKernelDebugRaiseException at the moment.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/shadps4-emu/shadPS4/pull/2721 **Author:** [@StevenMiller123](https://github.com/StevenMiller123) **Created:** 3/29/2025 **Status:** ✅ Merged **Merged:** 3/29/2025 **Merged by:** [@georgemoralis](https://github.com/georgemoralis) **Base:** `main` ← **Head:** `homebrew-stuff` --- ### 📝 Commits (6) - [`e345f95`](https://github.com/shadps4-emu/shadPS4/commit/e345f950b39b3dece2b3dbdd365968782ff3740e) sceKernelDebugOutText - [`c442fc7`](https://github.com/shadps4-emu/shadPS4/commit/c442fc71d459beec6ac449ebb5f564f38c0b19fb) Implement kernel exit - [`9772098`](https://github.com/shadps4-emu/shadPS4/commit/97720986ac46b9a80d983330364e64c6b22a7ae4) Improved implementations for sceKernelDebugRaiseException functions - [`a39b3e6`](https://github.com/shadps4-emu/shadPS4/commit/a39b3e63f34a9763dbb34b7bbaa2a2a101fc85b8) Add missing exports - [`eed26ae`](https://github.com/shadps4-emu/shadPS4/commit/eed26ae56db5129a04eb69550d33581602d822f8) Clang - [`3ef7fd3`](https://github.com/shadps4-emu/shadPS4/commit/3ef7fd3862396cdb7884f553d890c521b859f98d) Merge branch 'shadps4-emu:main' into homebrew-stuff ### 📊 Changes **7 files changed** (+61 additions, -5 deletions) <details> <summary>View changed files</summary> 📝 `CMakeLists.txt` (+2 -0) ➕ `src/core/libraries/kernel/debug.cpp` (+20 -0) ➕ `src/core/libraries/kernel/debug.h` (+14 -0) 📝 `src/core/libraries/kernel/kernel.cpp` (+2 -0) 📝 `src/core/libraries/kernel/process.cpp` (+6 -0) 📝 `src/core/libraries/kernel/threads/exception.cpp` (+12 -5) 📝 `src/core/libraries/kernel/threads/pthread_spec.cpp` (+5 -0) </details> ### 📄 Description This PR handles a few functions I spotted while messing around with Apollo Save Tool. - Adds libkernel exports for `posix_pthread_key_create`, `posix_pthread_getspecific`, and `posix_pthread_setspecific` - Implements the libkernel `exit` function with an unreachable message containing the status code. - Implements `sceKernelDebugOutText` based on hardware observations. - More accurately implements `sceKernelDebugRaiseException` and `sceKernelDebugRaiseExceptionOnReleaseMode`, and modifies the unreachable to contain the error code passed to the function. So far this doesn't appear to regress anything, though I don't have a test case for `sceKernelDebugRaiseException` at the moment. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-27 22:01:49 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/shadPS4#2935
No description provided.