|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
06.12.2010, 21:34 | #1 |
Регистрация: 06.12.2010
Сообщений: 8
|
Вывод содержимого BIOS (в символьном и числовом виде)
Подскажите, пожалуйста, какими прерываниями можно "достать" содержимое BIOS для вывода на экран.
С резидентом разобрался, а вот с тем, что выводить и как добраться - не нашел. Нужно по заданию написать резидент, который по нажатию клавиш будет выводить на экран "содержимое BIOS в числовом и символьном виде". Сначала думал, что речь идет о биосовском прерывании 11h: устройства и проч. Но имеется ввиду участок памяти, содержащий BIOS. В числовом: байты, а в символьном - вывести символы из таблицы ASCII, соответствующие этим байтам. Заранее очень благодарен за подсказки. |
07.12.2010, 01:50 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
а зачем вам прерывания то?
БИОС же это часть памяти, просто обратитесь по нужному адресу и читайте(если что то адрес я не помню и под виндой такое не сработает) Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
07.12.2010, 04:04 | #3 | |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
Цитата:
|
|
07.12.2010, 11:05 | #4 |
Регистрация: 06.12.2010
Сообщений: 8
|
Mikl___, да-да, теперь сообразил.
Пепел Феникса, мне как раз под ДОС и нужно написать .com программу. А где можно найти и посмотреть диапазон адресов, где все это добро расположено? |
07.12.2010, 11:20 | #5 |
Регистрация: 06.12.2010
Сообщений: 8
|
Нашел информацию в интернете, что, мол, от F0000h до FFFFFh. Справедливо? Как раз разность будет 65 535. Это не поместится на один экран в DOSе.
Нам, чтобы вывести символы - надо считывать по два байта, получается? |
07.12.2010, 11:36 | #6 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
dmitradze
Мало того, в BIOS информация еще и запакована. F0000h до FFFFFh это пока Винду не загрузили, а потом она использует эти адреса под свои нужды и в режиме эмуляции там уже ничего не найдешь |
07.12.2010, 11:51 | #7 |
Регистрация: 06.12.2010
Сообщений: 8
|
Это, получается, отдельно надо ДОС ставить?
Дебаггер в досбоксе выдает что-то, там даже похоже на дату БИОСА: 03/12/09 и ерунду по этим адресам. Просто по заданию программа должна загрузиться в память и выводить содержимое по нажатию. Значит, по идее, все это уже после загрузки системы, надо доставать как-то. Хотя не, выдает даже что-то похожее на SET BLASTER, версию ДОС-а и т.п. Только там ну очень много сведений получится среди "мусора" Последний раз редактировалось dmitradze; 07.12.2010 в 11:56. |
07.12.2010, 12:04 | #8 |
Регистрация: 06.12.2010
Сообщений: 8
|
Все, нашел!
В дебаггере если написать в f0000:0000 будет выдаваться информация БИОС-а. Версия, память, диски и все это добро. Надеюсь, это то, что надо. Логично предположить, что на разных компьютерах по-разному. У меня все эти сведения находятся с f000:06C0 до f000:0ec0 |
07.12.2010, 12:24 | #9 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
dmitradze
строка "SET BLASTER" вообще-то в AUTOEXEC.BAT, версию ДОС можно посмотреть в COMMAND.COM, а BIOS загружается до всяких COMMAND.COM и AUTOEXEC.BAT из ПЗУ на материнской плате, информация о дисках хранится в CMOS'e и тоже как-то к BIOS'y не относится. Какая-то у тебя каша в представлении о том, что находится в BIOS. Ищи в Интернете статьи Пинчакко об устройстве BIOS, да и книги этого автора есть в магазинах Последний раз редактировалось Mikl___; 07.12.2010 в 12:27. |
08.12.2010, 13:13 | #10 |
Регистрация: 06.12.2010
Сообщений: 8
|
Добрый день.
Скажите еще, пожалуйста, как можно вывести на экран 16-ричное число, которое находится по конкретному адресу (например, f000:06c0), а затем перевести его в ASCII-код? Как правильно по этому адресу обратиться? |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вывод содержимого BIOS (в символьном и числовом виде) | dmitradze | Помощь студентам | 0 | 06.12.2010 15:54 |
вывод содержимого | street-walker | Помощь студентам | 1 | 04.03.2010 21:03 |
Числа в символьном виде | SL1CK | Общие вопросы C/C++ | 8 | 20.10.2009 17:30 |
Дано четырехзначное число, заданное в символьном виде, например, '1954'. Напечатать его текстом, например | gred | Помощь студентам | 13 | 31.03.2008 22:24 |