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

OVERLAY

I am using the OVERLAY directive as following:

OVERLAY(func0 ! *,func1 ! *,func2 ! *,func3 ! *,func4 ! *,func5 ! *)

to Excludes the functions from overlay analysis and locates its data and bit segments in non-overlaid memory

I don't see any memory usage changes. Am I doing anything wrong?

Thanks,

Anh

Parents
  • "It works fine on Windows and I am porting to 8051. There's quite a few function pointers..."

    Well, that's very likely (almost certainly?) your problem!

    You have read the App Note & Knowledgebase article(s) about this, haven't you?

    It is the very nature of the 8051 architecture that makes function pointers a Bad Thing on this processor.

    If you really need this code to run on both Windows and 8051, you need to design for the lowest common denominator - and that is certainly the 8051.
    Anything an 8051 can do, a Pentium will eat for breakfast - but getting an 8051 to behave like a Pentium is, at best, woefully misguided! :-(

Reply
  • "It works fine on Windows and I am porting to 8051. There's quite a few function pointers..."

    Well, that's very likely (almost certainly?) your problem!

    You have read the App Note & Knowledgebase article(s) about this, haven't you?

    It is the very nature of the 8051 architecture that makes function pointers a Bad Thing on this processor.

    If you really need this code to run on both Windows and 8051, you need to design for the lowest common denominator - and that is certainly the 8051.
    Anything an 8051 can do, a Pentium will eat for breakfast - but getting an 8051 to behave like a Pentium is, at best, woefully misguided! :-(

Children
No data