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

How can I compile more 64K code memory in C167CR

On C167CR I have created a project witch Dave2.1 and I have 20 address lines (A0..A19). I want to compile but uVision does not leave me compile more than 64K.
How can I simulate before reset configuration pull-down resistors with uVision and so create a good H86 for my number of address lines.
Thanks!!

Parents Reply Children
  • I'm sorry, my mistake. I didn't pay enough attention.
    What's exactly the problem? Any error/warning messages from the compiler/linker?

  • Thank you very much for your valuable help!

    This is the response I have from the compiler:
    assembling: starta167.a66
    compiling: main.c...
    c:\main.c: error C8: code size exceeds 64K
    Target not created

    The program is in Large memory model,The external memory settings are:
    ROM: Start(0x0000) Size (0x20000)

    I have On Chip XRAM+CAN checked
    In L166Locate tab I have Use memory layout from target dialog checked and in target classes appears the next text:

    ICODE (0x0-0xEFFF), FCODE (0x0-0xEFFF, 0x10000-0x1FFFF),
    FCONST (0x0-0xEFFF, 0x10000-0x1FFFF), HCONST (0x0-0xEFFF, 0x10000-0x1FFFF),

    Thanks!!

  • Here are 2 things that I notice about application.

    1. Only use LARGE model if you use a 80C166 device. For all other C16x devices use the HLARGE model. It is more efficient.

    2. It sounds like you have a single C file that generates more than 64K of code. The description for the error message is pretty descriptive:

    Code size exceeds 64K
    The maximum code size per module is 64K bytes.

    Jon

  • Thank you very much!! I have splitted the code into two files and I have a correct compilation.