This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

WARNING L5: CODE SPACE MEMORY OVERLAP

Hello I'm a student and I have a full version uvision2.

I have the following linker warning.

*** WARNING L5: CODE SPACE MEMORY OVERLAP
FROM: 0000H
TO: 0418H

Program Size: data=182.0 xdata=0 code=2657
LINK/LOCATE RUN COMPLETE. 1 WARNING(S), 0 ERROR(S)

this my map file
* * * * C O D E M E M O R Y * * * *

TYPE BASE LENGTH RELOCATION

CODE 0000H 0419H ABSOLUTE
* OVERLAP * CODE 0000H 0003H ABSOLUTE

If I remove the main() fonction I have no
WARNING L5:

CODE 0000H 0419H ABSOLUTE use by assembler module

please someone help me.

Parents
  • I can't have an assembler file putting code at 0x0000!

    Indeed you can't!

    I am not clear what it is that you wish to achieve.

    If you really want to write a C program, but to override the reset vector, then you should include STARTUP.A51 in your project and modify that (with great care).

    If you just want to include an assembly language function in your project that is called from C or invoked as an interrupt, then there are many ways of doing that, but you should let the linker worry about where to actually put your code.

Reply
  • I can't have an assembler file putting code at 0x0000!

    Indeed you can't!

    I am not clear what it is that you wish to achieve.

    If you really want to write a C program, but to override the reset vector, then you should include STARTUP.A51 in your project and modify that (with great care).

    If you just want to include an assembly language function in your project that is called from C or invoked as an interrupt, then there are many ways of doing that, but you should let the linker worry about where to actually put your code.

Children
No data