![]() |
|
Модераторы: bsa |
![]()
|
|
| Kylinar |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 1.2.2008 Репутация: нет Всего: нет |
Доброго времени суток всем!
Есть задача создать программу на плк под управлением DOS. Даже эта программа уже есть и работает. Но вот с недавних пор появилась необходимость добавить функционал, при чем таким образом, что на диске должен быть файл настроек типа *.cfg или прочий, который должен содержать имена устройств с которыми контроллер должен работать и прочие настройки. Реализация этого дела не вопрос. Но вот исходя из названий приборов записанных в данный файл программа должна подгружать соответствующие функции из другого внешнего файла типа *.dll. Вот как это дело реализовать в Turbo C 2 под DOS? Что-то нигде не могу найти, хотя думаю что эта возможность быть должна иначе уж совсем грустно... |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
Kylinar, такая возможность есть. DLL под DOS называется оверлей. Если я не ошибаюсь, в компиляторах от Borland есть возможность работы с ними. Вот только я не уверен, что в версии 2.0 она была. В 3.1 есть точно.
|
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 21 Всего: 135 |
Dll - исключительно win32 код. В дос были файлы *.ovl (оверлеи). Думаю, прийдётся переделывать программу под windows :(
-------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| Kylinar |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 1.2.2008 Репутация: нет Всего: нет |
Блин:( Вот незадача-то... Возможности перейти на windows нет никакой. Исключительно DOS и TC2... Оверлеи значит, поищу литературу, может где и найду... Можно конечно, для каждого прибора сделать функции внутри основной программы, но ведь даже с одним уже проблемы с памятью возникают! Тут никак не пролезет данный вариант, тем более что характеристики контроллера следующие: AMD80188 40 Mhz, 256 Kb RAM, 512 Flash ROM и 2 Kb EEPROM!!!! А приборов с которыми нужно работать около 20-и.
|
|||
|
||||
| Kylinar |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 1.2.2008 Репутация: нет Всего: нет |
Похоже совсем грустно :-(
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
Если алгоритмы работы с приборами не очень сложные и скоростные требования не поджимают, то напиши простейший интерпретатор скриптового языка. Поддержку приборов пиши на этом языке.
|
|||
|
||||
| Kylinar |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 9 Регистрация: 1.2.2008 Репутация: нет Всего: нет |
TSR программки которые будут вызываться прерыванием, а данные и команды передавать через общую структуру... Такое уже проделывал загружая TSR через autoexec а затем основную прогу, которая передавала указатель на структуру, флаги команд в резидента и прочее. Теперь только нужно сделать загрузку резидентов исходя из конфигурации. В принципе получится тоже самое, но в дос свои заморочки с загрузкой:( Не охото копошиться в "старом", надеялся что есть другой вариант...
|
|||
|
||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 35 Всего: 223 |
||||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |