Well, I guess you can say that I am making my own. Or at the least, just to see how working ASM codes function in the game. I know I may seem more experienced with codemaking than you think, but I am somewhat experienced overall. Like for example, I know how to make simple byte, halfword, and word RAM writes. With more advanced stuff like making sure a C2 code will work properly, is what I am unfamiliar with. I apologize if my noobness at this is annoying you. I feel like I have potential to make some great codes if I have the knowledge of this settled in.
Btw, I am replying to Vega. Sorry if this causes any confusion.
Ah. I see. Makes more sense to me now. 1 last question, do I need to have the default RAM value as the last instruction? Before I add the nop or not, depending on the total amount of instructions my ASM code has.
Please note that I have read and studied how the gecko codetypes and PowerPC instructions work. Everything logically makes sense to me, but sometimes the small specifics of them get me confused.
Btw, I am replying to Vega. Sorry if this causes any confusion.
(08-11-2018, 03:44 PM)Star Wrote:(08-11-2018, 03:23 AM)420 Matt Wrote: I have a question regarding the C2 codetype. So do I need to end every C2 code with "60000000 00000000"? Or can I put the default RAM value for the first part of the last line? I know most C2 codes end in 60000000, but I have seen some ASM codes that don't end like that. EG: Bully's Invincibility hack.
A C2 code will end in 00000000 if there are an odd number of lines in the code.
Example:
li r0, 0
C2000000 00000001
38000000 00000000
If there are an even number of lines in the code, it will end in 60000000 00000000.
Example:
li r0, 0
li r0, 1
C2000000 00000002
38000000 38000001
60000000 00000000
This is done because the 00000000 instruction tells the code handler to branch back from where you came from. The nop is just a filler to tell the CPU to wait a cycle (do nothing).
However, the ASM <-> WiiRD Converter will do all of that for you.
Ah. I see. Makes more sense to me now. 1 last question, do I need to have the default RAM value as the last instruction? Before I add the nop or not, depending on the total amount of instructions my ASM code has.
Please note that I have read and studied how the gecko codetypes and PowerPC instructions work. Everything logically makes sense to me, but sometimes the small specifics of them get me confused.