Перейти к содержанию
    

как не использовать ф-ю exit из библ. rts2800_ml

При написании проги для F28027 использовал уже всю память.

В принципе прога зациклена и не вызывает ф-ю exit.

А эта ф-я резервирует для себя 0x80 слов

.ebss 1 00008100 00000308 UNINITIALIZED

0000822c 00000008 DefaultIsr_3_4.obj (.ebss)

00008234 00000008 rts2800_ml.lib : memory.obj (.ebss)

0000823c 00000004 : _lock.obj (.ebss)

 

000082c0 00000080 rts2800_ml.lib : exit.obj (.ebss)

 

00008342 00000002 rts2800_ml.lib : vars.obj (.ebss)

как настроить проект так чтобы не не создавался код для ф-и exit и не выделялись для нее данные.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно, перед main-ом надо использовать прагму NO_RETURN и компилировать с оптимизпией. В 55-ом компиляторе это поддерживалось, думаю что и в с2000 это тоже должно быть. Почитайте его прагмы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Возможно Вы используете какую-то функцию из стандартной библиотеки, которая вызывает exit() по одной из ветвей (можно попробовать поискать ссылки по map-файлу).

Либо:

#pragma FUNC_NEVER_RETURNS

int main()

{

...

Изменено пользователем jcxz

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, вспомнил - когда я ещё писал на C5502 у меня тоже возникла подобная проблема.

Я её решил перекомпилив rts.lib, предварительно выбросив оттуда все ненужные функции типа exit() и пр.

Благо в CGTOOLS для 55x она имелась в исходниках (rts.src)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...