Linux手机DIY.夏新E600移植飞利浦968的qnes模拟器

Linux手机DIY.夏新E600移植飞利浦968的qnes模拟器

草木瓜  2006-10-26


一、序

  飞利浦968的Qnes模拟器,不能在夏新E600上运行,这是众所周知的。自
从有了Shell这个入口,自然也清楚不能运行的具体原因!经过一段时间,的
确可以完美运行!


二、重要提示

    为了方便更好的理解本文,提供下面链结。
    全系列的文章地址,手机应用开发专栏:http://blog.csdn.net/liwei_cmg
    相关的重要成果的下载地址:http://play.younet.com/view.php?tid=24045

三、方法

  飞利浦968和夏新E600的系统是十分接近的,连可执行程序,库文件的版本
都是一致,全部是ARM 1.0指令集而且是基于Linux 2.0.0内核。移植软件无非是
处理可执行程序和相关库文件。好了我们实际操作下!
  
  按http://play.younet.com/view.php?tid=24045里说明,安装_setup.prg
和E600.rar。

  研究里面的内容就可以知道,是如何进行移植的。
  
  A.E600/tmp下的一些install脚本,是用“软件安装”调用执行。所做的操作
仅仅是复制文件。

  B.E600/exe下的qnes.txt文件,直接被“模拟器”调用运行,十分关键,内容
如下:

  #!/bin/sh
  export CECHOME=/mnt/cellon
  export QTDIR=$CECHOME/qt
  #export QWS_KEYBOARD=TTY
  export CECDIR=$CECHOME/cec
  export LD_LIBRARY_PATH=/mnt/sd/e600/lib:$CECHOME/lib:$CECDIR/lib:$QTDIR/lib:/mnt/doc/ibm/jvm/bin:$LD_LIBRARY_PATH
  #export QWS_DISPLAY=:1:/dev/fb0
  /mnt/doc/cec_local/bin/qnes 2>/mnt/sd/e600/log/qnesrunerror.txt
  
  可见LD_LIBRARY_PATH加入了/mnt/sd/e600/lib的搜索路径,这里的lib内容
就是从夏新968里复制出来的libipm.so文件。另外在install脚本中也把qnes相关
文件qnes.png,qm文件复制到指定目录,缺少这些文件也能运行,不过显示会有些
异常。
  在刚开始移植中,使用了下面的运行脚本:
  
  export CECHOME=/mnt/cellon
  export QTDIR=$CECHOME/qt
  export QWS_KEYBOARD=TTY
  export CECDIR=$CECHOME/cec
  export LD_LIBRARY_PATH=/mnt/sd/e600/lib:$CECHOME/lib:$CECDIR/lib:$QTDIR/lib:/mnt/doc/ibm/jvm/bin:$LD_LIBRARY_PATH
  export QWS_DISPLAY=:1:/dev/fb1
  /mnt/doc/cec_local/bin/qnes -qws 2>/mnt/sd/e600/log/qnesrunerror.txt
  
  没有 -qws 运行参数时,会提示错误,加上 -qws ,运行倒是可以,不过画面
按键皆与系统冲突。后来我考虑/dev/fb1并非直接的显示设备,换成/dev/fb0,略
有好转。其间也尝试使用968的QT库,不过反而按键会更乱。TTY也试过不少次,不
过皆不奏效,甚至想到kill winmgr的方法,不过很糟糕,造成手机会不断重启,这
点让我十分遗憾,在E680如此平常的操作,在E600居然会频繁重启!

  /dev/fb0,也能正常进行游戏,不过偶然间经过搞搞震测试,发现将qws的环境
变量全部去掉,正常运行qnes,发现模拟器居然十分完美,什么冲突也不见了,原
因我没有工夫去细细查看,有兴趣的话可以google搜索研究下。

  另外在移植过程中,出现一次Segmentaion Fault,原因不详,我考虑可能是
fontdir的问题。


四.总结

  想不到,本来认为十分简单的模拟器移植,居然也耗了这么多的工夫,可谓:
纸上得来终觉浅,绝知此事要躬行!
  少说话,多做事,如此而已。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值