Comments (7)
I'm debating whether this should be a problem or not. The reason Sony chose to put these modules as weak imports is because they affect game load time and memory usage. If we encourage this, it may lead to plugins causing some slowdown for games. I think the workaround is find if you absolutely need to use some module.
from taihen.
I have got some thoughts about it:
- I believe that sysmodule loads some modules with special arguments. Those can't be passed via config.txt
- A future plugins manager wouldn't know which modules belong to which plugin in order to enable/disable correctly.
However there's another workaround which would require splitting a plugin into two suprx where the first one loads the neccessary libraries via sysmodule and the second one can finally import them.
from taihen.
The problem here is that the Vita is not designed to load suprx with weak imports (it seems to be limited to main app). Maybe I'm missing something and I will dig more into it, but it won't be easy to add without making some significant changes to modulemgr.
from taihen.
Can you test this? Manually modify the velf so in the import structure for that library, change the flags field (offset 4), set the uint16_t flags to 0x8
and see if that will work. If it does, I'll change the toolchain.
from taihen.
I can confirm that changing the flags works.
from taihen.
Cool, guess we can make a change in the toolchain.
from taihen.
This will be tracked in the toolchain vitasdk/vita-toolchain#71 and will be closed here since no additional changes will have to be made to taiHEN to support this.
from taihen.
Related Issues (20)
- Problems in plugin "newlib" HOT 2
- taihen hook can't work. HOT 1
- Plugins don't load for some apps/games HOT 1
- undefined reference to taiMemcpy functions even with proper linking HOT 1
- Modules with sceAppUtil or sceAppMgr imports does not work HOT 2
- Vita kernel limits the number of pre-loaded modules HOT 1
- Add start module handler HOT 8
- Recovery combo
- Kernel plugins and ensö HOT 4
- Pass in plugin options in config.txt HOT 3
- Increase time to hold L on PSTV
- Improve config.txt reloading
- Linker error when building c8e6e6a HOT 1
- Improve reloading config.txt HOT 1
- Support for a *GAME section HOT 5
- PSTV controller doesn’t sync when loaded on boot
- Exclude plugin for certain app/game
- crash when hooking sceIoClose() in a kernel module HOT 20
- Unloading kernel module exposing syscalls not working on 3.68 HOT 1
- How does *ALL section "exactly" works? HOT 9
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from taihen.