Robert Seczkowski wrote:
In mspgcc documentation states, that
when doing mov.b &x,R14 only higher byte is changed
lower byte of r14 stays unchanged.
realy? where? because thats wrong.
byte operation use the lower byte of the register and clear the upper
eight bits.
I made simulation on IAR compiler and any write
to register change whole content filling the rest with zero.
like: mov #0xFFFF,r15;
mov.b #1,r15; gives 1 in return
like it should be.
Also mspgcc says, addressing odd with word values is not documented
I made test (as above) and ie:
mov #0xF1F1,&0x1FF
mov &0x1FF,r15 ;gives 0xF1F1 contents so it works!?
no, it doesnt. well, the real msp also simply ignores to lowes address
bit when accessing words, but the databook says that the behaviour is
not defined.
translated means this: sure it does something (it even does it in
adeterministic way), but it can change the behaviour from part to part
and you must not code your programs to use these "features".
chris
Does it means IAR simulator is not worth a cent?
robert