WiiRd forum

Main Forums => The Collective => Topic started by: shadowofchaos on November 25, 2008, 01:37:02 PM

Title: What are ASM codes?
Post by: shadowofchaos on November 25, 2008, 01:37:02 PM
Hello guys, I just recently got a USBGecko and have been reading guides on how to start hacking the Wii with WiiRD....

I've got the basics from Dexter0 and the "Guide to Wii RAM Hacking" by Foxx.... however...

I'm kind of lost with ASM codes...

I used the search function and links that Igglyboo that seem to be helpful....

Quote from: Igglyboo on October 04, 2008, 06:21:24 PM
The wii has a powerpc processor so wiird uses power pc asm.
http://www.freescale.com/files/product/doc/MPCFPE32B.pdf (http://www.freescale.com/files/product/doc/MPCFPE32B.pdf)
http://www.lightsoft.co.uk/Fantasm/Beginners/begin1.html (http://www.lightsoft.co.uk/Fantasm/Beginners/begin1.html)
http://class.ee.iastate.edu/cpre211/labs/quickrefPPC.html (http://class.ee.iastate.edu/cpre211/labs/quickrefPPC.html)

Try those websites.

The question is, what ARE ASM codes?

I've seen the posts that Black_Wolf has made in regards to things like this.... But, I'm REALLY confused.....

What I've gotten so far that you use ASM to have freedom in your codes, just like Igglyboo's recent Camera Code for SSBB.....

I've also seen the ASM WiiRD Helper tool by link.... so that makes the ASM into the "ASM" codes WiiRD can understand?

I appreciate any help on getting me started!!!!
Title: Re: What are ASM codes?
Post by: Aesteval on November 25, 2008, 07:45:25 PM
ASM codes are effectively codes that implant assembly language programming into the game's code/RAM.  ASM codes have more potential with a wider variety of results since you're adding additional programming/reprogramming some portion of the game.  An assembly language is effectively comprised of a series of simple commands which can be individually represented in a numeric format, most commonly intended to be viewed as hex but with some use being viewed as binary.  So a portion of an ASM code is effectively raw assembly code that's being written into the RAM and will be executed by what the values translate into in assembly.

Or at least that's my unresearched take on it anyway.  I may not be wholly right, but it's probably on the right track based upon my previous experience with assembly (which is borderline useless in any practical means since it only effectively involved theory and a virtual x86 machine.)
Title: Re: What are ASM codes?
Post by: shadowofchaos on November 26, 2008, 12:36:40 AM
Hmmm.... Judging from the codes I've seen for the US SSBB.... There's a lot of them by Phantom Wings....

Is there any way to port them to the JPN SSBB (Dairantou Smash Bros. X) without redoing the whole process? (I really want to learn how this works....)

Anyway, does anyone know of any links for any way I can try to start learning how to make ASM codes? (Maybe a tutorial? I've tried searching google... but to no avail....)
Title: Re: What are ASM codes?
Post by: Fred on November 26, 2008, 12:45:36 AM
Apparently this is a beginners guide for asm that i was suggested:

http://www.lightsoft.co.uk/Fantasm/Beginners/begin1.html (http://www.lightsoft.co.uk/Fantasm/Beginners/begin1.html)

But i would suggest that you do alot more code work on your own before starting on asm, learning to use a lot of different codetypes:
http://usbgecko.com/codetypes.htm (http://usbgecko.com/codetypes.htm)

Good Luck.
Title: Re: What are ASM codes?
Post by: Maniac on November 26, 2008, 01:58:06 AM
ASM, also know as Assembly.

http://en.wikipedia.org/wiki/Assembly_language (http://en.wikipedia.org/wiki/Assembly_language)

I learned the ARM version of it first and just recently went to PowerPC, its an easy transition once you you know all the operands.. Anyways I recommend learning from actual codes for the wii..


This should help you:
http://class.ee.iastate.edu/cpre211/labs/quickrefPPC.html (http://class.ee.iastate.edu/cpre211/labs/quickrefPPC.html)
Title: Re: What are ASM codes?
Post by: shadowofchaos on November 26, 2008, 05:28:29 AM
One last question...

(Even though I technically haven't done it before....)

Porting between regions use an "offset" in between them (by comparing a code that has been ported already.....) right?

I assume that this would not be at all true with in this case?

The main thing I'm asking this for is for porting from the US SSBB to Dairantou Smash Brothers X (JPN Brawl)......

Taunt enables Final Smash [Y.S ported by brkirch]
0481C934 8803001F
4A000000 90180F38
3A000002 FF00003D
C281C934 00000005
8803001F 2C0000F8
4182001C 38000038
2C1B010C 40820008
38000078 9803001F
48000004 00000000
E0000000 80008000
Use your taunt to gain a final Smash! (Does not work in SSE or Boss Battles)

No Closeups[Phantom Wings]
C20AA690 00000002
3C60805B 38636D80
C0030010 00000000
C20A9F1C 00000002
3C60805B 38636D80
60000000 00000000
Removes all closeups for Final Smashes and Dragoons - adds a bit more flow to the battle.


Although you may notice that the first code says "ported by brkirch", I was unable to find it in the JPN Codes section... maybe it was from the PAL Codes?

Anyway... Is there no way to port these without "re-hacking" them essentially?
Title: Re: What are ASM codes?
Post by: Maniac on December 05, 2008, 11:46:43 PM
no the ba offset does not apply to asm codes, sorry if this i an old topic :\