首先要有工具一根三星 PCB093LBC 或 PCB093LBE 的。
软件: samsung diy 和 hex workshop 以及 X138 的 D2 版本的 S3 文件和我们要替换的游戏文件( JAR.JAD )
下面我们先找到要替换进去游戏的 jad 和 jar 。然后分别用 samsung diy 转为 s3 文件。转时选部分地址,输入起始地址,见下(图 1 )
起始地址的确定我们下面叙述。
用 samsung diy 将 x138 自己版本的 s3 文件转为 bin ,用 hex workshop( 百度可以搜索到 ) 打开。查找“ e:\S100\" 字串,找到如下(图 2 )的地方。按说明找到第一个游戏 jad 的存放地址,例如 D2 为 E0D69C00 ,颠倒过来为 009CD6E0 ,这就是你替换的 jad 的起始地址。 jar 的地址如果你想简单化,就选下面的地址。如果你想节省空间,那么就按下面的计算公式决定:
jad 地址(十六进制)+ jad 大小(十六进制)。比如 jad 的大小为 382byte ,转为十六进制 17E ,加 009CD6E0 为 009CD85E 。这个就为 jar 的起始地址。
把按上面方法确定的起始地址输入到 samsung diy 中的相应位置,得到 jad 和 jar 的 s3 文件。
下面再制作大小和偏移的 s3 文件。
用 hex workshop 打开 bin ,找到图 2 的地方,更改 jad 和 jad 的大小和地址为新的大小和地址。更改时一定要记的前后互换,如 jad 的大小为 0000 017E (十六进制),那么应该改为 7E01 0000 , jad 的地址没有变,所以不用改。 jar 的新大小为 53495 (十六进制 0000D0F7 ),输入 F7D00000 , 地址为 009CD85E ,应该输入 5ED89Cb00 。将鼠标点到 jad 和 jar 的大小的起始处,看右下角的偏移地址,记下。,此处分别为: 00AD7840 和 00AD79C8 。用 hex workshop 新建两个文件,分别输入 7E01 0000 和 F7D00000.5ED89C00 。保存为两个 bin 文件。再把两个 bin 文件转为 s3 文件。转时和上面的一样,用部分地址,起始地址分别为我们刚才记下的 009CD6E0 和 009CD85E 。
更为简单的办法是,选中更改的内容,直接导出为 s3 文件,具体方法是:选中更改的内容,点击 文件 ----> 导出 ,保存类型选 motolola s37 记录,把文件名扩展名的“ 7 ”删除,存盘。(图 3 )这样的做法也可以做部分更改的备份文件。很是方便。
把生成的 4 个 s3 文件刷入手机。 ok
其它几个游戏可以依次按这个方法刷入。第二个游戏的 jad 地址可以用第一个游戏的 jar 地址加上 jar 的大小(十六进制)来确定。总之,游戏的 jad 和 jar 可以是连续的存储。然后根据而 jad 和 jar 的大小和位置的变化更改相应的地方。把更改的地方也做成 s3 文件,一同和 jad 和 jar 的 s3 文件刷入即可。
jad 和 jar 的大小看属性即可,是大小,而不是占用空间。
如果只替换一个游戏,这个游戏的大小( jad + jad )最好不要大于原先的游戏( jar + jad ),如果大了,后面的一个游戏会破坏。如果四个游戏全换,这个总空间是否要小于原先的空间的问题我没试,有兴趣的您可以试一试。