There are two files in assembly language which comprise about 10% of the source code. A reasonable acquaintance with these files is necessary.
[Sheet 05, Chapter 9] contains information, including the trap vector, for initialising the low address part of main memory. This file is generated by a utility program called “mkconf” to suit the set of peripheral devices present at a particular installation.
[Sheets 06..14; Chapters 6, 8, 9, 10, 22] contains a set of routines appropriate to the PDP11/40, to carry out a variety of specialised functions which cannot be implemented directly in “C”.
Sections of this file are introduced into the discussion as and where appropriate. (The largest of the assembler procedures, “backup” has been left to the reader to survey as an exercise.)
There is an alternative to “m40.s” which is not presented here, namely “m45.s” which is used on PDP11/45’s and 70’s.