"Архитектура ввода-вывода персональных ЭВМ IBM PC" - читать интересную книгу автора (Лукач Ю.С.)установлен, то биты 0-3 содержат младшую тетраду колодки
DIP-переключателей SW2, если сброшен, то старшую: 7 6 5 4 3 2 1 0 +——+——+——+——+——+——+——+——+ | | | | | | Биты: ++—++—++—++—+——+——+——+——+ ————— | | | | +————> 0-3: DIP-ключи SW2 (см. ниже) | | | +————————————> 4: ввод данных с касетного магнитофона | | +———————————————> 5: выход OUT 2-го канала таймера | +——————————————————> 6: 1=ошибка в платах расширения +—————————————————————> 7: 1=ошибка паритета ОЗУ Колодка SW2 содержит следующие ключи: 7 6 5 4 3 2 1 0 +——+——+——+——+——+——+——+——+ | | | Биты: +——+——+——+——+——+——+——+——+ ————— | +—————> 0-3: общий размер ОЗУ +—————————————————> 4-7: всегда равны нулю 6. Клавиатура 6.1. Клавиатура IBM PC/XT Связь с клавиатурой осуществляется через порты ППИ 60h и 61h (см. 5.2). При нажатии клавиши происходит аппаратное прерывание IRQ1, связанное с вектором Int 9. Если Вы хотите обрабатывать это прерывание сами, то программа обработки прерывания должна иметь следующий вид: Int_09h: push ax push di push es in al,60h ;скан. код клавиши из РА les di,buffer ;адрес буфера stosb ;сохранить код в буфере pop es pop di in al,61h ;ввод порта РВ mov ah,al or al,80h ;установить бит "подтверждения ввода" out 61h,al xchg ah,al ;вывести старое значение РВ out 61h,al mov al,20h ;послать сигнал EOI |
|
|