Need some help getting started with USB Gecko

Started by elmoreas, January 04, 2010, 02:47:24 AM

Previous topic - Next topic

elmoreas

I have 3 questions about getting started with USB Gecko. First if I accidently target code outside the USB Gecko's safety parameters and the Wii crashes, is it permantly toasted or does the Wii just need to be hard powered down and back on? Second, I have Wiird, Gecko dotNet, and Wii Load downloaded but not installed yet along with all the hardware setup and ready to go, once I install the software, what do I need to do to get the Wii and PC talking to one another? Third and lastly, I have experience hacking codes with Artmoney on the PC but this is way different and I was wondering if somone could give a brief bullet point or short description/tips on how to get started using the USB Gecko properly. I am unsure of how to use it properly as it is so different from what I am used to using. Perhaps just a quick run down on what you do to isolate an address and evaluate it for value as a possible code address would be a good start. I know this sounds like a lot but I don't need a whole tutorial just a paragraph expalining the basics of getting started. I can figure out the rest from there. I promise your time will not be wasted as I give you my word I am here to help the community both on the forums and by making codes for games. Once I am able to get started I will be in a much better position to help the community. I am not saying I will be the next legendary member but I will be a contributing member so your time will be well spent. Thank you in advance to those who choose to respond and help me, and any others who may have this issue but be to afraid to ask for fear of looking like a noob. I know I am one, it says so under my name so why not ask a noob question ;D Talk to you all later. Thanks again.

Sincerely,
Elmoreas
"I am new but I am learning"
"I help others not to help myself but just to help others"
"I may need help now but I may be able to help you in the future so rember the Golden Rule"

Romaap

1. If you try to read/write an address which is not accessible, the Wii will just freeze. No harm done, but to safe you the freeze WiiRD and Gecko dotNET have some security to "disable" those addresses.

2.  If you have Windows Vista or 7 the software will automatically install when you plug in your USBGecko, if you have Windows XP then you have to install it manually (the installer should be on the CD that came with you USBGecko), if its done you are ready to go.

3. It's not hard, first you have to choose if you are going for a specific search or a blind search. (Choose in 'value type')
    If you go for a specific search, then you have to type in a number to search for and then choose if the number you search for is equal to the number you specify or if it is greater than or lower than etc. (Choose in 'compare type')
    Then you need to specify the size of the value you are searching for, which is usually 32-bits. (in 'Data size')
    Click 'Search'.
    When it is done, you can repeat the previous step but now you can also choose to search for all values that are equal, not equal, lower than, etc. to the previous search.

    So if you first search for 100 and the next time you search for 'greater than previous search' you will get all results that were 100 on your previous and were higher on the next search.

elmoreas

Thank you for all that info it is very useful. I have 2 very small followup questions. When you said "Then you need to specify the size of the value you are searching for, which is usually 32-bits. (in 'Data size')" What do you mean by data size usually being 32 bits? And is it in hex values or standard? I ask so I will know how to perform the search properly. Thanks for your help.

Sincerely,
Elmoreas
"I am new but I am learning"
"I help others not to help myself but just to help others"
"I may need help now but I may be able to help you in the future so rember the Golden Rule"

Romaap

The data size is the size of the value you are searching for.
If the value is 8 bits it is can be the number 0 to 0xFF, if it is 16-bits it can be the numbers 0 to 0xFFFF and 32-bits 0 to 0xFFFFFF.
Most games store their data in 32-bits, but some games (Like VC games) try to safe as much RAM as possible so they store data that wont exceed 0xFF in 8-bits, so 4 different values fit in 32-bits.
But most Wii games just use 32-bits to store their values.

The values you specify are always hex values, but you can convert decimal to hex easily with the button below the textbox.

elmoreas

Ok I have gotten the Wii and PC talking, I have even used WiiRD to search for and find the addresses of the functions I want to change, ie number of lives and amount of life, I have sent the address over to the gct tab and have tried to alter the address to change the outcome in game and saved the codes and tried to apply them with the apply button and click run the game again but the codes do not work. I know it is likely that I just have the wrong address, but I wanted to make sure I am doing this right before I spend more time repeating the process, in case I am missing a step or doing something wrong. Also I am not sure that I am changing the addresses correctly, how exactly am I supposed to do that? And how am I supposed to apply them to the game? And lastly am I supposed to be doing anything else such as using the pointers tab, etc... Between the search and ID of the address in question and the use of the gct tab to alter the address and attempting to apply it in game? Thank you in advance to those who respond, your help is much appreciated and is going to a person who will use the info to help the community with codes once I get the hang of it. Talk to you all later.

Sincerely,
Elmoreas
"I am new but I am learning"
"I help others not to help myself but just to help others"
"I may need help now but I may be able to help you in the future so rember the Golden Rule"

Romaap

If you want to change a value just for testing then you could just "poke" it.
You just put the address in the first textbox and the value you want it to be in the second and click 'poke'.
If you want to make the actual codes then you need to use the Codetypes.

So if you want to write 00040200 value to 80642570 you need this:
04______ XXXXXXXX : 32bits ram write (ba) writes XXXXXXXX at ba+address

So your code will be:
04642570 00040200



elmoreas

Well thats useful to know about the poke command, I will give that a try. The actual writing of the codes is going to be an issue for me though as I read that document and it was like reading Assyrian.  ;) I am going to have to seriously brush up on my hex, AGAIN, and then re-read it and try to make heads or tails of it. Out of curiousity if you write the codes by hand using info from the search, what is the pointers, gct, and other tabs for? Do they serve a purpose for helping to search out addresses and make codes or does the USBGecko do other things? Screenshots aside of course. Thanks again for all your help.

Sincerely,
Elmoreas 
"I am new but I am learning"
"I help others not to help myself but just to help others"
"I may need help now but I may be able to help you in the future so rember the Golden Rule"

Romaap

OK, i'll give a small explanation of every tab.

'Code Search'
   Obviously, this one is for searching.

'Pointer Search'
   In some cases games like to move around some values, if that is the case the game also has a pointer which holds the address of where the value is stored.  More info about pointers, and how to make pointer codes is available here
   In the Pointer Search tab you can input 2 memory dumps you made (the value must be in different addresses in both dumps) and WiiRD will try to calculate the possible pointers.

'Memory Viewer'
   In here you can see a part of the memory in "real time", this is usefull for a lot of things.
   eg. If you found some addresses and you want to check if it responds to a certain action properly, just open up the memory viewer, put the addres in the textbox and click the auto-update button.

'Breakpoints'
   This tab is usefull for making (more advanced) ASM codes, you input an address and the game will stop when the game writes/reads to/from that address, then it shows you the registers and some ASM.

'Dissasembler'
   The dissasembler tab is only usefull if you want to make ASM codes.

'GCT Codes'
   In here you can manage your codes.

'Screen Capture'
   Taking screenshots :D

'FST'
   In here you can see what files are on the disc (not available for WiiWare and VC), and even make file replacement codes.

elmoreas

#8
Thank you for taking the time to type that out. It is much appreciated and very useful to have. I am storing all your posts and printing them out for refrence. Thank you for your assistance. It is very kind of you to take the time to help an obvious noob.

Sincerely,
Elmoreas

Post Merge: January 05, 2010, 09:03:47 PM

BTW do you have any more links to any other sites that provide information on USB Gecko? The two you have provided so far I have never heard of and would never have found but they turned out to be very useful. Thanks.

Elmoreas
"I am new but I am learning"
"I help others not to help myself but just to help others"
"I may need help now but I may be able to help you in the future so rember the Golden Rule"