代码如下:
unsigned int diskData; /* Disk data */
。。。
。。。
for (offset = 0; offset != 256; offset++) /* Read "sector" */
diskData = inpw(cmdInterface);//此时能成功取得数据
printf("Word:%X, Word:%X\n", diskData, diskData]);//61:60是number of sectors.如果硬盘大小为80G时,取出的数据是正确的,但如果硬盘是160G/250G/500G时取出的数却都是FFF:FFFF,这肯定有错,但不知问题出在哪里。有哪位高手知道的?谢谢!~~~~
unsigned int diskData; /* Disk data */
。。。
。。。
for (offset = 0; offset != 256; offset++) /* Read "sector" */
diskData = inpw(cmdInterface);//此时能成功取得数据
printf("Word:%X, Word:%X\n", diskData, diskData]);//61:60是number of sectors.如果硬盘大小为80G时,取出的数据是正确的,但如果硬盘是160G/250G/500G时取出的数却都是FFF:FFFF,这肯定有错,但不知问题出在哪里。有哪位高手知道的?谢谢!~~~~



