Chinaunix首页 | 论坛 | 博客
  • 博客访问: 336758
  • 博文数量: 135
  • 博客积分: 4637
  • 博客等级: 上校
  • 技术积分: 1410
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-21 13:22
文章分类

全部博文(135)

文章存档

2013年(12)

2012年(14)

2011年(42)

2010年(22)

2009年(18)

2008年(27)

分类: C/C++

2008-06-13 13:29:43

把wince(windows ce)系统移植到qemu模拟器中,目前网上还没有详细的移植步骤,曾经看到过一个贴子,说通过qemu引导uboot,然后由uboot下载eboot,启动eboot,再由eboot下载wince内核,启动wince内核.但是,没有说怎样具体去做.所以,本人准备直接由qemu引导eboot来启动wince系统.

目前已经可以启动eboot,eboot也可以下载wince内核(nk.bin),但是wince还是没有看到启动界面,估计是硬件初始化问题.等移植完成之后,再更新文章.

具体步骤如下:
1.wince 6.0的platform builder默认提供几种平台,我选择了mainstone III,因为qemu中模拟了mainstone平台.

2.修改eboot中main.c文件,把debug的串口改为full feature的串口,也既是:
    把pEbootCFG->dwDbgSerPhysAddr  = BULVERDE_BASE_REG_PA_BTUART;
    改为pEbootCFG->dwDbgSerPhysAddr  = BULVERDE_BASE_REG_PA_FFUART;
  把autoDownloadImage改为FALSE,
  把delay改为10或更大一点,方便qemu中切换到串口输出窗口,
  改完这些之后编译,至此,eboot启动之后是可以看到启动菜单的.

3.创建两个文件flash1,flash2,内容为空,大小为32M,这是mainstone板上的2个flash存储器,qemu-system-arm启动时必须给的参数,
  修改qemu中mainstone.c文件,把cpu执行第一条命令的地址改为第一片flash的地址,也既是0x00000000,
  建qemu-ifup.sh脚本,网上能够查到,作用是使qemu能够桥接(bridge)出去,

4.启动qemu,然后ctl+alt+3,切换到serial 0串口输出窗口,能够看到eboot的启动信息,摁空格键,进入选择菜单,目前还不能摁d键,因为eboot的flash驱动和qemu里面的pflash不匹配.
待续......
阅读(1725) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~