[Simh] Questions regarding future simulator development

Bob Supnik bsupnik at comcast.net
Thu Apr 11 09:59:40 EDT 2013


1. Four Massbus channels on the PDP-11 (or VAX). This is straightforward. The RH simulator already supports two, and the extensions from two to four use the existing mechanisms:

- add the register blocks definitions to the header file
- define additional RHC, RHD devices with matching unit and register definitions
- look for places where "2" is hardwired as the maximum number
- modify the autoconfiguration table for the additional device addresses

2. While real documentation for the RS03 and RS04 is lacking, they are described in adequate detail in the early PDP-11 IO handbooks, which are on BitSavers. This would probably suffice to run the operating systems, but not diagnostics. There is also some information on issues in the RS03 and RS04 in the Massbus standard.

3. The problem with "console while simulating" is that SimH (at least when I was developing it) is single -threaded. That said, there is a way to handle this within the existing framework:

- Insist that the console always runs via a Telnet window.
- Let the keyboard sampling "device" look for more than ^E; in fact, let it accumulate type-ins into a command buffer. Note that all editing (echo, delete, etc) would have to be explicitly emulated, because the keyboard window, at that point, is in raw mode.
- When ENTER is recognized, see if the command verb is part of a small acceptable set of commands that are safe to run while the simulator is executing. As Tim Litt points out, ATTACH and DETACH should work, because this is no different, from the simulator's point of view, than ^E, attach/detach, CONTINUE. EXAMINE is probably safe. Not much else is.

While it all sounds good in theory, I expect a whole bunch of things are going to break. Most notably, lots of SimH device service routines assume that if a device is attached at the start of the routine, it will be throughout and don't implement comprehensive error recovery further down.

4. Multiprocessors. Aside from the SMP VAX emulation, there's a 6-way MIPS simulator in the 'beta simulator' collection on the SimH web site (http://simh.trailing-edge.com). It works; it was used extensively at SiCortex.

/Bob Supnik



More information about the Simh mailing list