MisHel64 А нет разницы. Индикация снимается по тому что прерывание разрешается. Также очищается бит выходного буфера. Ну возьми посмотри за что отвечает 7 бит 61h порта. У интела он вообще RO (только на чтение). Так что чушь тут порете вы.
MisHel64, получилось так, что я просто вставил разрешение других прерываний в более приоритетное прерывание - от таймера, и теперь всё работает. Нужно было добавить всего 3 строчки кода.... И кстати, если ли где нибудь список портов, для того чтобы иметь представление какой используется для управления устройствами?
IRQ RESET не использую совершенно. Добавил в обработчик прерывания таймера Код (Text): mov al, 20h out 20h, al sti
насколько я помню порт 61 использовался в XT машинах и входил именно в логику клавиатуры. теперь он не входит и не обязателен. но не кто не мешает его использовать. так как все порты до 100h остануться совместимыми со старым оборудованием(написано помоему в legacy pnp) но с другой стороны таких машин не осталось, а 32 битных не было. а если ps2 эмулируется usb контроллером, то порт 61 вообще не как не относится к логике.
На оригинальную ПЦ и ПЦ/ХТ лучше не смотреть: между ними и ПЦ/АТ (и совместимыми с ним современными ПК) довольно много различий в аппаратуре. В частности, они касаются подключения клавиатуры и соседних портов: в ПЦ и ПЦ/ХТ адреса 60-63 занимал контроллер 8255 -- трёхпортовый параллельный интерфейс, ну а в АТ его уже не было, хотя часть функций выполнялась другими средствами.
Я компилировал его для BP, и стало удобно. Да и собственный вьевер не плох. Ну тот же Браун и Джордейн относят их к стандартным PC, и относят к логике 8255 контролера, хотя описывают 8041/8042. А с точки зрения программиста, это был отдельный чип, выполняющий посреднические услуги. То есть на этот чип подавались данные например от генератора тактовой от таймера. Вход и выход второго канала таймера то же были подключены к этому чипу. И спикер то же. Бит ноль, разрешал передачу тактовой на вход таймера, а бит 1 разрешал передачу с выхода таймера на спикер. Та же картина с IRQ1. Запись 1/0 в 7й бит генерировала сигнал подтверждения обработки прерывания (а точнее подтверждение чтения данных) для клавиатурного контролера.