101 lines
2.1 KiB
NASM
101 lines
2.1 KiB
NASM
|
page ,132
|
||
|
if 0
|
||
|
|
||
|
/*++
|
||
|
|
||
|
Copyright (c) 1991 Microsoft Corporation
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
msgapi.asm
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
This module contains the messenger functions that we marginally support
|
||
|
for VDM
|
||
|
|
||
|
MessengerDispatch
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Richard L Firth (rfirth) 21-Sep-1992
|
||
|
|
||
|
Environment:
|
||
|
|
||
|
Dos mode only
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
05-Sep-1991 rfirth
|
||
|
Created
|
||
|
|
||
|
--*/
|
||
|
|
||
|
endif
|
||
|
|
||
|
.xlist ; don't list these include files
|
||
|
.xcref ; turn off cross-reference listing
|
||
|
include dosmac.inc ; Break macro etc (for following include files only)
|
||
|
include error.inc ; DOS errors - ERROR_INVALID_FUNCTION
|
||
|
include segorder.inc ; segments
|
||
|
include debugmac.inc ; DbgPrint macro
|
||
|
include localmac.inc ; DbgPrint macro
|
||
|
include asmmacro.inc ; language extensions
|
||
|
include rdrsvc.inc ; BOP and SVC macros/dispatch codes
|
||
|
include rdrmisc.inc ; miscellaneous definitions
|
||
|
.cref ; switch cross-reference back on
|
||
|
.list ; switch listing back on
|
||
|
subttl ; kill subtitling started in include file
|
||
|
|
||
|
.286
|
||
|
|
||
|
ResidentCodeStart
|
||
|
assume cs:ResidentCode
|
||
|
assume ds:nothing
|
||
|
assume es:nothing
|
||
|
assume ss:nothing
|
||
|
|
||
|
MessengerDispatchTable label word
|
||
|
dw MessageInstalled
|
||
|
dw MessageDone
|
||
|
dw MessageLogging
|
||
|
dw MessageUserFunction
|
||
|
dw MessageUnusedFunction
|
||
|
dw MessagePauseContinue
|
||
|
|
||
|
LAST_MESSENGER_FUNCTION = (offset $ - offset MessengerDispatchTable)/2 - 1
|
||
|
|
||
|
public MessengerDispatch
|
||
|
MessengerDispatch proc near
|
||
|
cmp al,LAST_MESSENGER_FUNCTION
|
||
|
jbe @f
|
||
|
mov al,ERROR_INVALID_PARAMETER
|
||
|
stc
|
||
|
ret
|
||
|
@@: cbw
|
||
|
push bx
|
||
|
mov bx,ax
|
||
|
shl bx,1
|
||
|
mov ax,MessengerDispatchTable[bx]
|
||
|
pop bx
|
||
|
jmp ax
|
||
|
MessengerDispatch endp
|
||
|
|
||
|
MessageInstalled:
|
||
|
dec al
|
||
|
|
||
|
MessageDone:
|
||
|
ret
|
||
|
|
||
|
MessageLogging:
|
||
|
MessageUserFunction:
|
||
|
MessageUnusedFunction:
|
||
|
MessagePauseContinue:
|
||
|
; mov ax,ERROR_INVALID_FUNCTION
|
||
|
mov ax,2142 ; NERR_InvalidAPI
|
||
|
stc
|
||
|
retn
|
||
|
|
||
|
ResidentCodeEnd
|
||
|
end
|