Enhancements in Release 1.06
This is a primarily a bug-fix release, containing the collection of corrections and enhancements that have accumulated since 1.05 was released in March 2018.
The emulator has since it's early days performed two actions as part of its "power-on" initialization sequence:
- The SPO types out a brief message showing the emulator version.
- The operator console displays a "lamp test" that lights all of the console lamps, waits a few seconds, and then extinguishes them.
Magnetic Tape Enhancements
The tape drive now examines tape-image file extensions in a case-insensitive manner when determining the format of the image.
The way that a drive stored words in memory during a backward read was incorrect. This has been fixed.
The tape drive will now detect "dropouts" -- areas where there is no flux change indicated by the bytes in the tape image. This can happen only with .bcd tape images, and can be made to occur by writing zero (i.e., all bits off) characters in even parity. If a dropout is detected, it will be reported as a parity error in the result descriptor.
When emptying a stacker on the card punch, the progress meter and stacker-full annunciator are now properly reset.
During the Processor's exit from Character Mode, the MSFF and SALF flip-flops were being reset and should not have been. In addition, the way the MSCW address was being obtained was unnecessarily complex. These issues have been corrected.
The delay deviation adjustment algorithm in the setCallback() function has been redesigned and simplified. The "alpha" factor that controls the rate of adjustment decay has been reinstated as part of the redesign.
A few of the utility scripts in the tools/ directory have received minor enhancements and some new scripts added. Most of these scripts are for internal testing and debugging, and are intended as templates to be customized for a particular situation.
- Added B5500DiskDump.html. This utility will write the contents of the first 20 sectors of EU 0 to a window.
- Modified B5500DiskPeeker.html to use the standard default name for a disk subsystem data base, "B5500DiskUnit."
- Added B5500DiskSeg0Fixer.html to correct the MCP and Intrinsics pointers in sector 0 of the halt-load disk unit.
- Modified B5500LibMaintDir.html to have a new "ShowRows" parameter to control whether header row-address words are displayed on the output.
An easier way to obtain a memory-dump tape is to click the NOT READY lamp on the console, but that is an emulator-specific feature.