Estoy escribiendo un emulador y parece que no puedo encontrar información sobre esto. Lo que sé es que los dispositivos activan un pulso en el cable IRQ. Pero las explicaciones en línea no incluyen cómo la CPU se ocupa de eso. ¿Una interrupción literalmente hace que la CPU deje todo y se encargue de eso? ¿O la CPU verifica el estado de la IRQ durante cada ciclo? Además, ¿qué pasa con otras formas de manejar las interrupciones? Por ejemplo, Nintendo Game Boy aparentemente usa una ubicación reservada en la memoria como un indicador de interrupción, que le dice a la CPU dónde llamar a una subrutina para manejar esa interrupción (mi mejor conjetura es que DMA escribe en este indicador). ¿Es esto común o estándar en los sistemas más antiguos?
fuente