6502 chip, HC11 disasm

Wouter de Waal wrm at ccii.co.za
Fri Oct 2 10:18:26 GMT 1998


Hi Orin & all

>Hmm.  I put a small program thru which I had the asm source for and didn't
>notice anything.  What Motorola documentation is wrong?

I have a 2.9MB file, HC11RM.PDF, which I downloaded from somewhere. The
title page sez M68HC11 reference manual, Rev 3, (c) Motorola 1996. (510
pages!) One example: on page A13, the ASR instruction the table reads (in part)

CYCLE ASRA(IMM)   ASRB(DIR)   ASR(EXT)   ASR(IND,X)   ASR(IND,Y)
1     OP   47 1   OP   57 1   OP   77 1  OP   67 1    OP   18 1
2     OP+1 -- 1   OP+1 -- 1   OP+1 hh 1  OP+1 ff 1    OP+1 68 1

Now, the first 2 entries should be ASRA(IMM) and ASRB(IMM), but most of
the instructions operate on one register only, and the second
column contains the opcode for the DIR mode. That's what I mean by
"cut&paste error". It occurs in quite a few places, also in at least one
place the numerical opcode value is wrong, and conflicts with another
opcode. I guessed which one was correct, based on the similarity (normally
IMM, DIR, IND,X, EXT are nx, (n+1)x, (n+2)x and (n+3)x, or at least
that's the pattern I noticed.

For example, the IND,Y instruction above, compare it with ASL(IND,Y) which
is 18, 68. ASLA is 48, so I would assume that ASR(IND,Y) should be 18 67
to match the n7 pattern for ASR.

You see? I looked for a table with one error, and the first one I find, has
two errors! :-)

That's why I would like comments on whether my disassembler is disassembling
(dissembling?) correctly...

W 




More information about the Diy_efi mailing list