中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » [求助]RTL8100BL的网卡驱动,某些寄存器无法操作
作者:
标题: [求助]RTL8100BL的网卡驱动,某些寄存器无法操作 上一主题 | 下一主题
yv920
新手上路





积分 4
发帖 1
注册 2016-1-6
状态 离线
『楼 主』:  [求助]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位写,但目前我不知道我的哪块操作有问题,谁做过这方面的工作,给点建议或者意见,多谢。。。。。。

2016-1-7 09:32
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: