Homebrew Clarification Thread - What is going on?

  • Thread starter Thread starter JustPingo
  • Start date Start date
  • Views Views 647,812
  • Replies Replies 5,356
  • Likes Likes 103
Status
Not open for further replies.
I'll look into it! The last thing we need is confusion. I'm just spending my day off here because hacking video games got me into computer science and I figure the best way to help is through explaining things as well as I can.



Let me break it down after looking over the repo as of 2:10 PM EST.

The value that you see printed is this

volatile u32 testVal = 0;

The DEADCAFE comes from this function here

static void kernel_entry() {
testVal = 0xDEADCAFE;
}

This function isn't called in the memchunkhax2 code though.

Instead it's set as manufactured vtable which has pointers to that function. Then that put in memory as part of a kernel object and the next pointer of the current memchunk is changed to point to that. When that pointer gets dereferenced, the kernel will execute the code of kernel_entry, which sets testVal to 0xDEADCAFE, then if it all worked you get to see that on your screen.

kernel_entry is just a test, but in the future it'll be the function that will allow downgrading, because it's happening in the space that the ARM11 kernel has access to.

Nifty, isn't it?
Thanks for the headsup.....at least your trying....
 
since everyone else is doing it here is my DEADCAFE direct screenshot :3 N3DS 10.3 btw
 

Attachments

  • scr_1_TOP_LEFT.png
    scr_1_TOP_LEFT.png
    1.1 KB · Views: 305
Tutorial to get it working
  • Move memchunkhax2.3dsx to the root and rename it to boot.3dsx
  • open menuhax or whateverhax
  • and BANG
 
Last edited by Saiyan Prince,
I just had a nerdgasm. Thank you for the detailed info :)
Thanks for the headsup.....at least your trying....
Might as well learn something while waiting on the hype train, right?

This is really exciting though. Since it's not called in memchunkhax2.c, and yet we can still get DEADCAFE that's how you know it's happening in the kernel. I imagine @Steveice10 did a little jig when he saw that.
 
Odd behavior on a 10.3 2DS US via menuhax. All hang at Map Complete. Tried Brony exiting, no difference.
Tried ftp-3ds, exiting that resulted in a crash, just red bottom screen. Tried more bronys. Tried FTP again, this time it let me exit back to homebrew launcher. Then got test value:00000000 press start to exit. It let me exit. Ran it again and then deadcafe.
This 2DS has been erractic in general. Browser hax took 5+ tries before it triggered. Old eshop sometimes would just hand for 5 minutes before doing anything. Heck, real eshop is crazy slow.
Regular 5mbps cable connection, sitting 3 ft from my router.
 
For the unlucky people... Try L+R+B+DOWN in the HB Menu and try again.
EDIT: I only receive state 000000.
 
Last edited by yacepi15,
Status
Not open for further replies.

Site & Scene News

Popular threads in this forum