User manual

Appendix D Register-Level Programming
PC-DIO-96/PnP User Manual D-34
©
National Instruments Corporation
; restore saved registers
ri_exit:
pop es
pop ds
pop dx
pop cx
pop bx
pop ax
sti
ret
_remove_isr endp
; isr_handler
;
_isr_handler proc far
cli
push ax
push ds
; service interrupt
; Your code here...
; if this was not your interrupt, jump to 'ih_0'
; if this was your interrupt, service it as appropriate;
; the pointer for the data structure 'isr_block' is stored
; at _DATA:isrb_addr; to access the structure, use the
; following steps:
;
; mov ax,seg _DATA
; mov ds,ax
; lds si,isrb_addr
;
; you need not use ds:si, but be sure to save any
; registers you use...