|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
15.11.2008, 01:46 | #1 |
Пользователь
Регистрация: 09.06.2008
Сообщений: 60
|
Контроллер прерываний
Ведущий ПКП имеет два программно доступных регистра с адресами 20h и 21h. Ведомый ПКП имеет два программно доступных регистра с адресами А0h и А1h. Назначение обоих регистров в ведущем и ведомом ПКП аналогично.
Создал 2 программы чтения регистров irr и isr ведомого и ведущего ПКП.Программы работают,выводятся значения регистров.Соединил эти программы в одну,программа "виснет",не возвращается в DOS.Помогите,пож-та;в чем ошибка? Листинги с коментариями: Ведущий Код:
ведомый ПКП,тоже самое, только порт уже 160(0Ah) Код:
Код:
Последний раз редактировалось smileman; 15.11.2008 в 17:05. |
15.11.2008, 20:54 | #2 |
Пользователь
Регистрация: 09.06.2008
Сообщений: 60
|
Все ошибку нашел,
теперь вопрос о регистре масок прерываний. здесь я вроде бы замаскировал IRQ14-контроллер накопителя на гибких дисках. Вот сама программа: Код:
Последний раз редактировалось smileman; 15.11.2008 в 22:04. |
16.11.2008, 00:07 | #3 |
Форумчанин
Регистрация: 12.09.2008
Сообщений: 239
|
IRQ14 это жесткий диск (ведомый контроллер) если не ошибаюсь, а гибкий IRQ6 (ведущий)....
Я так понимаю вам нужно объяснение самого процесса обработчика прерываний?
Надо бы избавиться от привычки ставить многоточие.....
Последний раз редактировалось Min; 16.11.2008 в 00:13. |
16.11.2008, 00:59 | #4 |
Пользователь
Регистрация: 09.06.2008
Сообщений: 60
|
|
16.11.2008, 04:21 | #5 |
Форумчанин
Регистрация: 12.09.2008
Сообщений: 239
|
если из-под винды, то ничего....... просто в текущем сеансе MS-DOS будет заблокирован винт (а возможно винда и вовсе не позволит этого делать)..... только вышеприведенный код, если не ошибаюсь блокирует не IRQ14, а IRQ9..... за IRQ14 отвечает 6 бит (если считать с 0) регистра.
Надо бы избавиться от привычки ставить многоточие.....
Последний раз редактировалось Min; 16.11.2008 в 04:32. |
16.11.2008, 10:15 | #6 |
Пользователь
Регистрация: 09.06.2008
Сообщений: 60
|
да-да,слегка запутался)
запускал из-под dos,винда блокирует(или попросту защищенный режим). Вот irq14: Код:
Последний раз редактировалось smileman; 16.11.2008 в 10:32. |
16.11.2008, 14:23 | #7 |
Форумчанин
Регистрация: 12.09.2008
Сообщений: 239
|
опмоему вы окончательно запутались..... ваш код блокирует не дисковод, а жесткий диск.... причем тут диск A не понимаю
Надо бы избавиться от привычки ставить многоточие.....
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Контроллер | Simply-Art | Компьютерное железо | 0 | 24.05.2008 05:07 |
Список функций прерываний | Arhe | Помощь студентам | 5 | 22.02.2008 01:05 |
Для кадого ли устройства есть свой контроллер? | Elm0 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 6 | 21.06.2007 20:42 |