Thinking about PDP11 PC05 Emulation

allison allisonportable at gmail.com
Mon Mar 11 16:37:39 CDT 2019


On 03/11/2019 02:11 PM, Jay Jaeger via cctech wrote:
> I have several PDP-11's in my collection (among other things), and not
> enough PC05 tape readers (or enough room) to go around.  But most if not
> all of my machines have M7810 PC11 interfaces, and I have one I could
> move from machine to machine as needed.  Moving a PC05 around would be a
> lot more work, and not every rack has room.  ;)
>
> So, I took a look at what it might take to interface with an M7810 (or,
> down the road, a PDP-8/L or PDP-12.  It looks like the emulator would
> have to accept as input just 3 lines (Initialize  L, IOP2(1)/Select,
> IOP4(1)/Read) [It would not need the redundant Initialize H, IOP1(1),
> Qualify or Skip], and would have to drive 11 lines into the pullups on
> the M7810 (8 Data lines, IO Bus INT L/Reader Done L, Outtape/Error and
> RDR RUN L/RDR Busy L).
>
> So, a total of 14 interface lines. (The 8 or 12 would take a few more
> lines).
>
> The pullups average about 470 ohms (1 is 1K, 1 is 220, the rest are
> 470), so at 5V the output has to sink a bit over 10ma, and all total
> 120ma.
>
> An Arduino Uno with an Ethernet shield would have 20 minus 5 lines
> available, in theory, but if one wants serial I/O as well for debugging,
> that sucks up 2 more lines - so only 13 available.  And sinking 120ma
> would be a bit much though I could likely sprinkle inputs among the
> outputs to make it work so as to stay within the recommended sink
> limits, and at least initially have it never run out of tape, and tie
> Error down.
>
> http://playground.arduino.cc/Main/ArduinoPinCurrentLimitations
>
> So, I am thinking about an Arduino Mega, as it has more output groupings
> to sprinkle the sink current around, and 5V interface capability, and
> more pins to eventually support my PDP-8/L and PDP-12.
>
> (I could do it with a PIC - did that for a Documation card reader to PC
> interface, but I am really tired of fighting Microchip's IDE.)
>
> BUT - it also occurs to me someone may have already done something like
> this?  Any leads / ideas?
>
> JRJ
The Uno or Nano is more than adequate.

To do the data you need 8 bits but you can bit bang them out using two
lines on a nano to
a 74ls164.  The rest you use transistors (open collector) to do high
current (though 5V,
1K pullup is only 5ma) and I'd do that to make the IO more rugged and
ESD proof.  That
covers the strobes and control lines.  Just using two lines to get the 8
data lines via a 164
frees enogh pins for there to be surplus IO lines.

Then I can load the Uno (or nano) via USB or Serial  or use 4lines to
interface a
uSD loaded with tapes ( MCLK, MSI, MSO). 

With 32K of program space the RIM and BIN load can be part of the
standard code base.

Then a library and software tool to load up the uSD or SD as usb to
SD/uSD socket adapters
are common.  It would be great to be able to get a file with all the
common tapes on it.
for loading into a 8 via a loader device.

I've not done this for PDP-8 or 11 but I can easily envision it.  The
Arduinos are
often fast enough if not faster than the host so speed is not an issue.

Allison


More information about the cctalk mailing list