Hello,
I try to run my own emu with rtld, and I have this problem : all the games I tried output the message "[rtld] unresolved symbol : _init_libc0_" (with svcOutputDebugString), after millions of opcodes executed.
- I load rtld, main, subsdk*, sdk at address 0x8000000 (pages are aligned on a 4K border)
- Main thread context is located at adress 0x6000000 (does not seems to raise a problem, because memory is scanned from 0x8000000)
- TLS is located at address 0x7000000 (seems not used until I get my problem)
- Modules are successfully scanned with svcQueryMemory
- When MemoryType is Code and Permission is Read-Execute, MOD0 magic word is then tested (with result OK).
- It does some other stuff after that.
- There is no other service used other than svcQueryMemory
- no heap set for the moment (not used until there)
So I don't know if I have an error in my interpreter, or if I have missed something else.
Another thing :
- Ryujinx emu sets MemoryType = Normal (value=2) for read-only segments, where yuzu uses MemoryState::Static (value=4) for that. Who is right? I tried both and it does not seem to change anything.
Thanks if you can help me.