背景知识:
mma文件指的是/a/mobile/system/目录下的mma_dcp和mma_ucp两个文件,这两个文件的作用是定义手机的主要菜单项。例如,在设置>个性化>主屏>设置按键中可以定义上、下、左、右等功能键,其定义的结果就存在mma_ucp文件中。
起因:
1)想不刷600的FLEX就实现视频播放;
2)不想用网上直接下载的mma文件,因为其中好多菜单可能和自己手机上的不一样;
前提:
1)对16进制有一定了解,不要被3ah,4ch什么的搞昏了头脑;
2)需熟练使用UltraEdit,特别是能在HEX模式下编辑文件;(当然也可以是其他工具,本文以最常用的UltraEdit为例)
3)已经把mma文件从手机下载到电脑中,并做好了备份;
强调:稍微复杂一点点,而且需要点耐心和细心;但是可以大胆尝试,因为出现错误还可以用原来备份的文件恢复(所以备份很重要)。
好了,言归正传,下面说明
详细步骤:
1.用UltraEdit打开mma_dcf文件,0002h的值(000h后的第三个数)表示菜单的数目,把这个数加1(因为我们要增加一个Video菜单);我的文件是从3a变成3b;
2.在0160h附近查找AMutilmedia出现的位置,我的文件中是在016f位置出现(特别提醒:每个人的文件可能各不相同)。注意观察A之前的5个数字,我的依次是01 09 11 23 00,注意这5个数的倒数第二个,它表示Multimedia的子菜单是从第23h个菜单项开始;(其他数字的含义暂时未知);保持这几个数字不变;
3.继续往后不远,就是AMobileQQ,并查看A前面的5个数字,我的是00 09 12 FF 00,和上面一样,查看倒数第二个数字,如果是FF(表示没有子菜单),保持不变;如果是其他数字,把这个数字加1;(理由:这个数字表示的是移动QQ子菜单的位置,我们在多媒体中增加了Video,自然需要把后续子菜单的位置顺延了)
4.继续往后,查看ASettings前面的5个数字,我的是01 09 FF 29 00,把倒数第二个数字加1;(即把29变成2a,理由同上);
5.下面就是修改具体的子菜单了,别着急,慢慢来;
6.继续往下,可以看到@Camera,@Sounds等多媒体中的菜单项(呵呵,我们的Video菜单项就是要增加到这里哦),通过观察,发现每个菜单项占用的空间都是22个字节,其中,在菜单名字之前有4个控制字节,比如我的Camera菜单项的22个字节内容如下:10 25 FF 00 40 43 61 6D 65 72 61 00 00 00 00 00 00 00 00 00 00 00 ^这里是4个控制字节,第一个表示父菜单,第二个是菜单项的顺序号; ^从这儿开始就是菜单项的名字了。
在看的过程中,要记住两个值,一个是第一个控制字节的值(我的文件中是10h),它用来记录父菜单,Camera、Sound等多媒体的子菜单中,这个值是相同的;另外一个是在ARadio(这是多媒体的最后一个子菜单)之前的菜单项的最大序号(第二个控制字节),比如我的文件中,ARadio之前的是MotoMixer,它的菜单项序号是28h。
7.找到ARadio,它前面的四个字节是 10 FF FF 00(其中,第一个FF表示是子菜单的最后一项);把光标定位到这四个字节之前(我们要在这里增加Video菜单啦);
8.在光标所在位置,插入22个字节,然后,把这22个字节的内容改为: 10 29 FF 00 40 56 69 64 65 6F 00 00 00 00 00 00 00 00 00 00 00 00
注意:
第一个字节=刚才记住的第一个值,即父菜单的标识,我的文件中是10h
第二个字节=刚才记住的第二个值+1,我们新增了一个菜单项嘛,自然要加1;
9.好了,这就差不多了,然后要做的,就是修改Video后面的所有菜单项的序号了。只要菜单项的序号不等于FF,就把它加1,比如从29变为2a, 从2a变成2b等(因为前面加了一个Video菜单嘛,很好理解);序号=FF的,保持不变。
10. 好了,再仔细从头检查一下文件,如果没有什么错误,mma_dcp就算改完了。
11.别着急,别忘了mma_ucp还没有改呢,照着上面的方法来一遍就行(呵呵,别扔砖头啊),其实有了上面的经验积累,改起来应该会很顺利。
总结:
罗罗嗦嗦说了这么多,好像很复杂似的,其实要仔细实践一下并不是想象的那样,关键是要找到规律,有兴趣者不妨一试。