Cafe OS Breakpoints

Discussion in 'Wii U - Hacking & Backup Loaders' started by BullyWiiPlaza, Jan 1, 2016.

  1. BullyWiiPlaza
    OP

    BullyWiiPlaza Nintendo Hacking <3

    Member
    1,801
    1,466
    Aug 2, 2014
    Germany
    I'm wondering about the current state of setting breakpoints on Wii U games. Since the IOSU exploit is going to be released soon, does this in any way mean something for breakpoints? I believe they are already possible just with the kernel exploit but it just hasn't been made/published yet. :(

    Then there are also 3 different github repositories for TCP Gecko.NET sorted in last updated comes last in the list:
    https://github.com/Chadderz121/tcp-gecko-dotnet
    https://github.com/dantarion/tcp-gecko-dotnet
    https://github.com/wj444/tcp-gecko-dotnet

    They all seem pretty inactive but we really need a good RAM debugging tool and TCP Gecko.NET currently is the most complete one we have. Is there a chance for breakpoints to return soon?

    Thank you :)
     
    Last edited by BullyWiiPlaza, Dec 13, 2017 at 10:05 PM
    eco95 and CosmoCortney like this.
  2. CosmoCortney

    CosmoCortney The Hacker Furry

    Member
    1,601
    1,519
    Apr 18, 2013
    Germany
    on the cool side of the pillow
  3. Sumea

    Sumea Disco Ninja Frog

    Member
    1,517
    284
    Aug 16, 2008
    Finland
    Turku
    No need to give me any things or anything:
    Could someone explain what breakpoints are in short or whatever, just interested in general knowledge not that I could do anything with something I do not even know what it is.
     
    canariobr and TotalInsanity4 like this.
  4. CosmoCortney

    CosmoCortney The Hacker Furry

    Member
    1,601
    1,519
    Apr 18, 2013
    Germany
    on the cool side of the pillow
    You can set a breakpoint on read, write or execute to pause the game when such a case for a specific address happens. The breakpoint handler will then pause the game when it detects what reads/writes from/to an specific address and gives you a code dump on the GUI (gecko dnet side). By setting breakpoints on execute mode you can check out the values of all registers
     
    Last edited by CosmoCortney, Jan 1, 2016
  5. Sumea

    Sumea Disco Ninja Frog

    Member
    1,517
    284
    Aug 16, 2008
    Finland
    Turku
    So basically this stuff would be useful for developing cafe OS "plugins" or other processes that would interfere/work in tandem or whatever with the main OS more or less.

    Thanks, might not be dev myself but do like to know this stuff.
     
    TotalInsanity4 likes this.
  6. Marionumber1

    Marionumber1 GBAtemp Maniac

    Member
    1,234
    3,933
    Nov 7, 2010
    United States
    Chadderz apparently got breakpoints working in a hacky way, and hasn't released them. dantarion was also working on it at some point, but I'm not sure how much progress he made. It's not an immediate priority for our team.
     
    CosmoCortney likes this.
  7. PandaOnSmack

    PandaOnSmack GBAtemp Fan

    Member
    328
    183
    Nov 3, 2015
    I miss the whole USB gecko setup on the Wii. Was so good finding the address you need via breakpoints and writing some asm codes to fire a function a custom button click.

    :(
     
    TotalInsanity4 and BullyWiiPlaza like this.
  8. CosmoCortney

    CosmoCortney The Hacker Furry

    Member
    1,601
    1,519
    Apr 18, 2013
    Germany
    on the cool side of the pillow
    It's useful for making asm modifications

    Ok, thanks, may be just a matter of time.

    Well, we can write asm codes but the possibilities are very limited. We need to find an instruction that's always being executed. Here's an example: https://gbatemp.net/threads/post-your-wiiu-cheat-codes-here.395443/page-43#post-5714930
     
    BullyWiiPlaza likes this.
  9. BullyWiiPlaza
    OP

    BullyWiiPlaza Nintendo Hacking <3

    Member
    1,801
    1,466
    Aug 2, 2014
    Germany
    This could have done the job too in helping you understand breakpoints :P
    As we all should know, this is by far not as useful as finding the instruction that writes or reads a certain data section address :P
    It appears as if @Dantarion never finished it but somebody should definitely put this on their todo list since it's quite a big deal for game hacking. Most of my Wii game hacks were made in assembly. It's too good and persistent by default so it plays into the hands of the current state of having no (proper) server-sided cheat injection abilities :wink:
     
  10. HackingNewbie

    HackingNewbie GBAtemp Fan

    Member
    477
    96
    Dec 29, 2016
    United Kingdom
    Somewhere in 2008
    Here's an idea: in the tcpgecko installer, you could create a thread that constantly detects each instruction the processor runs, disassembles it using DisassemblePPCOpcode(), hooks it using the "hook registers" feature that you have already created, analyses the dumped registers, and determines whether it wrote to/read a given address or not. Just a thought :P
     
  11. sp3off

    sp3off One male shadow.

    Member
    917
    258
    Apr 17, 2013
    France
    Hell's Lair
    Nice necrobump.
     
    HackingNewbie likes this.
  12. HackingNewbie

    HackingNewbie GBAtemp Fan

    Member
    477
    96
    Dec 29, 2016
    United Kingdom
    Somewhere in 2008
    lol
     
  13. BullyWiiPlaza
    OP

    BullyWiiPlaza Nintendo Hacking <3

    Member
    1,801
    1,466
    Aug 2, 2014
    Germany
    You can't do that. With C programming, you have no access to assembly instructions like this.
     
  14. sp3off

    sp3off One male shadow.

    Member
    917
    258
    Apr 17, 2013
    France
    Hell's Lair
    + I'll add something, even if this was possible, you can't do it, since the processor would be overused, and could damage the console.