1
0
mirror of https://github.com/open-simh/simh.git synced 2026-01-13 15:27:46 +00:00
Tony Lawrence 6a1b5685fd PDP11: RP11: Make sure to advance DA after every I/O
It looks like disk controllers, which automatically update
disk address (DA) after completion of I/O, are expected to do
so even if there was no data transfer because of I/O errors.
I was studying RSX-11's Error Logger documentation and
examples are clearly offsetting disk addresses backwards
by one when I/O errors are reported by the controller.

Since once the controller has found the DA-specified sector,
the I/O begins regardless of the condition of the sector (bad
or good data) or ability to transfer the contents between the
disk and the memory.  If an error occurs (NXM, for instance)
the operation would stop (with the error reported) at the end
of the sector.  So if, for example, the bus address register
had a bad address from the get-go, no data would be able to
transfer at all, yet DA should still be updated with DA + 1
once the controller asserts the DONE bit.

This patch makes sure that DA is always advanced when I/O has
actually been commenced.
2024-02-01 12:56:04 -05:00
2024-02-01 12:51:13 -05:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2024-02-01 12:51:13 -05:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2024-02-01 12:51:13 -05:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2023-05-17 20:18:42 -04:00
2024-02-01 12:51:13 -05:00
2023-10-09 20:17:13 -04:00
2023-05-17 20:18:42 -04:00
2024-02-01 12:51:13 -05:00
2024-02-01 12:51:13 -05:00
2023-11-27 10:55:16 -05:00
2022-09-15 14:15:28 -07:00
2022-09-15 14:15:28 -07:00
2022-03-14 15:28:39 -07:00
2022-03-06 02:11:57 -08:00
2023-07-16 16:35:58 -04:00

Open SIMH machine simulator

This is the codebase of SIMH, a framework and collection of computer system simulators.

SIMH was created by Bob Supnik, originally at Digital Equipment Corporation, and extended by contributions of many other people. It is now an open source project, licensed under an MIT open source license (see LICENSE.txt for the specific wording). The project gatekeepers are the members of the SIMH Steering Group. We welcome and encourage contributions from all. Contributions will be covered by the project license.

The Open SIMH code base was taken from a code base maintained by Mark Pizzolato as of 12 May 2022. From that point onward there is no connection between that source and the Open SIMH code base. A detailed listing of features as of that point may be found in SIMH-V4-status.

PLEASE NOTE

Do not contribute material taken from github.com/simh/simh unless you are the author of the material in question.

Coverity Scan Build Status
Description
The Open SIMH simulators package
Readme 140 MiB
Languages
C 96.9%
Assembly 1%
CMake 0.5%
Batchfile 0.4%
Makefile 0.4%
Other 0.5%