здравствуйте.
вот версия моего IDE
http://gyazo.com/32a5fa87385796b9ef4cb6194093bafbприкрепил тестовый проект максимально приближенный к реальному. разница тольк
в том что этот проект занимает 1к кода мой занимает 53к кода
смотрю м51 файл
* * * * * * * C O D E M E M O R Y * * * * * * *
CODE FC00H 0027H UNIT ?PR?RENEWSTART?RENEW_STATIC
здесь все ок лежит там где и должна лежать как и указано в файле линкера linker.lin
а вот где лежат библиотечные функции из библиотеке C51L.LIB
* * * * * * * C O D E M E M O R Y * * * * * * *
------- MODULE ?C?ILDIX
C:008FH PUBLIC ?C?ILDIX
------- ENDMOD ?C?ILDIX
мне нужно чтобы линкер положил их например так
------- MODULE ?C?ILDIX
C:FE00H PUBLIC ?C?ILDIX
------- ENDMOD ?C?ILDIX
требуется чтобы при этом все остальные функции проекта (в данном случае main) должны лежать там ниже 0xFC00
как выполнить этого требования до сих пор не нашел, тех поддержка молчит...
написал
данный вопрос,
начал расматривать предметно что в м51
наткнулся на ?C?LIB_CODE
поместил его в линкере
Код
PRINT(".\out\lst\test.m51") RAMSIZE(256)
CODE( 0X0000-0XFBFF,
?CO?CE41a01_CE (0xC00),
?PR?RENEWSTART?RENEW_STATIC(0xFC00),
?C?LIB_CODE
)
XDATA( 0X0500-0X10FF )
PDATA( 0x200 )
и о чудо произвошло, библеотека тутже встала на свое законное мето.