Unit 'exec' Package
[Overview][Constants][Types][Procedures and functions][Variables][Index] [#os4units]

ObtainQuickVector

Obtain and install a Quick Interrupt vector

Declaration

Source position: exec.pas line 1869

function ObtainQuickVector(

  InterruptCode: Pointer

):LongWord;

Arguments

InterruptCode

  

A pointer to your interrupt code. This code is not an EXEC interrupt but is dirrectly connected to the hardware interrupt.

Function result

If it returns 0, no quick interrupt was allocatable. The device should at this point switch to using the shared interrupt server method.

Description

This function will install the code pointer into the quick interrupt vector it allocates and returns to you the interrupt vector that your Quick Interrupt system needs to use.

This function may also return 0 if no vectors are available. Your hardware should be able to then fall back to using the shared interrupt server chain should this happen.

The interrupt code is a direct connect to the physical interrupt. This means that it is the responsibility of your code to do all of the context saving/restoring required by interrupt code.

Also, due to the performance of the interrupt controller, you may need to also watch for "false" interrupts. These are interrupts that come in just after a DISABLE. The reason this happens is because the interrupt may have been posted before the DISABLE hardware access is completed.


Documentation generated on: 2021-07-30