what's the affect of XDATA space memory overlap? I have 128 Kbytes of external ram so I use 17 Address buses and switch between 2 pages of ram by A17. I use _at_ for some data that I want to fix at both pages so there are some space overlap(variables have same address but not the same page when run) and keil warn me about this. The problem is my code doesn't work although my last version that doesn't use _at_ works well. Can I ignore this warning? How should I do? I don't know the problems are from my code or from this warning. I'm checking but can't find something wrong. Thank you very much.
Have you configured the compiler to know that you have more XDATA? See the manual, and XBANKING.A51. The tools can automatically handle the bank switching for you. Thus configured, you would assign the variables in different pages different "far" addresses rather than the same one.
If you don't want to use Keil's XBANKING support, but just do your own "manual" bank switching by "manually" tweaking a port pin, could you use a union to represent the overlapping areas?
Thank you for your answers. Do you mean I cannot ignore this warning? Do I have to clear this warning before? I'll try to do this.