|
The Base Layer - ASM interrupts

INCLUDE "DT_INTS-14.bas"
|
The Instant Interrupt System consists of several "Layers".
The Bottom Layer is "DT_INTS-14.bas". This file
contains everything required to use Interrupts at the ASM level.
It handles all of the "Context Saving/Restoring",
detects which interrupt has been triggered, and calls the appropriate
"User Routine".
The next layer up is created from the INT_LIST macro you define in the
program. It defines the Interrupt sources to use and the
corresponding subroutines that will be called. They can be
either simple subroutines, or complete "Modules" in a
separate Include file, like the Elapse Timer. Up to 14 separate
INT_Handler's can be in the LIST.
And, the Top Layer is the normal PBP program that runs in the
foreground.
If Basic Laguage interrupts are not being used, then DT_INTS-14.bas is
the only file you need to include. |
INCLUDE "DT_INTS-14.bas"
INCLUDE "ReEnterPBP.bas"
INCLUDE "Elapsed_INT.bas"
; Elapsed Timer
|
By using this type of Layering scheme. It allows us
more flexability, depending on the type of interrupt we want to use.
If we want to add Basic Language Handlers, all we need to do
is Include "ReEnterPBP.bas", and it will insert
another Layer in-between the Base and the Handlers.
With this layer included, you can have any combination of ASM and
PBP interrupts in the same program |
|