Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!columbia!rutgers!ames!hc!beta!myxm From: myxm@beta.UUCP (Mike Mitchell) Newsgroups: comp.os.minix Subject: Followup: WD1002 Controller Message-ID: <4160@beta.UUCP> Date: Thu, 16-Apr-87 23:38:29 EST Article-I.D.: beta.4160 Posted: Thu Apr 16 23:38:29 1987 Date-Received: Sun, 19-Apr-87 10:23:58 EST Organization: Los Alamos Natl Lab, Los Alamos, N.M. Lines: 37 Keywords: Western Digital Controller WD1002 After a little bit of revamping to xt_wini.c, I have managed to get a read-only hard disk. Not quite useful yet, but a step closer than the way it used to function. In the procedure com_out, I added a little bit of code to check the REQ bit in the status register. It looks like: lock(); for (i=0; i<6; i++) { if (hd_wait(1) != OK) return(ERR); port_out(WIN_DATA, command[i]); } unlock(); This seemed to fix the problem that I had with the controller not performing a complete read. (It used to keep resetting the hard disk with some awful grinding noises.) I am a little fuzzy on how the PC uses DMA to write to the controller however, so I am not quite sure where the problem arises when it attempts to write to the drive. I am working on a PC/XT with a WD1002, a NEC V20, and two Seagate-ST225's. Any hard disk gurus have any tips which might be useful? I have another AT clone which is also having problems accessing the hard disk with at_wini.c. I have not dug into this one yet. The board is the Computer Classified Inc, ST/286-12Mhz and the controller is the Everex low profile AT compatible hard/floppy disk controller. The drive being used in this machine is a Seagate-ST4038 (30Mb). Any hints? Thanx in advance. Mike Mitchell myxm@lanl.gov (ARPA) ...!{ucbvax,decvax,...,cmcl2}!lanl!myxm (UUCP)