标题: 如何使用bios的io直接对硬盘的读写??
[打印本页]
作者: zhgwbzhd
时间: 2006-3-13 21:27
标题: 如何使用bios的io直接对硬盘的读写??
如题,谢谢。
作者: darkradx
时间: 2006-3-13 23:01
ATA Command
BIOS INT13
DOS INTXX
沒聽過BIOS的IO
作者: qb45
时间: 2006-3-14 12:19
用qbasic读写IO端口很简单
OUT是写端口
INP是读端口
不知道楼主会不会用qbasic
作者: zhgwbzhd
时间: 2006-3-22 11:56
弟兄们,int13和dos下的中断,都很简单,我就是为了实现越过联想的保护系统,怎么能写道扇区中。我想我直接对CPU发指令,是不是就可以呀。该怎么弄呢?
ATA Command,怎么弄呀??
作者: qb45
时间: 2006-3-22 13:31
很简单,如果你懂一门编程语言就很简单,不知道你会不会qbasic!
会的话可以看看我写的获得硬盘序列号的帖子,那个程序就直接是用IO端口.
因为BIOS不提供硬盘序列号的服务,所以,必须自己对硬盘的端口比如(&H170......)发出指令,然后读取序列号,注意这个序列号可不是硬盘每个分区的号,有的网友说C盘D盘等等都有序列号,实际上那是卷标号!
通过IO指令来读写硬盘的好处是:可以越过BIOS提供的服务,所以能破还原类软件,在486的老电脑上都能读写不大于137GB的硬盘!
当然,更重要的用途还不在于此,有很多硬盘专用的命令都必须通过IO指令来实现,比如写负道,把坏扇区加入G表等等
所有强大的硬盘修复软件都是用IO指令,比如我们熟知的PC3000,MHDD等等.
建议你学会一门编程语言,C语言是最好的选择!尽管我不会C语言,只会qbasic!
作者: zhgwbzhd
时间: 2006-3-22 14:48
实话说,C语言还凑合。或者说直接使用汇编也能勉强。
我先找找你的帖子,看看。谢谢qb45。
顺便问一下,programfan中的qb斑竹是不是就是你呀。名字一样呀。
作者: zhgwbzhd
时间: 2006-3-22 15:35
qb45:没有找到你的帖子呀,我以前也看到了你的关于还原卡的帖子,可是使用之后,没有还原卡是没问题的,可是安装上还原卡就不行了。怎么办呀?
作者: zjnbwdj
时间: 2006-3-23 11:58
为什么不取名为QB71呢,不是有7.1版了么?
作者: gmy
时间: 2006-3-27 15:59
如果仅是写硬盘隐藏扇区,HDSECT就足够了(超级急救盘 里有)