All times are UTC - 5 hours [ DST ]




Post new topic Reply to topic  [ 1 post ] 
Author Message
 Post subject: problem about VMWare-guset-os emulate ATA-Controller
PostPosted: March 22nd, 2012, 1:49 
Offline

Joined: December 20th, 2011, 22:12
Posts: 30
Location: china
Recently, I was trying to operate ATA-hard-disk with the lowest level way(i.e PIO ATA COMMAND)
There's some problems make me perplexed after I run my code under VMWare-guest-WindowsXP.
incorrect code: (Victoria checked already, Master 0x1F0 Slave 0x170)
1. Status Register READ (no ATA-hard-disk attached to PCI-ATA-Controller)
INCORRECT CODE: mov dx, 0x1F7 in AL, dx
RESULT: always got 0x7F in Register AL (0x7F: BSY is 0, DRQ is 1, so couldn't send command to Port 0x1F7)
But at the same time:
CODE: mov dx, 0x177 in AL, dx
RESULT: got 0x50 in Register AL (indicate ATA-Controler assertive that It could receive ATA-command now)
2. Status Register READ (with an ATA-hard-disk attached to PCI-ATA-Controller)
INCORRECT CODE: mov dx, 0x1F7 in ax, dx
CORRECT CODE: mov dx, 0x1F7 in al, dx
RESULT: VMWare stoped itself with an error, NOT a GUEST-OS crash(BSOD).
3. Control Register WRITE (Software Reset with send SRST(value:0x4) singnal to Control Register(port:0x3F6))
INCORRECT CODE: mov al, 0x04 mov dx, 0x3F6 out dx, al
RESULT: VMWare stoped itself with an error, NOT a GUEST-OS crash(BSOD).
Any info on this will be appreciated !


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 1 post ] 

All times are UTC - 5 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group