WiiRd forum

USB Gecko Related => Gecko OS & USB Gecko => Topic started by: LimeWire on May 20, 2012, 05:02:04 PM

Title: 07 codetype?
Post by: LimeWire on May 20, 2012, 05:02:04 PM
hey can anyone teach me how to do the 07 codetype?

for example if i wanted to write value 00000100 to address 80389AAD, how would i put that in the 07 codetype?


please make the tutorial noob friendly


example code:

Infinite Health [TNTkryzt]
077DC06C 00000024
3D608074 816B777C
2C0B0000 40820010
2C0F007F 40820008
4A8C1DFC 7C06292E
4A8C1DF4 00000000
0409DE7C 4973E1F0


Title: Re: 07 codetype?
Post by: Deathwolf on May 20, 2012, 05:28:19 PM
07 codetype is for string codes. This codetype is more useful to write values next to the others like 01020304 05060708 0A0B0C0D and so on. If you only want to write one value to an address, then it isn't really necessary to use the 07 codetype.

Your code would be 02389AAD 00000100  and it's done.

Besides, TNTkryzt's code is an ASM code....
Title: Re: 07 codetype?
Post by: dcx2 on May 20, 2012, 11:10:32 PM
07 is an 06 code which writes to address 81XXXXXX.

As Deathwolf says, that code is actually a hand-written C2 code.

80389AAD is "byte aligned", so you shouldn't use an 02 code to write to it.  The address isn't a multiple of 2 or 4.

Make sure you know exactly what address you want to write to.  Word aligned means address is a multiple of 4, e.g. 0, 4, 8, C.  D is an odd value (13 in decimal), that's why it's byte aligned.  You may mean "02389AAC 00000100".  Or "00389AAD 00000001".  I'm not sure.
Title: Re: 07 codetype?
Post by: Bully@Wiiplaza on May 22, 2012, 12:11:20 AM
The 06 string write code type is for writing multiple 32bit values to consecutive addresses. Therefore, if you only want to write a single value, you don´t need this. TNTkryzt wrote some assembly instructions to the upper mem81 region (that´s why 07) and uses the 04 write code to set a branch. Since we can automatically generate C2 ASM Codes (e.g. ASMWiiRd), we don´t need to this manual method anymore.