Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PPTC Profiles #370

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open

PPTC Profiles #370

wants to merge 6 commits into from

Conversation

LotP1
Copy link
Contributor

@LotP1 LotP1 commented Dec 10, 2024

Added functionality that allows ExeFS mods to compile to their own PPTC Profile and therefore store PTC data between sessions.
The feature calculates the hash of the currently loaded ExeFS mods and stores the PPTC data in a profile that matches said hash, so you can have multiple ExeFS loadouts without causing issues. This includes different versions of the same mod as their hashes will be different.
Using this PR should be seamless as the JIT Sparse PR already laid the groundwork for PPTC Profiles and this PR just allows ExeFS mods to load and store their own profiles besides the default profile.

❗❗❗ WARNING! ❗❗❗
Using this fork will update your PPTC profile version, which means the PPTC profile will be invalidated if you try to run a PR/Build/Branch that does not include this PR!
This is only relevant for the default PPTC Profile and because of that i don't recommend running this PR without ExeFS mods!

@github-actions github-actions bot added cpu An issue with ARMeilleure, the JIT, or Hypervisor horizon Affects the Horizon OS HLE components. labels Dec 10, 2024
@LotP1 LotP1 force-pushed the PPTC-profiles branch 3 times, most recently from 605b422 to ebc9441 Compare December 15, 2024 16:46
this is currently broken with Exlaunch mods that use hooks
The stream hadn't been reset causing all hashes to be the same in most cases
- Added blacklist status to FunctionProfile
- Added PPTC Info file updater from v5518 and updated old updater logic to allow multiple update passes
- Added blacklist check to PPTC Cache loading
- Added marking functions as blacklisted if they do not yet exist at PPTC translation time
- Logger now shows how many functions were blacklisted when translating new functions to PPTC cache
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cpu An issue with ARMeilleure, the JIT, or Hypervisor horizon Affects the Horizon OS HLE components.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant