|Re: [hatari-devel] Microwire register value on Falcon|
[ Thread Index |
| More lists.tuxfamily.org/hatari-devel Archives
On 04/02/2012 00:19, Eero Tamminen wrote:
How many interrupts there are typically in use at any given moment?
At least hbl, vbl, timer c and often timer b in games / demos ; also
ikbd, but you won't type fast enough to notice it :)
Are there some interrupts that happen relatively rarely? Maybe
it would help if the interrupts would be ordered according to
to how frequently they typically occur, or which ones go together?
The way the interrupt queue works, there's already one active interrupt,
which is the one that will happen first. Until this interrupt happens,
the loop doesn't depend on the array's size. Once this interrupt
happens, a new interrupt is chosen from the array.
Here the order doesn't matter, because any interrupt in the array can be
a candidate, you have to scan the whole array anyway. So, the choice
only depends on the size of the array. The more type of interrupts we
add, the slower it will be when we need to choose a new active interrupt.
So basically, not much we can do, apart from keeping the array as small
as possible. For frequent interrupt, it's important to have a dedicated
handler, but for less common interrupt, we can have a single handler
that will "multiplex" to the correct code (eg : send microwire to dma or