[TUHS] LSX issues and musing

Noel Chiappa jnc at mercury.lcs.mit.edu
Tue Jul 12 07:06:55 AEST 2022

It would be really appreciated if people replying to messages like this would
take 10 minutes (or so - that's about how lonfg it took me to find the actual
answer to this person's question) to do some research, instead of just
replying off the top of their heads with whatever they happen to think they

    > From: Gavin Tersteeg        
    > I can't seem to get the kernel to actually link together once
    > everything is compiled. When the final "ld -X" is executed, I always
    > get the following errors:
    > "Undefined:
    > _end
    > _edata
    > _decmch"

The first two are automagically defined by the linker after a successful
read-through of the files+libraries, i.e. when then are no un-defined
symbols. Ignore them; they will go away when you fix the problem.

The real issue is the missing 'decmch'. That apparently comes from decfd.c,
which I assume is the DEC floppy disk driver. Depending on the setting of the
EIS conditional compilation flag (a different one for C files, from the
PDP-11 assembler files, please note - and I haven't worked out what its
definitiion means; whether if defined, it means the machine _does_ have the
EIS, or _does not_x), it will be called for.

'decmch' is in low.s (rather oddly; that usualy holds just interrupt vectors
and interrupt toeholds), conditionally assembled on:

	.if DEC
	.if EIS-1

The first line presumably adds it if there _is_ a DEC floppy disk, the second
I don't know _for sure_ the sense of (although I'm guessing that EIS=1 means
there _is_ an EIS chip, so this line says 'assemble if there it _not_ an EIS

Although you'd think that whatever calculation it is doing, it would need to
do if there's an EIS chip or not, so with an EIS chip it must calculate it
some other way; you'll have to read decfd.c and see how it works.

Note that you'll have to make sure the EIS flags (note plural) are set
to the same sense, when compiling the C and assembler files...

Let me send this off, and I'll reply to some other points in a
separate message.


More information about the TUHS mailing list