编译支持VESA3的bochs

tar zxf bochs-x.x.x.tar.gz
cd bochs-x.x.x/
sudo yum install gcc gcc-c++ readline-devel gtk2-devel
./configure --enable-disasm --enable-readline --enable-clgd54xx --enable-debugger --enable-ne2000
make -j4 sudo make install

编译选项解释:

  --enable-disasm

      启用反汇编支持

      --enable-debugger

      启用调试支持

  ---enable-clgd54xxx

      启用某个老外写的cirrus VGA库支持,如果不使用这个选项,在boshrc配置文件里面vge: extension=cirrus,bochs会出现段错误,而该选项是VESA3必须启用的选项

    --enable-readline

                 该选项编译的bochs支持方向键,否者那个调试器很难用.

   --enable-ne2000

      启用ne2000网卡的模拟

另外,bochs默认带的vgabios是不支持VESA3,需要现在vgabois最新源码编译.vgabios编译需要bcc,as86,ld86

sudo yum install dev86
tar zxf vgabios-xxxx
cd vgabios-xxx/
vim clext.c
gcc biossums.c -o biossums
make
sudo cp VGABIOS*.bin /usr/local/share/bochs

代码解释:

  首先安装dev86,里面是需要的bcc,as86,ld86,解压vgabios代码,修改clext.c代码,将里面21行的前的注释去掉

//#define    CIRRUS_VESA3_PMINFO
改为
#define    CIRRUS_VESA3_PMINFO

vgabios源码里面有个biossums程序,编译的时候需要,但是这个程序是32位的,如果是64位机器,需要自行编译,代码是biossums.c,直接输入

gcc biossums.c -o biossums

即可.

最后输入make开始编译,编译之后将生成的bin文件都拷贝到bochs安装目录下即可.fedora20上该目录是

/usr/local/share/bochs

最后,需要修改配置文件bochsrc

vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest.cirrus.bin
vga: extension=cirrus

 

posted @ 2013-12-22 16:29  一零  阅读(539)  评论(0编辑  收藏  举报