Juergen Buchmueller pullmoll at
Tue Jun 12 07:50:50 PDT 2007

On Mon, 11 Jun 2007 23:19:31 -0700 (PDT)
"Eric Smith" <eric at> wrote:

> > I think there's a bug in cpu.c line 654. I believe it should read:
> >     shifter_function = (ir >> 6) & 3;
> > while you have "& 2" there.
> Yes, looks like a bug, thanks.
> I'll have to study your other changes in more detail.

Actually, as I wrote in the mail "Shifter mode", the function is completely
wrong in assuming that IR.SH should affect the shifter mode. If you look at
the schematics, you'll see that LSH1, RSH1 and LCY8 are just demux'd F2
functions, and there's no connection to the emulator IR at all.

The other changes aren't important, or even outright wrong.

I e.g. now think that the order of BUS[0] and BUS[1] for the SETMODE
flipflops is wrong in the schematics, since in many other places it is
referenced exactly as you had it.

My video timing considerations should still hold true, despite the fact that
I was not yet able to get the timing perfect in my own work. The display
related task wakeup setting and clearing is a nightmare ;-)

Finally, my most recent finding:

The disk KCOM<- obviously loads the (bus ^ 0177777) to the kcom register.
Or, in other words, all 1/0 values given in the docs are just the opposite,
or otherwise the KSEC task would at first block the KWD and prepare a seek,
without ever issuing the STROBE.

It writes 0660000 from the constant ROM, and that would be the bits:

If you invert the bits, it just sets the BCLKSRC bit, which seems to
make more sense to me, while that's just the beginning of the next
nightmare :)


More information about the Altogether-devel mailing list