home *** CD-ROM | disk | FTP | other *** search
- page ,132
- title vmassert - VM assert call
- ;***
- ;vmassert.asm - VM assert call
- ;
- ; Copyright (c) 1989-1992, Microsoft Corporation. All rights reserved.
- ;
- ;*******************************************************************************
-
- include version.inc
- .model large,pascal
-
- ifdef VMDEBUG ;Used in debug version only
-
- extrn C _assert:far
-
- .data?
-
- extrn C _asizeC:byte
- extrn C _asizeD:byte
-
- .code _TEXT
-
- __VmAssert proc \
- pExp:near ptr byte, \
- pFile:near ptr byte, \
- iLine:word
-
- push [iLine]
-
- cmp [_asizeD],0 ;Near data model?
- je @F ;Brif so
- push ds
- @@:
- push [pFile]
-
- cmp [_asizeD],0 ;Near data model?
- je @F ;Brif so
- push ds
- @@:
- push [pExp]
-
- cmp [_asizeC],0 ;Near code model?
- je @F ;Brif so
- call far ptr _assert
- jmp short Exit
- @@:
- call near ptr _assert
-
- Exit:
- mov sp,bp
- ret
-
- __VmAssert endp
-
- endif ;VMDEBUG
-
- end
-