Hello, We are using _at_ keyword to locate a variable at particular address. We declared the variable as per the description given in Help for the _at_ keyword. The declaration of variable we done is as follows: unsigned char xdata abc _at_ 0X0000; When we compiled with the above declaration our target was created with 0 errors and 0 warnings. But we want to locate the above variable at 0X8000. so we declared the variable as follows. unsigned char xdata abc _at_ 0X8000; but when we are compiling our program with above declaration we are getting lot of errors. one of the error we are getting is : ERROR L107: ADDRESS SPACE OVERFLOW. SPACE : XDATA we are having around 60K variables in whole program. but we want only one variable at the above address.
You may have exceeded your XDATA memory range of your TARGET OPTIONS configuration for this PROJECT. Ray
"we are having around 60K variables in whole program. but we want only one variable at the above address." I suspect that you have a lot of variables declared in one source file, probably more than 32k. The linker is then unable to fit all the blocks of xdata variables into 64k as 'abc' is getting in the way. Take a look at the .map file to see if you can figure out what's going on (build the program without the declaration of 'abc' and compare that map file with the one from a build with the declaration of 'abc').