[an error occurred while processing this directive]
|
UNION: run=IPMRAM
{
PLLP: load=IPMRAT
{
PLLP_start=.;
file1.obj(PLLP)
PLLP_length=.-PLLP_start;
}
PLLCT: load=IPMRAR
{
PLLCT_start=.;
file2.obj(PLLCT)
PLLCT_length=.-PLLCT_start;
}
}
//-----------------------------------------------
UNION: run=IPMRAM
{
PLLP: load=IPMRAT
{
PLLP_start=.;
file1.obj(.text)
file1.obj(PLLP)
PLLP_length=.-PLLP_start;
}
PLLCT: load=IPMRAR
{
PLLCT_start=.;
file2.obj(.text)
file2.obj(PLLCT)
PLLCT_length=.-PLLCT_start;
}
Может пример Вам поможет. Секции PLLP,PLLCT. Размеры их PLLP_length,
PLLCT_length очевидно одинаковы, что для run,что для load. Если
PLLP_length,PLLCT_length объявить глобальными в программе - они доступны.
PLLP_start,PLLCT_start - одинаковы, относятся к run.
.cmd файл. Все адреса и длины - от фонаря.
MEMORY
{
PAGE 0:
IPMRAM: origin = 2754h length = 0x1700
IPMRAT: origin = 3e54h length = 0x96
IPMRAR: origin = 3eeah length = 0x96
PAGE 1:
IDMRAM: origin = 00080h length = 0204h
}
SECTIONS
mailto:sm@grand-prix.ru
E-mail: info@telesys.ru