OSDev
http://osdev.su/

IRQ
http://osdev.su/viewtopic.php?f=5&t=660
Страница 1 из 3

Автор:  Stalker [ 03 дек 2012, 23:35 ]
Заголовок сообщения:  IRQ

С буковками я уже розобрался))
Появилась проблема с прерываниями.
Тоесть они не работают
ИДТ, А20, переход в пм в файлике sb.asm
гляньте если не сложно

Вложения:
MYsrc.rar [19.31 КБ]
Скачиваний: 433

Автор:  pavia [ 04 дек 2012, 09:52 ]
Заголовок сообщения:  Re: IRQ

А сам как думаешь почему не работают?
Наверно по тому что код настройки прерываний отсутствует.

Автор:  Stalker [ 04 дек 2012, 18:03 ]
Заголовок сообщения:  Re: IRQ

Нада перенаправить IRQ на другие вектора?
Или в чём заключается настройка прерываний

Автор:  pavia [ 04 дек 2012, 18:14 ]
Заголовок сообщения:  Re: IRQ

Надо настроить контролёр прерываний хотя бы PIC.
Но это не всё прерывания надо настроить на каждой железке, которая должна их генерировать.

Да вектора надо перенести. Так как они пересекаются с исключениями.

Автор:  Stalker [ 04 дек 2012, 18:18 ]
Заголовок сообщения:  Re: IRQ

http://www.wasm.ru/article.php?article=ia32int
похоже?

Автор:  Stalker [ 04 дек 2012, 19:54 ]
Заголовок сообщения:  Re: IRQ

вектора перенёс, вроди))
А в чём заключается настройка контролёра прерываний

Автор:  Stalker [ 05 дек 2012, 18:16 ]
Заголовок сообщения:  Re: IRQ

или ткни носом где етот код здесь
http://www.wasm.ru/article.php?article=ia32int

Автор:  SII [ 05 дек 2012, 18:34 ]
Заголовок сообщения:  Re: IRQ

Контроллер прерываний к процессору не относится, он снаружи находится (во всяком случае, логически). PIC описан на осдевовской вике.

Автор:  Stalker [ 01 янв 2013, 23:10 ]
Заголовок сообщения:  Re: IRQ

Лазил в инете читал разные статьи, и вдруг нашёл ядро с поддержкой прерываний. Посмотрел, собрал, оно работает.
Только вот работает только прерывания таймера, вектора там перенесены на 0х20-0х27 для ведущего контролёра.
Решил попобовать будет ли работать клавиатура, а она не работает.
Я думаю что если таймер 0х20 то клавиатура должна быть на 0х21?

Вложения:
exp.000005.rar [35.35 КБ]
Скачиваний: 461

Автор:  iz56 [ 02 янв 2013, 01:02 ]
Заголовок сообщения:  Re: IRQ

Файл start.asm:
Код:
kernel_loop:
    hlt
    mov esi, kernel_loop_message
    call strPrint
    call updateCursor   
    jmp kernel_loop


а как проверить клавиатуру, я не нашел ,может плохо искал, где код для проверки.
Где обработчик прерывания от неё?

Почему не фасм, на нем полно примеров.

Страница 1 из 3 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/