Has the Nintendo 3DS been hacked?

Discussion in 'GBAtemp & Scene News' started by Costello, Dec 17, 2012.

  1. The Real Jdbye

    The Real Jdbye Always Remember 30/07/08

    Member
    19
    GBAtemp Patron
    The Real Jdbye is a Patron of GBAtemp and is helping us stay independent!

    Our Patreon
    Mar 17, 2010
    Norway
    Alola
    This may mean a lot of things but not neccessarily a full hack. It may just be a POC of some sort that won't be useful to end users in a while. Still interesting and I look forward to the day I won't need to carry around a box with all my 3DS games.

    That might be because of the 1.1 update fixing serious glitches in a couple levels. Other than that I don't think that has been required for any game.
     
    nukeboy95 likes this.
  2. Seratonin

    Seratonin GBAtemp Regular

    Member
    2
    Jul 14, 2012
    United States
    Allison Park, Pennsylvania
    I disagree, Yellows8 has been in the Nintendo hacking scene forever and many people like me think that he wouldn't ruin his reputation. I'm assuming you think it's too good to be true.
     
  3. Seratonin

    Seratonin GBAtemp Regular

    Member
    2
    Jul 14, 2012
    United States
    Allison Park, Pennsylvania
    I apologize for double posting but can you translate this into English?
     
  4. nukeboy95

    nukeboy95 Old skool member

    Member
    6
    Aug 24, 2010
    United States
    The left side
    iirc that the code to start the exploit
     
  5. MegaBassBX

    MegaBassBX The Noble Sate User

    Member
    2
    Nov 7, 2011
    Abu Dhabi

    Its amazing how something so tiny as a code : 0x12 can do to a game system ;)

    So they are working on it hope to see it soon.
     
  6. nukeboy95

    nukeboy95 Old skool member

    Member
    6
    Aug 24, 2010
    United States
    The left side
    iirc its a hex code
     
  7. MegaBassBX

    MegaBassBX The Noble Sate User

    Member
    2
    Nov 7, 2011
    Abu Dhabi

    It is about the hack ? right
     
  8. nukeboy95

    nukeboy95 Old skool member

    Member
    6
    Aug 24, 2010
    United States
    The left side
    hex is kinda like code
     
  9. SifJar

    SifJar Not a pirate

    Member
    7
    Apr 4, 2009
    Oh dear.
     
  10. Foxi4

    Foxi4 On the hunt...

    Supervisor
    28
    Sep 13, 2009
    Poland
    Gaming Grotto
    It's a register, an ID number under which you can find the Run function, which has two arguments - KProcess, which is of type Handle (no idea what that is, but judging from the "Handle" type I'm going to guess it's some kind of a system process or something CPU-related. In any case, it's some kind of a system object) and *buf of type unsigned int, which is a pointer (signified by the *) to a place in memory, it's supposed to direct you to the main() thread, which is the main function of any program. Treat it like a computer science equivalent of a house address - that's where your function is stored.

    Hex are just numbers in the hexadecimal positional number system.

    Any clarification you could offer on the KProcess object, SifJar?
     
  11. SifJar

    SifJar Not a pirate

    Member
    7
    Apr 4, 2009
    Not really. I don't know much about it.

    If I had to guess, I'd say a KProcess is a Kernel Process i.e. a piece of kernel code. I'd have to do some reading to verify that or know anymore.
     
  12. Foxi4

    Foxi4 On the hunt...

    Supervisor
    28
    Sep 13, 2009
    Poland
    Gaming Grotto
    Sounds plausible given the "K" in the name, yeah.
     
  13. SifJar

    SifJar Not a pirate

    Member
    7
    Apr 4, 2009
    Also, the fact that it requires the Handle of a KProcess suggests that parameter is a reference to an already loaded KProcess (not a new one). A "handle" is a reference to a piece of code (or other resource) loaded in memory. From Wikipedia:

    In other words, when a KProcess is first loaded, the kernel will assign it a "handle". This "handle" allows other piece of code to refer to that KProcess.
     
  14. Foxi4

    Foxi4 On the hunt...

    Supervisor
    28
    Sep 13, 2009
    Poland
    Gaming Grotto
    Pretty much what I wanted to say, but dressed up in more clear wording. :P
     
  15. MushGuy

    MushGuy GBAtemp Maniac

    Member
    7
    Feb 11, 2010
    United States
    Someone missed the sarcasm here.
     
  16. Coto

    Coto -

    Member
    7
    Jun 4, 2010
    Chile
    cpus in asm "os environment" tend to work under "threads", this could be an instance of code running in -A- buffer,reg,etc , while, at the same time another piece of code would be running somewhere in -B- buffer,reg,etc.

    Every thread has a "thread priority", without it, the CPU wouldn't know which one to start with, and it would basically take up physical area it shouldn't and cause kernel panic if another instance takes up that very physical area. In fact a TLB-of-some-sort is required to store such data in some scenarios

    also, you wouldn't be able to create sub-threads tied to a main thread.
     
  17. Maxternal

    Maxternal Peanut Gallery Spokesman

    Member
    9
    Nov 15, 2011
    Deep in GBAtemp addiction
    To be clear and build upon what everyone else has said, (I'll try to keep this simple and not write a book in this post)

    What's on that page are system calls. Most programs run with the processor in user mode and there's just some things that they're not allowed to do so it runs a system call to ask the OS to do it for it and the processor temporarily switches to supervisor mode and follows the instructions of the OS (OS means operating system. Windows, for example, is an operating system.). The first 256 bytes (up to 0xFF) of memory store addresses for the starting instruction of each these system calls (The little number at the beginning of each on that list .. in this case 0x12) so the processor knows where to look to start one when a program asks for one. The stuff in parenthesis after the system call's name on that list is information that the program has to leave behind for the system call to know what to do. In this case it wants to get another process running so it has to tell it which process (the handle called KProcess) and a place in memory where some more information is stored about it (unsigned int *buf). Right at that place in memory (buf+0) there's a number telling it what the process's priority is and four memory locations later (buf+4) is a number telling how big the stack for that process is. (the stack is where most of the information is kept that a program keeps track of while it's running.)
     
    Mega_x and MegaBassBX like this.
  18. mrfatso

    mrfatso That guy!!

    Member
    2
    Apr 17, 2008
    Senegal
    @Your Home,behind the sofa
    if it unlocks region lock and that's it, good enuf for me.

    I have more than enough games to last me a few lifetime either way..
     
  19. wohdin

    wohdin Member

    Newcomer
    2
    Aug 18, 2009
    United States
    hahaha wow
     
    megazig likes this.
  20. nukeboy95

    nukeboy95 Old skool member

    Member
    6
    Aug 24, 2010
    United States
    The left side
    that why i added "IIRC"
     
Loading...