Remote controlling SimH
SimH is the perhaps most well-known simulator for historic computer systems. It’s is an open project guided by Bob Supnik, a former DEC manager.
While SimH is a quite thorough simulation of all PDP-11’s, it does not simulate the system console interface of the simulated machines logic. Get this right:
- Of course SimH simulates the serial ports of the simulated machine and routes them over telnet connections.
- But SimH does not simulate the serial system console of any PDP-11.
- SimH itself can be considered as a system console for the simulated machine. You can type your “Examine/Deposit/Run/Halt/Single Step” commands into its command window. But the command window is not connected to the outside world via telnet.
To connect PDP11GUI to SimH, I needed a way to remote-control SimH from another software. Under UNIX, I could have attached to SimH’s stdin/stdout stream. Under MS Windows, SimH runs as a console mode program (formerly called “DOS box”); it was too painfull for me to grab the console mode I/O. I decided to modify SimH instead.
The SimH sources are free for download. I tried to understand how the serial lines are routed over telnet, and then routed the stdin/stdout streams over telnet too. SimH has now three new commands:
- “set stdio telnet=<port>” switches the command window from direct input to telnet mode. SimH waits 10 seconds for a conenction, then switches back to stdin/stdout mode. <port> is normally 23, but any port can be choosen.
- “show stdio” displays whether telnet rerouting is active (quite obsolete, because to see this, you already must know how to connect to SimH)
- “set stdio notelnet” closes a telnet connection.
I just built the emulator for PDP-11 under Microsoft Visual Studio. I did not test other simulators, neither did I build SimH with my modifications for other platforms. I announced my changes to the SimH mailing list, but got no feedback yet. So I distribute my changes here without authorization!
For PDP11GUI, you need to download the modifed PDP-11 simulator: get it here.
If you are a SimH developer, you may want to download the changed SimH-sources.