I have coded this utility entirely in 'C' language, which is the best language for accessing any device at low level. It has three layers of code.
1. The top layer deals with graphics for user interaction with the utility.
2. Second layer is for creating command request and completion data, as understood by the ATA protocol.
3. Third layer which is the lowest level deals with actual ATA controller register to perform operation requested by user.
Using this utility user,
1. Can get the information about different device connected to primary (master and slave) and secondary channel (master and slave) of IDE/ATA controller.
2. Will be able to know that whether his hard disk supports Security feature or not.
3. Can set user and master password in his hard disk and lock-unlock hard disk if security feature is supported.
4. Can enable or disable the security feature.
5. Can get information about current security settings.
For any assistance contact me at: email@example.com
I would encourage to write comment instead of mailing me in case of any issue/query about the utility. So solution will be available to everyone. I will be notified by email whenever you write comment.