.TITLE RESET .IDENT /RICEX1/ ; ; I = LDINT(J) ; I = 0 OF NO DIRECT INTERRUPT ; = NON ZERO IF DIRECT INTERRUPT SET ; ; CALL RESET(J) RESETS A DIRECT INTERRUPT ; .GLOBL RESET,LDINT,DISET,R5CHEK .PSECT SW.SYS,GBL,OVR,D .BLKW 16. TABL: .BLKW 8. .PSECT RESET:: MOV #1,R0 ;NUMBER OF PARAM JSR PC,R5CHEK MOV @(R5),R0 ;GET DIRECT INT # BIC #177774,R0 ;STRIP IT ASL R0 ;NOW IS WORD ADDRESS MOV TABL(R0),TABL+8.(R0) ;RESET IT DISET:: RTS PC ;EXIT + DUMMY ROUTINE LDINT:: MOV #1,R0 JSR PC,R5CHEK MOV @(R5),R0 BIC #177774,R0 ASL R0 ;NOW IS WORD ADDRESS DEC TABL+8.(R0) ;CHECK DIRECT INT(SIMULATED) BLE 1$ ;GIVE POSITINVE INDICATION CLR R0 RTS PC 1$: MOV #-1,R0 ;INT HAS OCCURRRED RTS PC .END