LISP implementations on small machines

Eric Smith spacewar at gmail.com
Fri Oct 4 14:56:08 CDT 2019


On Thu, Oct 3, 2019 at 12:04 PM Guy Sotomayor Jr via cctalk <
cctalk at classiccmp.org> wrote:

> So does the PDP-11.  The 8 registers are mapped to the top 8 words of
> memory so you can do some quite interesting things.  It is also possible to
> run a (small) program in only the registers (e.g. no memory at all).
>

That's not an actual PDP-11 architectural feature, and it only works on the
KD-11B CPU (PDP-11/05 and 11/10). No other models can execute code from the
general purpose registers, or access the GPRs via a memory address. When an
instruction word is fetched from a GPR, the PC is only incremented by one,
because the 16-bit registers are at consecutive addresses, rather than
multiples of two as one would expect. The GPRs are not byte-addressable.

On all other Unibus PDP-11 processors made from TTL (i.e., not based on the
F11 or J11), the general-purpose registers can be accessed at the same
addresses from the console, but NOT from software.

Code can be executed from the MMU PAR registers on processors with 22-bit
addressing (11/23, 11/24, 11/44, 11/70, and J-11 based systems). These are
word registers at word addresses, so they don't have the increment-by-one
hack of the 11/05 executing from GPRs.


More information about the cctalk mailing list