
/*
**  NULL.H
**
**  Definition file for changes
**  which have been introduced
**  by Bernd Noll
*/

#define SET_ABORTION(x) globalflags._Abortcommand = (x)
#define IS_ABORTED()    globalflags._Abortcommand

#define abort(x)    do{ SET_ABORTION( 1 ); return(x); }while(0)
#define abort2()    do{ SET_ABORTION( 1 ); return;    }while(0)

#define LINE_LENGTH MAXLINELEN
#define BUFFERS     1				    /* # of linebuffers */
#define NARGS	    8				    /* # of arguments passed to a command (including name) */

#define simplehash(s0,s1) (((s0 & 15) << 4) + (s1 & 15))

#define VAR_NEX  0 /* not existing variable */
#define VAR_SV	 1 /* dme special vars scanf/filename/... */
#define VAR_MF	 2 /* dme macro   flag */
#define VAR_TF	 3 /* dme text	  flag */
#define VAR_GF	 4 /* dme global  flag */
#define VAR_TV	 5 /* dme text	  variable */
#define VAR_MV	 6 /* dme macro   variable */
#define VAR_GV	 7 /* dme global  variable */
#define VAR_ENV  8 /* CBM env: variable */
#define VAR_CLP  9 /* rexx cliplist - entry */
#define VAR_RX	10 /* rexx variable via RVI */
#define VAR_MAP 11 /* dme package key-mapping */
#define VAR_MEN 12 /* dme package menu */
#define VAR_TEST 13 /* Does a certain variable exist? (readonly) */
#define VAR_LN	14 /* List access ... */

//#define VAR_FPK   /* explicite access to another ("foreign") package */
//#define VAR_SF    /* dme special flags */
//#define VAR_SI    /* dme special integer variable */
//#define VAR_PF    /* dme package flag */
//#define VAR_PV    /* dme package variable */
//#define VAR_ARG   /* dme macro   parameter */
//#define VAR_SH    /* CBM local shell-var		  (FUTURE) */
//#define VAR_RXF   /* rexx result of functioncall */
//#define VAR_MNX   /* Arp shell-var			  (FUTURE) */

#define VAR_DME VAR_GV /* alias */


#define RET_SUCC    1
#define RET_FAIL    0

#define  BP  D(bug("XDME: Line %4ld in File %s\n", __LINE__, __FILE__));
#define DBP DD(bug("XDME: Line %4ld in File %s\n", __LINE__, __FILE__));

#define VarRoot 	void*
#define InitVars(x)     *(x) = NULL
//#define GetVarFrom	  GetVarFromTree
//#define SetVarInto	  SetVarIntoTree
//#define DelAllVarsFrom  DelAllVarsFromTree



#define GETF_NOSCREENUPDATE(ed)     Nsu
#define SETF_NOSCREENUPDATE(ed,f)   (Nsu = (f))
// #define GETF_(ed)
// #define SETF_(ed,f)         ( = (f))


// BLOCK ...
#define NO_CHANGE -2
#define MOVE_BLOCKMARK(lines,cols) do{ Block block = ActualBlock; if (lines) { block.start_line += lines; block.end_line += lines; } if (cols) { block.start_column += cols; block.end_column += cols; } set_block(&block); }while(0)


#include "Definitions.h"

