[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Lisp interrupt handlers?

Hi all,

I'm trying to write something that does interrupt-level callbacks into
Lisp (to handle IO completion routines) via defpascal. Despite being
careful about consing, locking memory, and so on, I am getting
precisely what I deserve, which is that the program usually works
but occasionally does something impressively random. So, I assume
functions defined with defpascal count on being called only when Lisp
is the active application (did I mention that this needs to run under
Multifinder?), and don't set up the lisp environment.

Anybody managed to do this? Or, could anyone describe _exactly_ what
defpascal does?  Anything need to be set up other than A5, the value
stack pointer, NILREG, and TREG?? Whee.

Thanks much for any help....