Board logo

标题: [求助]RTL8100BL的网卡驱动,某些寄存器无法操作 [打印本页]

作者: yv920     时间: 2016-1-7 09:32    标题: [求助]RTL8100BL的网卡驱动,某些寄存器无法操作

dos 版本:6.22  bc版本:3.1  硬件架构:x86
目前遇到问题:发现一些寄存器不能正常操作:例如:Transmit Configuration Register这个寄存器,按8位 16位 32位写,然后按8位读发现每次根本就写不进去数值,我的8位操作outport()函数,16位操作outportb()函数,32位用的是static void outportd(unsigned short portid, unsigned long value)   //output dword to I/O port
{

  asm MOV DX, portid
  asm DB 0x66                   //
  asm MOV AX, WORD PTR value   // MOV EAX,value
  asm DB  0x66, 0xEF            // OUT DX,EAX

}
这个函数,有一点我不是特别理解,一般的寄存器如果支持32位的写,按道理来说它可以8位写,也可以16位写,但目前我不知道我的哪块操作有问题,谁做过这方面的工作,给点建议或者意见,多谢。。。。。。