![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как в старом TP7 под DOS организовать очень большой массив ?
JohnKorsh © (2005-01-14 15:46:00)Не подскажет кто как в старом TP7 под DOS организовать очень большой массив с использованием верней памяти? (1 MB) Ссылочный тип отвергается по причине размера (Structure too large) еще на этапе компиляции при превышении этой структурой 64 KB, отключение проверок в компиляторе не помогает.
PVOzerski (2005-01-14 16:55:00) [1]2Анонимщик © (14.01.05 16:45) [3]
Насчет config.sys - это, конечно, так... А именно, должно быть написано dos=high,umb или аналогичное и перед этим команды для загрузки драйверов XMS и UMB (обычно это пара himem.sys + emm386.exe, в DR-DOS emm386.*** работает "за двоих", а еще бывают альтернативы вроде QEMM).
А вот остальное хорошо бы прокомментировать. 1) Стандартная RTL TP ни а каких UMB не знает. 2)32-битный экстендер dos4gw уж к TP никаким боком... Хотя свой, 16-битный, Борланд с BP7 предлагает. Но это уже защищенный режим, естественно.
Анонимщик (2005-01-14 16:45:00) [2]Компилируй под BP7, его можно настроить для использовния верхней памяти, до 2mb, только в конфиг сисе нужно прописать то ли хаймем, то ли иэмэм 386. Еще есть расширители типа dos4gw, позволяет использовать всю память, но этого уже не знаю толком.
PVOzerski (2005-01-14 16:02:00) [3]Кстати, напомню еще, что в силу "неплоскости" ДОСовской модели адресации обратиться с одного указателя к блоку >64K так прямо невозможно.
PVOzerski (2005-01-14 15:55:00) [4]Поищи SWAG'и - там функции работы с UMB есть. Только этих блоков, скорее всего, не хватит. А уж мегабайт не получится точно. Я бы посоветовал XMS задействовать. Можешь поискать готовое в наработках TurboPower - Turbo Professional, Object Professional. Насколько я помню, многое стало OpenSource.