cbtrap.asm

来自「国外网站上的一些精典的C程序」· 汇编 代码 · 共 64 行

ASM
64
字号
        PAGE ,132;  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  cbrcvdcbrcvd  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        retins1b   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        retredo1b  ENDP        end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?