Important: The whole thing would only work if there is constant difference between the codes! In this example the difference is 1
Example:
00000000 00000063
00000001 00000063
00000002 00000063
00000003 00000063
00000004 00000063
00000005 00000063
00000006 00000063
00000007 00000063
00000008 00000063
00000009 00000063
0000000A 00000063
0000000B 00000063
0000000C 00000063
0000000D 00000063
0000000E 00000063
0000000F 00000063
this is our Main - Code which have 16 Lines. But with condensing we can make this much shorter!
16 Byte Condensing
Whats happend with our Code if we make a 16 Byte Condensing?(The Code above runs in 8 Bytes. This you can see because of the "0" in front of the Code)?
The whole code would be halved!
10000000 00006363
10000002 00006363
10000004 00006363
10000006 00006363
10000008 00006363
1000000A 00006363
1000000C 00006363
1000000E 00006363
We see that the first Numbers have changed (0 -> 1). This "1" say that the codes runs now in 16 Bytes!
1xxxxxxx0000???? (before 0xxxxxx 000000??).
We also see that difference between all Codes have changed (1 -> 2). One 16 Bytes Line takes over the work of two 8 Bytes Lines! But we have to include the Digit from the lost Line in our 16 Bytes Line (63 -> 6363)
But we can still condense more lines!
32 Byte Condensing
What happend to our 16 Bytes Code if we condense it to a 32 Byte Code?
It is halved too or quartered if we see our Code in the beginning!
20000000 63636363
20000004 63636363
20000008 63636363
2000000C 63636363
We see that the first Numbers have changed (1 -> 2). This "2" say that the codes runs now in 32 Bytes!
2xxxxxxx???????? (before 1xxxxxx 0000????).
We also see that difference between all Codes have changed (2 -> 4). One 32 Bytes Line takes over the work of two 16 Bytes Lines! But we have to include the Digit from the lost Line in our 32 Bytes Line (6363 -> 63636363)
But we can still condense more lines!
32 Byte Super Condensing
You would ask how you can condense a Code whichs is already running in 32 bytes......
40000000 00040001
63636363 00000000
How this code is build ?
40000000 <-it is the first Address but instead of a 2 we have now a 4!
0004 <- This shows how often 32 bytes is include in this Code!
0001 <- this shows how many lines are calculate between the difference (At this example every, cause the Difference is 1 in the orginal of the Code!
63636363 <- Digit / Value
00000000 <- this is just a kind of verifier... you can use what want (e.g. DEADFACE ^^)
In variable:
4aaaaaaa xxxxZZZZ
bbbbbbbb 00000000
aaaaaaaa <- the Address which our Code begins
bbbbbbbb <-Digit we have to choose
but how we get xxxx and ZZZZ?
We have to take a Hex/Raw - Calulator e.g. the Windwos - Calculator.
We count how many Adresses our orginal Code have ---> 16 but we have to convert it in Raw/Hex --->10!
Now write in your Raw/Hex - calculator... 10 : 4...-----> = 4
Now our code is:
40000000 0004ZZZZ
63636363 00000000
Now we only have to find "ZZZZ"
This value indicates how many Lines are jumped over to the next Code. This system only runs with32 Byte. You just choose 2 Codes which stands among themselves. (just use the Addresses)
20000000
20000004
---> 20000004 - 20000000 = 4
This we have to divide with 4
4:4 = 1
Now our code is complete!
40000000 00040001
63636363 00000000
The same method on another example
Address 1 -> 20000008 12345678
Address 2 -> 2000009C 12345678
we see the Code runs already in 32 Byte
2000009C - 20000008 = 94 ......----> 94 : 4 = 25 .....
40000008 00020025
12345678 00000000
why 0002?
Because 32 bytes are 2 times include in this Code
Note: for this method our first Adress of the Code have to lie on 0, 4 , 8 , C !!! Otherwise you have to take one Adress before the condense Code!
Example:
"unlock all the movies"
Raphael
003FBF73 00000003
Talim
003FBF74 00000003
Yunsung
003FBF75 00000003
Cassandra
003FBF76 00000003
Mitsurugi
003FBF77 00000003
Taki
003FBF78 00000003
Voldo
003FBF79 00000003
Nightmare
003FBF7A 00000003
Astaroth
003FBF7B 00000003
Ivy
003FBF7C 00000003
Kilik
003FBF7D 00000003
Xiaghua
003FBF7E 00000003
Maxi
003FBF7F 00000003
Necrid
003FBF80 00000003
Heihachi
003FBF81 00000003
Sophitia
003FBF82 00000003
Seung Mina
003FBF83 00000003
Yoshimitsu
003FBF84 00000003
Charade
003FBF85 00000003
Cervantes
003FBF86 00000003
would be
003FBF73 00000003
403FBF74 00050001
03030303 00000000
we see the first Adress of the Code dont lies on 0 , 4, 8 , C so we just take this line before the condense Code!!
Example:
00000000 00000063
00000001 00000063
00000002 00000063
00000003 00000063
00000004 00000063
00000005 00000063
00000006 00000063
00000007 00000063
00000008 00000063
00000009 00000063
0000000A 00000063
0000000B 00000063
0000000C 00000063
0000000D 00000063
0000000E 00000063
0000000F 00000063
this is our Main - Code which have 16 Lines. But with condensing we can make this much shorter!
16 Byte Condensing
Whats happend with our Code if we make a 16 Byte Condensing?(The Code above runs in 8 Bytes. This you can see because of the "0" in front of the Code)?
The whole code would be halved!
10000000 00006363
10000002 00006363
10000004 00006363
10000006 00006363
10000008 00006363
1000000A 00006363
1000000C 00006363
1000000E 00006363
We see that the first Numbers have changed (0 -> 1). This "1" say that the codes runs now in 16 Bytes!
1xxxxxxx0000???? (before 0xxxxxx 000000??).
We also see that difference between all Codes have changed (1 -> 2). One 16 Bytes Line takes over the work of two 8 Bytes Lines! But we have to include the Digit from the lost Line in our 16 Bytes Line (63 -> 6363)
But we can still condense more lines!
32 Byte Condensing
What happend to our 16 Bytes Code if we condense it to a 32 Byte Code?
It is halved too or quartered if we see our Code in the beginning!
20000000 63636363
20000004 63636363
20000008 63636363
2000000C 63636363
We see that the first Numbers have changed (1 -> 2). This "2" say that the codes runs now in 32 Bytes!
2xxxxxxx???????? (before 1xxxxxx 0000????).
We also see that difference between all Codes have changed (2 -> 4). One 32 Bytes Line takes over the work of two 16 Bytes Lines! But we have to include the Digit from the lost Line in our 32 Bytes Line (6363 -> 63636363)
But we can still condense more lines!
32 Byte Super Condensing
You would ask how you can condense a Code whichs is already running in 32 bytes......
40000000 00040001
63636363 00000000
How this code is build ?
40000000 <-it is the first Address but instead of a 2 we have now a 4!
0004 <- This shows how often 32 bytes is include in this Code!
0001 <- this shows how many lines are calculate between the difference (At this example every, cause the Difference is 1 in the orginal of the Code!
63636363 <- Digit / Value
00000000 <- this is just a kind of verifier... you can use what want (e.g. DEADFACE ^^)
In variable:
4aaaaaaa xxxxZZZZ
bbbbbbbb 00000000
aaaaaaaa <- the Address which our Code begins
bbbbbbbb <-Digit we have to choose
but how we get xxxx and ZZZZ?
We have to take a Hex/Raw - Calulator e.g. the Windwos - Calculator.
We count how many Adresses our orginal Code have ---> 16 but we have to convert it in Raw/Hex --->10!
Now write in your Raw/Hex - calculator... 10 : 4...-----> = 4
Now our code is:
40000000 0004ZZZZ
63636363 00000000
Now we only have to find "ZZZZ"
This value indicates how many Lines are jumped over to the next Code. This system only runs with32 Byte. You just choose 2 Codes which stands among themselves. (just use the Addresses)
20000000
20000004
---> 20000004 - 20000000 = 4
This we have to divide with 4
4:4 = 1
Now our code is complete!
40000000 00040001
63636363 00000000
The same method on another example
Address 1 -> 20000008 12345678
Address 2 -> 2000009C 12345678
we see the Code runs already in 32 Byte
2000009C - 20000008 = 94 ......----> 94 : 4 = 25 .....
40000008 00020025
12345678 00000000
why 0002?
Because 32 bytes are 2 times include in this Code
Note: for this method our first Adress of the Code have to lie on 0, 4 , 8 , C !!! Otherwise you have to take one Adress before the condense Code!
Example:
"unlock all the movies"
Raphael
003FBF73 00000003
Talim
003FBF74 00000003
Yunsung
003FBF75 00000003
Cassandra
003FBF76 00000003
Mitsurugi
003FBF77 00000003
Taki
003FBF78 00000003
Voldo
003FBF79 00000003
Nightmare
003FBF7A 00000003
Astaroth
003FBF7B 00000003
Ivy
003FBF7C 00000003
Kilik
003FBF7D 00000003
Xiaghua
003FBF7E 00000003
Maxi
003FBF7F 00000003
Necrid
003FBF80 00000003
Heihachi
003FBF81 00000003
Sophitia
003FBF82 00000003
Seung Mina
003FBF83 00000003
Yoshimitsu
003FBF84 00000003
Charade
003FBF85 00000003
Cervantes
003FBF86 00000003
would be
003FBF73 00000003
403FBF74 00050001
03030303 00000000
we see the first Adress of the Code dont lies on 0 , 4, 8 , C so we just take this line before the condense Code!!
Comment