simh-testsetgenerator/PDP10/pdp10_bug_history.txt
Mark Pizzolato 92fe35fb9c PDP10: Fix nested indirect address limit exceeded (from Bob Supnik)
If the nested indirect/execute limit (INDMAX, XCTMAX) is set to 0, the simulator will loop indefinitely in an indirect address or execute loop, testing for interrupts before each memory reference. Thus, on an infinite loop, the simulator will never complete the instruction, but the instruction is interruptible. So for example, under TOPS-10:

.r ddt
1/    0    jrstf @1
1$g
^C
^C
.

The JRSTF will never finish, but it can be interrupted by any device, and double ^C will return control to the command line.

If INDMAX or XCTMAX is non-zero, the previous behavior of limiting loops to a specific depth is retained. However, the default value is now 0.

This closes issue #218.

Conflicts:
	doc/pdp10_doc.doc
2016-02-19 12:28:56 -08:00

28 lines
1.2 KiB
Text

Bugs Found and Fixed During Simulator Debug
1. pushj cleared T2 after setting it
2. if timer autoadjust is enabled, timer diagnostic may fail,
depending on host CPU speed
3. DFAD/DFSB should use FP_ONES instead of ONES
4. TLB physical address max = 1MW, tested in diagnostic
5. DPB does read/write, not read-modify/write
6. Fetch error takes priority over traps, due to prefetching
of next instruction
7. HSB is 36b, was 32b
8. CPU and PAG devices had mismatched types
9. non-zero sections in Tops-20 paging section indirect may
cause non-existent memory error, due to microcode "error"
10. PXCT test for user mode was backward
11. Timer interrupts were not implemented in Tops-20 indirect
chains
12. epta/upta hit known bug in VC++ implementation of 64b
data types
13. final W calculation in Tops-20 paging was incorrect
14. Timer representation lost sub msec values
15. UBA initialization reset the UBA itself
16. RHCS1: writing IE cannot trigger an interrupt
17. Tape bootstrap was set to 800bpi instead of 1600bpi
18. FIXR off by 1 in testing for lower limit to process
19. Indirect loops and XCT loops should run indefinitely,
test for interrupts on each memory reference