Hi,

i have seen there is some progress on the WD 2010 (= WD 1010) controller.

The NGEN skeleton invokes "harddriv.h" and "wd2010.h" since recently.

http://git.redump.net/mame/commit/?id=29faa4ce8395ec222914c818b4e22117c8d196e6

Is this controller usable?

As soon as interrupts come into play, i am stuck. An IRQ should occur whenever the sector buffer is ready. No DMA transfers are used.

Most drivers assume an ISA or XT architecture (-> P1_HDC; WD_XT), so there is no real reference to cling to.

Long story short: i can't make head or tail of the MCFG or _CB statements necessary.

Attached is an unofficial version of the Rainbow-100 driver, complete with LK201 keyboard workaround and two digit (floppy) track display for anyone interested.

STATUS: few booters start (DOS 3, UCSD Pascal and DIAG DISKs), hard disk sector transfers do not complete - see above - and floppy writes are flaky (Z80 timing or Z80 <-> 8088 arbitration).

Improvements are welcome ;-)


https://dl.dropboxusercontent.com/u/37819653/BANNISTER/_March_2015_.7z

--- REFERENCES

* EK-RB100-TM_001_Rainbow_Technical_Manual_Addendum_for_PC100-A_PC100-B_and_Rainbow_100+_Dec84.pdf

* RD51 Controller Circuit Schematics / part number: CS-54160 19-0-1 (not online ?)

* Command line used for ST412 (= DEC 'RD51'; hunk size unverified):

chdman createhd -o RD51xx.chd -chs 306,4,16 -ss 512 -hs 2048

https://dl.dropboxusercontent.com/u/37819653/BANNISTER/HARD_DISC_INTERFACE_1.jpg

https://dl.dropboxusercontent.com/u/37819653/BANNISTER/HARD_DISC_INTERFACE_2_TEXT.jpg

https://dl.dropboxusercontent.com/u/37819653/BANNISTER/WD1010_HDC.jpg


Last edited by Bavarese; 03/05/15 01:58 PM.