因为学业的关系 , 好久没有安静的坐在键盘前 KEY 字了 , 总觉得要写点什么出来 , 想来想去 , 既然小 A 和小 2 出自西门 , 一定要把 DIY 发扬光大!就写一写如何应用狼大的 COOLIMAGE 吧 。
这个软件是用来修改西门子手机固有图片的 , 何谓“固有图片” , 这里不是简单的待机图片 , 而是把手机内置的图片拿出来修改 , 比如可以把手机的待机时钟表盘换成你喜欢的样式 , 把收到短信的信封图标换成带小翅膀的微笑信封 , 这是一般的待机图片所做不到的!
使用方法很简单 , 简单的说就是用 COOLIMAGE 生成图片补丁 , 再用 V KLAY 刷进手机 。但是考虑到部分既有对 FLASH 的修改不熟悉而不敢动手 ( 其实修改图片是对手机绝对无害的 ), 我还是参照狼大的 read me 把修改的原理说一说 , 这里献丑了 ^_^
Flash 地址和文件地址的转换 , 在手机内部是用统一的 16M 地址来处理 Flash 的 。而 2128 和 A55 的 FLASH 只有 8M , 所以有如下公式 :FlashAddress = FileAddress0x800000。就是说在 FLASH 的前面填上 8M 的空间来进行 16M 寻址 。
而转换为页地址则为 :FlashAddress / 0x4000 = Page ;
FlashAddress % 0x4000 = Offset。
FlashAddress = 0x8F7856 , 转换为文件地址则为 0x0F7856。
Page = 0xAF7856 / 4000H = 0x3D ,
offset = 0x7856 % 4000H = 0x3856。
在一些资源如 IMAGE( 图片 ) 的索引中 , 地址就是以( page , offset )的方式存储 ,
【打造小A的个性】Image 索引格式 :
00 Byte 图片高度 Higth
01 Byte 图片宽度 Weigth
02 Word unknown
04 Word 页内偏移 OFFSET
06 Word 页地址 PAGE
例如
0x500000 (索引表开始地址)04 04 01 00 FA 3F A1 03
PAGE = 03A1
OFFSET = 3FFA
FlashAddress = (0x03A1 * 0x40003FFA) = 0xE87FFA
ImageFileAddress 0x687FFA = FlashAddress - 0x8000000
下面是详细的步骤
1 :需要你有一款手机的 FullFlash。关于 FLASH 的提取 , 简单说两句:安装 V KLAY , 选手机类型 A55 就选 A55 , 不要选那个 A55(with test point)。在 PORT 一栏选择数据线连接在电脑上的端口 , 比如 COM1 , 速率 BAUD 一般为 115200。然后点 flasher 标签 , 在 memory of the phone 下默认显示 FLASH 地址从 0x000000 开始 , size 是 0x800000 , 点下面的 read memory 按钮 , 出现进度提示时短按开机键 , 进度条闪动就说明程序已经连接并工作了 , 大概需要几分钟 , 完整的 FLASH 大小为 8M , 读完 FLASH 后 , 点 SAVE FILE , 指定保存的路径和名称即可 。
如果你直接用别人做好的图片补丁 , 那么强烈推荐在写入前先备份完整的的 Flash !
软件自带支持的是 2128 的 21 版 , 24 版和 A55 的 09 版 , 如果你用的不是上述的版本 , 这里给出增加配置文件的方法 。
一款手机的 Flash 配置文件主要有四项 , 段名的格式是“ [ 手机类型 _ 软件版本 ] ”
FullFlashSize->FullFlash 大小
AdrFlashStart->FullFlash 在内存中的映射位置 , 一般是 0x800000 - FullFlashSize
IndexAddress-> 图片索引的开始位置
ImageCount-> 固有图片的数量
前面的两项容易确定 , 在小 A 上是 800000。
后面两项的确定方法是用 Uedit( 著名的 16 位编辑器 ) 查找:“ 04 04 01 00 ”(第一张图片的索引 , 后面的四个字节是地址 , 可能有多个 , 找到再后面是 0C 0C 01 00 的) , 这个地址是图片索引的开始位置 , 然后向后查找 , 直到后面出现 FF FF FF 一类的东西 , 是索引标的结束 , 最后一张大概是 65 xx 01 00 , 这张是调整对比度的图片(世界地图) 。XX 是 36 , 是屏幕的高度 。在 A55 ( 2128 )上这个 XX 是 36 , 因为图片是 101*54 , 换成 16 进制就是 65*36 这两个地址的差除 8 , 再加 1 , 就是图片的数量 。
推荐阅读
- 用Call Cheater让你的通话背景音乐响起来
- 我向往的疫后生活手抄报 我向往的疫后生活手抄报的画法
- 古代大家闺秀的名字 古代大家闺秀的名字娇弱
- 阿卡工程菜单的某些具体参数详解
- 如何健康安全佩戴隐形眼镜?
- 全能音乐播放器Pocket Player 2.5的使用心得
- 无氧和有氧时间的分配
- MOTO191的几个小技巧
- 发布无网标的GX27的0278与GX22的0266的区别
- 无氧运动都有哪些