	IFND	DOS_NOTIFY_I
DOS_NOTIFY_I	SET	1
**
**	$Filename: dos/notify.i
**	$Release: 1.4
**
**	dos notification definitions 
**
**	(C) Copyright 1989,1990 Commodore-Amiga, Inc.
**	    All Rights Reserved
**

	IFND	EXEC_PORTS_I
	INCLUDE	"exec/ports.i"
	ENDC
	IFND	EXEC_TASKS_I
	INCLUDE	"exec/tasks.i"
	ENDC

;------ NotifyMessage Class ------------------------------------------
; these are only temporary for alpha 15
NOTIFY_CLASS	EQU	$40000000

;------ NotifyMessage Code --------------------------------------------
; these are only temporary for alpha 15
NOTIFY_CODE	EQU	$1234

; Sent to the application if SEND_MESSAGE is specified.

 STRUCTURE NotifyMessage,0
    STRUCT nm_ExecMessage,MN_SIZE
    ULONG  nm_Class
    UWORD  nm_Code
    APTR   nm_NReq			; don't modify the request!
    ULONG  nm_DoNotTouch		; like it says!
    ULONG  nm_DoNotTouch2
    LABEL  NotifyMessage_SIZEOF

; Do not modify or reuse the notifyrequest while active.

 STRUCTURE NotifyRequest,0
    APTR   nr_Name
    ULONG  nr_UserData			; for applications use
    APTR   nr_Port			; struct MsgPort * for SEND_MESSAGE
    APTR   nr_Task			; struct Task * for SEND_SIGNAL
    CPTR   nr_Data			; for COPY_DATA
    ULONG  nr_Length			; for COPY_DATA
    UWORD  nr_Flags
    UBYTE  nr_SignalNum			; for SEND_SIGNAL
    UBYTE  nr_Internal			; internal use
    APTR   nr_Handler			; handler sent to (for EndNotify)
    ULONG  nr_Private			; like it says
    LABEL  NotifyRequest_SIZEOF


;------ NotifyRequest Flags ------------------------------------------
NRF_SEND_MESSAGE	EQU	1
NRF_SEND_SIGNAL		EQU	2
NRF_WAIT_REPLY		EQU	8
NRF_NOTIFY_INITIAL	EQU	16

NRF_MAGIC		EQU	$80000000

;----- bits
NRB_SEND_MESSAGE	EQU	0
NRB_SEND_SIGNAL		EQU	1
NRB_WAIT_REPLY		EQU	3
NRB_NOTIFY_INITIAL	EQU	4

NRB_MAGIC		EQU	31

	ENDC	; DOS_NOTIFY_I

