I don't understand, you're trying to find a way to install CIAs through the eshop with the help of HANS and a code replacement ? Is that correct ?
I don't understand, you're trying to find a way to install CIAs through the eshop with the help of HANS and a code replacement ? Is that correct ?
I don't think "invalidated icache" is an error - it's just the last text it shows before it then crashes loading the code. When you run a ROMhack or load the eshop normally it also shows that message briefly, but then loads successfully.Also just tried this before finding thread, got invalid icache. It looks like it verifies the size comparing it to the allocation it has or something??
The sections in the .code file (.text, .rodata and .data) needs to be aligned and the same size, we're working on it.Also just tried this before finding thread, got invalid icache. It looks like it verifies the size comparing it to the allocation it has or something??
I attempted running Eshop code and romfs on game card Super Mario 3DLand. Gonna watch this thread because I really want to get CIA installation on >9.2! (sorry if this post is badly formatted I'm new to this )
Never noticed that, so it is hanging before running the code? It isn't a 'deep' hang because you can use L+R+Down+B to return, maybe it's being done purposely?I don't think "invalidated icache" is an error - it's just the last text it shows before it then crashes loading the code. When you run a ROMhack or load the eshop normally it also shows that message briefly, but then loads successfully.
Ok, sorry posted at same time!The sections in the .code file (.text, .rodata and .data) needs to be aligned and the same size, we're working on it.
The sections in the .code file (.text, .rodata and .data) needs to be aligned and the same size, we're working on it.
Actually, I think that the 3DS just fails to start the application. However, HANS doesn't crash. The application does.Never noticed that, so it is hanging before running the code? It isn't a 'deep' hang because you can use L+R+Down+B to return, maybe it's being done purposely?
According to Citra's source and 3dbrew, the sections location are in the exheader. However, the ones I got are incorrect. Maybe the decryption went wrong.More info?
Ah, you see I need to get educated on this stuff with my observations, my head is clouded by the idea and what this might mean...HANS doesn't crash. The application does.
I can get you the 9.2 JPN exheader, what do I need to run to dump it?I don't know if it is possible in userland, however it is with 9.2 kernels. SciresM kindly sent us an US exheader for the eShop, but some from other regions would be appreciated as well to be sure it will be universal.
With those locations, we will almost do what you described. We have a special surprise as well
It contains the first part of the code which is ran by the kernel.What does the .code file do anyways?
Maybe. We don't know at the moment.Great, thanks SciresM ! Now I hope everything will be okay, but I think you should have tested before with some small apps to make sure that it's possible with HANS to launch x from y, maybe smealum put restrictions to avoid piracy ?
We can't dump exheaders in userland at the moment. neobrain said on his thread (if I remember correctly) that it would not be possible in userland.Can we dump exHeaders under usermode or userland (I don't recall the exact term) ? You can ask smealum or the creator of braindumper, and also Kaphotics... I'm sure they can help you about that.
And what will you exactly do once you know the exact location of .code portions ?
Also, what if your homebrew exefs is bigger than the eshop exefs ? It would'nt work because the size must be equal, right ? So what if your homebrew exefs is smaller than the eshop exefs ? would it work?
Another thing: Let's say you have two applications, one called "dummytest" and the other "randomname", both with a .code and exHeader with the exact same locations but different content, if you swap the files (exefs of dummytest used by randomname and vice versa), launching "dummytest" would actually lauch "randomname" ?
I'm just curious, ask questions even if I can't help you at all, it's interesting
It contains the first part of the code which is ran by the kernel.
Maybe. We don't know at the moment.
We can't dump exheaders in userland at the moment. neobrain said on his thread (if I remember correctly) that it would not be possible in userland.
Once we know that, we will override these .code portions with an homebrew .text, .rodata and .data.
The unused data will be filled by null bytes. We don't patch the entire exefs, just a portion of it.
We think that it would be. shinyquagsire23 told me that it was the reason for the crash. That's why Omega Ruby .code file boots on Alpha Sapphire and makes the game crash after a black screen, but patching the .code of a game with the .code of another game fails.
We have to rely on kernel exploit to get exheaders. You can send it to hto60 or me, we're both working on it. However, I can't tell you if the exheader will be correctly dumped. I didn't even managed to do itSo... we have to rely on piracy just this once because nobody can get it legitimately unless on >9.2? I could try getting an old 3DS and flashing my firmware dump onto it to attempt to dump this and pm it to you or hto60?