> On Jul 30, 2018, at 9:51 AM, Timothe Litt <[email protected]> wrote:
>
> On 30-Jul-18 09:30, Paul Koning wrote:
>> Yes, that is the standard way to do this. I have never seen the code you
>> quoted before and I can't imagine any reason for doing that.
> A memory address test's verification pass. Check that memory contains
> address of self. Of course, you need a
>
> bne fail
> following the compare :-)
Oh, ok. Yes, for a memory test that makes sense, but now the incompatibility
matters and you have to split the instruction into two.
> ...
>
> Those constructs bring back memories... particularly of debugging such clever
> code that didn't have the corresponding comment. I often worked on several
> machines with slightly different ideas of condition codes; switching took
> some effort. Clever coding is fine - as long as you document it.
>
> BLISS got pretty good at being clever - but never at commenting its assembler
> code. Some of its contortions caused CPU architects to pause before agreeing
> that the code should work. On a few occasions, SHOULD and DID diverged...
One example I remember that puzzled me the first time I saw it is CMP (SP)+,
(PC)+ which is "pop a word from the stack and skip the next (one-word)
instruction".
Then there is the classic "one word to write all of memory" -- 014747 dropped
into the last word of memory and executed. For extra credit, there is a
one-word program that *clears* all of memory.
paul
_______________________________________________
Simh mailing list
[email protected]
http://mailman.trailing-edge.com/mailman/listinfo/simh