/*
 * Copyright (c) 1993 Michael D. Bayne.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without modification, are permitted provided that
 * the following conditions are met:
 *
 * 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the
 *    following disclaimer.
 *
 * 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the
 *    following disclaimer in the documentation and/or other materials provided with the distribution.
 *
 * 3. All advertising materials mentioning features or use of this software must display the following
 *    acknowledgement:
 *
 *       This product includes software developed by Michael D. Bayne.
 *
 * 4. My name may not be used to endorse or promote products derived from this software without specific prior
 *    written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY MICHAEL D. BAYNE ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
 * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
 * IN NO EVENT SHALL MICHAEL D. BAYNE BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

#define QUIT		0L
#define OK		1L
#define CLOSEWIN	2L
#define EVT_CX_POPUP	1L
#define EVT_CX_BLANK	2L
#define SIG_BREAK	SIGBREAKF_CTRL_C
#define SIG_WINDOW	( BlankerWnd ? 1L << BlankerWnd->UserPort->mp_SigBit : 0L )
#define SIG_PORT	( blankerPort ? 1L << blankerPort->mp_SigBit : 0L )
#define SIG_APPWIN	(( blankerAppWin && appWinPort ) ? 1L << appWinPort->mp_SigBit : 0L )
#define BTAGS		( struct TagItem * )tags

#define BM_UNBLANKED	1

#define BM_DOBLANK	11
#define BM_DOPREFS	12
#define BM_DOQUIT	13

#define BS_ASKSCR	0x0001
#define BS_ASKDEP	0x0002
#define BS_VALMOD	0x0004
#define BS_RANDOM	0x0008
#define BS_SICONS	0x0010

#define EZRQ( str )	rtEZRequest( str, "OK", 0l, ( struct TagItem * )tags )

struct bPrefObject {
	ULONG	sMod, sDep, bTimeout;
	UWORD	Flags;
	UBYTE	pKey[256], bKey[256];
	UBYTE	modName[128], modDir[128];
	UBYTE	prefData[512];
};

struct randPrefObject {
	UBYTE rpo_Name[108];
	struct randPrefObject *rpo_Next;
};

struct randPrefList {
	struct randPrefObject *rpl_Head;
	ULONG rpl_Number;
	struct DateStamp rpl_Date;
};

struct bMessage {
	struct	Message bm_Mess;
	struct	Task *bm_Task;
	ULONG	bm_Mod;
	ULONG	bm_Dep;
	ULONG	bm_Type;
	UBYTE	*bm_Info;
	UBYTE	*bm_Data;
};
