[Simh] Non-numeric character in IBM 1620 P & Q addresses

Bob Supnik bob at supnik.org
Fri Dec 25 12:42:20 EST 2015


Bob A  is right. I found the MAR checking logic on pp 292-3 of 227-5631-0.

For the low four digits of MAR, there are two circuits: a C-bit checker 
and an invalid digit checker.

C-bit checker is: (b4 xor b2) xor (b1 xor b8) xor C
invalid digit checker is: (b4 or b2) and b8 - which picks up 1010 thru 1111

The high digit is effectively checked against memory size, ruling out 
anything >= 0110.

So the simulator is correct - an invalid digit in MAR generates MAR 
ERROR, lights the MAR CHK LAMP, and stops the system.

That does beg the question as to why there is a special decode for DSW 
2, with bit 8 included.  If record mark is trapped by the MAR ERROR 
logic, then bit 8 is not needed, because 1010 cannot occur. If record 
mark did get through, it would decode as an 8, as Paul points out.

I'd like other folks to go through the logic prints, in case I've 
misinterpreted what I'm seeing.

It also might pay to go back to the original problem statement about the 
disk utility. The 1311 simulation has not been extensively tested. 
Perhaps there's a problem in <that> part of the simulator, rather than 
the MAR validity testing.

/Bob

On 12/25/2015 10:28 AM, Robert Armstrong wrote:
>> So either no core is selected or multiple cores are selected.
>> Now what happens?
>    The unanswered question here is "What are the conditions for setting MAR CHECK"?
>
>    If an invalid digit in the MAR sets MAR CHECK, then the decoding is irrelevant.
>
> Bob
>
> P.S.  Merry Christmas, guys!
>
>



More information about the Simh mailing list