Change IVT of 8086 / 88
-
20-03-2021 - |
Вопрос
as you know when interrupt happened ,8086 get code type of interrupt and multiple it in 4,then Check it in IVT.
know I wanna change IVT in 8086,I'm using emu8086.
What should I do for it?
Решение
You probably already know this: IVT is in address: 0000:0000 As you say, offset of each vector is calculated by multilying interrupt number by 4. If you want to change a value of single vector, then:
- disable interrupts (cli)
- Store old value of the vector if needed.
- write offset and segment of your interrupt handler to the vector.
- enable interrupts (sti)
Не связан с StackOverflow