Kodewerx

Our culture has advanced beyond all that you could possibly comprehend with one hundred percent of your brain.
It is currently Wed Jul 09, 2025 8:16 am

All times are UTC - 8 hours [ DST ]




Post new topic Reply to topic  [ 29 posts ] 
Author Message
PostPosted: Mon May 05, 2008 11:15 am 
Offline
Kommunist
Kommunist

Joined: Sun Oct 01, 2006 11:19 pm
Posts: 8
But out of curiosity, what's the word on Gecko?

It apparently is a USB add in that does funtastical things with the Wii games, I haven't been able to find much on it though.

Probably ancient news, but just figured I'd ask if you all thought it was an adequately intelligent investment.

Quote:
1.0 Beta Five (Change log)

1. Wii Mode hooks (can hook Wii Games as well as Gamecube Games)
2. Gamecube and Wii Cheat engine with own custom code types (upload cheat code patches Gamecube and Wii!)
3. Cheat Engine running with debugging engine to allow realtime code edits (Run list)
3. Upload code added to Remote debugger (can now upload binary files to running memory)
4. Hex Mode added to debugger (Switch from Asm to HEX etc, can scroll up and down hex windows also in memory!)
5. Wii Screen shots working

Cheat code system, code types and information can be found on the forums, tutorials for these will be added to the site download section very soon.


It SOUNDS promising to a n00b like me...


Top
 Profile  
Reply with quote  
PostPosted: Mon May 05, 2008 12:38 pm 
Offline
Kommunist
Kommunist
User avatar

Joined: Sat Oct 14, 2006 5:41 pm
Posts: 99
Location: 38.90N 77.03W
I have been using it to create some will codes for Brawl and Galaxy. It's a very nice device but the remote debugger needs some work.


Top
 Profile  
Reply with quote  
PostPosted: Mon May 05, 2008 2:49 pm 
Offline
Kommunist
Kommunist

Joined: Sun Oct 01, 2006 11:19 pm
Posts: 8
So would you say it has a future? I've been intrigued myself, I've heard that they're looking into eliminating tripping from Brawl... But eh.

I managed to pick this up that posted a link to an article about it, could you by chance provide me with some more information?


Top
 Profile  
Reply with quote  
PostPosted: Mon May 05, 2008 4:36 pm 
Offline
Kommunist
Kommunist
User avatar

Joined: Sat Oct 14, 2006 5:41 pm
Posts: 99
Location: 38.90N 77.03W
I am writing a tutorial on how to hack games with it which will be similar to my DS Hacking Guide. I would say that what Nuke needs to do is work out a way to make the SD Gecko able to run a cheat engine on its own or build a cheat engine into his region free that does not require the Gecko. Right now it is more of a hobbyist/programmer tool. It's not marketable to your average user in the way that say an Action Replay Wii would be. It would be like Datel selling only the Trainer Toolkit and no standalone Action Replay.

If you want more info join us at the forums.
http://www.usbgecko.com/forums/


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue May 06, 2008 8:09 am 
Offline
Komrade
Komrade

Joined: Tue Mar 27, 2007 10:18 am
Posts: 1328
dexter0 wrote:
...or build a cheat engine into his region free that does not require the Gecko.

That's what I want to do.

I don't want to spend $40 on that thing if I can avoid it.

I wish he'd make more of his stuff open source. At least share the IOS calls you used to restart discs and patch their executables! D:

_________________
Image


Top
 Profile  
Reply with quote  
PostPosted: Tue May 06, 2008 8:49 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
Yeah really. We've got ethernet (via adapter), wifi, USB, Bluetooth, and SD card, and we need to buy some other device to connect to it? :roll:

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed May 07, 2008 9:43 am 
Offline
Komrade
Komrade

Joined: Tue Mar 27, 2007 10:18 am
Posts: 1328
I've got IDA Pro working on the boot.elf.

The function tree functionality of IDA Pro is truly a sight to behold. :P

I haven't identified any of the IOS function calls yet, but I have a few educated guesses of what's going on.

It certainly helps that I can just click on an immediate labeled "Insert Wii game" to jump to the location in memory the immediate is stored at, and then click on the reference label IDA Pro puts next to it to see where the message is loaded and printed in the executable. :D

_________________
Image


Top
 Profile  
Reply with quote  
PostPosted: Wed May 07, 2008 5:26 pm 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
I hear Kenobi has been participating in its development, or at least keeping a watchful eye on it.

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
PostPosted: Thu May 08, 2008 9:35 pm 
Offline
Kommunist
Kommunist

Joined: Tue Oct 10, 2006 9:32 am
Posts: 445
Indeed. I personally really like it even if it has many flaws righ now. The possibilities it offers reminds me the blessed, old good gcnrd days... So I'm trying to help Nuke and Y.S. (which created the code handler used by the gecko) as much as I can.


Top
 Profile  
Reply with quote  
PostPosted: Fri May 09, 2008 12:50 am 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
So help the rest of us out and at least describe how one goes about loading discs?

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri May 09, 2008 8:51 am 
Offline
Komrade
Komrade

Joined: Tue Mar 27, 2007 10:18 am
Posts: 1328
Yeah. I didn't even know /dev/es had to be accessed before /dev/di (I'm assuming it does, since Nuke called the ES_GetTicketViews function and the like). There's some IOS_Ioctl call in there with arguments I don't recognize even with the reference on Wii Brew, too.

Also, code handler? It has a code handler now? ;_;

_________________
Image


Top
 Profile  
Reply with quote  
PostPosted: Fri May 09, 2008 9:27 am 
Offline
Kommunist
Kommunist

Joined: Tue Oct 10, 2006 9:32 am
Posts: 445
If I knew I would tell you, but I really don't know. I'm actually only helping on the "debugger" part, ie. the one that runs along the game. Not the part that loads the disc...

And yes, it has a code handler since 1.5 (afaik).


Top
 Profile  
Reply with quote  
PostPosted: Wed May 14, 2008 10:47 am 
Offline
Kommunist
Kommunist

Joined: Tue Oct 10, 2006 9:32 am
Posts: 445
Well as the news is kinda out know, I think it would be nice I would let you know what it is about (even if I know some of you might not be interessed in buying the gecko). I'm posting in this thread as I just said in the above post I am working on something, and I don't see the point of making a thread about it right now.

Link and I are working on WiiRd/WiiRd GUI.

For the story, Link contacted me 2 weeks ago, and told me he ported to Delphi (he's a Delphi programmer too) the communication protocol to dialog with the USB Gecko. No need to say that when I heard that I though of WiiRdGUI. As he"only" had to focus on the command line tool (WiiRd) and I "only" had to port gcnrdgui to make it workd with WiiRd, the first results were fast. In 3/4 days,we had most of the thing working. We asked meanwhile Nuke and Parasyte what theythough of the project, and they had no problem with it.

However the easy part was behind. Now we're working on the bugs correction, the new features... And it takes a lot of time (especially with my poor programming skills - it seems I love to put some crashing bug in any new thing I add). The basics are working (code searching, memory viewer, disassembler, screenshots...) but now I'm spending some time on breakpoints support and it's another matter.

So we're working hard to go as fast as possible, but there is no real ETA. It should be out before the end of the month (be it a semi stable beta, or a realfirst release).


Top
 Profile  
Reply with quote  
PostPosted: Thu May 15, 2008 2:02 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
So Delphi and Gecko? Ew. Look at the TCP loader, there's a LAN port and information on how to use it.

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
PostPosted: Sat May 17, 2008 5:53 am 
Offline
Kommunist
Kommunist

Joined: Wed Oct 11, 2006 1:53 am
Posts: 11
Location: Earth, Europe, Germany
Title: the bored one
HyperHacker wrote:
So Delphi and Gecko? Ew. Look at the TCP loader, there's a LAN port and information on how to use it.


Ew? Well, I chose Delphi simply because I know that programming language best. And the Gecko data is written mostly in PPC ASM anyway, Delphi is doing the connection on PC side. I personally like the way via Gecko because: if you'd choose games using the network interface code might become itchy to work on - the Gecko is dedicated and independent of all other things (might be however blocked though) - and I technically only ported the Gecko Memory Dumper source and then kenobi and me hacked the other Gecko commands and slowly but progressively developed a program around it - some information can be read at http://www.usbgecko.com/forums/showthread.php?t=347


Top
 Profile  
Reply with quote  
PostPosted: Sat May 17, 2008 8:56 am 
Offline
Kommunist
Kommunist
User avatar

Joined: Fri May 25, 2007 9:58 am
Posts: 66
I am wondering Does the WiiRd requires USB GECKO in the future? I would really like to use my Wi-Fi connection without the wires dangling all over the place. As mentioned earlier in the post "even if I know some of you might not be interested in buying the gecko" that is true, I have the Twilight Hack in place with the Homebrew channel and want to use that instead. I am also wondering if the GCN Datel Memory Card will work, I ordered one way back when and never used it. It has a port on the card for connection for USB.

_________________
I am a PC, and Windows 7 stole my idea


Top
 Profile  
Reply with quote  
PostPosted: Sun May 18, 2008 1:37 pm 
Offline
Kommunist
Kommunist

Joined: Tue Oct 10, 2006 9:32 am
Posts: 445
I guess wiird only supports the gecko because it's the only public way of communicating with the Wii at that time. Also, unlike Parasyte's gcnrd, wiird is only a PC-side software. The Wii software is basicaly the gecko software. And of course the gecko software uses the gecko hardware. Which means right now no gecko hardware, no wiird/wiirdgui.

In order to communicate with the Wii using wifi for exemple, someone would have to write a program for the wii that can send/receive data and run in the background. Once it's done, I believe wiird would just have to send the good commands to the wii using the network (and wiirdgui would just need some tweakings to accomodate). So yeah, in the future everything might be possible.

And I've no clue if the gcn datel memorycard could replace the gecko (but I honestly doubt it).


Last edited by kenobi on Mon May 19, 2008 12:49 am, edited 1 time in total.

Top
 Profile  
Reply with quote  
PostPosted: Sun May 18, 2008 9:59 pm 
Offline
Kommunist
Kommunist
User avatar

Joined: Fri May 25, 2007 9:58 am
Posts: 66
Thanks for the reply, I ordered USBGekko, just because I have the $$$ to burn. 8-)
And so that I can use wiird when it is ready.

_________________
I am a PC, and Windows 7 stole my idea


Top
 Profile  
Reply with quote  
PostPosted: Mon May 19, 2008 12:41 pm 
Offline
Krew (Moderator)
Krew (Moderator)
User avatar

Joined: Tue Apr 01, 2008 5:51 pm
Posts: 384
Title: "Hacker"
Amazing. I can't wait. Just a note: It'd be great to see a "Not for GSCentral" tag somewhere in the program ;)


Top
 Profile  
Reply with quote  
PostPosted: Mon May 19, 2008 3:01 pm 
Offline
Kommunist
Kommunist

Joined: Tue Oct 10, 2006 9:32 am
Posts: 445
I'm not fond of the "not for..." message. I usually prefer to put something like "kodewerx rulez" somewhere. The more you talk about someone/thing, even in a bad way, the more publicity he/it gets. Look at Paris Hilton and Britney ^_^

Anyway, things are going slowly but surely... Most of the problems have been solved, but the task is still huge. Hopefuly I've taken some vacation to speed up the progress on the GUI/Gecko !

I guess we're still aiming for a "before the end of the month" release, but as we keep on adding/changing things each time we got a new idea, I can't make any promise.


Top
 Profile  
Reply with quote  
PostPosted: Tue May 20, 2008 8:22 pm 
Offline
Krew (Moderator)
Krew (Moderator)
User avatar

Joined: Tue Apr 01, 2008 5:51 pm
Posts: 384
Title: "Hacker"
Great. I'm looking forward to it :)

*buys USB Gecko*


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed May 21, 2008 1:25 pm 
Offline
Komrade
Komrade

Joined: Tue Mar 27, 2007 10:18 am
Posts: 1328
HH says he did ask for the source and that Nuke didn't respond. Dodgy, are we?

_________________
Image


Last edited by Hextator on Sat May 31, 2008 10:52 am, edited 2 times in total.

Top
 Profile  
Reply with quote  
PostPosted: Wed May 21, 2008 5:36 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
Is it GPL or LGPL? One would require source to be released, the other wouldn't. I've seen a few Wii apps without source.

Does the app work without the Gecko plugged in?

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed May 21, 2008 6:43 pm 
Offline
Komrade
Komrade

Joined: Tue Mar 27, 2007 10:18 am
Posts: 1328
The Region Free ELF?

Yes, it does work on its own.

Also, I'm pretty sure libogc is just plain GPL. Isn't LGPL the one that doesn't require the source?

But either way, I admitted to not understanding the license business. It just appears to me there may be a catch here.

Edit:

http://pastebin.com/f5e1db9ee

Edit: I've pretty much confirmed that Nuke used that snippet from Dolwin (or something that mimicks Dolwin exactly) for his apploader loader (yes, he loads the apploader from the disc and uses that to load the Wii DOL instead of writing his own apploader like he said he did...or maybe he thought "apploader loader" sounded funny (I do) and just called it an apploader anyway).

The function he "copied" is in /SRC/HighLevel/Bootrom.cpp of Dolwin and is called "BootApploader".

Edit: If those of you working on wiird/GUI know of a way to implement break points (well, watch points, from what I've seen in a USB Gecko video) without the USB Gecko hardware, please let me know >.>

_________________
Image


Last edited by Hextator on Sat May 31, 2008 3:55 pm, edited 3 times in total.

Top
 Profile  
Reply with quote  
PostPosted: Fri May 30, 2008 4:57 pm 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
Look at PowerPC registers IABR and DABR.

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri May 30, 2008 9:04 pm 
Offline
Komrade
Komrade

Joined: Tue Mar 27, 2007 10:18 am
Posts: 1328
HH suggested I paste this info in case someone is able to do something with it.

The source I linked to in my previous post implements most of what is labeled here: http://pastebin.com/f1d54a6f2

Edit: You wouldn't happen to know the names of any mnemonics that can access the registers you're talking about, would you?

_________________
Image


Last edited by Hextator on Sat May 31, 2008 3:55 pm, edited 2 times in total.

Top
 Profile  
Reply with quote  
PostPosted: Sat May 31, 2008 11:28 am 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
Sounds like you are missing the IBM Gekko User Manual as well as some other very important PowerPC documentation, including "PowerPC Microprocessor Family - The Programming Environments".

Who do you think I am, any way? Of course I know.

Code:
void PPCmtdabr(u32);
void PPCmtiabr(u32);


Code:
PPCmtdabr:
    mtspr  1013, r3
    blr

PPCmtiabr:
    mtspr  1010, r3
    isync
    blr


The gist of it is, you call PPCmtdabr(), passing a word as the only argument, which is the address you want the PPC to watch for reads/writes to. Bit 0 enables breakpoints on read accesses, bit 1 on write accesses, and bit 2 enables breakpoint address translation, which is very handy if you also handle virtual memory address translation.

Any way, the granularity on watchpoints with DABR is 8-bytes, as you should be able to guess from those bit settings. To prevent a lot of false positives (from memory accesses occurring withing that 8-byte block that you do not care about) just check the value of the DAR register in your DSI exception handler. You can also check the DSISR to verify the condition which caused the DSI exception.

Using PPCmtiabr() for instruction execution breakpoints is similarly easy, but slightly different; Bit 0 enables translation, bit 1 enables the breakpoint. The granularity is 4 bytes, which is OK considering that every instruction is already 4 bytes long. The exception to handle is the special IABR exception.

And continuing execution from any of these breakpoints is only possible with the breakpoint disabled. If you want to continue execution while leaving the breakpoint enabled, you must fake it by disabling it any way and enable trace-mode to step the instruction. Once back in your exception handler, disable trace mode, re-enable the breakpoint, and finally let it continue on its way.

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat May 31, 2008 1:06 pm 
Offline
Komrade
Komrade

Joined: Tue Mar 27, 2007 10:18 am
Posts: 1328
Argh, I feel dumb. I was messing with devkitPPC trying to compile

mtspr1013 %r0

thinking that it was similar to the opcode and operand set up for the mtctr %register opcode (yes, I realize no mnemonic would deign to be that ugly, but I wanted to make sure...).

I suck at using sprs. :P

I did find documentation on what registers will hold what information in the event of a DABR related DSI, but now I have to learn how to catch DSI exceptions and possibly do that trace mode business.

Or at least I would, if it mattered. At the moment I can't execute DOLs I've loaded, so patching them to add break points or even a simple trainer is pointless.

I wouldn't mind being able to catch a program exception though. Executing the prolog portion of the apploader throws a program exception the first time, for me.

_________________
Image


Top
 Profile  
Reply with quote  
PostPosted: Mon Jun 02, 2008 7:36 pm 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
You have to patch the exception vector(s) to intercept any exceptions.

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 29 posts ] 

All times are UTC - 8 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 167 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group