标题内容均已实现。用此贴讨论技术和进度。
ROM获得见下面连接:
A639&A632N WM6.1.21127 Ase V02 CHS ROM发布
http://www.pdaclan.com/viewthrea ... &extra=page%3D1
其它相关资源:
http://www.pdaclan.cn/viewthread.php?tid=29102&page=1&extra=page%3D1
这里记录了开始由想法,到研究实施,困难,成功的过程。
并且发布ROM的帖子不能搞得太乱,所以很多繁琐的事儿都在这里交代了。各位朋友有兴趣可以仔细看看。
------------------------------------------------------------------
前言
小弟用得是ASUS A639。2年了,用得很好也很是喜爱。虽然对电脑电子都还算比较懂,但一般情况都是稳定第一,很少去折腾。
后来随着导航软件不断升级,发现最喜欢的R2电子狗和CJT同时运行,会导致CJT无故退出,或者干脆不显示地图。
明显是可用内存太小导致。后开始了WM ROM学习工作。
先是查PP的作用,准备自己修改PP为0。(后发现改成0是一个愚蠢的做法。)
经过大概5天的看帖和准备工具,开始操刀。
因为ASUS 的官方ROM比较变态,只有本坛的osnbtool的作者的某个帖子提到了揭开A639官方ROM的方法,所以才用了这些天达到操刀的程度。
从机器直接读出的imgfs的bin文件,修改后,如果刷回去有问题,恢复的难度相对比较大,所以一开始放弃了这种方式。
最终当然很容易搞定了,试验了0,2,3M的PP,发现2,3会让机器变得比较慢,而多出来的2~3M内存(默认PP=5)根本不能解决前面的问题。
而0的PP 设定,会让机器变得很快,但一开机后可用内存先是,还不如默认pp=5的多。
实际上微软也说了,如果设置成0,那么将把文件读入RAM后才开始执行或操作。但是却没有一个清除的机构存在,这样会导致内存无止境的消耗。
而PP实际上是同样的作用,但限定了最大的缓冲上线,满了后,新进来的文件数据,将会把老的数据挤出去。
因此就算内存够多,也不要设定成0,哪怕设定成48M,32M都比0要好。
根据NAND Flash的原理,任何文件以及数据都必须读到RAM里面才能操作,而可执行文件的执行是另外的RAM内存空间。因此PP是给NAND FLASH专用的一个东西。关掉PP,随着你操作的文件多了,内存会一只消耗下去的(或者有什么限定,但是至少目前未知的情况下感觉是不受控的)。
最后只剩下一条路,就是增加物理内存了。有学习了1周,解开A639官方ROM的XIP,看内存映射表里面数字已经是128MB了。
也下载了P535的官方ROM和128MB版本ROM,解开XIP做了对比。
这个周末换颗粒。ROM搞不定就还用64MB的RAM。
做好了如下准备:
1,看内存映射表里面SDRAM数字已经是128MB了,直接能用。
2,若1不行,移植P535 128MB ROM的XIP中的NK.exe到A639的XIP里面。
3,若2还不行,直接吧P535的XIP插入A639的ROM里面。
4,当64M的机器先用着,慢慢再研究。
器件,还dump了官方的osimgfs.bin,做了一点点修改。删掉了多余的皮肤和确定没用的东西。我喜欢干练的ROM,需要什么可以再添加嘛。
(A639有800多M的Flash Disk,在硬件复位后数据不会消失,所以我认为没必要在ROM里面集成任何其他东西和工具。稳定第一。我认为越接近原厂就越稳定。)
A639用得内存颗粒是2颗 HYB18L256160BF-7.5 。核心和IO电压均可以工作在1.8V下(也可以更高)。
后发现寻找 HYB18L512160 颗粒很困难(确实存在但不好找到),加上很多人说机器本来设定电压就是2.5V,所以就打算上两片 HYB25L512160AC-7.5 的颗粒了,其核心工作电压是2.5V~3.3V,IO可以工作在1.8V~3.3V。
今天打开本想量一下内存工作电压的,看到其用得MAX8588电源芯片,然后很直观的看PCB以及芯片边上的电阻电容就知道实际上内存供电电压还是设定成2.5V的(PIN9接地,PIN9没有连接到外部电阻分压结构。因为设定其他电压需要外部两个电阻连接在PIN9上)。
而别的有些机型修改 HYB25L512160AC-7.5 后,需要短接掉某个电阻,其实就是将PIN9接地,以设定内存电压为2.5V(接地也就是使用MAX8588的默认设置了)。
等换完颗粒再向大家报告结果。
PS:玩A639和A632N GPS PDA的朋友很少哦。A632N繁体和英文的WM6出来这么久了,到现在还没有非官方的WM6简体发布(官方的不想了,严重鄙视官方!),貌似没啥高手玩这些机器。
折腾完我的A639后,本人打算制作一个A632N用得简体ROM,虽然是非官方,但是至少可以99%接近官方。
为什么敢说99%呢?
首先,A632N和A639的PCB是一样的。
A639板子上,上了WIFI模块,而空一颗W86L488Y Winbond 的SDIO扩展芯片(用来扩展出A632N特有的第二个Mini SD插槽功能)和Mini SD的插槽。
反之,A632N的板子上,空了WIFI模块,但是有W86L488Y 和Mini SD的插槽。
因此自己制作WM6简体ROM,颗参考的官方ROM有:
1,A639的简体WM6 ROM (计划基于这个ROM)
2,A632N的繁体WM6 ROM (参考)
3,A632N简体WM5 ROM 和 A639简体WM5 ROM 的对比结果(重要参考)
实际上光有1和2的就应该可以做出来的。加上3,可以99%接近官方ROM,可以让那些非官方ROM不用的朋友放心一点。
计划6.30前完成。如果运气好,工作上不太忙,并且我的A639升级顺利的话,或许只需要几天就行。
其实没有太多的技术含量,而且实际我认为该动作比很多定制XIP定制ROM还简单,只是无奈没有高手出面制作,我就献丑一次吧。
大不了做不出来,但是我认为比不去做要强很多。
而且至少只要实施这个计划(哪怕失败了),也算是我对咱们数码部落的回报。
这几天从这里学到了很多知识,下载到了不少好工具,加上从网络上下载到很多好东西,我想我也应该为别人付出一次了。
[
本帖最后由 ase 于 2009-8-25 14:48 编辑 ]