I will try to explain it better
patch=1,EE,xxxxxxxx,size,yyyyyyyy
work writing "size" of "yyyyyyyy" starting in address "xxxxxxxx"
for example
patch=1,EE,00000100,byte,00000001
writes 01 in address 00000100
patch=1,EE,00000101,byte,00000002
writes 02 in adresss 00000101
and these two lines do the same that this line
patch=1,EE,00000100,short,00000201
It writes 0101 starting in address 00000100 so it first writes 01 in address 100 and then 02 in address 101
For example with these codes that you posted
Code:
//unlock cassandra weapons
patch=1,EE,003fe796,word,00000202
patch=1,EE,003fe798,word,02020202
patch=1,EE,003fe79c,word,02020202
First patch writes 00000202 starting in address 3fe796 until adress 3fe799
you get something like
Code:
address data
3fe795 ..
3fe796 02
3fe797 02
3fe798 00
3fe799 00
3fe79A ..
Second patch writes 02020202 starting in address 3fe798 until adress 3fe79B
you get something like
Code:
address data
3fe795 ..
3fe796 02
3fe797 02
3fe798 02
3fe799 02
3fe79A 02
3fe79B 02
3fe79C ..
Third patch writes 02020202 starting in address 3fe79C until adress 3fe79F
you get something like
Code:
address data
3fe795 ..
3fe796 02
3fe797 02
3fe798 02
3fe799 02
3fe79A 02
3fe79B 02
3fe79C 02
3fe79D 02
3fe79E 02
3fe79F 02
3fe7A0 ..
With this i can see that the first patch was translated wrong because it gets overwrited by the second one.
With theses cheats you are unable to know what data is in 3fe798 and 3fe799because it's written with two different values. Probably it will be "02" because the way pcsx2 works.
But hey with the last patch of this code
Code:
//yungsung Weapon Codes
patch=1,EE,003FE78C,word,02020202
patch=1,EE,003FE790,word,02020202
patch=1,EE,003FE794,word,00000202
It writes
Code:
address data
3fe793 ..
3fe794 02
3fe795 02
3fe796 00
3fe797 00
3fe798 ..
Overwriting the previous code.
That's why it's important the byte,short,word thing.
And any other code that start for anything but 0,1 or 2 should not work because they are not writing directly in memory.
For example
Code:
// FFXII P1 Press R3+L1 For Super Fast Speed
D056BADC 0000FBFB
1025C7E8 000041F7
This code means checks if the data in adress 056BADC is FBFB and if it is it writes 41F7 in adress 25C7E8
If i translate it your way
it will be
Code:
patch=1,EE,0056BADC,word,0000FBFB
patch=1,EE,0025C7E8,word,000041F7
it will write 0000FBFB in 56BADC (by the way 56BADC it's the adress with pad "registers") and then it will write 000041F7 in 25C7E8
But if you used what i said
Code:
patch=1,EE,D056BADC,extended,0000FBFB
patch=1,EE,1025C7E8,extended,000041F7
It will work
i know all of this because i write the "extended" thing in pcsx2 and for that i have to study how codebreaker/armax codes works
Last edited by Pontifice; March 13th, 2009 at 16:18..