[Simh] 11/780

Tim Newsham newsham at lava.net
Tue Jun 15 16:07:58 EDT 2004


> 1. Older VAXen.
>
> A 780 or 750 would require substantial changes to the simulator; indeed, it would be almost an entirely new simulator.  In particular,
>
> - the CPU must support all the VAX instructions, not just the VAX
> subset.  That includes decimal, obsolete character string, H_floating,
> and EDITPC (argh!)  Right now, the CPU doesn't have a capability to
> handle 128B operands in the specifier decoding for H_floating.

I'm most interested in running the old unices (32V, 4.1BSD, etc).
32V runs only on an 11/780 with rm03 or rp06 disks and te16 tape.
I think this would be the most appropriate system to emulate since
the other versions would also run on this system.

I'm guessing that these systems probably do not make use of
all of the features you mention.  I would be satisfied with
a less than perfect emulation if it was enough to run these
old unix systems.

> - the boot and console protocol is based on an external microprocessor.
> While that doesn't have to be explicitly emulated, all the proper
> firmware has to be found.

The unix systems didn't use the normal boot mechanism anyway.
The 32V paper has some assembly that is keyed in manually (and
saved on the boot floppy) to perform the booting.  I was considering
having the "boot <drive>" command perform this boot process without
any ROM, primarily because I don't expect to be able to find the
old ROMs.  The action is fairly simple -- read in 512 bytes from
near the start of the disk and execute it.  I did notice that
some of the bootstrap blocks make use of the ROMs (4.1c.2 BSD's
raboot boot block expects boot flags in r5 and a pointer to rom
in r6 and calls a ROM function to read in blocks).  However
the driver for the rp06 drive doesn't seem to do this, so I think
I'd be ok in this case.

> - the IO system is based on Unibus and Massbus peripherals.  The
> existing PDP-11 peripherals would require substantial adaptation to run
> in the context of these adapters, and the adapters themselves don't
> exist.

I was looking over the RP code for the PDP11 and the rp code in
the v6 kernel, and the register definitions looked similar but
did not agree completely.  Is the same controller hardware used
in both the PDP11 and the 11/780?  Is it just the bus interface
that differs?   I'm still reading up on the unibus, massbus and
SBI, and dont have detailed knowledge of these yet.

What about the TE16?  The PDP10 emulator has a TE16 flag in the
pdp10_tu.c emulation code.  Is this the same hardware used in
the 11/780?  Can any of this code be reused?

> /Bob Supnik

My thoughts are that it should be possible to at the least
get an emulator up and running that is sufficient to run
32V by perusing the 32V source code and matching the features
with what it expects.  This may provide a less than faithful
simulation of the system, and would require tweaks to bring
up even future versions based on the same code base, but
might provide the easiest route to getting a working
simulation of the early VAX Unix systems, especially given
that I will not be able to find full documentation for all devices.

>From what I can tell right now it looks like the following
pieces are needed:

   - cpu -- perhaps some additional features of the ka780 not in
            the current simulation.
   - busses -- handling for SBI, Massbus and Unibus.
   - peripherals - reworking or complete rewrite of disk and tape
             controllers.  Implementation of DZ rs232 controller.

Documentation:
  http://montagar.com/~patj/dec/hcps.htm
  http://208.190.133.201/decimages/moremanuals.htm

  (pages in japanese, links to dec docs plus work on te16 emulation):
  http://roguelife.org/~fujita/COOKIES/SIMH/
  http://roguelife.org/~fujita/COOKIES/SIMH/TE16/
  http://roguelife.org/~fujita/COOKIES/DEC/


Tim N.



More information about the Simh mailing list