I must be going mad....
I'm re-purposing some ATMega8515 code to ATMega168 code and having problems in the USART area.
The standard code in the '168 datasheet for simple USART transmission is:
tx_uart: sbis UCSR0A, UDRE0 ;<====line 63 rjmp tx_uart out UDR0, r16 ;<====line 66 ret
but that doesn't compile :(
...lib_util.asm(63): error: Operand 1 out of range: 0xc0
...lib_util.asm(66): error: Operand 1 out of range: 0xc6
..since in the 168 these registers are in upper register space and SBIS and OUT only work on regsisters 0-31
EDIT: same problem with USART initialisation...
out UBRR0L, r16