Newsgroups: comp.arch
Path: utzoo!henry
From: henry@utzoo.uucp (Henry Spencer)
Subject: Re: Self-modifying code
Message-ID: <1989Oct12.162236.24239@utzoo.uucp>
Organization: U of Toronto Zoology
References: <522@ryn.esg.dec.com> <1989Oct12.041940.5651@ginger.acc.com>
Date: Thu, 12 Oct 89 16:22:36 GMT

In article <1989Oct12.041940.5651@ginger.acc.com> art@salt.acc.com (Art Berggreen) writes:
>I seem to recall one of the primary paper tape bootstraps for PDP-11s
>used a loop which read a byte from the tape into the instruction loop.

Bootstraps written before the days of decent-sized EPROMs often employ
all kinds of dirty tricks to minimize size.  The classic was the toggle-in
(i.e. manually entered, none of this wimpy ROM business :-)) bootstrap
for the pdp8 with RK disks:  two instructions.  The first was "kick disk
controller" (the controller handily came up in a fairly reasonable state
after bus reset).  The second was "branch to self".  These went in at a
very specific location in low memory.  As the second-stage bootstrap came
in off disk, it overwrote low memory, and the early part of it was very
carefully crafted to pick up control and wait for the disk controller to
finish.
-- 
A bit of tolerance is worth a  |     Henry Spencer at U of Toronto Zoology
megabyte of flaming.           | uunet!attcan!utzoo!henry henry@zoo.toronto.edu
