Windows


MS-DOS - 3


cli

int 21h ; ISR

mov lpPrevISR.LoWord,bx

mov lpPrevISR.HiWord,es ;

 

mov dx,OFFSET FIXED_TEXT:IntSvcRtn

push ds

mov ds,segFixed

assume ds:NOTHING

mov ax,2500h+INT_DEV

int 21h ; ISR

pop ds

assume ds:DGroup

sti

 

mov dx,OFFSET DGroup:sdPrompt

mov ax,9

int 21h ; S)tart Q)uit

 

ml1:

mov dl,0PFh

mov ah,6

int 21h ; ,

jz ml3

or al,40h

cmp al,'q'

je ml8 ; , "Q"

cmp al,'s'

jne ml3 ; , "S"

cli

in al,PIC01 ;

and al,NOT INT_MASK

out PIC01,al

sti

mov al,NOT FAKE_CTL_START

mov dx,FAKE_PORT

out dx,al ; -

ml3:

mov ax,dwCount1

cmp ax,dwCount2

je ml4 ; ,

mov dwCount2,ax

mov dx,OFFSET DGroup:sdDot

mov ah,9

int 21,h ;

ml4:

jmp ml1 ;

 

ml8:

mov fStopping,1 ; ISR

mov dx,FAKE_PORT

ml9:

in al,dx

rcr al,1

jnc ml9 ; ,

 

cli

in al,PIC01

or al,INT_MASK

out PIC01,al ;

sti

 

push ds

lds dx,lpPrevISR

assume ds:NOTHING

mov ax,2500h+INT_DEV

int 21h ; ISR

pop ds

assume ds:DGroup

mov ax,4C00h

int 21h ;

_TEXT ENDS

 

end_main

_____________________________________________________________________

 

1. dostest.asm

 

, . MS-DOS 11.


- -  - -  - -