📄 kernel.inc
字号:
;*
;* COW : Character Oriented Windows
;*
;* kernel.inc : kernel include file
.xlist
include cow.inc
include lom.inc
.list
;* * must import from version file (for swapped versions)
;* cparaRunShell = # paragraphs saved for running shell
IFDEF COW_SWAPPED
createSeg CORE,KERNEL,BYTE,PUBLIC,CODE;* FIXED code
createSeg INIT,INIT,BYTE,PUBLIC,CODE ;* Init code (discardable)
IFDEF COW_TINY_SWAP
createSeg USER,EXIT,BYTE,PUBLIC,CODE ;* Exit code (discardable)
ELSE
createSeg CORE,LOCALMEM,BYTE,PUBLIC,CODE ;* Local memory management
createSeg EXIT,EXIT,BYTE,PUBLIC,CODE ;* Exit code (discardable)
ENDIF ;!COW_TINY_SWAP
IFDEF MOUSE_EXTRAS
createSeg MOUSE_TEXT,MOUSE,BYTE,PUBLIC,CODE ;* Mouse code (discardable)
ENDIF ;MOUSE_EXTRAS
ELSE
;* not swaped => all 1 segment
createSeg COW_TEXT,KERNEL,BYTE,PUBLIC,CODE;* FIXED code
createSeg COW_TEXT,INIT,BYTE,PUBLIC,CODE ;* Init code (discardable)
createSeg COW_TEXT,EXIT,BYTE,PUBLIC,CODE ;* Exit code (discardable)
createSeg COW_TEXT,MOUSE,BYTE,PUBLIC,CODE ;* Mouse code (discardable)
ENDIF ;!COW_SWAPPED
;* * Driver Segment
createSeg DRV_FIXED,DRV,BYTE,PUBLIC,CODE ;* drivers
IFDEF DEBUG
exAssertFailed = 99 ;* exit code for Assert failed
ENDIF ;DEBUG
;*
;* this will allow the release (non-debug) version of cow to
;* have the code which communicates with symdeb if so desired
;*
IFNDEF KEEP_SYMDEB_CODE
IFDEF DEBUG
KEEP_SYMDEB_CODE = 1
ENDIF ; DEBUG
ENDIF ; !defined KEEP_SYMDEB_CODE
IFDEF KERNEL_SWAP_STACK
;* ********* Below is QC Only ***********
;* * Constants for multiple stack implementations
SST_NO_VAP = 1 ; No CC stack is currently present
SST_ACT_VAP = 2 ; CC stack is currently the active stack
SST_INACT_VAP = 3 ; CC stack is currently the inactive stack
ENDIF ; KERNEL_SWAP_STACK
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -