![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Кто знает как промнамно изменять параметры Bios ? (или, если можно перепрошить)
skovorodka © (2002-02-23 18:36:00)Кто знает как промнамно изменять параметры Bios ? (или, если можно перепрошить)
ATLANTIDO (2002-02-25 14:08:00) [1]А как через биос дисковод отключить ?
Sasha9 (2002-02-24 22:49:00) [2]2Pat
с ребутом врятли, а с bios попробуй:
asm
mov al, 5eh
out 70h, al
mov al, 0
out 71h, al
end;
Pat (2002-02-24 19:26:00) [3]А можно ли это использовать в Дельфи, т.е. под Виндой это пойдет?
Sasha9 (2002-02-24 13:23:00) [4]2[NIKEL] ©
10ks!!!!!!!!!
[NIKEL] (2002-02-24 06:05:00) [5]2 Sasha9
Объясняю
ну для начала скажу что будут com файлы(model tiny)
>> насчет ребута
.code - говориться что начинаеться сам код проги
org 100h - говориться что код программы необходимо отсчитывать с 100h. По этому адресу в память всегда загружаются программы типа *.com
start: - точка входа программы
jmp dword ptr reboot - это команда говорит процу: прыгай(перейди) по адресу, который находиться в переменной reboot
.data - говорит что в этом месте начинаються данные
reboot dw 0ffff0000h - описываем переменную reboot которая занимает два байта(dw)
когда проц прыгает по этому адресу комп моментально перезагружаеться
>> насчет очистки CMOS
тебе надо знать строчки с mov... out...
mov al, 5eh - просто заносим в al число 5eh ,al - это один из регистров проца,не говори что ты этого не знаешь :)
out 70h, al - это команда выводит в "порт" числа... порт - это как бы канал связи проца с внешними устройствами. Каждое устройство(винт,видеокарта,аудоикарта и т.д.) имеет свой порт, через который проц может управлять им
out 70h, al - означает что надо послать число, которое лежит в al в порт номер 70h.
Для справки, порты 70h и 71h соответствуют CMOS`у
Чтобы программировать CMOS, надо сначала вывести в порт 70h то, что в кмосе ты хочешь изменить(дата,время,настройка винта, пароль и т.д.), а затем вывести в порт 71h новое значение(дата,время,настройка винта, пароль и т.д.)
Здесь мы выводим в порт 70h число 5eh(что означает настройка пароля - включить\выключить), а затем в порт 71h ноль, что значит пароль выключен(1 для включения)
ret - нужна чтобы вернуться в DOS
после перезагрузки ты увидишь что то типа CMOS checksum error - Defaults loaded :) типа настройки по умолчанию
Надеюсь всё понятно :)
Sasha9 (2002-02-23 19:02:00) [6]объясни, плиз
[NIKEL] (2002-02-23 18:53:00) [7]я думаю без знания asm туда лучше не лезть
вот так я когда то очищал CMOS :)
model tiny
.code
org 100h
start:
mov al, 5eh
out 70h, al
mov al, 0
out 71h, al
ret
end start
или ребут вот так мона написать (холодный)
model tiny
.code
org 100h
start:
jmp dword ptr reboot
.data
reboot dw 0ffff0000h
end start
если хочешь могу объяснить как это работает