0
\$\begingroup\$

Can i physically remove the pin/wire 23 (DIOW --> Write Strobe) for an "IDE read only cable/effect"?

I heard that some hardware write blockers cutting physically the write line, but i have no information if there is also a software part. My mind tells me that this would be nice if you can only change the hardware, but I am sure there is a software part that makes problems.

Do I have to physically rederict the wire to some sort of electronic board with an self programmed software so there is no problem at communication software level? What are the parts/areas that are important for this project/effect?

\$\endgroup\$
4
  • 3
    \$\begingroup\$ I think you're barking up the wrong tree. Write Strobe is for data on the IDE bus - not writing to the disk. You still need to write commands to the drive in order to read data from it even if you don't want to write data to it. \$\endgroup\$
    – Finbarr
    Commented Sep 22, 2018 at 11:47
  • 1
    \$\begingroup\$ @Finbarr: Please do not answer the question in comments, as this bypasses the normal review process for answers, as discussed in meta \$\endgroup\$
    – Dave Tweed
    Commented Sep 22, 2018 at 13:03
  • \$\begingroup\$ @DaveTweed I wasn't attempting to answer the question, just point out that it's based on a completely incorrect understanding of how the IDE interface works. \$\endgroup\$
    – Finbarr
    Commented Sep 24, 2018 at 12:35
  • \$\begingroup\$ @Finbarr: Yes, that is the answer. Now Jules gets the credit for it. \$\endgroup\$
    – Dave Tweed
    Commented Sep 24, 2018 at 12:42

1 Answer 1

2
\$\begingroup\$

No. The IDE connection serves to connect registers provided by a device to the host system bus. Removing the write enable wire would prevent the host being able to change the device registers, but the ability to write to those registers is essential for normal operation of the device, even in read only mode (e.g. to read a disk block you set the block address in one set of registers and store a command in another, then wait for data to be sent to you - without a write enable line you would not be able to send such a command).

This is because of the history of how IDE came to exist. It was not actually designed from the perspective of making a block storage interface, despite the fact that this was its intended use. The purpose was to allow a very simple, minimal adapter to be integrated with a PC that could provide the same interface to the BIOS as the original interface used to connect hard disks to PCs thus preventing BIOS upgrades being required to switch. The way chosen was to provide a very simple interface to the processor bus at the host end that just relayed port input and output instructions (with only the least significant 3 address lines, the remainder being decoded on the host side) to the connected device; an IC compatible with the registers of the original PC/AT ST506 controller card was then integrated on the drive (hence the name, integrated drive electronics). This allowed the drives to improve capacity and performance beyond the capabilities of the original controller board without waiting for motherboard/controller card updates, and added minimal costs to produce adapter boards / motherboards.

Interestingly, this means that IDE is a totally generic interface - as long as you can persuade your operating system to tolerate it, you can connect just about anything to an IDE port.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.