![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
emike |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 30.5.2008 Репутация: нет Всего: нет |
Здравствуйте,
возникла необходимость перевести драйвера для платы захвата видеокадра, написанные на Turbo Pascal, в Delphi. Часть исходного кода написана на assembler'e. Delphi не поддерживает пару Segment/Offset (Error: Segment/Offset pairs doesn't supported in Borland 32-bit Pascal), а также не поддерживает паскалевские функции Seg/Ofs. Можно ли как-то решить/обойти эту проблему? Вот часть кода:
Заранее спасибо. |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Прочитайте про модель памяти в винде. В защищённом режиме указатель это просто двойное слово, потому с ним можно работать безо всяких разделений и соответственно объединять ничего не нада. Сегмент теперь 4Гб
![]() -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
emike |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 30.5.2008 Репутация: нет Всего: нет |
Хорошо, с этим я разобрался.
Возникла еще одна проблема определения видеорежима.
Delphi ругается на функцию int 10h. Не подскажешь что здесь можно сделать? |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Опять ограничения защищённого режима. Прерывания, насколько я помню доступны только в драйвере.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
Virtuals |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 476 Регистрация: 27.11.2006 Репутация: 3 Всего: 11 |
emikeчую следующие вопросы
. а почему енто я не могу прочитать память видеокарты? ![]() способы чтения данных из видеопамяти в реальном режиме (16бит нормал моде) абсолютно неприменимы в защищенном 32битном режиме ![]() ЗЫ забудьте этот пример как страшный сон, он применим только для реального режима (для НТ платформы это от включения компа до середины загрузки ntldr) ![]() |
|||
|
||||
emike |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 30.5.2008 Репутация: нет Всего: нет |
Понятно, спасибо
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |