Category : Recently Uploaded Files
Archive   : SNIP9503.ZIP
Filename : CBTRAP.ASM
; Install a custom Interrupt 1b (Ctrl-Break exception) handler
;
; Public domain by Bob Stout
;
; Requires MASM 5.1 or later or equivalent
;
; Assemble with: MASM /Mx /z ...
; TASM /jMASM /mx /z ...
% .MODEL memodel,C ;Add model support via command
;line macros, e.g.
;MASM /Dmemodel=LARGE
.DATA?
_origvec dd ?
.DATA
public cbrcvd
cbrcvd dw 0
.CODE
;
; This is our actual ISR
;
myint1b:
mov ax,-1
mov cbrcvd,ax
iret
;
; Call this to install our ISR
;
ins1b PROC USES AX BX DS ES
mov ax,351bh ;get old vector...
int 21h
mov word PTR _origvec,bx
mov word PTR _origvec+2,es ;...and save it
push cs ;get myint1b segment in DS
pop ds
mov dx, OFFSET myint1b ;install myint1b in int 1bh
mov ax,251bh
int 21h
ret
ins1b ENDP
;
; Call this to uninstall our ISR
;
redo1b PROC USES AX BX DS
mov dx, word PTR _origvec ;restore original vector
mov ds, word PTR _origvec+2
mov ax,251bh
int 21h
ret
redo1b ENDP
end
Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!
This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.
But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/