> On Jul 30, 2018, at 9:51 AM, Timothe Litt <l...@ieee.org> 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
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Reply via email to