?? envdep.h
字號:
#define PTRFAR /* pointer far */
#define STKALIGN 8 /* stack alignment */
#endif /* BIT_64 */
#define REG1 register /* register 1 - highest priority */
#define REG2 register /* register 2 */
#define REG3 /* register 3 */
#define REG4 /* register 4 */
#define REG5 /* register 5 */
#define REG6 /* register 6 */
#define REG7 /* register 7 */
#define REG8 /* register 8 - lowest priority */
#define FAR far /* for huge model */
#define PTRSTRIDE 1 /* stride */
#define MEM_SEG /* memory - segmented */
#endif /* I86HM */
#ifdef PROC_68XXX /* Motorola 68040 model */
#define NULLP 0L /* null pointer */
#define NULLD 0L /* null data */
#define PTR U32 /* pointer */
#define PTRSIZE sizeof(U32) /* pointer size */
/* #define PTRFAR pointer far */
#define STKALIGN 4 /* stack alignment */
#define REG1 register /* register 1 - highest priority */
#define REG2 register /* register 2 */
#define REG3 register /* register 3 */
#define REG4 register /* register 4 */
#define REG5 register /* register 5 */
#define REG6 register /* register 6 */
#define REG7 register /* register 7 */
#define REG8 register /* register 8 - lowest priority */
#define FAR /* for large model */
#ifdef PROC_68302
#define PTRSTRIDE 2 /* stride (simulation case: e.g. for elvis) */
#else
#ifdef PROC_68040
#define PTRSTRIDE 4 /* stride (simulation case: e.g. for elvis) */
#else /* other */
#define PTRSTRIDE 4 /* stride (simulation case: e.g. for elvis) */
#endif /* PROC_68040 */
#endif /* PROC_68302 */
#define MEM_NONSEG /* memory - non-segmented */
#endif /* PROC_68XXX */
#ifdef PROC_SPARC /* SPARC */
#define NULLP 0L /* null pointer */
#define NULLD 0L /* null data */
#ifndef BIT_64
#define PTR U32 /* pointer */
#define PTRSIZE sizeof(U32) /* pointer size */
/* #define PTRFAR pointer far */
#define STKALIGN 4 /* stack alignment */
#else /* BIT_64 */
#define PTR U64 /* pointer */
#define PTRSIZE sizeof(U64) /* pointer size */
/* #define PTRFAR pointer far */
#define STKALIGN 8 /* stack alignment */
#endif /* BIT_64 */
#define REG1 register /* register 1 - highest priority */
#define REG2 register /* register 2 */
#define REG3 register /* register 3 */
#define REG4 register /* register 4 */
#define REG5 register /* register 5 */
#define REG6 register /* register 6 */
#define REG7 register /* register 7 */
#define REG8 register /* register 8 - lowest priority */
#define FAR /* for large model */
#define PTRSTRIDE 4 /* stride */
#define MEM_NONSEG /* memory - non-segmented */
#endif /* PROC_SPARC */
#ifdef VAX /* VAX */
#define NULLP 0L /* null pointer */
#define NULLD 0L /* null data */
#define PTR U32 /* pointer */
#define PTRSIZE sizeof(U32) /* pointer size */
/* #define PTRFAR pointer far */
#define STKALIGN 4 /* stack alignment */
#define REG1 register /* register 1 - highest priority */
#define REG2 register /* register 2 */
#define REG3 register /* register 3 */
#define REG4 register /* register 4 */
#define REG5 register /* register 5 */
#define REG6 register /* register 6 */
#define REG7 register /* register 7 */
#define REG8 register /* register 8 - lowest priority */
#define FAR /* for large model */
#define PTRSTRIDE 2 /* stride */
#define MEM_NONSEG /* memory - non-segmented */
#endif
#ifdef ALPHA /* ALPHA */
#define NULLP 0L /* null pointer */
#define NULLD 0L /* null data */
#define PTR U64 /* pointer */
#define PTRSIZE sizeof(U64) /* pointer size */
/* #define PTRFAR pointer far */
#define STKALIGN 8 /* stack alignment */
#define REG1 register /* register 1 - highest priority */
#define REG2 register /* register 2 */
#define REG3 register /* register 3 */
#define REG4 register /* register 4 */
#define REG5 register /* register 5 */
#define REG6 register /* register 6 */
#define REG7 register /* register 7 */
#define REG8 register /* register 8 - lowest priority */
#define FAR /* for large model */
#define PTRSTRIDE 2 /* stride */
#define MEM_NONSEG /* memory - non-segmented */
#endif
#ifdef PROC_68360 /* Motorola 68040 model */
#define NULLP 0L /* null pointer */
#define NULLD 0L /* null data */
#define PTR U32 /* pointer */
#define PTRSIZE sizeof(U32) /* pointer size */
/* #define PTRFAR pointer far */
#define STKALIGN 4 /* stack alignment */
#define REG1 register /* register 1 - highest priority */
#define REG2 register /* register 2 */
#define REG3 register /* register 3 */
#define REG4 register /* register 4 */
#define REG5 register /* register 5 */
#define REG6 register /* register 6 */
#define REG7 register /* register 7 */
#define REG8 register /* register 8 - lowest priority */
#define FAR /* for large model */
#define PTRSTRIDE 4 /* stride (simulation case: e.g. for elvis) */
#define MEM_NONSEG /* memory - non-segmented */
#endif /* PROC_68360 */
#ifdef PROC_PPC /* SPARC */
#define NULLP 0L /* null pointer */
#define NULLD 0L /* null data */
#ifndef BIT_64
#define PTR U32 /* pointer */
#define PTRSIZE sizeof(U32) /* pointer size */
/* #define PTRFAR pointer far */
#define STKALIGN 4 /* stack alignment */
#else /* BIT_64 */
#define PTR U64 /* pointer */
#define PTRSIZE sizeof(U64) /* pointer size */
/* #define PTRFAR pointer far */
#define STKALIGN 8 /* stack alignment */
#endif /* BIT_64 */
#define REG1 register /* register 1 - highest priority */
#define REG2 register /* register 2 */
#define REG3 register /* register 3 */
#define REG4 register /* register 4 */
#define REG5 register /* register 5 */
#define REG6 register /* register 6 */
#define REG7 register /* register 7 */
#define REG8 register /* register 8 - lowest priority */
#define FAR /* for large model */
#define PTRSTRIDE 4 /* stride */
#define MEM_NONSEG /* memory - non-segmented */
#endif /* PROC_PPC */
#ifdef SS_PS /* 32-bit pSOS */
#define NULLP 0L /* null pointer */
#define NULLD 0L /* null data */
#ifndef BIT_64
#define PTR U32 /* pointer */
#define PTRSIZE sizeof(U32) /* pointer size */
#define STKALIGN 4 /* stack alignment */
#else /* BIT_64 */
#define PTR U64 /* pointer */
#define PTRSIZE sizeof(U64) /* pointer size */
#define STKALIGN 8 /* stack alignment */
#endif /* BIT_64 */
#define REG1 register /* register 1 - highest priority */
#define REG2 register /* register 2 */
#define REG3 register /* register 3 */
#define REG4 register /* register 4 */
#define REG5 register /* register 5 */
#define REG6 register /* register 6 */
#define REG7 register /* register 7 */
#define REG8 register /* register 8 - lowest priority */
#define FAR /* for large model */
#define PTRSTRIDE 4 /* stride */
#endif /* SS_PS */
#ifdef OTHMOD /* All other models */
#define NULLP 0L /* null pointer */
#define NULLD 0L /* null data */
#define PTR U32 /* pointer */
#define PTRSIZE sizeof(U32) /* pointer size */
#define STKALIGN 4 /* stack alignment */
#define REG1 register /* register 1 - highest priority */
#define REG2 register /* register 2 */
#define REG3 register /* register 3 */
#define REG4 register /* register 4 */
#define REG5 register /* register 5 */
#define REG6 register /* register 6 */
#define REG7 register /* register 7 */
#define REG8 register /* register 8 - lowest priority */
#define FAR /* for large model */
#define PTRSTRIDE 2 /* stride */
#define MEM_NONSEG /* memory - non-segmented */
#endif
/* pointer alignment macro */
#define PTRALIGN(s) ((PTR)(s) % PTRSTRIDE ? ((PTR)(s) + (PTRSTRIDE - ((PTR)(s) % PTRSTRIDE))) : (PTR)(s))
/*
* This macro (DATAALIGN) should only be used in our
* static memory algorithms (SGetSBuf).
*
* Otherwise, use at your own risk!
*/
#define DATAALIGN(s) ((Size)(s) % PTRSTRIDE ? ((Size)(s) - (PTRSTRIDE - ((Size)(s) % PTRSTRIDE))) : (Size)(s))
/* message function type macro */
typedef U32 MFTYPE;
/* typedef and defines for argument manipulation */
typedef char *ARGTYPE;
#define ARG(argp,type) *((type*)argp)
#define ARGINC(argp,type) argp=(ARGTYPE)(argp + (sizeof(type) < STKALIGN ? STKALIGN : sizeof(type)))
/* Unused function parameter macro */
#ifdef UNUSED
#undef UNUSED
#define UNUSED(x) (x=x)
#else
#define UNUSED(x) (x=x)
#endif /* UNUSED */
/**********************************************************************
defines for trace
**********************************************************************/
/*
trace macros are at the beginning of each function. they may
be used for debugging purposes. the trace macros are turned on
by the following command line option:
TRACE0 - trace mos support functions
TRACE1 - trace mos interface functions
TRACE2 - trace layer support functions
TRACE3 - trace layer interface functions
TRACE4 - trace interrupt service functions
there is one additional trace macro which turns on trace macros 0 - 4
and pushes the text within trace macros 0 - 4 onto a stack. the text
is popped of of the stack upon RETVOID or RETVALUE. this macro is:
TRACE5 - trace call stack
*/
#ifdef TRACE5 /* trace 5 - call stack */
#define TRACE0 /* trace 0 - mos support functions */
#define TRACE1 /* trace 1 - mos interface functions */
#define TRACE2 /* trace 2 - layer support functions */
#define TRACE3 /* trace 3 - layer interface functions */
#define TRACE4 /* trace 4 - interrupt service functions */
#define T5M 64 /* trace 5 - maximum call stack height */
extern S8 *t5s[]; /* trace 5 - call stack */
extern S16 t5t; /* trace 5 - top of call stack */
#ifdef ERRCHK
extern Void FAR exit(int);
#endif
#endif
#ifdef TRACE5 /* trace 5 - call stack */
#ifdef ERRCHK
#define TRC0(a) if(t5t>=0&&t5t<T5M-1) t5s[t5t++] = #a; else exit(0);
#else
#define TRC0(a) t5s[t5t++] = #a;
#endif
#else
#ifdef TRACE0 /* trace 0 - mos support functions */
#ifdef ANSI /* ansi */
#define TRC0(a) printf(#a "\n");
#else /* not ansi */
#define TRC0(a) ;
#endif
#else
#define TRC0(a) ;
#endif
#endif
#ifdef TRACE5 /* trace 5 - call stack */
#ifdef ERRCHK
#define TRC1(a) if(t5t>=0&&t5t<T5M-1) t5s[t5t++] = #a; else exit(0);
#else
#define TRC1(a) t5s[t5t++] = #a;
#endif
#else
#ifdef TRACE1 /* trace 1 - mos interface functions */
#ifdef ANSI /* ansi */
#define TRC1(a) printf("File %s Line #%d Function %s\n", __FILE__, __LINE__, __FUNCTION__);
#else /* not ansi */
#define TRC1(a) ;
#endif
#else
#define TRC1(a) ;
#endif
#endif
#ifdef TRACE5 /* trace 5 - call stack */
#ifdef ERRCHK
#define TRC2(a) if(t5t>=0&&t5t<T5M-1) t5s[t5t++] = #a; else exit(0);
#else
#define TRC2(a) t5s[t5t++] = #a;
#endif
#else
#ifdef TRACE2 /* trace 2 - layer support functions */
#ifdef ANSI /* ansi */
#define TRC2(a) printf("File %s Line #%d Function %s\n", __FILE__, __LINE__, __FUNCTION__);
#else /* not ansi */
#define TRC2(a) ;
#endif
#else
#define TRC2(a) ;
#endif
#endif
#ifdef TRACE5 /* trace 5 - call stack */
#ifdef ERRCHK
#define TRC3(a) if(t5t>=0&&t5t<T5M-1) t5s[t5t++] = #a; else exit(0);
#else
#define TRC3(a) t5s[t5t++] = #a;
#endif
#else
#ifdef TRACE3 /* trace 3 - layer interface functions */
#ifdef ANSI /* ansi */
#define TRC3(a) printf("File %s Line #%d Function %s\n", __FILE__, __LINE__, __FUNCTION__);
#else /* not ansi */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -