I am writing assembler code for the 8052, which has 256 bytes of on board RAM (00-FFh) Tools are A51 ver 6.20c and BL51 ver 4.21 I am using defining the stack in the IDATA segment. If any of the stack area extends beyond 7Fh, the linker produces an error message:
IGNORED SEGMENTS: IDATA1
*** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: IDATA SEGMENT: IDATA1 LENGTH: 0028H
LINK/LOCATE RUN COMPLETE. 0 WARNING(S), 1 ERROR(S)
Is there a workaround for this?
I am currntly at a client using IAR, but I do know what the problem is, just not 'where' so here is the fuzzy answer: the 'basic' '51 only has 128 bytes of RAM so that, most likely is the default. there is a place (that I do not recall) where you specify the IDATA length, find it and change it to 256 and you are home free.
maybe with this someone will post the place
Erik