ASM & NT
От: Diman  
Дата: 12.12.01 06:26
Оценка:
Hello world

Как в NT написать что -то похожее на
__asm
{
mov dx,addr
mov al,xxx
out dx,al
}
Re: ASM & NT
От: Alex Fedotov США  
Дата: 12.12.01 06:45
Оценка:
Здравствуйте Diman, Вы писали:

D>Как в NT написать что -то похожее на

D>__asm
D>{
D> mov dx,addr
D> mov al,xxx
D> out dx,al
D>}

Никак: http://rsdn.ru/?forum/?gid=9&mid=13813&tid=13811
Автор: Alex Fedotov
Дата: 23.11.01
-- Alex Fedotov
Re[2]: ASM & NT
От: Diman  
Дата: 12.12.01 07:15
Оценка:
Здравствуйте Alex Fedotov, Вы писали:

AF>Здравствуйте Diman, Вы писали:


D>>Как в NT написать что -то похожее на

D>>__asm
D>>{
D>> mov dx,addr
D>> mov al,xxx
D>> out dx,al
D>>}

AF>Никак: http://rsdn.ru/?forum/?gid=9&mid=13813&tid=13811
Автор: Alex Fedotov
Дата: 23.11.01


А если мне надо получить доступ к ROM BIOS или напрямую к COM порту? Как мне быть?
Re[3]: ASM & NT
От: Alex Fedotov США  
Дата: 12.12.01 07:29
Оценка:
Здравствуйте Diman, Вы писали:

D>>>__asm

D>>>{
D>>> mov dx,addr
D>>> mov al,xxx
D>>> out dx,al
D>>>}

AF>>Никак: http://rsdn.ru/?forum/?gid=9&mid=13813&tid=13811
Автор: Alex Fedotov
Дата: 23.11.01


D>А если мне надо получить доступ к ROM BIOS или напрямую к COM порту? Как мне быть?


Что ты ожидаешь от ROM BIOS в защищенном режиме?

Чтобы работать напрямую с COM портом, равно как и любым другим оборудованием, надо писать драйвер, или использовать уже существующий.
-- Alex Fedotov
Re[4]: ASM & NT
От: Diman  
Дата: 12.12.01 10:59
Оценка:
Ну хорошо. А как же мнетогда получить доступ к данным ROM BIOS?
Re[5]: ASM & NT
От: VladD2 Российская Империя www.nemerle.org
Дата: 12.12.01 15:07
Оценка:
Здравствуйте Diman, Вы писали:

D>Ну хорошо. А как же мнетогда получить доступ к данным ROM BIOS?


Ты на вопрос ответь! "Что ты ожидаешь от ROM BIOS в защищенном режиме?"

Я его даже упрощу: Зачем тебе ROM BIOS? Какие данные тебе нужны?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[6]: ASM & NT
От: Аноним  
Дата: 12.12.01 16:30
Оценка:
Мне надо прочитать (записать) данные из области CMOS памяти по адресу 11H через 71 порт.
Re[7]: ASM & NT
От: VladD2 Российская Империя www.nemerle.org
Дата: 12.12.01 21:24
Оценка:
Здравствуйте Аноним, Вы писали:

А>Мне надо прочитать (записать) данные из области CMOS памяти по адресу 11H через 71 порт.


Это только из драйвера. А что так такого лежит интересного?
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: ASM & NT
От: Diman  
Дата: 13.12.01 05:26
Оценка:
Сам точно не знаю , но как я понял там лежит битовая маска при сбросе которой BIOS сбрасывает все свои установки по умолчанию в том числе и пароли.
Re[9]: ASM & NT
От: Vladik Россия  
Дата: 13.12.01 15:14
Оценка:
Здравствуйте Diman, Вы писали:

D>Сам точно не знаю , но как я понял там лежит битовая маска при сбросе которой BIOS сбрасывает все свои установки по умолчанию в том числе и пароли.


Тогда смело забей Такая фича была в старых матерях (сам так хакал институтские компы). Так вот, на новых матерях не работает.
Как все запущенно...
Re[10]: ASM & NT
От: VladD2 Российская Империя www.nemerle.org
Дата: 13.12.01 22:36
Оценка:
Здравствуйте Vladik, Вы писали:

V>Здравствуйте Diman, Вы писали:


D>>Сам точно не знаю , но как я понял там лежит битовая маска при сбросе которой BIOS сбрасывает все свои установки по умолчанию в том числе и пароли.


V>Тогда смело забей Такая фича была в старых матерях (сам так хакал институтские компы). Так вот, на новых матерях не работает.


Да уж... поще открыть корпус и переключить джампер или вовсе батарейку на десять секунд вынуть.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: ASM & NT
От: Аноним  
Дата: 26.12.05 13:46
Оценка:
VD>Да уж... поще открыть корпус и переключить джампер или вовсе батарейку на десять секунд вынуть.

а если системный блок опечатан? сорвешь пломбы — по голове нададут и скажут еще что вытащил вторую планку оттуда или проц поменял...
Re[8]: ASM & NT
От: Вумудщзук Беларусь  
Дата: 26.12.05 14:24
Оценка:
>>Мне надо прочитать (записать) данные из области CMOS памяти по адресу 11H через 71 порт.
>Это только из драйвера.
не то, чтобы "только" из драйвера... можно и из юзер-мода, если разрешить приложению доступ к портам, но для этого драйвер всё-таки нужен, хотя и простой... за подробностями сюда: ПРЯМОЙ INPUT/OUTPUT В СРЕДЕ WINNT или в поиск по слову totalio
Homo sum et nihil humani a me alienum puto...
Re[9]: ASM & NT
От: Andrew S Россия http://alchemy-lab.com
Дата: 26.12.05 15:24
Оценка:
>>>Мне надо прочитать (записать) данные из области CMOS памяти по адресу 11H через 71 порт.
>>Это только из драйвера.
В>не то, чтобы "только" из драйвера... можно и из юзер-мода, если разрешить приложению доступ к портам, но для этого драйвер всё-таки нужен, хотя и простой... за подробностями сюда: ПРЯМОЙ INPUT/OUTPUT В СРЕДЕ WINNT или в поиск по слову totalio

Нда, свежак тема, нечего сказать. Спасибо анониму. впрочем... Нет, если _очень_ хочется — то и драйвер, в общем то, не нужен.

http://www.wasm.ru/forum/index.php?action=vthread&forum=4&topic=11276&page=1
http://wasm.ru/forum/index.php?action=vthread&forum=4&topic=9130&page=0

Вкратце, варианты такие
1. NtSetInformationProcess(ProcessUserModeIOPM).
2. Организация callgate через \\Device\PhysicalMemory, соответственно — получение возможности работать с ring0 прямо в приложении
3. Не уверено, но был еще вариант с изменением IOPM из обработчика исключений. Может, и ошибаюсь.

В общем, варианты 1 и 2 есть в примерах на wasm.ru, причем вариант 2 позволяет делать прямо таки страшные вещи. Ну и вариант (2) не будет работать на 2к3. А так — удивительное рядом.

PS
для поиска: Direct io, прямой доступ к портам.
http://www.rusyaz.ru/pr — стараемся писАть по-русски
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.