On 8/3/21 11:58 AM, Paul Koning wrote: > > Mostly true; some machines had the "compare-move unit" which would do what it > says -- move or compare string of 6-bit characters". But nothing fancier.
I think the CMU arrived with the CYBER 7x line--I don't recall seeing a 6400 with one. Of course, you couldn't get it on the Cyber 74 or 76. The CMU appropriated the no-op opcode (46xxx), which was likely safe because it always assembled by COMPASS as 46000. Before the CYBER 170, you could devise a test for a CMU by coding a CMU move in the first two parcels of a word, followed by a jump in the lower 30 bits (I'm glossing over details a bit). If the CMU existed, the jump wouldn't be taken. This got bollixed up in the 170 where anything but a 46000 on the non-CMU systems would cause an illegal instruction fault. Broke some code, it did. NOS used it in the CMTR storage move routine, if available. One of my favorite 6000 bits of code was the register save and restore routines (not using CEJ). It was a favorite interview question for those job seekers claiming to be proficient in COMPASS. --Chuck
