![]() |
|
![]() ![]() ![]() |
|
scuter |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
в BOIS-е, есть своё API которое даёт возможность работать с оборудованием,
скажите а где можно достать полное описание этого API (т.е. прерывания) особо интересует такие прерывания, int 01h ;Пошаговый режим (отладка) int 08h ;Таймер (IRQ0) int 09h ;Клавиатура (IRQ1) int 11h ;Список оборудования int 16h ;Клавиатурный ввод/вывод int 1Ah ;Системное время int 41h ;Параметры жёсткого диска 0 int 46h ;Параметры жёсткого диска 1 int 44h ;Nowell Netware API int 4Ah ;Будильник пользователя Это сообщение отредактировал(а) scuter - 15.11.2011, 12:05 |
|||
|
||||
500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 1 Всего: 14 |
-------------------- |
|||
|
||||
iff |
|
|||
![]() Администратор ![]() ![]() Профиль Группа: Участник Сообщений: 949 Регистрация: 23.3.2007 Репутация: 4 Всего: 16 |
Кстате, некоторые прерывания работают только на определённыз компьютерах. Например, int 4Ah.
-------------------- DOS... Синей пеленой экран заполнил чистый DOS Мышь... Стала вдруг квадратной, потеряла форму мышь... Я разбил окно, девяностопятое мастдайное окно, И поставил DOS, и тогда увидел: Это счастье, — вот оно. |
|||
|
||||
scuter |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
500mhz, спасибо,
только я не совсем разобрался, как в прерывании int 01h назначить функцию которая будет обрабатывать команды, и ещё в добавок не как не пойму как использовать регистры встроеного дебагера DR0, DR2, DR3, DR4 Добавлено через 12 минут и 31 секунду
ага с этим тоже проблемы, у меня есть возможность использовать BIOS (i815EP, EasyNote TJ75, VBox), и ещё в не скомпиленом виде (5520, 5530, gxi, i430tx, i810, sis5597, via580) и как тут API подбешёшь. если коротко выражаясь, мне нужно нормально научится работать с: дебагером, монитором, клавиатурой и мышью |
|||
|
||||
iff |
|
||||
![]() Администратор ![]() ![]() Профиль Группа: Участник Сообщений: 949 Регистрация: 23.3.2007 Репутация: 4 Всего: 16 |
Если установлен флаг TF, то после каждой инструкции вызывается это прерывание (ещё смотрите int 03h - оно тоже вызывается, но при этом ещё и при команде остановки (машинный код этой команды остановки - 0CCh)).
что за встроенный дебагер? куда он встроен? -------------------- DOS... Синей пеленой экран заполнил чистый DOS Мышь... Стала вдруг квадратной, потеряла форму мышь... Я разбил окно, девяностопятое мастдайное окно, И поставил DOS, и тогда увидел: Это счастье, — вот оно. |
||||
|
|||||
500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 1 Всего: 14 |
че там не понятного с INT 0х1 и INT 0x3 ?
если флаг TF стоит то после каждой команды вызывается int 0x1, в стек заноситься AF и IP, TF сбрасываеться. INT 0x3 это breakpoint (точка останова) когда проц встречает 0xcc вызывается INT 0x3 в стеке опять же AF IP, TF сброшен , прерывания запрещены. а DR0-DR7 из другой оперы -------------------- |
|||
|
||||
scuter |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
и всё таки не понятно как запускать эту отладку ставить флаг TF или INT 0х1, INT 0x3 и если произошёл шаг отладки, как обработать результат выполнения комманды т.е. куда втыкать эту функцию или надо создавать прерывание(своё собственное) куда это дело втыкать
|
|||
|
||||
iff |
|
||||||
![]() Администратор ![]() ![]() Профиль Группа: Участник Сообщений: 949 Регистрация: 23.3.2007 Репутация: 4 Всего: 16 |
Здесь есть неточности (выделили жирным). Итак: прерывание int 01h вызывается после каждой инструкции (за исключением инструкции int), если установлен флаг TF. Прерывание int 03 вызывается когда процессор видит инструкцию int 03 или 0CCh. Пример:
Можно проследить как выполняются инструкции
в получившемся дебаггере, и услышать звук ("пик") при исполнении команды 0CCh. -------------------- DOS... Синей пеленой экран заполнил чистый DOS Мышь... Стала вдруг квадратной, потеряла форму мышь... Я разбил окно, девяностопятое мастдайное окно, И поставил DOS, и тогда увидел: Это счастье, — вот оно. |
||||||
|
|||||||
500mhz |
|
|||
![]() шайтан ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1017 Регистрация: 5.5.2008 Где: Киев / Italy Репутация: 1 Всего: 14 |
iff и не лень тебе? ))))
-------------------- |
|||
|
||||
scuter |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
iff, не получается переделать код под FASM
там процедуры он не переваривает
|
|||
|
||||
scuter |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
переделал код под FASM
но он не работает экран просто чёрный
|
|||
|
||||
iff |
|
|||
![]() Администратор ![]() ![]() Профиль Группа: Участник Сообщений: 949 Регистрация: 23.3.2007 Репутация: 4 Всего: 16 |
ЗАЧЕМ??? имя файла после компиляции. com или exe? Добавлено через 1 минуту и 27 секунд Нам нужен адрес, а не значение по этому адресу! -------------------- DOS... Синей пеленой экран заполнил чистый DOS Мышь... Стала вдруг квадратной, потеряла форму мышь... Я разбил окно, девяностопятое мастдайное окно, И поставил DOS, и тогда увидел: Это счастье, — вот оно. |
|||
|
||||
scuter |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 80 Регистрация: 13.6.2008 Репутация: 1 Всего: 1 |
имя файла com подправил код всё равно не работает. всё равно не хочет работать
Добавлено через 4 минуты и 14 секунд команда XLAT не работает в FASM |
|||
|
||||
iff |
|
||||
![]() Администратор ![]() ![]() Профиль Группа: Участник Сообщений: 949 Регистрация: 23.3.2007 Репутация: 4 Всего: 16 |
???!!!
в качестве операнда нужно bx Если даже представить, что не работает - то используйте вставку машинного кода:
Изучайте fasm и переделывайте. -------------------- DOS... Синей пеленой экран заполнил чистый DOS Мышь... Стала вдруг квадратной, потеряла форму мышь... Я разбил окно, девяностопятое мастдайное окно, И поставил DOS, и тогда увидел: Это счастье, — вот оно. |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "Asm для начинающих" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Asm для начинающих | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |