mirror of
https://github.com/open-simh/simh.git
synced 2026-01-14 07:40:35 +00:00
All VAX: Fix value check on SIIR.
Only the low 4 bits of the value are interesting and the value 0 in not valid. Never generate a Reserved Operand Fault. EVKAE detected this problem.
This commit is contained in:
parent
953683c115
commit
3f27267102
@ -1507,9 +1507,9 @@ switch (prn) { /* case on reg # */
|
||||
break;
|
||||
|
||||
case MT_SIRR: /* SIRR */
|
||||
if ((val > 0xF) || (val == 0))
|
||||
RSVD_OPND_FAULT;
|
||||
SISR = SISR | (1 << val); /* set bit in SISR */
|
||||
val = val & 0xF; /* consider only 4b */
|
||||
if (val != 0) /* if not zero */
|
||||
SISR = SISR | (1 << val); /* set bit in SISR */
|
||||
break;
|
||||
|
||||
case MT_SISR: /* SISR */
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user