字符替换可以直接替换小于原地址的字符,也可以替换大于原地址的字符,但是需要做偏移。英文字母及数字占有 16 进制的 1 个地址,汉字占用 3 个地址。
下面我们将用 E800 74 版本来做详细说明。
一、前期准备:
1、 WinHex 16 进制编辑软件:也可以使用 Hex Workshop 软件,但是 Hex Workshop 软件操作时稍不注意就容易出错,所以建议使用 WinHex 比较方便,而且 WinHex 软件容量更小
2、 Ut8 点睛文本编码软件
这两个软件可以到这里下载: http://www.blueshow.net/vbb/read.php?tid=90284&toread=1&fpage=1
二、直接替换小于原字符:
1、 用 WinHex 打开 E800 的 74 版本 BIN 或 CLA 文件
2、 查找到要替换的原字符,这里我们以替换内置缺省来电铃声 1 为例,原字符为 Beat Box 。打开 ut8 软件,在“ Text ”栏中输入 Beat Box (注意大小写及空格,否则找不到别怪偶),按 Ctrl+C 键复制“ UTF-8 ”栏中的 16 进制数值

3、 回到 WinHex 软件中,按 Ctrl+Alt+F 键查找 16 进制数值,将刚才复制的 ut8 “ UTF-8 ” 栏中的 16 进制数值粘贴进去进行查找(也可以直接在 WinHex 中用 Ctrl+F 键进行文本搜索,但是此方法只能用于英文及数字的查找,对于中文是不支持的)

点击确定进行查找
4、 按 F3 键进行依次查找,此时我们发现查找到 5 个地址,经过验证,第 3 个是我们将要替换的地址

5、 Beat Box 字符是 8 个字节,我们将替换成“黄昏”这两个汉字。用 ut8 将黄昏这两个汉字查询 16 进制数值,

Ctrl+C 键复制一下 16 进制数值
6、 在 WinHex 界面中,点击一下刚才查找到的 Beat Box 的 16 进制数值起始地址,按 Ctrl+B 键

点击确定

在这里选择 ASCII Hex ,确定
7、 因 Beat Box 字符是 8 个字节,而“黄昏”这两个汉字占用的是 6 个字节,所以将剩余的两个字符改为 00

8、 好了,字符已经替换成功,现在将更改好的文件另存,另存后将文件后缀改成 bin 或 cla 即可刷机了。(建议新手将需要修改的版本文件复制后再进行替换,这样即使文件被不慎破坏也不怕了)
三、替换大于原字符偏移
1、 首先我们要确定替换的原字符及需要替换成什么字符进去。这里我们选择替换内置缺省来电铃声 2 为例,原字符为 Campanella ,为 10 个字节,用“老鼠爱大米”替换进去,为 15 个字节
2、 还是用 WinHex 打开版本 BIN 或 CLA 文件
3、 按 Ctrl+Alt+F 键查找大片的 FFFF 空白地址,这里我们找到以 003E9CA0 为起始地址的空白地址

4、 打开 ut8 软件,在“ Text ”栏中输入老鼠爱大米,按 Ctrl+C 键复制“ UTF-8 ”栏中的 16 进制数值
5、 在 WinHex 界面中,点击一下刚才查找到的 003E9CA0 起始地址,按 Ctrl+B 键

点击确定

在这里选择 ASCII Hex ,确定
6、 记下字符偏移后的起始地址为 3E9CA0 ,记得将结尾下一个地址更改成 00

7、 上面我们已填充进字符文件,现在要开始做指针偏移了
8、 用 ut8 查询铃声 2 字符 Campanella 的 16 进制数值,到 WinHex 查找第 3 个地址,起始地址为 D62C1A (下方红色方框内偏移量)

9、 按 Ctrl+Alt+F 键查找 D62C1A 的地址,这里就是指针了

10、将 D62C1A 指针更改成 “老鼠爱大米”的偏移地址 3E9CA0

11、好了,指针修改好了,另存后刷机看看吧。