zoukankan      html  css  js  c++  java
  • bochs: ICW1:level sensitive mode not supported 沉沉_

    最近在用bochs虚拟机写一些裸奔程序,做到时钟实验这部分时开启了定时器中断,一运行就提示:ICW1:level sensitive mode not supported.

    google 了一下,从bochs的源代码上可以看出来:这种错误出现在:

    View Code
     1 void bx_pic_c::write(Bit32u address, Bit32u value, unsigned io_len)
     2 {
     3         .........
     4         switch (address) {
     5            ......
     6            case 0x20: 
     7                   if (value & 0x08) {
     8                        BX_PANIC(("master: ICW1: level sensitive mode not supported"));
     9                   }
    10             .....
    11              case 0x80: 
    12                   if (value & 0x08) {
    13                        BX_PANIC(("master: ICW1: level sensitive mode not supported"));
    14                   }
    15             .....
    16         }
    17         ..............
    18                     
    19 }
    View Code
    从上述代码中可以看出,是往0x20 和 0xA0 端口写的值bit3(第四个位)为1 所导致的。所以我检查代码,果然发现在定时器的中断处理程序中,本来往OCW2中写入0x60,给CPU发送EOI,让我写成了60,即16进制的0x3c, bit3 为1,所以提示这个错误。
  • 相关阅读:
    react-webpack-express
    React总结和遇到的坑
    vue+node+mongodb实现的功能
    webpack整体了解
    webpack踩坑
    深入了解MongoDB
    实现pdf word在线浏览和下载
    node实现爬虫
    火客声音分析
    抖音二婷衣橱分析
  • 原文地址:https://www.cnblogs.com/chenchenluo/p/2779763.html
Copyright © 2011-2022 走看看