wfjm / w11

PDP-11/70 CPU core and SoC
https://wfjm.github.io/home/w11/
GNU General Public License v3.0
119 stars 18 forks source link

MMU: D space used instead of I space for PC deferred specifiers #35

Closed wfjm closed 2 years ago

wfjm commented 2 years ago

Test 072 of ekbee1 fails with

    D-SPACE ENABLE CIRCUITRY HAS FAILED
    ERROR   AUTOI/D VIRTUAL
    REGISTR REGISTR ADDRESS TESTNO  PC AT ABORT
    100027  000000  060410  000072  060412  
    100027  000027  060416  000072  060422  

The test does

    060410: tst  (pc)
    060416: cmp  #240,(pc)

and expects that these accesses are done to I space.
They are done to D space instead.

The w11 uses D space only for (pc)+ and @(pc)+ specifiers.
Clearly a bug.
Wasn't detected so far because this access mode has no practical value
and this therefore not used in normal software.