TAPE: Corrected debug output of tape position to be independent of the size of t_addr
PDP11, VAX: Enrich the debug output for the TS device simulation.
SCP: Fixed potential out of bounds array reference while expanding command arguments.

Avoid race condition while producing debug header output from multiple threads.
SCP: Avoid duplicate output when run_cmd completes just as is done in sim_printf()
SCP: Stop calls VM-provided address printer for PC without REG_VMAD from Dave Bryan

OBSERVATION:  For a simulator stop, sim_vm_fprint_addr (if defined) is
     called to print the value of the program counter, regardless of whether or
     not the register was defined with REG_VMAD.  However, displaying the PC
     value with "examine" calls sim_vm_fprint_addr only if the REG_VMAD flag is
     present.  The displayed value of the PC should be the same in both cases.
SCP: Add a "-N" (new file) option to the SET LOG and SET DEBUG commands. From Dave Bryan.
SCP: Add a -Q option to ATTACH -R and ATTACH -N to suppress success status messages. From Dave Bryan
SCP: Fixes Cannot show radix, etc. for a device that has no modifiers and SET and SHOW responses for invalid entry are inconsistent. from Dave Bryan

001. PROBLEM:  Cannot show radix, etc. for a device that has no modifiers.

     OBSERVATION:  The default data radix for a device may be set with the SET
     <dev> OCT|DEC|HEX command.  However, if the device does not have a modifier
     table, SHOW <dev> RADIX is rejected with "No settable parameters".

     The same problem occurs for SHOW <dev> DEBUG and SHOW <dev> NAMES.  For a
     device that provides debug printouts, SHOW <dev> MOD will list "DEBUG,
     NODEBUG" among the modifiers, and the SHOW <dev> DEBUG command will display
     the current debug status.  However, if the device does not contain a
     modifier table, SHOW <dev> MOD and SHOW <dev> DEBUG will report "No
     settable parameters", even though SET <dev> DEBUG is accepted and works as
     expected.  For such a device, SHOW MOD will show "DEBUG, NODEBUG" as
     acceptable modifiers.

002. PROBLEM:  SET and SHOW responses for invalid entry are inconsistent.

     OBSERVATION:  Entering SET <dev> <mod> where <mod> is not defined in the
     device's modifier table displays "Non-existent parameter."  Entering SHOW
     with the same parameters displays "Invalid argument."

     Similarly, entering SET <dev> DEBUG for a device that does not have
     debugging capability displays "Command not allowed."  Entering SHOW with
     the same parameters displays nothing.

     In both cases, the messages displayed should be the same for the same
     error.
SCP: Fix bug when debug file is opened with -N option.
SCP: Allow the VM to print simulator stop message information in lieu of, or in addition to, the default message.

The current implementation of "run_cmd" in scp.c calls "fprint_stopped_gen" (via "fprint_stopped") to print the message associated with the "sim_instr" return status.  Messages associated with VM stops must be provided to the SCP via the "sim_stop_messages" array.

"fprint_stopped_gen" prints the status message in a rigid format: the message string, a comma, the program counter register name, a colon, the current PC value, and the instruction at that address in symbolic format.

For example:

       HALT instruction, P: 24713 (LDA 1)

Only the message string is under the control of the VM.  If additional information is needed, it can only be added before the first comma.

The HP2100 simulator does this for halt instructions, which contain device select code and flag hold/clear bit fields that, in practice, are used to communicate to the operator the significance of the particular halt encountered, rather than to affect the device interface:

       HALT instruction 102077, P: 24713 (LDA 1)

To implement this, the simulator must define the message as a variable and then copy the formatted octal value into the buffer at the appropriate location before returning from "sim_instr".

However, if the VM wants to display a different register value, e.g.:

       Self test #13 complete, STAT: 000020

...this cannot be done without also displaying the program counter, which may be irrelevant for the given stop condition.
PDP10, PDP11, VAX: Adjusted KDP, DUP and DMR/DMC devices to be better behaved when the simulated system is idling.

This may not completely fix the problem identified in issue #99, but it should help
PDP11: Simplified idle call logic to leave the idle decision to sim_idle().

Removed the unused references to wait_enable which the comments suggest was related to an old style idle.
SCP: Added missing declaration of sim_vm_fprint_stopped
DOC: Add missing "SIMH Magtape Representation and Handling" document
Merge remote-tracking branch 'upstream/master'