Just for fun (fun? it's weird what I find fun...) I'm trying to interface a 16F877 to a laptop harddrive (possible for massive datalogging in the future, haven't decided yet). I know some others here have gotten things working and I've been reading alot of the hits google gives me the the most simple of things I haven't been able to find. I'm driving to implement the EC command (drive identify) and it's kind of working (I do get some of the stuff back correctly) but I'm also seeing prior register accesses showing up and things like that. Is there anything special about reading the 256 words from the drive? Does it have to be done within a maximum amount of time? (right now I'm pumping every word down a 9600bps serial line one by one). Can I simply leave the CS and AD lines and strobe the RDb line for each word? Do I have to poll the status register between every read of the data register? Is there something fundemental I'm missing here? I have started wading through the 475 pages of the ATA6 spec trying to find my answers but I'm hoping the list will be faster. What I really want is the waveforms of a sector read. Thanks for any info. TTYL -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu