/* UNISRC_ID: %W% %E% */ /*********************************************************************** * file: h/scrn/smsysdep.h * part #: * internal sequence #: * * ************************************************************ * * "(c) Copyright Hewlett-Packard Company, 1984. All * * * rights are reserved. Copying or other reproduction * * * of this program except for archival purposes is * * * prohibited without the prior written consent of * * * Hewlett-Packard Company." * * ************************************************************ * * * The file contains the system dependant defines for the screen * manager code. * * * Pisces Q-DOS project * Jay Phillips PCD * * Revision History * ---------------------------------------------------------------- * 12/06/83 JNP Initial * 01/04/83 JNP Changed definition of DISINT and ENBINT to be * parameterized defines calling the caravan loop * driver to directly enable and disable interrupts * from caravan loop devices. * ************************************************************************/ #define WINFMODE 0020666 /* permissions for window nodes */ /************************************************************************ * * Sprite defines * ************************************************************************/ #define SPRITEX (dstat.font_width * 2) /* initial x */ #define SPRITEY (dstat.screenh - (dstat.font_height * 4)) #define XSHIFT 10 /* mouse scaler */ #define YSHIFT 10 /* mouse scaler */ /************************************************************************ * * System Definitions * ************************************************************************/ /************************************************************************ * * Screen Manager Type Definitions * ************************************************************************/ typedef char bool_t; /* boolean type */ typedef char byte_t; /* unsigned 8 bit integer */ typedef int (*PFI_t)(); /* ptr to function returning int */ typedef int void_t; /* for functions returning no useful value */ /************************************************************************ * * User structure defines * ************************************************************************/ #define UERROR u.u_error #define USEGFLG u.u_segflg #define UBASE u.u_base #define UCOUNT u.u_count #define UOFFSET u.u_offset #define UFMODE u.u_fmode #define UPROCP u.u_procp #define UTTYP u.u_ttyp #define UDIRP u.u_dirp #define UPID u.u_procp->p_pid /************************************************************************ * * Memory allocation defines * ************************************************************************/ #define WINUM 25 /* max window number */ #define MAXWTYPE 9 /* max window number */ #define KMMINIT #define KMMALLOC(x) kmmalloc(x) #define KMMFREE(siz,ptr) kmmfree(siz,ptr) /************************************************************************ * * Critical section protection defines * ************************************************************************/ #define INT_LVL 1 #define WMLPRI 30 /* sleep priority for locked windows */ /************************************************************************ * * Major device numbers * ************************************************************************/ #define T0MAJOR 14 /* terminal 0 major dev number */ #define PEMAJOR 17 /* plotter emulator major dev number */