[comp.sys.handhelds] More on Staurn opcode problems

bson@rice-chex.ai.mit.edu (Jan Brittenson) (10/25/90)

Re: my problems with certain opcodes ending with `8' (e.g. 81AF08).


I found the problem. There's a typo in Alonzo's Processor notes.

Under the "listing by code" it reads (I've deleted the irrelevant tables):


	81At0j		MOVE.f	A, Rn
	81At0k		MOVE.f	C, Rn
	 ...		    ...
					 j k | Rn
					----------
					 0 9 | R0
					 1 A | R1
					 2 B | R2
					 3 C | R3
					 4 D | R4


Whereas under the "listing by type" the same table is:


	 ...		    ...
					 j k | Rn
					----------
					 0 8 | R0
					 1 9 | R1
					 2 A | R2
					 3 B | R3
					 4 C | R4

I assume tha latter is correct.


   This is a grade A error, of course, and the only one I've found at
all, except for a harmless typo or two. (E.g. under the "Set Bit"
instructions the examples read "clear bit ..." instead of "set
bit...")


Now, here's a fix for SAD.

   Towards the beginning (among the global variables) there is a table
reading

  *std_rno[] = {"r0", "r1", "r2", "r3", "r4", "r*", "r*", "r*", "r*",
		  "r0", "r1", "r2", "r3", "r4", "r*", "r*" };


Change it to read

  *std_rno[] = {"r0", "r1", "r2", "r3", "r4", "r*", "r*", "r*",
		  "r0", "r1", "r2", "r3", "r4", "r*", "r*", "r*" };


   I.e. delete one entry before the second "r0" and add one additional
"r*" at the end.

grue@batserver.cs.uq.oz.au (Frobozz) (10/26/90)

bson@rice-chex.ai.mit.edu (Jan Brittenson) writes:
>Re: my problems with certain opcodes ending with `8' (e.g. 81AF08).

>I found the problem. There's a typo in Alonzo's Processor notes.


This error in the original notes has already been discovered!  (while
working on my resident disassembler I noted this error and Alonzo
confirmed the problem).



							Pauli
seeya

Paul Dale               | Internet/CSnet:            grue@batserver.cs.uq.oz.au
Dept of Computer Science| Bitnet:       grue%batserver.cs.uq.oz.au@uunet.uu.net
Uni of Qld              | JANET:           grue%batserver.cs.uq.oz.au@uk.ac.ukc
Australia, 4072         | EAN:                          grue@batserver.cs.uq.oz
                        | UUCP:           uunet!munnari!batserver.cs.uq.oz!grue
f4e6g4Qh4++             | JUNET:                     grue@batserver.cs.uq.oz.au
--