I am working on a simulator for the msp430 instruction set. gnu assembler will let you encode instructions like these:
fc0a: 12 10 00 02 rrc &0x0200
fc0e: 22 11 rra #4
fc10: 23 52 add #4,#2
My guess is that rrc &0x0200 will fetch from address 0x0200 perform the rotate then write the answer back to address 0x0200, correct? But what would an rra #4 do? The source would be an immediate 4 I assume but is there a destination after the operation? The add #4,#2 assembled into what you would expect (as 2b10, source = r2, ad = 1b0, dest = r3), the binutils disassembler though did not know what to do with that instruction.
Are these valid instructions?