;;   Do *not* directly modify this file.  It was   
;;   generated by the Configuration Tool; any 
;;   changes risk being overwritten.               

;; INPUT semtest.cdb

;; CONFIGURATION/VERSION INFORMATION
	.asg "Thu Jan  8 15:43:21 2004", VERS$DATE

;; PROLOGUE
	.include semtestcfg.h62
	.copy confbeg.s62

;; TYPE HEADERS
	.include gbl.h62
	.include mem.h62
	.include obj.h62
	.include buf.h62
	.include clk.h62
	.include prd.h62
	.include rtdx.h62
	.include hst.h62
	.include hwi.h62
	.include swi.h62
	.include tsk.h62
	.include idl.h62
	.include isrc.h62
	.include log.h62
	.include pip.h62
	.include sem.h62
	.include mbx.h62
	.include que.h62
	.include lck.h62
	.include sio.h62
	.include sts.h62
	.include sys.h62
	.include gio.h62
	.include dev.h62
	.include udev.h62
	.include dgn.h62
	.include dhl.h62
	.include dpi.h62
	.include hook.h62
	.include dio.h62

;; TYPE ATTRIBUTES
MEM$NUMOF           .set 3
MEM$SETOF           .set 00H
OBJ$NUMOF           .set 0
OBJ$SETOF           .set 00H
BUF$NUMOF           .set 0
BUF$SETOF           .set 00H
CLK$NUMOF           .set 1
CLK$SETOF           .set 00H
PRD$NUMOF           .set 0
PRD$SETOF           .set 00H
RTDX$NUMOF          .set 0
RTDX$SETOF          .set 00H
HST$NUMOF           .set 2
HST$SETOF           .set 03H
HWI$NUMOF           .set 16
HWI$SETOF           .set 0ffffH
SWI$NUMOF           .set 1
SWI$SETOF           .set 00H
TSK$NUMOF           .set 6
TSK$SETOF           .set 00H
IDL$NUMOF           .set 3
IDL$SETOF           .set 00H
ISRC$NUMOF          .set 0
ISRC$SETOF          .set 00H
LOG$NUMOF           .set 2
LOG$SETOF           .set 00H
PIP$NUMOF           .set 0
PIP$SETOF           .set 00H
SEM$NUMOF           .set 1
SEM$SETOF           .set 00H
MBX$NUMOF           .set 0
MBX$SETOF           .set 00H
QUE$NUMOF           .set 0
QUE$SETOF           .set 00H
LCK$NUMOF           .set 0
LCK$SETOF           .set 00H
SIO$NUMOF           .set 0
SIO$SETOF           .set 00H
STS$NUMOF           .set 1
STS$SETOF           .set 00H
DEV$NUMOF           .set 0
DEV$SETOF           .set 00H
UDEV$NUMOF          .set 0
UDEV$SETOF          .set 00H
DGN$NUMOF           .set 0
DGN$SETOF           .set 00H
DHL$NUMOF           .set 0
DHL$SETOF           .set 00H
DPI$NUMOF           .set 0
DPI$SETOF           .set 00H
HOOK$NUMOF          .set 0
HOOK$SETOF          .set 00H
DIO$NUMOF           .set 0
DIO$SETOF           .set 00H

;; module GBL (ROM, BIGENDIAN, USERINIT, USERINITFXN, ENABLEINST, CACHE, L2CONFIGURE, L2MODE, L2PRIORITY, L2MARMASK, SUPPORTCSL, TRCMASKVALUE, CALLCSLCFGINIT, C641XL2PRIORITY, L2MARMASK1, L2MARMASK2, L2MARMASK3, L2MARMASK4, L2MARMASK5, L2CONFIGALLOC, L2ALLOC)
	.global GBL$                     ; == 1
	.global GBL_ROM                  ; semtestcfg.h62
	.global GBL_BIGENDIAN            ; semtestcfg.h62
	.global GBL_USERINIT             ; semtestcfg.h62
	.global GBL_USERINITFXN          ; semtestcfg.cmd
	.global GBL_ENABLEINST           ; semtestcfg.h62
	.global GBL_CACHE                ; semtestcfg.h62
	.global GBL_L2CONFIGURE          ; semtestcfg.h62
	.global GBL_L2MODE               ; semtestcfg.h62
	.global GBL_L2PRIORITY           ; semtestcfg.h62
	.global GBL_L2MARMASK            ; semtestcfg.h62
	.global GBL_SUPPORTCSL           ; semtestcfg.h62
	.global GBL_TRCMASKVALUE         ; semtestcfg.h62
	.global GBL_CALLCSLCFGINIT       ; semtestcfg.h62
	.global GBL_C641XL2PRIORITY      ; semtestcfg.h62
	.global GBL_L2MARMASK1           ; semtestcfg.h62
	.global GBL_L2MARMASK2           ; semtestcfg.h62
	.global GBL_L2MARMASK3           ; semtestcfg.h62
	.global GBL_L2MARMASK4           ; semtestcfg.h62
	.global GBL_L2MARMASK5           ; semtestcfg.h62
	.global GBL_L2CONFIGALLOC        ; semtestcfg.h62
	.global GBL_L2ALLOC              ; semtestcfg.h62

;; module MEM (gNumHeap, SEGZERO, MALLOCSEG)
	.global MEM$                     ; == 1
	.global MEM_gNumHeap             ; semtestcfg.h62
	.global MEM_SEGZERO              ; semtestcfg.cmd
	.global MEM_MALLOCSEG            ; semtestcfg.cmd

;; module OBJ ()
	.global OBJ$                     ; == 0

;; module BUF (ENABLED)
	.global BUF$                     ; == 0
	.global BUF_ENABLED              ; semtestcfg.h62

;; module CLK (INTBIT, REGS, TIMERNUM, USETIMER, TCR, TDDR, TDDRHIGH, PRD, PRDHIGH, COUNTSPMS, COUNTSPMSHIGH, TIMEFXN, HOOKFXN)
	.global CLK$                     ; == 1
	.global CLK_INTBIT               ; semtestcfg.h62
	.global CLK_REGS                 ; semtestcfg.h62
	.global CLK_TIMERNUM             ; semtestcfg.h62
	.global CLK_USETIMER             ; semtestcfg.h62
	.global CLK_TCR                  ; semtestcfg.h62
	.global CLK_TDDR                 ; semtestcfg.h62
	.global CLK_TDDRHIGH             ; semtestcfg.h62
	.global CLK_PRD                  ; semtestcfg.h62
	.global CLK_PRDHIGH              ; semtestcfg.h62
	.global CLK_COUNTSPMS            ; semtestcfg.h62
	.global CLK_COUNTSPMSHIGH        ; semtestcfg.h62
	.global CLK_TIMEFXN              ; semtestcfg.cmd
	.global CLK_HOOKFXN              ; semtestcfg.cmd

;; module PRD (SCALAR, THOOKFXN)
	.global PRD$                     ; == 1
	.global PRD_SCALAR               ; semtestcfg.h62
	.global PRD_THOOKFXN             ; semtestcfg.cmd

;; module RTDX (USERTDX, USERTEXECUTION, DATAMEMSEG, BUFMEMSIZE)
	.global RTDX$                    ; == 1
	.global RTDX_USERTDX             ; semtestcfg.h62
	.global RTDX_USERTEXECUTION      ; semtestcfg.h62
	.global RTDX_DATAMEMSEG          ; semtestcfg.cmd
	.global RTDX_BUFMEMSIZE          ; semtestcfg.h62

;; module HST (RTDX, DSM, NONE, MAXFRAMESET, MAXFRAMEALLOWED, DSMBUFSEG, DSMMEMSIZE)
	.global HST$                     ; == 1
	.global HST_RTDX                 ; semtestcfg.h62
	.global HST_DSM                  ; semtestcfg.h62
	.global HST_NONE                 ; semtestcfg.h62
	.global HST_MAXFRAMESET          ; semtestcfg.h62
	.global HST_MAXFRAMEALLOWED      ; semtestcfg.h62
	.global HST_DSMBUFSEG            ; semtestcfg.cmd
	.global HST_DSMMEMSIZE           ; semtestcfg.h62

;; module HWI (ZEROTAB, GENERATE_RESET_VEC, POLARITYMASK, INTRMULTLOW, INTRMULTHIGH)
	.global HWI$                     ; == 1
	.global HWI_ZEROTAB              ; semtestcfg.h62
	.global HWI_GENERATE_RESET_VEC   ; semtestcfg.h62
	.global HWI_POLARITYMASK         ; semtestcfg.h62
	.global HWI_INTRMULTLOW          ; semtestcfg.h62
	.global HWI_INTRMULTHIGH         ; semtestcfg.h62

;; module SWI (EHOOKFXN, IHOOKFXN, EXECFXN, RUNFXN)
	.global SWI$                     ; == 1
	.global SWI_EHOOKFXN             ; semtestcfg.cmd
	.global SWI_IHOOKFXN             ; semtestcfg.cmd
	.global SWI_EXECFXN              ; semtestcfg.cmd
	.global SWI_RUNFXN               ; semtestcfg.cmd

;; module TSK (STACKSIZE, STACKSEG, PRIORITY, VCREATEFXN, VDELETEFXN, VEXITFXN, SWITCHFXN, READYFXN, NUM_HOOKS)
	.global TSK$                     ; == 1
	.global TSK_STACKSIZE            ; semtestcfg.h62
	.global TSK_STACKSEG             ; semtestcfg.cmd
	.global TSK_PRIORITY             ; semtestcfg.h62
	.global TSK_VCREATEFXN           ; semtestcfg.cmd
	.global TSK_VDELETEFXN           ; semtestcfg.cmd
	.global TSK_VEXITFXN             ; semtestcfg.cmd
	.global TSK_SWITCHFXN            ; semtestcfg.h62
	.global TSK_READYFXN             ; semtestcfg.h62
	.global TSK_NUM_HOOKS            ; semtestcfg.h62

;; module IDL (USECLKIDLTIME, CALIBRFXN)
	.global IDL$                     ; == 1
	.global IDL_USECLKIDLTIME        ; semtestcfg.h62
	.global IDL_CALIBRFXN            ; semtestcfg.cmd

;; module ISRC ()
	.global ISRC$                    ; == 1

;; module LOG (ENABLED)
	.global LOG$                     ; == 1
	.global LOG_ENABLED              ; semtestcfg.h62

;; module PIP (gNumEmbed, gNextId)
	.global PIP$                     ; == 0
	.global PIP_gNumEmbed            ; semtestcfg.h62
	.global PIP_gNextId              ; semtestcfg.h62

;; module SEM ()
	.global SEM$                     ; == 1

;; module MBX ()
	.global MBX$                     ; == 0

;; module QUE ()
	.global QUE$                     ; == 1

;; module LCK ()
	.global LCK$                     ; == 1

;; module SIO ()
	.global SIO$                     ; == 0

;; module STS ()
	.global STS$                     ; == 1

;; module SYS (ABORTFXN, ERRORFXN, EXITFXN, PUTCFXN)
	.global SYS$                     ; == 1
	.global SYS_ABORTFXN             ; semtestcfg.cmd
	.global SYS_ERRORFXN             ; semtestcfg.cmd
	.global SYS_EXITFXN              ; semtestcfg.cmd
	.global SYS_PUTCFXN              ; semtestcfg.cmd

;; module GIO (CREATEFXN, DELETEFXN, PENDFXN, POSTFXN)
	.global GIO$                     ; == 0
	.global GIO_CREATEFXN            ; semtestcfg.cmd
	.global GIO_DELETEFXN            ; semtestcfg.cmd
	.global GIO_PENDFXN              ; semtestcfg.cmd
	.global GIO_POSTFXN              ; semtestcfg.cmd

;; module DEV ()
	.global DEV$                     ; == 0

;; module UDEV ()
	.global UDEV$                    ; == 0

;; module DGN ()
	.global DGN$                     ; == 0

;; module DHL (gChannelsAvailable)
	.global DHL$                     ; == 0
	.global DHL_gChannelsAvailable   ; semtestcfg.h62

;; module DPI ()
	.global DPI$                     ; == 0

;; module HOOK (KNLID)
	.global HOOK$                    ; == 0
	.global HOOK_KNLID               ; semtestcfg.h62

;; module DIO (STATIC, NUMTSKBASE, NUMSWIBASE)
	.global DIO$                     ; == 0
	.global DIO_STATIC               ; semtestcfg.h62
	.global DIO_NUMTSKBASE           ; semtestcfg.h62
	.global DIO_NUMSWIBASE           ; semtestcfg.h62

;; MODULE CONFIGURATION

;; ======== GBL_config ========
	.asg 00H, _ROM
	.asg 00H, _BIGENDIAN
	.asg 01H, _USERINIT
	.asg _GBL_setPLLto225MHz, _USERINITFXN
	.asg 01H, _ENABLEINST
	.asg 00H, _CACHE
	.asg 01H, _L2CONFIGURE
	.asg 07H, _L2MODE
	.asg 00H, _L2PRIORITY
	.asg 01H, _L2MARMASK
	.asg 01H, _SUPPORTCSL
	.asg 0dbefH, _TRCMASKVALUE
	.asg 01H, _CALLCSLCFGINIT
	.asg 00H, _C641XL2PRIORITY
	.asg 00H, _L2MARMASK1
	.asg 00H, _L2MARMASK2
	.asg 00H, _L2MARMASK3
	.asg 00H, _L2MARMASK4
	.asg 00H, _L2MARMASK5
	.asg 00H, _L2CONFIGALLOC
	.asg 02226H, _L2ALLOC
	GBL_config  _ROM, _BIGENDIAN, _USERINIT, _USERINITFXN, _ENABLEINST, _CACHE, _L2CONFIGURE, _L2MODE, _L2PRIORITY, _L2MARMASK, _SUPPORTCSL, _TRCMASKVALUE, _CALLCSLCFGINIT, _C641XL2PRIORITY, _L2MARMASK1, _L2MARMASK2, _L2MARMASK3, _L2MARMASK4, _L2MARMASK5, _L2CONFIGALLOC, _L2ALLOC

;; ======== MEM_config ========
	.asg 02H, _gNumHeap
	.asg IRAM, _SEGZERO
	.asg IRAM, _MALLOCSEG
	MEM_config  _gNumHeap, _SEGZERO, _MALLOCSEG

;; ======== OBJ_config ========
	OBJ_config

;; ======== BUF_config ========
	.asg 01H, _ENABLED
	BUF_config  _ENABLED

;; ======== CLK_config ========
	.asg 04000H, _INTBIT
	.asg 01940000H, _REGS
	.asg 00H, _TIMERNUM
	.asg 01H, _USETIMER
	.asg 020H, _TCR
	.asg 00H, _TDDR
	.asg 00H, _TDDRHIGH
	.asg 0dbbaH, _PRD
	.asg 00H, _PRDHIGH
	.asg 0dbbaH, _COUNTSPMS
	.asg 00H, _COUNTSPMSHIGH
	.asg CLK_F_getshtime, _TIMEFXN
	.asg HWI_F_dispatch, _HOOKFXN
	CLK_config  _INTBIT, _REGS, _TIMERNUM, _USETIMER, _TCR, _TDDR, _TDDRHIGH, _PRD, _PRDHIGH, _COUNTSPMS, _COUNTSPMSHIGH, _TIMEFXN, _HOOKFXN

;; ======== PRD_config ========
	.asg 04000H, _SCALAR
	.asg _KNL_tick, _THOOKFXN
	PRD_config  _SCALAR, _THOOKFXN

;; ======== RTDX_config ========
	.asg 01H, _USERTDX
	.asg 00H, _USERTEXECUTION
	.asg IRAM, _DATAMEMSEG
	.asg 0408H, _BUFMEMSIZE
	RTDX_config  _USERTDX, _USERTEXECUTION, _DATAMEMSEG, _BUFMEMSIZE

;; ======== HST_config ========
	.asg 01H, _RTDX
	.asg 00H, _DSM
	.asg 00H, _NONE
	.asg 040H, _MAXFRAMESET
	.asg 0100H, _MAXFRAMEALLOWED
	.asg IRAM, _DSMBUFSEG
	.asg 0400H, _DSMMEMSIZE
	HST_config  _RTDX, _DSM, _NONE, _MAXFRAMESET, _MAXFRAMEALLOWED, _DSMBUFSEG, _DSMMEMSIZE

;; ======== HWI_config ========
	.asg 01H, _ZEROTAB
	.asg 00H, _GENERATE_RESET_VEC
	.asg 00H, _POLARITYMASK
	.asg 0310718a4H, _INTRMULTLOW
	.asg 082039a3H, _INTRMULTHIGH
	HWI_config  _ZEROTAB, _GENERATE_RESET_VEC, _POLARITYMASK, _INTRMULTLOW, _INTRMULTHIGH

;; ======== SWI_config ========
	.asg GBL_NULL, _EHOOKFXN
	.asg GBL_NULL, _IHOOKFXN
	.asg SWI_F_iexec, _EXECFXN
	.asg SWI_F_run, _RUNFXN
	SWI_config  _EHOOKFXN, _IHOOKFXN, _EXECFXN, _RUNFXN

;; ======== TSK_config ========
	.asg 0400H, _STACKSIZE
	.asg IRAM, _STACKSEG
	.asg 01H, _PRIORITY
	.asg _FXN_F_nop, _VCREATEFXN
	.asg _FXN_F_nop, _VDELETEFXN
	.asg _FXN_F_nop, _VEXITFXN
	.asg 00H, _SWITCHFXN
	.asg 00H, _READYFXN
	.asg 00H, _NUM_HOOKS
	TSK_config  _STACKSIZE, _STACKSEG, _PRIORITY, _VCREATEFXN, _VDELETEFXN, _VEXITFXN, _SWITCHFXN, _READYFXN, _NUM_HOOKS

;; ======== IDL_config ========
	.asg 01H, _USECLKIDLTIME
	.asg IDL_F_stub, _CALIBRFXN
	IDL_config  _USECLKIDLTIME, _CALIBRFXN

;; ======== ISRC_config ========
	ISRC_config

;; ======== LOG_config ========
	.asg 01H, _ENABLED
	LOG_config  _ENABLED

;; ======== PIP_config ========
	.asg 02H, _gNumEmbed
	.asg 00H, _gNextId
	PIP_config  _gNumEmbed, _gNextId

;; ======== SEM_config ========
	SEM_config

;; ======== MBX_config ========
	MBX_config

;; ======== QUE_config ========
	QUE_config

;; ======== LCK_config ========
	LCK_config

;; ======== SIO_config ========
	SIO_config

;; ======== STS_config ========
	STS_config

;; ======== SYS_config ========
	.asg _UTL_doAbort, _ABORTFXN
	.asg _UTL_doError, _ERRORFXN
	.asg _UTL_halt, _EXITFXN
	.asg _UTL_doPutc, _PUTCFXN
	SYS_config  _ABORTFXN, _ERRORFXN, _EXITFXN, _PUTCFXN

;; ======== GIO_config ========
	.asg _FXN_F_nop, _CREATEFXN
	.asg _FXN_F_nop, _DELETEFXN
	.asg _FXN_F_nop, _PENDFXN
	.asg _FXN_F_nop, _POSTFXN
	GIO_config  _CREATEFXN, _DELETEFXN, _PENDFXN, _POSTFXN

;; ======== DEV_config ========
	DEV_config

;; ======== UDEV_config ========
	UDEV_config

;; ======== DGN_config ========
	DGN_config

;; ======== DHL_config ========
	.asg 00H, _gChannelsAvailable
	DHL_config  _gChannelsAvailable

;; ======== DPI_config ========
	DPI_config

;; ======== HOOK_config ========
	.asg 00H, _KNLID
	HOOK_config  _KNLID

;; ======== DIO_config ========
	.asg 00H, _STATIC
	.asg 00H, _NUMTSKBASE
	.asg 00H, _NUMSWIBASE
	DIO_config  _STATIC, _NUMTSKBASE, _NUMSWIBASE

;; ======== MEM_Obj IRAM ========
;; This object defines space for the DSP's on-chip memory
;;
;; MEM_Obj IRAM (len, iAllocHeap, iSegZero, iHeapId)
	.global IRAM
	.asg 030000H, _len
	.asg 01H, _iAllocHeap
	.asg IRAM, _iSegZero
	.asg segment_name, _iHeapId
	MEM_Obj 1, IRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId

;; ======== MEM_Obj CACHE_L2 ========
;; Generated by Cache Settings in GBL
;;
;; MEM_Obj CACHE_L2 (len, iAllocHeap, iSegZero, iHeapId)
	.global CACHE_L2
	.asg 010000H, _len
	.asg 00H, _iAllocHeap
	.asg IRAM, _iSegZero
	.asg segment_name, _iHeapId
	MEM_Obj 1, CACHE_L2, 0, _len, _iAllocHeap, _iSegZero, _iHeapId

;; ======== MEM_Obj SDRAM ========
;; 8M bytes of SDRAM
;;
;; MEM_Obj SDRAM (len, iAllocHeap, iSegZero, iHeapId)
	.global SDRAM
	.asg 01000000H, _len
	.asg 01H, _iAllocHeap
	.asg IRAM, _iSegZero
	.asg segment_name, _iHeapId
	MEM_Obj 1, SDRAM, 0, _len, _iAllocHeap, _iSegZero, _iHeapId

;; ======== CLK_Obj PRD_clock ========
;; This clock function calls PRD_tick from within the on-chip timer ISR
;;
;; CLK_Obj PRD_clock (function)
	.global PRD_clock
	.asg PRD_F_tick, _function
	CLK_Obj 1, PRD_clock, 0, _function

;; ======== HST_Obj RTA_fromHost ========
;; Used to access LOG and STS data
;;
;; HST_Obj RTA_fromHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign)
	.global RTA_fromHost
	.asg "input", _mode
	.asg "<NULL>", _buf
	.asg 04H, _framesize
	.asg 01H, _numframes
	.asg 00H, _stsflg
	.asg _FXN_F_nop, _notify
	.asg 00H, _arg0
	.asg 00H, _arg1
	.asg "RTDX", _lnk
	.asg 04H, _bufFrameAlign
	HST_Obj 1, RTA_fromHost, 1, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign

;; ======== HST_Obj RTA_toHost ========
;; Used to access LOG and STS data
;;
;; HST_Obj RTA_toHost (mode, buf, framesize, numframes, stsflg, notify, arg0, arg1, lnk, bufFrameAlign)
	.global RTA_toHost
	.asg "output", _mode
	.asg "<NULL>", _buf
	.asg 040H, _framesize
	.asg 01H, _numframes
	.asg 00H, _stsflg
	.asg _FXN_F_nop, _notify
	.asg 00H, _arg0
	.asg 00H, _arg1
	.asg "RTDX", _lnk
	.asg 04H, _bufFrameAlign
	HST_Obj 1, RTA_toHost, 0, _mode, _buf, _framesize, _numframes, _stsflg, _notify, _arg0, _arg1, _lnk, _bufFrameAlign

;; ======== HWI_Obj HWI_RESET ========
;; defines function for the RESET ISR
;;
;; HWI_Obj HWI_RESET (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_RESET
	.asg _c_int00, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "USER", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 01H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_RESET, 0, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_NMI ========
;; defines function for the NMI ISR
;;
;; HWI_Obj HWI_NMI (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_NMI
	.asg HWI_unused, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "USER", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 02H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_NMI, 1, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_RESERVED0 ========
;; RESERVED for RTDX
;;
;; HWI_Obj HWI_RESERVED0 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_RESERVED0
	.asg RESERVED, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "RTDX", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 04H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_RESERVED0, 2, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_RESERVED1 ========
;; RESERVED for RTDX
;;
;; HWI_Obj HWI_RESERVED1 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_RESERVED1
	.asg _RTDX_Poll, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "RTDX", _client
	.asg 01H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 08H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_RESERVED1, 3, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_INT4 ========
;; defines the INT4 Interrupt
;;
;; HWI_Obj HWI_INT4 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_INT4
	.asg HWI_unused, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "USER", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 010H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_INT4, 4, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_INT5 ========
;; defines the INT5 Interrupt
;;
;; HWI_Obj HWI_INT5 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_INT5
	.asg HWI_unused, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "USER", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 020H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_INT5, 5, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_INT6 ========
;; defines the INT6 Interrupt
;;
;; HWI_Obj HWI_INT6 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_INT6
	.asg HWI_unused, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "USER", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 040H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_INT6, 6, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_INT7 ========
;; defines the INT7 Interrupt
;;
;; HWI_Obj HWI_INT7 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_INT7
	.asg HWI_unused, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "USER", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 080H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_INT7, 7, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_INT8 ========
;; defines the INT8 Interrupt
;;
;; HWI_Obj HWI_INT8 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_INT8
	.asg HWI_unused, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "USER", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 0100H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_INT8, 8, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_INT9 ========
;; defines the INT9 Interrupt
;;
;; HWI_Obj HWI_INT9 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_INT9
	.asg HWI_unused, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "USER", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 0200H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_INT9, 9, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_INT10 ========
;; defines the INT10 Interrupt
;;
;; HWI_Obj HWI_INT10 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_INT10
	.asg HWI_unused, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "USER", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 0400H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_INT10, 10, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_INT11 ========
;; defines the INT11 Interrupt
;;
;; HWI_Obj HWI_INT11 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_INT11
	.asg HWI_unused, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "USER", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 0800H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_INT11, 11, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_INT12 ========
;; defines the INT12 Interrupt
;;
;; HWI_Obj HWI_INT12 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_INT12
	.asg HWI_unused, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "USER", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 01000H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_INT12, 12, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_INT13 ========
;; defines the INT13 Interrupt
;;
;; HWI_Obj HWI_INT13 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_INT13
	.asg HWI_unused, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "USER", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 02000H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_INT13, 13, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_INT14 ========
;; defines the INT14 Interrupt
;;
;; HWI_Obj HWI_INT14 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_INT14
	.asg CLK_F_isr, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "CLK", _client
	.asg 01H, _iUseDispatcher
	.asg CLK_A_TABBEG, _iArg
	.asg 04000H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_INT14, 14, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== HWI_Obj HWI_INT15 ========
;; defines the INT15 Interrupt
;;
;; HWI_Obj HWI_INT15 (function, monitor, addr, dataType, operation, client, iUseDispatcher, iArg, IntrMask, iCCBitMask)
	.global HWI_INT15
	.asg HWI_unused, _function
	.asg "Nothing", _monitor
	.asg 00H, _addr
	.asg "signed", _dataType
	.asg "STS_add(*addr)", _operation
	.asg "USER", _client
	.asg 00H, _iUseDispatcher
	.asg 00H, _iArg
	.asg 08000H, _IntrMask
	.asg 01H, _iCCBitMask
	HWI_Obj 1, HWI_INT15, 15, _function, _monitor, _addr, _dataType, _operation, _client, _iUseDispatcher, _iArg, _IntrMask, _iCCBitMask

;; ======== SWI_Obj KNL_swi ========
;; This Software Interrupt calls the TSK scheduler
;;
;; SWI_Obj KNL_swi (function, pri, mailbox, arg0, arg1, dorta)
	.global KNL_swi
	.asg _KNL_run, _function
	.asg 00H, _pri
	.asg 00H, _mailbox
	.asg 00H, _arg0
	.asg 00H, _arg1
	.asg 01H, _dorta
	SWI_Obj 1, KNL_swi, 0, _function, _pri, _mailbox, _arg0, _arg1, _dorta

;; ======== TSK_Obj initTsk ========
;; <add comments here>
;;
;; TSK_Obj initTsk (iFXN, iARG0, iARG1, iARG2, iARG3, iARG4, iARG5, iARG6, iARG7, iAUTOSTK, iMANSTK, iSTKSZ, iSTKSEG, iPRI, iENV, iEXITFLAG, iUSETSKNAME, iSTATREG)
	.global initTsk
	.asg _initTask, _iFXN
	.asg 00H, _iARG0
	.asg 00H, _iARG1
	.asg 00H, _iARG2
	.asg 00H, _iARG3
	.asg 00H, _iARG4
	.asg 00H, _iARG5
	.asg 00H, _iARG6
	.asg 00H, _iARG7
	.asg 01H, _iAUTOSTK
	.asg null, _iMANSTK
	.asg 0400H, _iSTKSZ
	.asg IRAM, _iSTKSEG
	.asg 0fH, _iPRI
	.asg 00H, _iENV
	.asg 01H, _iEXITFLAG
	.asg 00H, _iUSETSKNAME
	.asg 00H, _iSTATREG
	TSK_Obj 1, initTsk, 0, _iFXN, _iARG0, _iARG1, _iARG2, _iARG3, _iARG4, _iARG5, _iARG6, _iARG7, _iAUTOSTK, _iMANSTK, _iSTKSZ, _iSTKSEG, _iPRI, _iENV, _iEXITFLAG, _iUSETSKNAME, _iSTATREG

;; ======== TSK_Obj reader0 ========
;; <add comments here>
;;
;; TSK_Obj reader0 (iFXN, iARG0, iARG1, iARG2, iARG3, iARG4, iARG5, iARG6, iARG7, iAUTOSTK, iMANSTK, iSTKSZ, iSTKSEG, iPRI, iENV, iEXITFLAG, iUSETSKNAME, iSTATREG)
	.global reader0
	.asg _reader, _iFXN
	.asg 00H, _iARG0
	.asg 00H, _iARG1
	.asg 00H, _iARG2
	.asg 00H, _iARG3
	.asg 00H, _iARG4
	.asg 00H, _iARG5
	.asg 00H, _iARG6
	.asg 00H, _iARG7
	.asg 01H, _iAUTOSTK
	.asg null, _iMANSTK
	.asg 0400H, _iSTKSZ
	.asg IRAM, _iSTKSEG
	.asg 02H, _iPRI
	.asg 00H, _iENV
	.asg 01H, _iEXITFLAG
	.asg 00H, _iUSETSKNAME
	.asg 00H, _iSTATREG
	TSK_Obj 1, reader0, 0, _iFXN, _iARG0, _iARG1, _iARG2, _iARG3, _iARG4, _iARG5, _iARG6, _iARG7, _iAUTOSTK, _iMANSTK, _iSTKSZ, _iSTKSEG, _iPRI, _iENV, _iEXITFLAG, _iUSETSKNAME, _iSTATREG

;; ======== TSK_Obj writer0 ========
;; <add comments here>
;;
;; TSK_Obj writer0 (iFXN, iARG0, iARG1, iARG2, iARG3, iARG4, iARG5, iARG6, iARG7, iAUTOSTK, iMANSTK, iSTKSZ, iSTKSEG, iPRI, iENV, iEXITFLAG, iUSETSKNAME, iSTATREG)
	.global writer0
	.asg _writer, _iFXN
	.asg 00H, _iARG0
	.asg 00H, _iARG1
	.asg 00H, _iARG2
	.asg 00H, _iARG3
	.asg 00H, _iARG4
	.asg 00H, _iARG5
	.asg 00H, _iARG6
	.asg 00H, _iARG7
	.asg 01H, _iAUTOSTK
	.asg null, _iMANSTK
	.asg 0400H, _iSTKSZ
	.asg IRAM, _iSTKSEG
	.asg 01H, _iPRI
	.asg 00H, _iENV
	.asg 01H, _iEXITFLAG
	.asg 00H, _iUSETSKNAME
	.asg 00H, _iSTATREG
	TSK_Obj 1, writer0, 0, _iFXN, _iARG0, _iARG1, _iARG2, _iARG3, _iARG4, _iARG5, _iARG6, _iARG7, _iAUTOSTK, _iMANSTK, _iSTKSZ, _iSTKSEG, _iPRI, _iENV, _iEXITFLAG, _iUSETSKNAME, _iSTATREG

;; ======== TSK_Obj writer1 ========
;; <add comments here>
;;
;; TSK_Obj writer1 (iFXN, iARG0, iARG1, iARG2, iARG3, iARG4, iARG5, iARG6, iARG7, iAUTOSTK, iMANSTK, iSTKSZ, iSTKSEG, iPRI, iENV, iEXITFLAG, iUSETSKNAME, iSTATREG)
	.global writer1
	.asg _writer, _iFXN
	.asg 01H, _iARG0
	.asg 00H, _iARG1
	.asg 00H, _iARG2
	.asg 00H, _iARG3
	.asg 00H, _iARG4
	.asg 00H, _iARG5
	.asg 00H, _iARG6
	.asg 00H, _iARG7
	.asg 01H, _iAUTOSTK
	.asg null, _iMANSTK
	.asg 0400H, _iSTKSZ
	.asg IRAM, _iSTKSEG
	.asg 01H, _iPRI
	.asg 00H, _iENV
	.asg 01H, _iEXITFLAG
	.asg 00H, _iUSETSKNAME
	.asg 00H, _iSTATREG
	TSK_Obj 1, writer1, 0, _iFXN, _iARG0, _iARG1, _iARG2, _iARG3, _iARG4, _iARG5, _iARG6, _iARG7, _iAUTOSTK, _iMANSTK, _iSTKSZ, _iSTKSEG, _iPRI, _iENV, _iEXITFLAG, _iUSETSKNAME, _iSTATREG

;; ======== TSK_Obj writer2 ========
;; <add comments here>
;;
;; TSK_Obj writer2 (iFXN, iARG0, iARG1, iARG2, iARG3, iARG4, iARG5, iARG6, iARG7, iAUTOSTK, iMANSTK, iSTKSZ, iSTKSEG, iPRI, iENV, iEXITFLAG, iUSETSKNAME, iSTATREG)
	.global writer2
	.asg _writer, _iFXN
	.asg 02H, _iARG0
	.asg 00H, _iARG1
	.asg 00H, _iARG2
	.asg 00H, _iARG3
	.asg 00H, _iARG4
	.asg 00H, _iARG5
	.asg 00H, _iARG6
	.asg 00H, _iARG7
	.asg 01H, _iAUTOSTK
	.asg null, _iMANSTK
	.asg 0400H, _iSTKSZ
	.asg IRAM, _iSTKSEG
	.asg 01H, _iPRI
	.asg 00H, _iENV
	.asg 01H, _iEXITFLAG
	.asg 00H, _iUSETSKNAME
	.asg 00H, _iSTATREG
	TSK_Obj 1, writer2, 0, _iFXN, _iARG0, _iARG1, _iARG2, _iARG3, _iARG4, _iARG5, _iARG6, _iARG7, _iAUTOSTK, _iMANSTK, _iSTKSZ, _iSTKSEG, _iPRI, _iENV, _iEXITFLAG, _iUSETSKNAME, _iSTATREG

;; ======== TSK_Obj TSK_idle ========
;; This is the idle task; it only runs when no other task is ready
;;
;; TSK_Obj TSK_idle (iFXN, iARG0, iARG1, iARG2, iARG3, iARG4, iARG5, iARG6, iARG7, iAUTOSTK, iMANSTK, iSTKSZ, iSTKSEG, iPRI, iENV, iEXITFLAG, iUSETSKNAME, iSTATREG)
	.global TSK_idle
	.asg IDL_F_loop, _iFXN
	.asg 00H, _iARG0
	.asg 00H, _iARG1
	.asg 00H, _iARG2
	.asg 00H, _iARG3
	.asg 00H, _iARG4
	.asg 00H, _iARG5
	.asg 00H, _iARG6
	.asg 00H, _iARG7
	.asg 01H, _iAUTOSTK
	.asg null, _iMANSTK
	.asg 0400H, _iSTKSZ
	.asg IRAM, _iSTKSEG
	.asg 00H, _iPRI
	.asg 00H, _iENV
	.asg 01H, _iEXITFLAG
	.asg 00H, _iUSETSKNAME
	.asg 00H, _iSTATREG
	TSK_Obj 1, TSK_idle, 0, _iFXN, _iARG0, _iARG1, _iARG2, _iARG3, _iARG4, _iARG5, _iARG6, _iARG7, _iAUTOSTK, _iMANSTK, _iSTKSZ, _iSTKSEG, _iPRI, _iENV, _iEXITFLAG, _iUSETSKNAME, _iSTATREG

;; ======== IDL_Obj RTA_dispatcher ========
;; This object cannot be deleted
;;
;; IDL_Obj RTA_dispatcher (function, calibration)
	.global RTA_dispatcher
	.asg RTA_F_dispatch, _function
	.asg 01H, _calibration
	IDL_Obj 1, RTA_dispatcher, 0, _function, _calibration

;; ======== IDL_Obj IDL_cpuLoad ========
;; This object is required by the system to acquire CPU load data
;;
;; IDL_Obj IDL_cpuLoad (function, calibration)
	.global IDL_cpuLoad
	.asg IDL_F_busy, _function
	.asg 01H, _calibration
	IDL_Obj 1, IDL_cpuLoad, 0, _function, _calibration

;; ======== IDL_Obj LNK_dataPump ========
;; This object cannot be deleted
;;
;; IDL_Obj LNK_dataPump (function, calibration)
	.global LNK_dataPump
	.asg LNK_F_dataPump, _function
	.asg 01H, _calibration
	IDL_Obj 1, LNK_dataPump, 0, _function, _calibration

;; ======== LOG_Obj LOG_system ========
;; This object is required by the system to accumulate execution trace information
;;
;; LOG_Obj LOG_system (bufseg, buflen, logtype)
	.global LOG_system
	.asg IRAM, _bufseg
	.asg 0200H, _buflen
	.asg "fixed", _logtype
	LOG_Obj 1, LOG_system, 0, _bufseg, _buflen, _logtype

;; ======== LOG_Obj trace ========
;; <add comments here>
;;
;; LOG_Obj trace (bufseg, buflen, logtype)
	.global trace
	.asg IRAM, _bufseg
	.asg 0100H, _buflen
	.asg "circular", _logtype
	LOG_Obj 1, trace, 0, _bufseg, _buflen, _logtype

;; ======== SEM_Obj sem ========
;; <add comments here>
;;
;; SEM_Obj sem (iCount)
	.global sem
	.asg 00H, _iCount
	SEM_Obj 1, sem, 0, _iCount

;; ======== STS_Obj IDL_busyObj ========
;; This object is required by the system to accumulate CPU load statistics
;;
;; STS_Obj IDL_busyObj (prev, prevlow)
	.global IDL_busyObj
	.asg 00H, _prev
	.asg 00H, _prevlow
	STS_Obj 1, IDL_busyObj, 0, _prev, _prevlow

;; MODULE INITIALIZATION
	.sect ".sysinit"
	.global BIOS_init, _BIOS_init
BIOS_init:
_BIOS_init:
	GBL_preamble
	GBL_init
	SEM_init
	MEM_init
	OBJ_init
	BUF_init
	CLK_init
	PRD_init
	RTDX_init
	IDL_init
	LCK_init
	LOG_init
	MBX_init
	PIP_init
	QUE_init
	STS_init
	SYS_init
	HWI_init
	HST_init
	DEV_init
	UDEV_init
	DGN_init
	DHL_init
	DPI_init
	SIO_init
	SWI_init
	HOOK_init
	TSK_init
	ISRC_init
	GIO_init
	DIO_init
	GBL_postamble

;; MODULE STARTUP
	.sect ".sysinit"
	.global BIOS_start, _BIOS_start
BIOS_start:
_BIOS_start:
	GBL_preamble
	GBL_startup
	SEM_startup
	MEM_startup
	OBJ_startup
	BUF_startup
	CLK_startup
	PRD_startup
	RTDX_startup
	IDL_startup
	LCK_startup
	LOG_startup
	MBX_startup
	PIP_startup
	QUE_startup
	STS_startup
	SYS_startup
	HWI_startup
	HST_startup
	DEV_startup
	UDEV_startup
	DGN_startup
	DHL_startup
	DPI_startup
	SIO_startup
	SWI_startup
	HOOK_startup
	TSK_startup
	ISRC_startup
	GIO_startup
	DIO_startup
	GBL_postamble

;; EPILOGUE
	GBL_end
	MEM_end
	OBJ_end
	BUF_end
	CLK_end
	PRD_end
	RTDX_end
	HST_end
	HWI_end
	SWI_end
	TSK_end
	IDL_end
	ISRC_end
	LOG_end
	PIP_end
	SEM_end
	MBX_end
	QUE_end
	LCK_end
	SIO_end
	STS_end
	SYS_end
	GIO_end
	DEV_end
	UDEV_end
	DGN_end
	DHL_end
	DPI_end
	HOOK_end
	DIO_end

	.copy confend.s62
