winming 发表于 2008-7-21 20:00:07

广大机友方便了 VKP补丁数据转换BIN格式生成器V1.0 似水无痕版 发布了!

请详细阅读此说明,注意红色字体!
软件说明:
本软件功能
可以把 VKP格式补丁转换为BIN格式补丁!

主要用途:
以前制作BIN方法是把补丁刷入到一个FLASH文件中,然后按照一定的地址和长度 提取FLASH文件然后保持为BIN格式。
由于这样操作繁琐,很多8友都觉的不方便,所以我在云版主的建议下开发了这个小程序。
方便8友们制作BIN文件,最近出的几个新补丁都需要手工制作BIN文件。
只要是地址连续同时功能独立的VKP补丁都可以用此软件转换为BIN格式补丁!
(云版主的MMC卡加载节日数据补丁,需要制作节日数据BIN格式的文件 )
(Ijmstock的kvSIM 1.0 也需要手工制作一卡多号用户数据的BIN文件)

操作方法:
用V_KLay打开需要转换的VKP格式的补丁,复制补丁数据到本软件的文本空白框内,生成BIN文件,输入保存路径就OK了!

有朋友说,运行此软件提示缺少“COMDLG32.OCX”,所以我把这个控件也打包了,缺少的朋友请下载,如果运行正常就不用下载了!


注意要点:
1 本软件支持V_KLay格式标准格式,所以复制过来的补丁数据必须是
FLASH地址:旧数据 新数据 ;注释
0x1F2000: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00C0B89CD7403400F2F1DE3046F10802 ;TESTTESTTEST
2 必须保证本补丁可有正常刷入手机!强刷也没有关系!
3 本软件把 ; 之后的字符都过滤掉了,所以 注释内容可有可无 不影响BIN文件的生成!
4 FLASH地址必须是连续地址且长度相同 否则转换出来的BIN文件将无法执行!(很重要!!!!!!)

如:

0x1fff00: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF daA404FAD7403400F2F1AE2248102D07
0x1fff20: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DABF12A0E001D7403400F6F1AE22DB00
以上格式错误 (地址不连续错误)
0x1fff00: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF daA404FAD7403400F2F1AE2248102D07
0x1fff10: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DABF12A0E001D7403400F6F1AE22DB00
以上格式正确(地址必须要连续)

0x1fff00: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 31333838383838383838000000000000
0x1fff10: FFFFFFFFFFFFFFFF 3535353535000000
0x1fff20: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 31333931343034363333390000000000
以上格式错误 (地址长度不一样错误)
0x1fff00: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 31333838383838383838000000000000
0x1fff10: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 3535353535000000FFFFFFFFFFFFFFFF
0x1fff20: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 31333931343034363333390000000000
以上格式正确 (地址长度不一样时补填FF保证每行的长度相同)

由于以上2点错误,在V_KLay是支持这种格式的,但是如果转换为BIN格式的补丁的话,就会造持补丁无法运行的错误,希望大家注意这一点就可以了!
同时,由于BIN格式补丁都是从头开始的,所以不用管VKP补丁的开始地址,只要保证地址是连续的同时每行的长度是一样的就没有错误了!


下面我就给大家几个实例!
实例1 :
下面是云版主的通过MMC卡文件加载每年的节日用户数据部分的VKP格式补丁
详情见:http://mobile.0110.cn/viewthread.php?tid=372102&extra=page%3D1

2008节日数据 VKP补丁内容:
补丁格式都是按照作者说明修改!
;读取BIN数据起始地址:0x56312C 长度:2D4
;执行功能部分
0x56312C: FFFFFFFF E00C88C0
0x563130: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF E00DE00E88E088D0E6FFA00288F0E6FC;672字节
0x563140: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 5C14E6FD3400E6FE2000E00FDAB44AFA
0x563150: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 06F00800E6FD1E05DAE6A804DB00CC00
;数据部分
0x563160: FFFFFFFFFFFFFFFFFFFFFFFF 171CC60FC552000000000000;11.28,农历,小寒
0x56316C: FFFFFFFFFFFFFFFFFFFFFFFF 180EC027C552000000000000;12.14,农历,大寒
0x563178: FFFFFFFFFFFFFFFFFFFFFFFF 181CFEA44BDA250000000000;12.28,农历,立春
0x563184: FFFFFFFFFFFFFFFFFFFFFFFF 0D0DFEDC68E6340000000000;01.13,农历,雨水
0x563190: FFFFFFFFFFFFFFFFFFFFFFFF 0D1CCF4AFEBC700000000000;01.28,农历,惊蛰
0x56319C: FFFFFFFFFFFFFFFFFFFFFFFF 0E0DDA25B206000000000000;02.13,农历,春分
0x5631A8: FFFFFFFFFFFFFFFFFFFFFFFF 0E1CEA05DA0E000000000000;02.28,农历,清明
0x5631B4: FFFFFFFFFFFFFFFFFFFFFFFF 0F0FFEC737FEDC6800000000;03.15,农历,谷雨
0x5631C0: FFFFFFFFFFFFFFFFFFFFFFFF 1001FEA44BC00F0000000000;04.01,农历,立夏
0x5631CC: FFFFFFFFFFFFFFFFFFFFFFFF 1011C60FEB61000000000000;04.17,农历,小满
0x5631D8: FFFFFFFFFFFFFFFFFFFFFFFF 1102FEB412FEA24D00000000;05.02,农历,芒种
0x5631E4: FFFFFFFFFFFFFFFFFFFFFFFF 1112C00FFEB2730000000000;05.18,农历,夏至
0x5631F0: FFFFFFFFFFFFFFFFFFFFFFFF 1205C60FDB11000000000000;06.05,农历,小暑
0x5631FC: FFFFFFFFFFFFFFFFFFFFFFFF 1214C027DB11000000000000;06.20,农历,大暑
0x563208: FFFFFFFFFFFFFFFFFFFFFFFF 1307FEA44BFEA24B00000000;07.07,农历,立秋
0x563214: FFFFFFFFFFFFFFFFFFFFFFFF 1317C004DB11000000000000;07.23,农历,处暑
0x563220: FFFFFFFFFFFFFFFFFFFFFFFF 1408FE9B7DFEDD3200000000;08.08,农历,白露
0x56322C: FFFFFFFFFFFFFFFFFFFFFFFF 1417FEA24BB2060000000000;08.23,农历,秋分
0x563238: FFFFFFFFFFFFFFFFFFFFFFFF 150AC552FEDD320000000000;09.10,农历,寒露
0x563244: FFFFFFFFFFFFFFFFFFFFFFFF 1519FEDD1CFEDB4D00000000;09.25,农历,霜降
0x563250: FFFFFFFFFFFFFFFFFFFFFFFF 160AFEA44BB12C0000000000;10.10,农历,立冬
0x56325C: FFFFFFFFFFFFFFFFFFFFFFFF 1619C60FFEDC6A0000000000;10.25,农历,小雪
0x563268: FFFFFFFFFFFFFFFFFFFFFFFF 170AC027FEDC6A0000000000;11.10,农历,大雪
0x563274: FFFFFFFFFFFFFFFFFFFFFFFF 1718B12CFEB2730000000000;11.24,农历,冬至
0x563280: FFFFFFFFFFFFFFFFFFFFFFFF 060FFE9336AB32FEB4020000;父亲节6月的第三个星期日
0x56328C: FFFFFFFFFFFFFFFFFFFFFFFF 050BE54DAB32FEB402000000;母亲节五月的第二个星期日
0x563298: FFFFFFFFFFFFFFFFFFFFFFFF 0B1BD01FCE69FEB402000000;感恩节11月第四个星期四
0x5632A4: FFFFFFFFFFFFFFFFFFFFFFFF 010132303038CA7400000000;2008年元旦
0x5632B0: FFFFFFFFFFFFFFFFFFFFFFFF 0C01FE9331EB4BFE9A450000;12-1爱滋病(公历固定)
0x5632BC: FFFFFFFFFFFFFFFFFFFFFFFF 0D01DA25FEB4020000000000;春节(阴历固定)
0x5632C8: FFFFFFFFFFFFFFFFFFFFFFFF 0D0FB043C535FEB402000000;元宵节(阴历固定)
0x5632D4: FFFFFFFFFFFFFFFFFFFFFFFF 0C19BC23FEC65EFEB4020000;圣诞节12-25(公历固定)
0x5632E0: FFFFFFFFFFFFFFFFFFFFFFFF 0A01BB7DCB06FEB402000000;国庆节(公历固定)
0x5632EC: FFFFFFFFFFFFFFFFFFFFFFFF 0501B333B328FEB402000000;劳动节(公历固定)
0x5632F8: FFFFFFFFFFFFFFFFFFFFFFFF 0401D01AAB3AFEB402000000;愚人节(公历固定)
0x563304: FFFFFFFFFFFFFFFFFFFFFFFF 020ECF45AB3AFEB402000000;情人节(公历固定)
0x563310: FFFFFFFFFFFFFFFFFFFFFFFF 1307AA5EC967FEB402000000;七夕节(阴历固定)
0x56331C: FFFFFFFFFFFFFFFFFFFFFFFF 1105FEA46FB448FEB4020000;端午节(阴历固定)
0x563328: FFFFFFFFFFFFFFFFFFFFFFFF 1808FEB14AB06BD965000000;腊八日(阴历固定)
0x563334: FFFFFFFFFFFFFFFFFFFFFFFF 140FAA2DFEA24BFEB4020000;中秋节(阴历固定)
0x563340: FFFFFFFFFFFFFFFFFFFFFFFF 1509FED24DFEDB33FEB40200;重阳节(公历固定)
0x56334C: FFFFFFFFFFFFFFFFFFFFFFFF 090AD859AA66FEB402000000;教师节9-10(公历固定)
0x563358: FFFFFFFFFFFFFFFFFFFFFFFF 0A1FAA07BC23FEB402000000;万圣节(公历固定)
0x563364: FFFFFFFFFFFFFFFFFFFFFFFF 0308C107C073FEB402000000;妇女节(公历固定)
0x563370: FFFFFFFFFFFFFFFFFFFFFFFF 030CE00DDE11FEB402000000;植树节(公历固定)
0x56337C: FFFFFFFFFFFFFFFFFFFFFFFF 0601B03FFEA465FEB4020000;儿童节(公历固定)
0x563388: FFFFFFFFFFFFFFFFFFFFFFFF 030FE908FEC939FEAF050000;3-15消费者(公历固定)
0x563394: FFFFFFFFFFFFFFFFFFFFFFFF 0C18CA73C509C01C00000000;12-24平安夜(公历固定)
0x5633A0: FFFFFFFFFFFFFFFFFFFFFFFF 000000000000000000000000;未使用
0x5633AC: FFFFFFFFFFFFFFFFFFFFFFFF 000000000000000000000000;未使用
0x5633B8: FFFFFFFFFFFFFFFFFFFFFFFF 000000000000000000000000;未使用
0x5633C4: FFFFFFFFFFFFFFFFFFFFFFFF 000000000000000000000000;未使用
0x5633D0: FFFFFFFFFFFFFFFFFFFFFFFF 000000000000000000000000;未使用
0x5633DC: FFFFFFFFFFFFFFFFFFFFFFFF 000000000000000000000000;未使用
0x5633E8: FFFFFFFFFFFFFFFFFFFFFFFF 000000000000000000000000;未使用
0x5633F4: FFFFFFFFFFFFFFFFFFFFFFFF 000000000000000000000000;未使用

附件2 为 用本软件转换以上格式生成的BIN格式文件,大家可以参考!
----------------------------------------------------
实例2:
下面是ljmstock的一卡多号kvSIM_1.0beta的VKP格式补丁
补丁格式都是按照作者说明修改!
详情参考:http://mobile.0110.cn/viewthread.php?tid=376687&extra=page%3D1
;制作5200.bin的VK
;以下文件头:
0x56312C: FFFFFFFF E00C88C0
0x563130: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF E00DE00E88E088D0E6FFE00188F0E6FC;480=E001字节
0x563140: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 5014E6FD3400E6FE2000E00FDAB44AFA;5014=5200
0x563150: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 06F00800E6FD1E05DAE6A804DB00CC00
;以下为 kvSIM_Data.vkp 复制过来内容,用自己的SIM资料了
; kvSIM(ver 0.9) data generated by kvGen ver 0.9
;         by Konca Fung (www.konca.com)
; TrueName: 真实卡
0x563160: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF E79C9FE5AE9EE58DA100000000000000
; Password: 1130
0x563170: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 3131333000000000FFFFFFFFFFFFFFFF
; (以上部分部分我做了修改,否则就会错误)
; 原补丁为:0x563170: FFFFFFFFFFFFFFFF 3131333000000000
; Data of Virtual Card 1 - 虚拟卡1
0x563180: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF E8999AE68B9FE58DA131000000000000
0x563180: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x5631A0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x5631B0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
; Data of Virtual Card 2 - 虚拟卡2
0x5631C0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF E8999AE68B9FE58DA132000000000000
0x5631D0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x5631E0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x5631F0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
; Data of Virtual Card 3 - 虚拟卡3
0x563200: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF E8999AE68B9FE58DA133000000000000
0x563210: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x563220: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x563230: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
; Data of Virtual Card 4 - 虚拟卡4
0x563240: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF E8999AE68B9FE58DA134000000000000
0x563250: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x563260: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x563270: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
; Data of Virtual Card 5 - 虚拟卡5
0x563280: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF E8999AE68B9FE58DA135000000000000
0x563290: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x5632A0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x5632B0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
; Data of Virtual Card 6 - 虚拟卡6
0x5632C0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF E8999AE68B9FE58DA136000000000000
0x5632D0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x5632E0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x5632F0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
; Data of Virtual Card 7 - 虚拟卡7
0x563300: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF E8999AE68B9FE58DA137000000000000
0x563310: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x563320: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000
0x563333: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00000000000000000000000000000000

附件3 为 用本软件转换以上格式生成的BIN格式文件,大家可以参考!








[ 本帖最后由 winming 于 2008-7-22 13:37 编辑 ]

winming 发表于 2008-7-21 20:00:49

沙发我自己的

同时 请教高手,BIN格式文件在小8中直接可以运行 的工作原理是什么?
好像看到过 bin文件是从0x80000开始执行的?
我到现在还搞不清楚BIN文件
那位高手给我解答一下,在此谢过了!

[ 本帖最后由 winming 于 2008-7-21 20:14 编辑 ]

songfoming 发表于 2008-7-21 20:21:32

我沙发~~~~~~~~支持~~~~~~~~~

sun_hong 发表于 2008-7-21 22:09:51

地板支持!

ljmstock 发表于 2008-7-21 22:57:04

回复 2# winming 的帖子

BIN格式文件在小8中直接可以运行得感谢 BFA.Binary 文件存取功能 系统文件关联,两补丁。
工作原理:bin文件是二进制代码,补丁将MMC上的bin文件内容加载到RAM中,再从加载地址开始执行。
RAM小说和BLAOCK加载BIN文件后进行运行都需要一个文件头,能看小说和加载到BLOCK,就是这段文件头代码的作用。

[ 本帖最后由 ljmstock 于 2008-7-22 11:55 编辑 ]

winming 发表于 2008-7-21 23:27:31

谢谢楼上的回答!

云卷.云舒 发表于 2008-7-21 23:54:02

哇哈哈,winming版主 动作真快,手到擒来啊。

云卷.云舒 发表于 2008-7-22 00:02:39

回复 6# winming 的帖子

如同我们修改的FLASH部分,实际运行地址要加A00000一样

bin文件是执行后临时加载到80000开始的地址。关机就消失,后一个bin文件的执行会覆盖前一个的数据。
而且bin包含的补丁的执行功能部分必须完整,一般都是DB00返回,保持稳定性。

siwaxinge 发表于 2008-7-22 01:31:30

为什么kvsim要改地址?不满16位就有问题吗

winming 发表于 2008-7-22 07:39:34

回复 9# siwaxinge 的帖子

不是改动地址!是保证每行的补丁数据长度相等!
如果长度不相等,生成的BIN文件将是不连续的代码,就会运行错误!
所以一定要保证 补丁数据的地址连续以及每行长度的相等!

XJWSYXY 发表于 2008-7-22 11:14:21

支持。。。。。。。

konyeth 发表于 2008-7-22 11:23:29

拨打电话时一定也用到了800000后面的地址。否则为什麽拨7次就死机。

konyeth 发表于 2008-7-22 11:34:26

拨打电话时一定也用到了800000后面的地址。否则为什麽拨7次就死机。

winming 发表于 2008-7-22 12:21:51

回复 13# konyeth 的帖子

7次就死机是 通话留言补丁造成的!
同时 请问 死机和800000地址有什么联系呢?

89441547 发表于 2008-7-22 12:26:42

赶紧占位!这个东西看来不错!

holyyloh 发表于 2008-7-24 12:22:29

好东西,谢谢楼主::/\hdg

XJWSYXY 发表于 2008-7-31 19:19:57

已成功使用,再次支持。。

Xinshou 发表于 2008-8-1 15:55:58

bin文件是加载到20H的内存 (从0x80000开始)
56版有个JSTV阅读器bin文件,好像将txt文件加载到21H内存。
(移植过来的英文txt阅读编辑器好像也是将txt文件加载到21H内存!参见帖子“FAM 3.2 & BFA 2.2final & ESI &FTA以及txt读写编辑器”)

两个Java程序不能同时运行的原因是,他们都加载到20H,故后面的程序覆盖了前面程序所用的内存。
现在其他手机是将Java加载到分段内存中,各个程序加载到不同段,故可同时运行多个Java,变成所谓的智能机。

[ 本帖最后由 Xinshou 于 2008-8-1 16:08 编辑 ]

taitaile 发表于 2008-8-21 14:17:36

这些个原理听了才会明白。

Wang 发表于 2008-9-14 01:10:25

winming,发现制作的bin文件结尾都多了一个00字节
页: [1] 2
查看完整版本: 广大机友方便了 VKP补丁数据转换BIN格式生成器V1.0 似水无痕版 发布了!