home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Power-Programmierung
/
CD1.mdf
/
magazine
/
progjour
/
1991
/
06
/
vampire.asm
< prev
next >
Wrap
Assembly Source File
|
1991-07-28
|
1KB
|
47 lines
;***********************************************************************
; VAMPIRE.ASM *
; VAMPIRE.COM is a demonstration program to provoke the midnight *
; vampire. (See text for test procedure). *
; Written by M. L. Lesser, July 25, 1991 *
; Assembled with TASM 2.5; linked with TLINK 4.0, switch "/t" *
;***********************************************************************
CODE SEGMENT PARA PUBLIC 'CODE'
ASSUME CS:CODE, DS:CODE
ORG 100H
VAMPIRE PROC NEAR
JMP SHORT START
STARTIME DW 2 DUP(?)
MESSGE_1 DB 13,10,'Starting 100-tick count$'
MESSGE_2 DB 13,10,'Ending 100-tick count$'
START: MOV AH,0
INT 1AH
MOV STARTIME,DX ;Save program starting count
MOV STARTIME+2,CX
; Loop until 100 ticks have passed:
MOV AH,9 ;Display startup message
MOV DX,OFFSET MESSGE_1
INT 21H
AGAIN: MOV AH,0
INT 1AH
MOV AX,STARTIME
SUB DX,AX
MOV AX,STARTIME+2
SBB CX,AX
JNS OK ;We haven't passed midnight
ADD DX,0B0H ;Else, increase current count by
ADC CX,18H ; 24 hours
OK: SUB DX,100 ;Have we gone 100 ticks?
SBB CX,0
JS AGAIN ;If not, go around again
MOV AH,9
MOV DX,OFFSET MESSGE_2
INT 21H
INT 20H
VAMPIRE ENDP
CODE ENDS
END VAMPIRE