mirror of
https://github.com/open-simh/simh.git
synced 2026-05-05 15:43:58 +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:
@@ -1507,9 +1507,9 @@ switch (prn) { /* case on reg # */
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case MT_SIRR: /* SIRR */
|
case MT_SIRR: /* SIRR */
|
||||||
if ((val > 0xF) || (val == 0))
|
val = val & 0xF; /* consider only 4b */
|
||||||
RSVD_OPND_FAULT;
|
if (val != 0) /* if not zero */
|
||||||
SISR = SISR | (1 << val); /* set bit in SISR */
|
SISR = SISR | (1 << val); /* set bit in SISR */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MT_SISR: /* SISR */
|
case MT_SISR: /* SISR */
|
||||||
|
|||||||
Reference in New Issue
Block a user