Following on from my recent 'New build' post I have spend several hours over the last few days trying to get my S100 IDE Version 02 card to work.
Initial power up looked good with all the led's initialising under the Z80 monitor, I compiled a copy of John's MYIDE.ASM (Rom Version) to reside at memory address 8000H and programmed the resulting hex file into one of my 28C256 EEPROM's, carefully opened up a 16Kb memory window at 8000H on my RAM/ROM board and dropped the chip into the 8bit socket then powered the system up and ran the code at 8000H, after a brief delay it seemed to recognise a CF card but the description header and CHS info was all scrambled. I tried out a couple of functions (read a sector/write a sector etc...) but something was amiss, data was not being retained by the CF card, I tried attaching a hard disk to the cable instead (in fact 4 different hard drives) and none of them were detected !!!!.
So I rechecked my work, all the IC's were correct with maybe the exception that I used 74LS03's in positions U19 and U19 so I attached my oscilloscope to the /IOWRA and /IORDA and confirmed what John Monahan had mentioned in his web page write up that these signal levels were only hitting 3.4v on my board,
So I ordered up a pair of 74S03 IC's and fitted them whilst at the same time I replaced RR1 with a 330ohm part to increase the drive current on these signal lines.
Re-scoping the /IOWRA and /IORDA signal lines now confirmed that they were fine and hitting 5v levels but this did not solve my problem.
To cut a long story short and after much head scratching I noticed that on Johns web page for this board he has two pictures of the S100 IDE Version 02 board at the bottom of the page. On one of the boards the leds (from left to right) go A B A B ..... and on the picture below the leds go B A B A..... my board goes B A B A.
This was the clue...
Referring to the schematic and confirming operation on my board, on power up U16A D-type flip flop Q output will go low making D18 (CF-B select) illuminate, this same Q output state determines which IDE control signals are active via U18/U19, of course with my board being silkscreened wrong it was indicating CF-A was active and as such I had my IDE cable plugged into the wrong socket all along :-))))
Changing the cable over to connector P41 everything now works fine both CF cards and hard drives Hoorahhhh...
This was a great learning experience for me to learn how the MYIDE software interacts with the hardware, during my investigations I did write up some notes on testing the board hardware by outputting values to the various I/O ports which may be of use to someone in the future,
S100 IDE Board Version 02 board build.doc
hope this give someone a heads up