Jerome H. Fine wrote:
I am not sure if this suggestion is easier or even
useful.
From what I gather of looking at the MSCP
protocol from
the DU(X).SYS MSCP device driver in RT-11, there may
be an easier implementation that is just as useful.
John Wilson set up an interface for an HD(X).SYS device
driver under Ersatz-11 in order to provide variable
sized devices until the MSCP emulation had been coded.
While John's version of HD: needs a bit of modification
to work well with mapped monitors, it is still only for
RT-11. On the other hand, for the past 6 months, I have
been adding additional features which include being able
to handle full 22 bit Qbus / Unibus interface for mapped
monitors.
The real HD: advantage is the simplicity of the interface.
While there are 8 I/O registers, setting them up when
interrupts are not used takes less than 20 PDP-11 instructions
including the 22 bit address. If you look at the hobby
version of E11, John includes the code for HD(X).SYS for
RT-11, although as I mentioned some changes are needed for
mapped monitors when the user buffer is above 1/4 MByte.
If anyone ever produces a Qbus / IDE (or any other PC
current drive) controller, I will gladly enhance the HD(X).SYS
device driver for RT-11 to use a DU(X).SYS translation
type table.
Wouldn't the concern then be that it would only be supported in RT-11,
and/or it would not be bootable? One of the primary motivations for me
in this exercise would be CD-ROM booting. I'm seriously considering an
off-the-shelf solution for the ATA/ATAPI side to save myself some
effort. No sense reinventing the wheel.
Peace... Sridhar