реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Keil: SEGMENT DATA OVERLAYABLE
777777
сообщение Jul 25 2007, 10:57
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Нужно в разных модулях создать два сегмента данных, расположенных по одинаковым адресам. Потому что функции, работающие с этими данными, не будут работать одновременно. В описании A51 написано что сегмент должен быть с типом OVERLAYABLE. А также: Refer to the C Compiler User’s Guide for more information. Но там никаких подробностей я не нашел. А простое добавление слова OVERLAYABLE ничего не дает. Кто-нибуть знает что делать?
Go to the top of the page
 
+Quote Post
oran-be
сообщение Jul 25 2007, 19:39
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 234
Регистрация: 30-03-07
Из: Одесса
Пользователь №: 26 621



Идея этого OVERLAYABLE состоит в том, что если имя сегмента, объявленного с этим спецификатором, совпадает, то линкер объединяет их в один. То есть в разных модулях необходимо объявить два сегмента с одним именем. Тогда они наложатся друг на друга.
Go to the top of the page
 
+Quote Post
777777
сообщение Jul 26 2007, 05:56
Сообщение #3


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Цитата(oran-be @ Jul 25 2007, 23:39) *
Идея этого OVERLAYABLE состоит в том, что если имя сегмента, объявленного с этим спецификатором, совпадает, то линкер объединяет их в один. То есть в разных модулях необходимо объявить два сегмента с одним именем. Тогда они наложатся друг на друга.


Не получается. В разных модулях объявляю два сегмента с одним именем и модификатором OVERLAYABLE. В каждом объявляю по два байта. В карте загрузки этот сегмент имеет длину 4 байта.
Go to the top of the page
 
+Quote Post
oran-be
сообщение Jul 26 2007, 07:02
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 234
Регистрация: 30-03-07
Из: Одесса
Пользователь №: 26 621



Я точно не помню, надо будет посмотреть, но возможно имена переменных тоже если сопадают, то он их объединяет, если нет, то дополняет. Давно пользовался, еще Кейлом 7.0. Работало.

Сообщение отредактировал oran-be - Jul 26 2007, 07:03
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 23:52
Рейтинг@Mail.ru


Страница сгенерированна за 0.01366 секунд с 7
ELECTRONIX ©2004-2016