PDP11: Add KWV11-A/C programmable clock - #580
Open
pixitha wants to merge 1 commit into
Open
Conversation
pixitha
marked this pull request as ready for review
August 31, 2026 02:03
Contributor
|
Hi there Kyle, Thanks for doing the work (with your indicated helper) to add this device to the PDP11 simulator. It has been merged into the https://github.com/simh/simh repository with 2 changes:
ALSO, Thank you VERY MUCH for being the first to add any build time test in the PDP11 that exercises the newly added device. |
pixitha
force-pushed
the
kwv11-rebuild-clean
branch
from
September 1, 2026 00:55
c8e15f0 to
17c6faa
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add a SIMH model of the DEC KWV11-A/C Q-bus programmable real-time clock.
The device is disabled by default and uses SIMH Q-bus auto-configuration.
The implementation provides:
The existing PDP-11 CMake and legacy makefile source lists, device table, and
auto-configuration table are updated to include the new device.
Validation
The in-tree PDP-11 test script was run with the built simulator:
The test covers BPR byte-lane behavior, preset and one-shot overflow, repeated
overflow reload, ST2 capture, external-event modes, autonomous oscillator
operation, both interrupt vectors, and 50/60 Hz configuration. The completed
run ended with:
Initial compilation was also completed on macOS arm64 and in an Ubuntu Docker
arm environment. The same PDP-11 CTest target was then built and run on Linux
x86-64:
Result: 1/1 test passed.
As an additional guest-level check, a small RT-11 program executed real PDP-11
instructions against the device and reported:
AI-assisted development disclosure
OpenAI ChatGPT/Codex (Luna and Terra) generated and revised portions of the C
implementation, tests, comments, and documentation under Kyle Duren's
direction. Kyle Duren reviewed the final changes, performed the validation
described above, and accepts responsibility for the submitted contribution.
References
The register layout, operating modes, counter rates, maintenance inputs,
interrupt vectors, and access behavior were checked against:
EK-ADV11-OP-002, 3rd printing (revised April 1977),
Bitsavers PDF,
especially printed pp. 3-1, 3-3, 3-5, 3-8, 3-9, and 3-11--3-12 (PDF
pp. 30, 32, 34, 37, 38, and 40--41);
(May 1983), Bitsavers scan,
especially listing pp. 58--62 for BPR word tests, CSR low/high-byte tests,
and counter-to-BPR transfer; and