当前版本针对Qemu模拟器,增加了UHCI控制器(USB v1.1标准)的驱动程式,以及USB鼠标和键盘的驱动程式。目前只能在Qemu模拟器下实现USB的鼠标键盘功能。这些驱动程式的代码,主要是从pdoane的osdev项目中移植过来的,另外,有部分代码是从Linux-3.2.0的内核源码中移植过来的...
当前版本新增了Sound Blaster 16相关的声卡驱动,同时新增了play程式,在ramdisk中放入了两个测试用的wav文件,通过 play test.wav 或 play test2.wav 命令就可以播放这两个音频文件...
当前版本移植了lodepng项目,该项目除了可以分析PNG图片的结构外,还将Deflate即zlib的压缩与解压缩算法也包含进来了,对libc即C库文件的依赖也很小,因此可以方便的移植到hobby OS中 ...
从v3.0.0版本开始,zenglOX开始进入桌面环境,在内核中实现了窗口管理器,整个桌面其实就是一个窗口。v3.0.0版本是使用Qemu来作为开发调试用的模拟器的。Bochs的渲染速度以及执行性能都不如Qemu,不太适合进行图形化界面的开发,当然,v3.0.0及v3.0.1的版本也可以在Bochs上正常运行...
当前版本实现了DMA传输模式, 并且在bochs, VirtualBox及VMware下都测试通过, 目前只有ATA硬盘读写操作使用的是DMA模式, ATAPI光盘使用的还是PIO模式, 读者有兴趣的话, 可以自行修改驱动来实现ATAPI的DMA传输模式。DMA传输模式是直接在内存与磁盘之间传输数据, 所以理论上速度比PIO模式要快, 这点在 VirtualBox与VMware下得到了很好的验证。
当前版本将zengl嵌入式脚本语言移植到了zenglOX里,从而在zenglOX里可以编辑和执行一些简单的脚本了。
先按照上一个v2.0.0版本的要求, 编译好bochs,让其支持e1000网卡,将源代码解压后, 执行make和make iso命令, 分别得到initrd.img, zenglOX.bin及zenglOX.iso文件,在root权限下运行startBochs来启动bochs虚拟机。启动好虚拟机后, 先进行分区格式化操作...
由于默认情况下,bochs并没有安装e1000相关的插件,因此,使用常规的make和make iso命令后,再运行startBochs脚本时,就会提示 plugin e1000 not found 的错误。要让bochs安装e1000插件,需要重新编译bochs, 步骤如下(下面的bochs-2.6.tar.gz文件可以从v0.0.1版本对应的网盘中下载到,步骤与v0.0.1版本相关文章里的步骤差不多,只是configure多了两个参数而已)...
v1.6.0版本里新增的VGA驱动程式,是参考的 .....modes.c 对应的C源代码,这是一个运行于DOS系统下的C程式,你可以在DOSBOX模拟器中,配合DJGPP工具来编译运行和调试该程式。这个C程式通过直接读写VGA寄存器来切换不同的图形模式与文本模式...
在对硬盘进行读写操作时,第一件要做的事就是对硬盘进行分区工作,也就是向MBR(硬盘的第一个扇区)里的分区表中写入每个分区的起始扇区号等信息,有关MBR的结构可以参考...