硬盘I/O口读硬盘信息的问题?
我设置好第一磁盘控制器的01F1H,01F2H,01F3H,01F4H,01F5H,01F6H,然后向01F7H发送0ECH命令,然后从01F0H读出的磁盘信息有问题?问题在哪?程序片段
xor ax,ax
mov dx,01f1h
out dx,al
jmp $+2
inc dx ;01f2h
out dx,al
jmp $+2
inc dx ;01f3h
out dx,al
jmp $+2
inc dx ;01f4h
out dx,al
jmp $+2
inc dx ;01f5h
out dx,al
jmp $+2
inc dx ;01f6h
mov al,10100000b
out dx,al
jmp $+2
inc dx ;01f7h
mov al,0ech ;获得磁盘信息命令
out dx,al
jmp $+2
mov dx,01f0h
mov cx,100h/2
mov si,offset buffer ;缓冲地址
rep insw
call show_buffer ;显示缓冲内容
现在从端口01F0读出的信息不对,问题在哪?
谢谢