Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как получить доступ к BIOS-у из WinNT (а еще и из Win9X)? [D5, Win95/98, Win2k, WinXP]


TankMan ©   (2004-12-17 12:13:00) 

Вот опять спрашиваю, может кто знает , мне нужно записывать параметры в BIOS (да и считывать не помешало бы ;) )из WinNT Win9x... вот...(может кто примерчиком поделится? или хотябы в ссылку с необходимыми сведениями ткнет носом?) (я просто не верю что я первый задался этим вопросом)


TankMan   (2004-12-22 08:09:00) [1]

Я не пойму... а как порты связаны с адресами памяти где находится bios?
Я так посмотрел
...
try
P:=Pointer($0ffff5);
Move(P^,S[1],8);
exept

Тут берутся данные из памяти а не из портов?
Или всетаки тут принцип того (эт я прочитал в http://pages.zoom.co.uk/andyc/ntdriver.htm) что доступ к памяти так и доступ к портам возможет только из режима ядра (или как там называется?)?


WondeRu   (2004-12-21 10:21:00) [2]

обратись на www.wasm.ru за адресами, а для делфи компонент здесь http://pages.zoom.co.uk/andyc/ntdriver.htm


tesseract   (2004-12-21 09:45:00) [3]

где-то на форумах RSDN.ru где не помню. попробуй поиск и не только по WinIO


TankMan   (2004-12-21 08:19:00) [4]

Млин.. :( ну ничего найти не могу :( чтож такое то :( все что есть все на C++ :(
Может помогет кто?


TankMan   (2004-12-20 11:55:00) [5]

А можно чуть чуть по конкретнее где именно в RSDN, я поискал слово WinIO и нашел 11 ссылок, ноничего там не заметил такого чтобы было связанно с BIOS-ом :(... может плохо смотрел?


tesseract   (2004-12-20 10:30:00) [6]

>> to EGO
это для Win9x под XP по этому адресу обращаться надо через WinIo. На RSDN эта проблема обсуждалась


Ego   (2004-12-20 10:02:00) [7]

Я вот такой пример нашел:

try
P:=Pointer($0ffff5);
Move(P^,S[1],8);
exept
S:='BIOS не доступен для чтения';

это для версии БИОС, а для видеокарты

P:=Pointer($0C0000+60);
Move(P^,S[1],255);
if Pos('/',S) > 2 then
S:= copy(S,Pos('/',S)-2,8)
else
 begin
  P:=Pointer($0C0000+60+250);
  Move(P^,S[1],255);
  if Pos('/',S) > 2 then
  S:= copy(S,Pos('/',S)-2,8);
  end;
exept
S:='BIOS не доступен для чтения';

Вот где бы узнать остальные адреса BIOS?


TankMan   (2004-12-20 09:48:00) [8]

... да и смущает меня то, что не могу найти нигде "Дельфийского" варианта WinIO :(


TankMan   (2004-12-20 09:44:00) [9]

Ку.
Вот тока вот как всетаки считывать и записывать биос?
... я так и не нашел полного описания на русском :(
Можете немного по подробнее рассказать?


VMcL   (2004-12-19 12:20:00) [10]

>> TankMan ©  (19.12.04 11:39) [2]

http://www.google.com/search?q=winio&sourceid=opera&num=0&ie=utf-8&oe=utf-8

Ку?


TankMan   (2004-12-19 11:39:00) [11]

...не понимаю я тебя? Winio? это что компонент такой?


tesseract   (2004-12-17 16:58:00) [12]

Есть такая вешь как Winio - она позволяет напрямую писать в порты и области памяти. Может помочь :-)


Наверх

Титульная страница Поиск, карта сайта Написать письмо