Hi all, I just read the posts "variable" regarding the problem to position a value (or variable) at a specific address. These posts were related to C51, that's why I start a new thread here, to find out if there is a "good" solution for this with C166. It might be that I didn't get the whole problem, but using C51 the solution for this was as easy as:
char xdata test _at_ 0x12345
#define test MVAR (char, 0x12345)
The problem everyone is having with this is that you can't initialize a variable if it has a fixed address:
char xdata test _at_ 0x12345 = 0x55C3;
I've got the same problem as Holger..... I'm not worried that I can't initialise these absolute variables, it's just how to assign them individualy in the first place? I've found no documentation/info. about this 'ASSIGN' directive.....I just want to define some bytes to fixed addresses! eg. static char David; // at 0xe080 static char Steven; // at 0xe081 static char Mark; // at 0xe082 etc. etc. PS I'm using the C166 compiler/linker.. Can anyone help?
I've found no documentation/info. about this 'ASSIGN' directive It's in the printed manual and online at http://www.keil.com/support/man/docs/l166/l166_assign.htm. I just want to define some bytes to fixed addresses! You probably want to use the sections linker directive for that. The manual page is at http://www.keil.com/support/man/docs/l166/l166_sections.htm. Jon