Problem was the console storage output buffer was masked with a WMASK instead of a BMASK (it is only a 8 bit register).
Also, the input interrupt processing cleared the output interrupt state instead of the input interrupt state. This would only be a problem when interrupts are actually used instead of polled I/O.
hp2100_ipl.c:
- Exposed "ipl_edtdelay" via a REG_HIDDEN register to allow user tuning
of the EDT delay that works around a race condition in the HP
2000/Access Time-Shared BASIC system.
- Corrected typos in comments and strings.
- Merged SIMH 3.x and 4.x socket calls via conditionals, so that the
module may be compiled for either version.
hp2100_mux.c:
- Corrected a typo in the RTS macro definition.
hp2100_sys.c:
- Added a cast to int for the parameter to "isspace" to avoid a compiler
warning.
hp2100_bugfixes.txt
- Added a description of the IPL hidden register fix.
VAX 11/.750 Boot ROM code makes non-longword memory references to MassBus and Unibus register space. Minor changes were necessary to allow this behavior which was architecturally undefined behavior, but had real code which depended on it.
Added a BOOTDEV option to the CPU to reflect the 4 position boot device selection switch on real VAX 11/750 hardware.
The UBA750 initial state started with the UBA map registers validly mapping the first 256KB of RAM to Unibus space.
Added simulated PCS/WCS memory which boot code on some operating systems (Ultrix and other BSD derived systems) automatically loaded on the VAX 11/750. PCS/WCS was also automatically loaded by the newer versions of the BOOT ROMs.
Overruns can happen on simulated MUX lines using TCP since multiple characters can arrive in a single network packet. Overruns still are reported if previous input characters haven't been read within 500ms. Edmund Marr reported this problem.
The source file to be updated provides emulation of the North Star DD
floppy disk controller. The proposed change steps the head only when the
step bit in the order byte transitions from 1 to 0. This is the way the
actual hardware functions. Previously, the emulation would step any time
an order was issued and the step bit was 1. This behavior caused some
original software (e.g., Lifeboat CP/M 2.2) to end up on an incorrect
track.
This reverts commit 7c7b44e409.
The prior commit didn't work for static initializers. There are other ASCII dependencies in simh. They should all be solved together or not at all.
Tom McBride conducted extensive tests on the floating point unit and found no errors, except one: the TFL instruction is defined but not actually implemented. This updates fixes that problem.
/Bob