Jump to content


  • Content Count

  • Joined

  • Last visited

About Flaubert

  • Rank
    Noob Class

Profile Information

  • Location
  • Interests
    Microcontrollers, Embedded Systems, Microbotics, Robotics
  1. Thanks for your help, spirilis. I was finally able to compile a "big" program sending some of the code to the FAR_ROM. I had some issues with c libraries (libc.a, libgcc.c and so on), which were being located at .text section, "overflowing" it. But I could solve them redefining the .text section to exclude such libraries so they were located to the .far_text section at FAR_ROM. It is not a definitive solution but it works. Thanks again for your help...
  2. Hi, Spirilis. I have the same problems you have solved regarding using FAR_ROM with the MSP430x5x family (a MSP43F5438 in my case). Started with a working program (less than 64Kb) and tried relocating code to FAR_ROM defining a ".far_text" section at "ld" file (just a copy of .text section, deleting .lowtext and using > FAR_ROM instead of ROM >). Then I put an "__attribute__((section(".far_text"))) " to a function, and built the code. Inmmediately I found the above "relocation truncated to fit: R_MSP430X_ABS16 against symbol" message. Then I tried defining -mlarge flag at "Properties > CCS Build > GNU Compiler > Miscellaneous>Other", and also at "Properties > CCS Build > GNU Linker > Miscellaneous>Other flags".... no way --> "region 'ROM' overflowed by 2744 bytes"... But also, if I delete the __attribute__((section(".far_text"))) " so I'm using the original code allocation (which worked at first) now it doen's work!!! I need to remove trhe -mlarge flags to make it work again...!!! So -mlarge flags are totally messing up my code allocation...(even with a "small" program) FYI, I've also defined symbols "__MSPF4305438__", "GCC_MSP430X", and "__LARGE_DATA_MODEL__" at my "Compiler section"... Could you help me to find what is happening? (Perhaps a copy of one of your "projects", using FAR_ROM memory, could be a help...) Thanks in advance! PS. I have no .highmem section at my ld file