![]() |
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]() ![]() ![]() |
|
Jek1975 |
|
||||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 26.5.2008 Репутация: нет Всего: нет |
Хочу написать очень простую программу на ассемблере (почти полный код см.ниже). Смысл программы в том, что она читает содержимое порта в котором изменяются только 4 бита (т.е. всего 16 вариантов в AL). Если значение порта изменилось, то текущее время сохраняется в одном из 16 массивов (размер каждого 64 Мб или больше). Так задумано для экономии времени и упрощения структуры массивов. Обработка результатов осуществляется после окончания работы этой программы.
Мне проще писать в Delphi, но скорее всего придётся писать под DOS, так как там нет проблем с монопольным исполнением кода, но в DOSе я не умею работать с большими объемами памяти без переключения страниц. Может быть подскажете, если возможно, как организовать выполение этого кода под Win9x или WinXP, так чтобы полностью остановить ОС, включая любые прерывания, а потом возобновить её работу. (остановить нужно примерно на 60 секунд). Или если под Win это сделать нельзя, то есть ли среда программирования для DOS, в которой можно создавать большие массивы 32 битных чисел, и обращаться к ним линейно (без переключения страниц)? (язык почти всё равно какой, главное чтобы ASM вставлять можно было)
P.S. Если возможно монопольное выполнение этой программы под Windows, то на Delphi код функции SaveTimeStamp реализуется очень просто:
|
||||
|
|||||
bartram |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1606 Регистрация: 22.2.2004 Где: Russia, Samara Репутация: 3 Всего: 29 |
Зачем так долго? А не проще написать драйвер на ассемблере под Windows?, и потом собирать данные от драйвера в приложении. Тогда и с DOS заворачиваться не надо будет. |
|||
|
||||
Jek1975 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 26.5.2008 Репутация: нет Всего: нет |
Хочу попробовать записать осцилограмму I2C обмена данными во время прошивки монитора. Процесс длится около 40 секунд А какие у него преимущества перед просто программой? Его выполнение невозможно прервать? |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: WinAPI и системное программирование" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |