如何将 G2 版铃声转换为 A2 版
一、 先说明一下几个地址:
1、 铃声地址:两个版本都是从 0x00BA5720 至 0XC2ABA3 共 545924 字节长度
2、 铃声指针地址:两个版本都是从 0x00C55CB0 开始,每八个字节对应一个铃声文件,前四个字节(双字)为铃声指针,接下来两个字节(字)为铃声长度,另两个字节保留,为 00 00 。这样一直到 0x 00C55DFF 共 336 个字节长,存放 42 个铃声的对应地址及长度。
3、 铃声名称地址:这个地址及下面的地址两个版本中是不一样的,也就是我们要转换的对象了。 G2 版从 0x0014CC14 到 0x0014CF46 、 A2 版从 0x0014D4BC 到 0x0014D7EE 共 818 字节用来存放简体中文的铃声名称(其它语言版本对应其他地址,有兴趣者可自己查找)。
4、 铃声名称指针地址: G2 版从 0x003619E0 、 A2 版从 0x00362D00 开始,每四个字节(双字)存放一个铃声名称指针,这样 G2 到 0x00361A87 , A2 到 0x00362DA7 共 168 个字节长用来存放 42 个内置铃声名称指针。
二、 图解铃声文件转换:
明白以上地址后,转换就不难了(希望有哪个 DX 可以直接制作一个转换程序,我是太久没有接触编程了,又有个较忙的工作,实在没法,拜托各位了)。
1 、用 UltraEdit 打开 G2 版 S3 文件,从中提取出 2 个 S3 文件:即铃声名称部分一个文件(比如 铃声 1.sre ),铃声名称指针部分一个文件(比如 铃声 2.sre )。如图,选中部分即铃声名称指针部分,选中部分之上为铃声名称部分,分别把它们存成 S3 类型文件(注意,文件的第一行和最后一行分别为: S00600004844521B 和 S705A002000068 。没有?把它加上吧!)。
2 、用 SAMSUNG Mobile Phone DIY 3.2 把 A 、 B 两文件转换为 bin 文件(注意红笔部分的选择)
3 、把铃声名称部分 bin 文件直接用 SAMSUNG Mobile Phone DIY 3.2 转换成 S3 类型文件,注意写好起始地址。
4、 先复制铃声 2.bin 为铃声 2-A2.bin ,用 UltraEdit 打开,窗口选垂直平铺,更改铃声 2-A2.bin 中每个指针值:第一个更改为 0x0014D4BC ,注意该双字在计算机的表示方式为 BC D4 14 00 ,其他的对应加上 0 x8A8 (十进制 2216 ),分别填入。修改完成如下图:
当然地址的转换可以通过 EXCEL 进行,您的 EXCEL 必须加载分析工具宏,用到以下两个函数 : dec2hex() 和hex2dec(),如图(红色单元格要手工输入):
5 、把铃声 2-A2.bin 文件用 SAMSUNG Mobile Phone DIY 3.2 转换成 S3 类型文件,注意写好起始地址。
6 、用生成的两个 A2 版 S3 文件替换原 G2 铃声 S3 文件中相应的部分,保存。 OK !可以刷机了。