quasimodo wrote:
1)Well 1F0-1F7 is correct for primary IDE.
Quote:
My SATA-Controller is oprating in PCI Compatibility Mode)
2)I would use IDE port and connect a IDE-SATA adapter.
3) I think trying to work with ASM in VMWare is asking for trouble, use a standalone system if you have the option.
about (1): yeah, you are right and 1F0-1F7 is correct. It's Class Code is "0x01018A" of my PCI-ATA-Controller which "8A" mean that it's running in PCI Compatibility Mode.(The BAR0-BAR3 is invalid).
about (3): I had tried another OPERATION(i.e mov dx, 0x17F in ax, dx), The VMWare also stop itself after instruction "in ax, dx" was executed. (These OPERATIONs is operated under Windows-XP-Kernel-Mode.)
The CORRECT instruction is "in al, dx". So what will happen when the wrong instruction "in ax, dx" is executed under a standalone-system ?
At Last:
corner wrote:
hi,all
with the code:
add dx, 0x7 //status
in al, dx
test al, (_STATUS_BSY_ | _STATUS_DRQ_)
I got the _STATUS_DRQ always is 0x1, never be cleared to ZERO..
What's wrong with my code ?(The port is correct! 1F0-1F7)
thx!
The reason is there is no one IDE-hard-disk attached to ATA-Controller on my VMWare-Guest-OS. They are all SCSI-hard-disk.
THANKS ALL YOU ARE THE BEST!