So, by now, there are some methods that the group can't find, right? For example, large-font 3-line ASCII spelling (if there are enough memory) or the bug at http://tieba.baidu.com/p/5010239187 . This will allow us to find those.
I have asked this to the group several times, and receive no answer. Either because you can't understand what I'm saying, or you don't want to.
Method:
In 100 effective (有效) characters, first 52 characters enter randomly (随便打).
6 next characters from 53 to 58 enter Ans →M 0 0 0 0
4 next characters from 59 to 62 enter randomly.
2 next characters from 63 to 64 control number of bytes.
8 next characters from 65 to 72 enter randomly.
3 next characters from 73 to 75 enter ³√( →M 0
7 next characters from 76 to 82 enter randomly
5 next characters from 83 to 87 enter cm→in @ (character 8D, right after Ran#) m→n mile →D 0
Remaining 13 characters from 88 to 100 enter randomly.
2 characters from 63 to 64 is in little endian. For example, if those are "4 sin(" = (34 A0), then the result show on the screen is 3030 (in hexadecimal), subtract the sum of A034 first bytes of segment 0 (from byte 0000 to A033), subtract the sum of about FFFC first bytes of segment 1.
In particular, here are some results:
- Number of bytes - Checksum -
A033 - CF26
A034 - CE55
A035 - CE55
A036 - CD73
A037 - CC8E
A038 - CB9E
Thus we can conclude 5 bytes from A033 in segment 0 is (D1 00 E2 E5 F0). Comparing to the emulator's ROM (program/code memory space) we can find those bytes at addrss A958.
First I want to find those things (on real calculator, but have to find them on emulator first):
1. Procedure to copy from the screen buffer to the screen.
2. Procedure to reset the calculator.
3. "Wait" procedure. (until user press [Shift] or [AC], etc.)
I have asked this to the group several times, and receive no answer. Either because you can't understand what I'm saying, or you don't want to.
Method:
In 100 effective (有效) characters, first 52 characters enter randomly (随便打).
6 next characters from 53 to 58 enter Ans →M 0 0 0 0
4 next characters from 59 to 62 enter randomly.
2 next characters from 63 to 64 control number of bytes.
8 next characters from 65 to 72 enter randomly.
3 next characters from 73 to 75 enter ³√( →M 0
7 next characters from 76 to 82 enter randomly
5 next characters from 83 to 87 enter cm→in @ (character 8D, right after Ran#) m→n mile →D 0
Remaining 13 characters from 88 to 100 enter randomly.
2 characters from 63 to 64 is in little endian. For example, if those are "4 sin(" = (34 A0), then the result show on the screen is 3030 (in hexadecimal), subtract the sum of A034 first bytes of segment 0 (from byte 0000 to A033), subtract the sum of about FFFC first bytes of segment 1.
In particular, here are some results:
- Number of bytes - Checksum -
A033 - CF26
A034 - CE55
A035 - CE55
A036 - CD73
A037 - CC8E
A038 - CB9E
Thus we can conclude 5 bytes from A033 in segment 0 is (D1 00 E2 E5 F0). Comparing to the emulator's ROM (program/code memory space) we can find those bytes at addrss A958.
First I want to find those things (on real calculator, but have to find them on emulator first):
1. Procedure to copy from the screen buffer to the screen.
2. Procedure to reset the calculator.
3. "Wait" procedure. (until user press [Shift] or [AC], etc.)