Hi everyone,
is there a way to specify either in assembler or C where a global variable should be located in the memory? (it's an ADSP21020).
The reason for this is that, in the system I'm using, the protected area of the flash contains the runtime header which reference to a symbol called ___lib_int_table (where the address for interrupt service routines will be placed). This symbol was put by the linker at the beginning of the data memory at the time the program was built, but now that I am building a new program, which has to use the same runtime header, the only way to have the ___lib_int_table located in the same position is to follow a specific order during the linking phase, otherwise everything is screwed up.
Since I don't want to rely on this particularly fragile approach I wanted to nail down the location once forever, since is not going to change.
I know that there are C language extension for the g21k compiler which may specify whether we want to have a variable in the data memory or the program memory, but I have not found any reference for locating a global variable in a fixed memory location.
Any suggestion is appreciated.
Al