📄 acc_mm.h
字号:
/* ACC -- Automatic Compiler Configuration Copyright (C) 1996-2004 Markus Franz Xaver Johannes Oberhumer All Rights Reserved. This software is a copyrighted work licensed under the terms of the GNU General Public License. Please consult the file "ACC_LICENSE" for details. Markus F.X.J. Oberhumer <markus@oberhumer.com> http://www.oberhumer.com/ *//* * Memory Model - exactly one of: * * ACC_MM_FLAT [default] * ACC_MM_TINY * ACC_MM_SMALL * ACC_MM_MEDIUM * ACC_MM_COMPACT * ACC_MM_LARGE * ACC_MM_HUGE */#if (ACC_OS_DOS16 || ACC_OS_OS216 || ACC_OS_WIN16)#if (UINT_MAX != ACC_0xffffL)# error "this should not happen"#endif#if defined(__TINY__) || defined(M_I86TM) || defined(_M_I86TM)# define ACC_MM_TINY 1#elif defined(__HUGE__) || defined(_HUGE_) || defined(M_I86HM) || defined(_M_I86HM)# define ACC_MM_HUGE 1#elif defined(__SMALL__) || defined(M_I86SM) || defined(_M_I86SM) || defined(SMALL_MODEL)# define ACC_MM_SMALL 1#elif defined(__MEDIUM__) || defined(M_I86MM) || defined(_M_I86MM)# define ACC_MM_MEDIUM 1#elif defined(__COMPACT__) || defined(M_I86CM) || defined(_M_I86CM)# define ACC_MM_COMPACT 1#elif defined(__LARGE__) || defined(M_I86LM) || defined(_M_I86LM) || defined(LARGE_MODEL)# define ACC_MM_LARGE 1#elif (ACC_CC_AZTECC)# if defined(_LARGE_CODE) && defined(_LARGE_DATA)# define ACC_MM_LARGE 1# elif defined(_LARGE_CODE)# define ACC_MM_MEDIUM 1# elif defined(_LARGE_DATA)# define ACC_MM_COMPACT 1# else# define ACC_MM_SMALL 1# endif#elif (ACC_CC_ZORTECHC && defined(__VCM__))# define ACC_MM_LARGE 1#else# error "unknown memory model"#endif/* ACC_HAVE_MM_HUGE_PTR ... working __huge pointers * ACC_HAVE_MM_HUGE_ARRAY ... char __huge x[256*1024L] works */#define ACC_HAVE_MM_HUGE_PTR 1#define ACC_HAVE_MM_HUGE_ARRAY 1#if (ACC_MM_TINY)# undef ACC_HAVE_MM_HUGE_ARRAY#endif#if (ACC_CC_AZTECC || ACC_CC_PACIFICC || ACC_CC_ZORTECHC)# undef ACC_HAVE_MM_HUGE_PTR# undef ACC_HAVE_MM_HUGE_ARRAY#elif (ACC_CC_DMC || ACC_CC_SYMANTECC)# undef ACC_HAVE_MM_HUGE_ARRAY#elif (ACC_CC_MSC && defined(_QC))# undef ACC_HAVE_MM_HUGE_ARRAY# if (_MSC_VER < 600)# undef ACC_HAVE_MM_HUGE_PTR# endif#elif (ACC_CC_TURBOC && (__TURBOC__ < 0x0295))# undef ACC_HAVE_MM_HUGE_ARRAY#elif (ACC_CC_WATCOMC && (__WATCOMC__ >= 1200)) /* pointer arithmetics with __huge arrays seems broken in OpenWatcom 1.x */# undef ACC_HAVE_MM_HUGE_ARRAY#endif#ifdef __cplusplusextern "C" {#endif#if (ACC_CC_BORLANDC && (__BORLANDC__ >= 0x0200)) extern void __near __cdecl _AHSHIFT(void);# define ACC_MM_AHSHIFT ((unsigned) _AHSHIFT)#elif (ACC_CC_DMC || ACC_CC_SYMANTECC || ACC_CC_ZORTECHC) extern void __near __cdecl _AHSHIFT(void);# define ACC_MM_AHSHIFT ((unsigned) _AHSHIFT)#elif (ACC_CC_MSC || ACC_CC_TOPSPEEDC) extern void __near __cdecl _AHSHIFT(void);# define ACC_MM_AHSHIFT ((unsigned) _AHSHIFT)#elif (ACC_CC_TURBOC && (__TURBOC__ >= 0x0295)) extern void __near __cdecl _AHSHIFT(void);# define ACC_MM_AHSHIFT ((unsigned) _AHSHIFT)#elif ((ACC_CC_AZTECC || ACC_CC_PACIFICC || ACC_CC_TURBOC) && ACC_OS_DOS16)# define ACC_MM_AHSHIFT 12#elif (ACC_CC_WATCOMC) extern unsigned char _HShift;# define ACC_MM_AHSHIFT ((unsigned) _HShift)#else# error "FIXME - implement ACC_MM_AHSHIFT"#endif#ifdef __cplusplus} /* extern "C" */#endif#elif (ACC_ARCH_C166)#if !defined(__MODEL__)# error "FIXME - C166 __MODEL__"#elif ((__MODEL__) == 0)# define ACC_MM_SMALL 1#elif ((__MODEL__) == 1)# define ACC_MM_SMALL 1#elif ((__MODEL__) == 2)# define ACC_MM_LARGE 1#elif ((__MODEL__) == 3)# define ACC_MM_TINY 1#elif ((__MODEL__) == 4)# define ACC_MM_XTINY 1#elif ((__MODEL__) == 5)# define ACC_MM_XSMALL 1#else# error "FIXME - C166 __MODEL__"#endif#elif (ACC_ARCH_MCS251)#if !defined(__MODEL__)# error "FIXME - MCS251 __MODEL__"#elif ((__MODEL__) == 0)# define ACC_MM_SMALL 1#elif ((__MODEL__) == 2)# define ACC_MM_LARGE 1#elif ((__MODEL__) == 3)# define ACC_MM_TINY 1#elif ((__MODEL__) == 4)# define ACC_MM_XTINY 1#elif ((__MODEL__) == 5)# define ACC_MM_XSMALL 1#else# error "FIXME - MCS251 __MODEL__"#endif#elif (ACC_ARCH_MCS51)#if !defined(__MODEL__)# error "FIXME - MCS51 __MODEL__"#elif ((__MODEL__) == 1)# define ACC_MM_SMALL 1#elif ((__MODEL__) == 2)# define ACC_MM_LARGE 1#elif ((__MODEL__) == 3)# define ACC_MM_TINY 1#elif ((__MODEL__) == 4)# define ACC_MM_XTINY 1#elif ((__MODEL__) == 5)# define ACC_MM_XSMALL 1#else# error "FIXME - MCS51 __MODEL__"#endif#else# define ACC_MM_FLAT 1#endif#if (ACC_MM_FLAT)# define ACC_INFO_MM "flat"#elif (ACC_MM_TINY)# define ACC_INFO_MM "tiny"#elif (ACC_MM_SMALL)# define ACC_INFO_MM "small"#elif (ACC_MM_MEDIUM)# define ACC_INFO_MM "medium"#elif (ACC_MM_COMPACT)# define ACC_INFO_MM "compact"#elif (ACC_MM_LARGE)# define ACC_INFO_MM "large"#elif (ACC_MM_HUGE)# define ACC_INFO_MM "huge"#else# error "unknown memory model"#endif/*vi:ts=4:et*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -