I think your assembly is a bit buggy (though it's true that codewarrior
doesn't always report the error messages on the right line)



>      link.w    a6, +0x04
--------------------------

Problems:
  - The ".w" isn't needed (and I think codewarrior doesn't like it)
  - You need a "#" before the 0x04
  - You likely want the displacement to be negative, since right now you're
    Putting a6 on the stack and immediately popping it off.

Suggested fix:
  link a6, #-4



>      lea.l     0xfffff305, a0      // Here illegal addressing mode error
--------------------------------------------------------------------------

Problems:  
  - The ".l" isn't needed

Suggested fix:
  lea 0xfffff305, a0

>      bclr 0x0002, a0          // Here    illegal addressing mode error
------------------------------------------------------------------------

Problems:
  - You need a # before the displacement
  - bclr doesn't work on address registers (see the 68K manual)

Suggested fix:
  bclr 2, d0



Reply via email to