When I run my Imagecraft/Crossworks/Codevision compiled code under Proteus mega8, it generates error--
[AVR CORE] PC=0xnnnn PC=0020 is outside ROM space U1 m.mmmmS
Where 0xnnnn, gives adresses which are beyond m8 ROM space.
I noted that this error is generated whenever I read from a ROM table. If I remove this particular instruction no more errors are generated.
BTW, AVRStudio does not cause any errors.
What may be the cause ? Is it this ...
ldi r31,high(rom_table*2) ; Now Z may be greater than MAX_ROM
Interestingly, same code compiled under IAR does NOT cause any errors with ISIS.