Using the DMD Terminal with a 3B2

Published Monday, January 7 2019

I’m writing this entry more for myself than for anyone else, because I always forget what a pain this is to get set up properly. The backstory starts with a kernel fault.

proc = 4022EBEC psw = 1472B
pc = 400287BD


This is what happens if you install software out of order on the 3B2/310, and 3B2/400. I’ve encountered it a few times, both using my 3B2/400 emulator and using a real 3B2/310. Here’s what’s happening.

There are two windowing packages for the 3B2:

  1. “AT&T Windowing Utilities”, a single floppy disk containing a driver for the DMD terminal (the XT driver), a minimal support environment, and not much else. It installs under /usr/bin and /usr/lib.
  2. “DMD Core Utilities”, a three flopy disk set containing a different version of the XT driver, a full support environment, a bunch of demos, and more. It installs under /usr/dmd/bin and /usr/dmd/lib.

You might think the more complete package should be installed, ignoring the other one. But, surprisingly, you’d be wrong. If you install only the “DMD Core Utilities” package, or if you install the “AT&T Windowing Utilities” first followed by “DMD Core Utilities”, you’ll be left with a driver that simply doesn’t work. I haven’t dived in and really debugged why it’s broken, but clearly it is.

So, instead, always install the “DMD Core Utilities” first to get the full /usr/dmd environment and all the nice demos, but then install the “AT&T Windowing Utilities” to get a working driver.

You can all thank me later.