⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tskconf.h

📁 一个多任务操作系统CTask的源代码 用C语言编写
💻 H
📖 第 1 页 / 共 2 页
字号:
         CLOCK_MSEC     =  FALSE

COMMENT ^

   PRI_TIMER      Priority of the timer task. Normally higher than any
                  other task in the system.
                  The default is 0xf000.

   PRI_STD        standard priority of user tasks (arbitrary), for use
                  in user programs.
                  The default is 100.

   PRI_INT8       priority of the int8 task. Normally lower than or equal to
                  user defined tasks, but may be adjusted to tune responses
                  of TSR's. If there are busy waiting tasks in the system,
                  the priority should be equal to or higher than that of the
                  task that does the busy waiting.
                  The default is PRI_STD.

      CAUTION:    Changing requires recompile of tskinst.c
*/

#define  PRI_TIMER         0xf000
#define  PRI_STD           100
#define  PRI_INT8          (PRI_STD)      /*^

         PRI_TIMER      =  0f000h
         PRI_STD        =  100
         PRI_INT8       =  PRI_STD

COMMENT ^

   AT_BIOS        if TRUE, the AT BIOS wait/post handler is installed.
                  This can normally be left on even for XT type machines.
                  However, some exotic clone BIOS versions have been
                  reported to have problems with INT 15h compatibility, so 
                  for complete portability, this option could be set FALSE.
                  The same effect (although with slightly increased code)
                  can be had by setting the IFL_INT15 flag on installation.
                  The default is TRUE.

      CAUTION:    Changing requires recompile of tskinst.c

   INT8_EARLY     if TRUE, the timer interrupt always uses early INT8
                  processing, regardless of the IFL_INT8_EARLY
                  installation flag.
                  Setting this flag saves some code and data,
                  but eliminates some flexibility. Under DOS, timer
                  ticks can be missed under certain circumstances when
                  set, so DOS based configurations always should use FALSE.
                  The installation flag has a slightly different effect,
                  and may be used under DOS with no adverse effects.
                  Embedded systems likely will always use TRUE.
                  The default is FALSE (use installation flag).

   INT8_LATE      if TRUE, the timer interrupt always uses late INT8
                  processing, regardless of the IFL_INT8_EARLY
                  installation flag.
                  Setting this flag saves some code, but eliminates 
                  some flexibility.
                  Embedded systems likely will always use FALSE.
                  The default is FALSE (use installation flag).

      CAUTION:    Changing requires recompile of 
                  tskmain.c, tskttsk.c, and tsktim.asm.
*/

#define  AT_BIOS           TRUE
#define  INT8_EARLY        FALSE
#define  INT8_LATE         FALSE    /*^

         AT_BIOS        =  TRUE
         INT8_EARLY     =  FALSE
         INT8_LATE      =  FALSE

COMMENT ^

   SINGLE_DATA    if TRUE, only a single global data block is used.
                  This speeds up processing, but prohibits linkage
                  of multiple groups. Useful for dedicated systems,
                  and also if your program is known to never interact
                  with another copy of CTask. Should be left FALSE if you're
                  not so sure, must be FALSE if GROUPS is enabled.
                  The default is FALSE.

      CAUTION:    Changing requires recompile of all sources.
*/

#define  SINGLE_DATA       FALSE    /*^

         SINGLE_DATA    =  FALSE

COMMENT ^

   EMS            If TRUE, EMS support is included. For DOS applications
                  using spawn or going TSR, this should always be TRUE,
                  unless it is known that the program will never be
                  executed in an EMS environment. It must also be TRUE
                  for programs using EMS.
                  The default is TRUE.

   EMS_SAVE_SIZE  Size of the EMS page info save area.
                  For LIM 4.0 drivers, only four pages are saved, 
                  so 16 bytes should be sufficient. If the partial
                  page map function is not available in the driver,
                  more space may be required for holding the full
                  page map.
                  Because some current EMS drivers require more than 
                  the previous default of 16, the default has been raised
                  to 32 for 2.2d.

      CAUTION:    Changing requires recompile of all sources.
*/

#define  EMS               TRUE
#define  EMS_SAVE_SIZE     32     /*^

         EMS            =  TRUE 
         EMS_SAVE_SIZE  =  32

COMMENT ^


   NDP            If TRUE, 80x87 support is included.
                  The default is FALSE.

      CAUTION:    Changing requires recompile of all sources.

*/

#define  NDP               FALSE    /*^

         NDP            =  FALSE

COMMENT ^


   HOTKEYS        If TRUE, keyboard Hotkey support is included.
                  The default is TRUE.

      CAUTION:    Changing requires recompile of all sources.
*/

#define  HOTKEYS           TRUE     /*^

         HOTKEYS        =  TRUE 

COMMENT ^


   CHECKING       Enables pointer and stack checks when TRUE.
                  The default is FALSE.

      CAUTION:    Changing requires recompile of all sources.
*/

#define  CHECKING          FALSE    /*^

         CHECKING       =  FALSE

COMMENT ^
*/

/* ----------------------------------------------------------------------- */

#if (CODE_SHARING && NEAR_CODE)
#error Bad conf: Cant have near code with code sharing
#endif
#if (NEAR_CODE && LOCALS_FAR)
#error Bad conf: Cant have near code and locals far
#endif
#if (TSK_NAMED && !TSK_NAMEPAR)
#error Bad conf: Cant have names without name parameters
#endif
#if (GROUPS && !TSK_NAMEPAR)
#error Bad conf: Cant have goups without names
#endif
#if (DOS && !GROUPS)
#error Bad conf: DOS requires names and groups
#endif
#if (INT8_EARLY && INT8_LATE)
#error Bad conf: INT8 cant be both early and late
#endif
#if (GROUPS && SINGLE_DATA)
#error Bad conf: Groups require multiple data
#endif

/*^
        IF CODE_SHARING
          IFNDEF LOAD_DS
        %out Bad conf: Must have Load_ds with code sharing
        .err
          ENDIF
        ENDIF
        IF (CODE_SHARING AND NEAR_CODE)
        %out Bad conf: Cant have near code with code sharing
        .err
        ENDIF
        IF (NEAR_CODE AND LOCALS_FAR)
        %out Bad conf: Cant have near code and locals far
        .err
        ENDIF
        IF (TSK_NAMED AND NOT TSK_NAMEPAR)
        %out Bad conf: Cant have names without name parameters
        .err
        ENDIF
        IF (GROUPS AND NOT TSK_NAMEPAR)
        %out Bad conf: Cant have goups without names
        .err
        ENDIF
        IF (DOS AND NOT GROUPS)
        %out Bad conf: DOS requires names and groups
        .err
        ENDIF
        IF (INT8_EARLY AND INT8_LATE)
        %out Bad conf: INT8 cant be both early and late
        .err
        ENDIF
        IF (GROUPS AND SINGLE_DATA)
        %out Bad conf: Groups require multiple data
        .err
        ENDIF

; */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -