The only way I can see to make this possible is to use the password protection mechanisms of Parallel ATA (aka IDE). The PATA spec allows setting a hard drive password:
hard drive passwords and security
The disk lock is a built-in security
feature in the disk. It is part of the
ATA specification, and thus not
specific to any brand or device.
( http://en.Wikipedia.org/wiki/AT_Attachment#HDD_passwords_and_security )
If the disk is password-protected, you need the password to unlock it before it can be accessed.
However I would rather advise against this: This feature of ATA is seldom used, and you need special software on the host computer to use it (which in turn normally needs admin privileges to install on the host computer). Also I'm not sure it will work with removable drives, and I believe Serial ATA does not have it. Finally, it can be defeated using special software (or hardware tinkering) on most drives (though this can be tricky).
Other than that, I don't believe there is a solution to your problem. If you want to prevent others from reading or manipulating the data, encryption (specifically full disk encryption / FDE) is the way to go, e.g. TrueCrypt. This is reasonably cross-platform, usable and secure. It will however not prevent someone from formatting the drive.
As to protection from formatting:
If you want to prevent people from destroying the data on the drive, you need to keep it physically secured anyway. If someone just wants to destroy the data, they can just damage the drive...