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

📄 ucos_ii.src

📁 uc/os在c167上的移植代码
💻 SRC
📖 第 1 页 / 共 5 页
字号:
	?LINE	642
	MOV	R4,R8
	MOV	R5,R9
	MOV	R10,#064h
	MOV	R11,#00h
	MOV	R2,#SOF _44
	MOV	[-R0],R2
	MOV	R2,#SEG _44
	MOV	[-R0],R2
	JMPS	SEG __mul,__mul
	?SYMB	'',$,102,2
_44:
	MOV	R10,_OSIdleCtrMax
	MOV	R11,(_OSIdleCtrMax+2)
	MOV	R2,#SOF _45
	MOV	[-R0],R2
	MOV	R2,#SEG _45
	MOV	[-R0],R2
	JMPS	SEG __udil,__udil
_45:
	MOV	R8,#064h
	MOV	R9,#00h
	SUB	R8,R4
	SUBC	R9,R5
	MOV	R6,R8
	?SYMB	'RL6',$,100,1
	?LINE	643
	CMPB	RL6,#064h
	JMPR	cc_SLE,_37
	?LINE	644
	MOVB	RL6,#064h
	?SYMB	'',$,102,1
	MOVB	_OSCPUUsage,RL6
	?LINE	645
	JMPR	cc_UC,_42
_37:
	?SYMB	'RL6',$,100,1
	CMPB	RL6,#00h
	JMPR	cc_SGE,_38
	?LINE	646
	MOVB	_OSCPUUsage,ZEROS
	?LINE	647
	JMPR	cc_UC,_42
_38:
	?SYMB	'',$,102,1
	?SYMB	'RL6',$,100,1
	?LINE	648
	MOVB	_OSCPUUsage,RL6
	?LINE	650
	JMPR	cc_UC,_42
_39:
	?SYMB	'',$,102,1
	?LINE	651
	MOVB	_OSCPUUsage,ZEROS
	?LINE	652
_42:
	?LINE	653
	MOV	R8,#SOF _46
	MOV	[-R0],R8
	?SYMB	'',$,96,8
	MOV	R8,#SEG _46
	MOV	[-R0],R8
	?SYMB	'',$,96,10
	JMPS	SEG _OSTaskStatHook,_OSTaskStatHook
	?SYMB	'',$,96,6
_46:
	?LINE	654
	MOV	R12,#05Bh
	MOV	R8,#SOF _47
	MOV	[-R0],R8
	?SYMB	'',$,96,8
	MOV	R8,#SEG _47
	MOV	[-R0],R8
	?SYMB	'',$,96,10
	JMPS	SEG _OSTimeDly,_OSTimeDly
	?SYMB	'',$,96,6
_47:
	?LINE	635
	JMPR	cc_UC,_36
	?SYMB	'',$,96,4
	?SYMB	'',$,96,2
	?SYMB	'',$,96,0
	?LINE	656
	RETS
_OSTaskStat	ENDP
	?SYMB	'',$,17,656
	?LINE	703
	PUBLIC	_OSTCBInit
	?SYMB	'OSTCBInit',_OSTCBInit,37,273
	?SYMB	'',703,8,34
_OSTCBInit	PROC	FAR
	?SYMB	'',03c0H,95,0
	MOV	[-R0],R9
	?SYMB	'',$,96,2
	MOV	[-R0],R8
	?SYMB	'',$,96,4
	MOV	[-R0],R7
	?SYMB	'',$,96,6
	MOV	[-R0],R6
	?SYMB	'',$,96,8
	MOV	R6,R12
; Locals:
; 
; CSEs:
;     ptcb = R12R15
;     prio = RL6
;     ptcb + 25 = R13R14
;     ptcb + 26 = R8R9
;     ptcb + 27 = R7R1
;     ptcb + 4 = R2R3
;     ptcb + 24 = R8R9
;     ptos = R13R14
; 
	?SYMB	'prio',1,99,273
	?SYMB	'ptos',2,99,287
	?SYMB	'ptcb',3,98,293
	?SYMB	'R13R14',$,100,2
	?SYMB	'RL6',$,100,1
	?LINE	707
	BCLR	IEN
	?LINE	708
	MOV	R12,_OSTCBFreeList
	MOV	R15,(_OSTCBFreeList+2)
	?SYMB	'R12R15',$,100,3
	?LINE	709
	MOV	R1,R15
	OR	R1,R12
	JMPA	cc_Z,_49
	?LINE	710
	MOV	R2,R12
	MOV	R3,R15
	ADD	R2,#04h
	EXTP	R3,#02h
	MOV	R4,[R2+#02H]
	MOV	R1,[R2]
	MOV	_OSTCBFreeList,R1
	MOV	(_OSTCBFreeList+2),R4
	?LINE	711
	BSET	IEN
	?LINE	712
	EXTP	R15,#02h
	MOV	[R12+#02H],R14
	MOV	[R12],R13
	?LINE	713
	EXTP	R15,#02h
	MOVB	[R12+#017H],RL6
	NOP
	?LINE	714
	MOVB	RL7,#00h
	EXTP	R15,#02h
	MOVB	[R12+#016H],RL7
	NOP
	?LINE	715
	MOV	R13,#00h
	?SYMB	'',$,102,2
	EXTP	R15,#02h
	MOV	[R12+#014H],R13
	NOP
	?LINE	735
	MOVBZ	R1,RL6
	MOVBZ	R1,RL1
	SHR	R1,#03h
	MOV	R13,R12
	MOV	R14,R15
	ADD	R13,#019h
	EXTP	R14,#02h
	MOVB	[R13],RL1
	?LINE	736
	MOVB	RL1,[R13]
	MOVBZ	R8,RL1
	EXTP	#PAG _OSMapTbl,#02h
	MOVB	RL1,[R8+#POF _OSMapTbl]
	NOP
	MOV	R8,R1
	MOV	R7,R12
	MOV	R1,R15
	ADD	R7,#01Bh
	MOV	R4,R8
	EXTP	R1,#01h
	MOVB	[R7],RL4
	?LINE	737
	MOVB	RL4,RL6
	ANDB	RL4,#07h
	MOV	R8,R12
	MOV	R9,R15
	ADD	R8,#018h
	EXTP	R9,#02h
	MOVB	[R8],RL4
	?LINE	738
	MOVB	RL4,[R8]
	MOVBZ	R8,RL4
	EXTP	#PAG _OSMapTbl,#02h
	MOVB	RL4,[R8+#POF _OSMapTbl]
	NOP
	MOV	R8,R12
	MOV	R9,R15
	ADD	R8,#01Ah
	EXTP	R9,#01h
	MOVB	[R8],RL4
	?LINE	741
	MOV	R4,#00h
	MOV	R5,#00h
	EXTP	R15,#03h
	MOV	[R12+#0CH],R4
	MOV	[R12+#0EH],R5
	NOP
	?LINE	745
	MOV	R4,#00h
	MOV	R5,#00h
	EXTP	R15,#03h
	MOV	[R12+#010H],R4
	MOV	[R12+#012H],R5
	NOP
	?LINE	748
	BCLR	IEN
	?LINE	749
	MOVBZ	R6,RL6
	?SYMB	'',$,102,1
	SHL	R6,#02h
	MOV	[R6+#DPP2:_OSTCBPrioTbl],R12
	MOV	[R6+#DPP2:_OSTCBPrioTbl+2],R15
	?LINE	750
	MOV	R6,_OSTCBList
	MOV	R4,(_OSTCBList+2)
	EXTP	R3,#02h
	MOV	[R2+#02H],R4
	MOV	[R2],R6
	?LINE	751
	MOV	R6,#00h
	MOV	R2,#00h
	EXTP	R15,#03h
	MOV	[R12+#08H],R6
	MOV	[R12+#0AH],R2
	NOP
	?LINE	752
	MOV	R6,(_OSTCBList+2)
	OR	R6,_OSTCBList
	JMPR	cc_Z,_48
	?LINE	753
	MOV	R6,_OSTCBList
	MOV	R2,(_OSTCBList+2)
	EXTP	R2,#03h
	MOV	[R6+#08H],R12
	MOV	[R6+#0AH],R15
	NOP
	?LINE	754
_48:
	?LINE	755
	MOV	_OSTCBList,R12
	MOV	(_OSTCBList+2),R15
	?LINE	756
	EXTP	R1,#01h
	MOVB	RL6,[R7]
	ORB	_OSRdyGrp,RL6
	?LINE	757
	EXTP	R14,#01h
	MOVB	RL6,[R13]
	MOVBZ	R13,RL6
	MOV	R14,#DPP2:_OSRdyTbl
	ADD	R14,R13
	EXTP	R9,#01h
	MOVB	RL6,[R8]
	MOVB	RL7,[R14]
	ORB	RL7,RL6
	MOVB	[R14],RL7
	?SYMB	'',$,102,3
	?LINE	758
	BSET	IEN
	?LINE	759
	MOVB	RL4,#00h
	JMPR	cc_UC,_50
	?LINE	760
_49:
	?LINE	761
	BSET	IEN
	?LINE	762
	MOVB	RL4,#046h
	?LINE	764
_50:
	MOV	R6,[R0+]
	?SYMB	'',$,96,6
	MOV	R7,[R0+]
	?SYMB	'',$,96,4
	MOV	R8,[R0+]
	?SYMB	'',$,96,2
	MOV	R9,[R0+]
	?SYMB	'',$,96,0
	MOV	R3,[R0+]
	MOV	R2,[R0+]
	ATOMIC	#03h
	PUSH	R3
	PUSH	R2
	RETS
_OSTCBInit	ENDP
	?SYMB	'',$,17,764
	?LINE	781
	PUBLIC	_OSTimeTick
	?SYMB	'OSTimeTick',_OSTimeTick,37,1
	?SYMB	'',781,8,34
_OSTimeTick	PROC	FAR
	?SYMB	'',03c0H,95,0
	MOV	[-R0],R9
	?SYMB	'',$,96,2
	MOV	[-R0],R8
	?SYMB	'',$,96,4
	MOV	[-R0],R7
	?SYMB	'',$,96,6
	MOV	[-R0],R6
	?SYMB	'',$,96,8
; Locals:
; 
; CSEs:
;     ptcb = R8R9
;     ptcb + 20 = R6R7
; 
	?SYMB	'ptcb',1,98,293
	?LINE	785
	MOV	R12,#SOF _57
	MOV	[-R0],R12
	?SYMB	'',$,96,10
	MOV	R12,#SEG _57
	MOV	[-R0],R12
	?SYMB	'',$,96,12
	JMPS	SEG _OSTimeTickHook,_OSTimeTickHook
	?SYMB	'',$,96,8
_57:
	?LINE	786
	MOV	R8,_OSTCBList
	MOV	R9,(_OSTCBList+2)
	?SYMB	'R8R9',$,100,1
	?LINE	787
	JMPR	cc_UC,_56
_51:
	?LINE	788
	BCLR	IEN
	?LINE	789
	MOV	R6,R8
	MOV	R7,R9
	ADD	R6,#014h
	EXTP	R7,#01h
	MOV	R12,[R6]
	JMPR	cc_Z,_55
	?LINE	790
	EXTP	R7,#01h
	MOV	R12,[R6]
	SUB	R12,#01h
	EXTP	R7,#01h
	MOV	[R6],R12
	CMP	R12,#00h
	JMPR	cc_NZ,_55
	?LINE	791
	EXTP	R9,#02h
	MOVB	RL1,[R8+#016H]
	NOP
	JB	R1.3,_52
	?LINE	792
	EXTP	R9,#02h
	MOVB	RL6,[R8+#01BH]
	NOP
	ORB	_OSRdyGrp,RL6
	?LINE	793
	EXTP	R9,#02h
	MOVB	RL6,[R8+#019H]
	NOP
	MOVBZ	R6,RL6
	MOV	R7,#DPP2:_OSRdyTbl
	ADD	R7,R6
	EXTP	R9,#02h
	MOVB	RL6,[R8+#01AH]
	NOP
	MOVB	RL1,[R7]
	ORB	RL1,RL6
	MOVB	[R7],RL1
	?LINE	794
	JMPR	cc_UC,_55
_52:
	?LINE	795
	MOV	R12,#01h
	EXTP	R7,#01h
	MOV	[R6],R12
	?LINE	798
_55:
	?LINE	799
	MOV	R6,R8
	MOV	R7,R9
	EXTP	R7,#03h
	MOV	R8,[R6+#04H]
	?SYMB	'',$,102,1
	MOV	R9,[R6+#06H]
	NOP
	?SYMB	'R8R9',$,100,1
	?LINE	800
	BSET	IEN
	?LINE	787
_56:
	EXTP	R9,#02h
	MOVB	RL6,[R8+#017H]
	NOP
	CMPB	RL6,#0Ch
	JMPR	cc_NE,_51
	?LINE	802
	BCLR	IEN
	?LINE	803
	SUB	_OSTime,ONES
	SUBC	(_OSTime+2),ONES
	?LINE	804
	BSET	IEN
	?LINE	805
	MOV	R6,[R0+]
	?SYMB	'',$,96,6
	MOV	R7,[R0+]
	?SYMB	'',$,96,4
	MOV	R8,[R0+]
	?SYMB	'',$,102,1
	?SYMB	'',$,96,2
	MOV	R9,[R0+]
	?SYMB	'',$,96,0
	MOV	R3,[R0+]
	MOV	R2,[R0+]
	ATOMIC	#03h
	PUSH	R3
	PUSH	R2
	RETS
_OSTimeTick	ENDP
	?SYMB	'',$,17,805
	?LINE	822
	PUBLIC	_OSVersion
	?SYMB	'OSVersion',_OSVersion,37,272
	?SYMB	'',822,8,34
_OSVersion	PROC	FAR
	?SYMB	'',00H,95,0
; Locals:
; 
; CSEs:
; 
	?LINE	823
	MOV	R4,#0C8h
	?LINE	824
	MOV	R3,[R0+]
	MOV	R2,[R0+]
	ATOMIC	#03h
	PUSH	R3
	PUSH	R2
	RETS
_OSVersion	ENDP
	?SYMB	'',$,17,824
	?SYMB	'',0,86,1
; ucos_ii.c   22	#include "os_mbox.c"
	?SYMB	'c:\software\ucos-ii\source\os_mbox.c',0,29,2
	?SYMB	'',0,86,2
	?LINE	38
	PUBLIC	_OSMboxAccept
	?SYMB	'OSMboxAccept',_OSMboxAccept,37,262
	?SYMB	'',38,8,34
_OSMboxAccept	PROC	FAR
	?SYMB	'',00H,95,0
; Locals:
; 
; CSEs:
;     pevent = R12R13
;     msg = R14R15
; 
	?SYMB	'pevent',2,99,281
	?SYMB	'msg',1,98,262
	?SYMB	'R12R13',$,100,2
	?LINE	42
	BCLR	IEN
	?LINE	43
	EXTP	R13,#02h
	MOVB	RL1,[R12+#08H]
	NOP
	CMPB	RL1,#01h
	JMPR	cc_EQ,_58
	?LINE	44
	BSET	IEN
	?LINE	45
	MOV	R4,#00h
	MOV	R5,#00h
	JMPR	cc_UC,_60
	?LINE	46
_58:
	?SYMB	'',$,102,2
	?SYMB	'R12R13',$,100,2
	?LINE	47
	EXTP	R13,#02h
	MOV	R15,[R12+#02H]
	MOV	R14,[R12]
	?SYMB	'R14R15',$,100,1
	?LINE	48
	MOV	R1,R15
	OR	R1,R14
	JMPR	cc_Z,_59
	?LINE	49
	MOV	R1,#00h
	MOV	R2,#00h
	EXTP	R13,#02h
	MOV	[R12+#02H],R2
	MOV	[R12],R1
	?LINE	50
_59:
	?SYMB	'',$,102,2
	?LINE	51
	BSET	IEN
	?LINE	52
	MOV	R4,R14
	MOV	R5,R15
	?LINE	53
_60:
	?SYMB	'',$,102,1
	MOV	R3,[R0+]
	MOV	R2,[R0+]
	ATOMIC	#03h
	PUSH	R3
	PUSH	R2
	RETS
_OSMboxAccept	ENDP
	?SYMB	'',$,17,53
	?LINE	72
	PUBLIC	_OSMboxCreate
	?SYMB	'OSMboxCreate',_OSMboxCreate,37,281
	?SYMB	'',72,8,34
_OSMboxCreate	PROC	FAR
	?SYMB	'',0300H,95,0
	MOV	[-R0],R9
	?SYMB	'',$,96,2
	MOV	[-R0],R8
	?SYMB	'',$,96,4
; Locals:
; 
; CSEs:
;     pevent = R8R9
;     msg = R12R13
; 
	?SYMB	'msg',1,99,262
	?SYMB	'pevent',2,98,281
	?SYMB	'R12R13',$,100,1
	?LINE	76
	BCLR	IEN
	?LINE	77
	MOV	R8,_OSEventFreeList
	MOV	R9,(_OSEventFreeList+2)
	?SYMB	'R8R9',$,100,2
	?LINE	78
	MOV	R14,(_OSEventFreeList+2)
	OR	R14,_OSEventFreeList
	JMPR	cc_Z,_61
	?LINE	79
	MOV	R14,_OSEventFreeList
	MOV	R15,(_OSEventFreeList+2)
	EXTP	R15,#02h
	MOV	R1,[R14+]
	MOV	R2,[R14]
	MOV	_OSEventFreeList,R1
	MOV	(_OSEventFreeList+2),R2
	?LINE	80
_61:
	?LINE	81
	BSET	IEN
	?LINE	82
	MOV	R14,R9
	OR	R14,R8
	JMPR	cc_Z,_62
	?LINE	83
	MOVB	RL1,#01h
	EXTP	R9,#02h
	MOVB	[R8+#08H],RL1
	NOP
	?LINE	84
	EXTP	R9,#02h
	MOV	[R8+#02H],R13
	MOV	[R8],R12
	?LINE	85
	MOV	R12,R8
	?SYMB	'',$,102,1
	MOV	R13,R9
	MOV	R14,#SOF _63
	MOV	[-R0],R14
	?SYMB	'',$,96,6
	MOV	R14,#SEG _63
	MOV	[-R0],R14
	?SYMB	'',$,96,8
	JMPS	SEG _OSEventWaitListInit,_OSEventWaitListInit
	?SYMB	'',$,96,4
_63:
	?LINE	86
_62:
	?LINE	87
	MOV	R4,R8
	MOV	R5,R9
	?LINE	88
	MOV	R8,[R0+]
	?SYMB	'',$,102,2
	?SYMB	'',$,96,2
	MOV	R9,[R0+]
	?SYMB	'',$,96,0
	MOV	R3,[R0+]
	MOV	R2,[R0+]
	ATOMIC	#03h
	PUSH	R3
	PUSH	R2
	RETS
_OSMboxCreate	ENDP
	?SYMB	'',$,17,88
	?LINE	119
	PUBLIC	_OSMboxPend
	?SYMB	'OSMboxPend',_OSMboxPend,37,262
	?SYMB	'',119,8,34
_OSMboxPend	PROC	FAR
	?SYMB	'',03c0H,95,0
	MOV	[-R0],R9
	?SYMB	'',$,96,2
	MOV	[-R0],R8
	?SYMB	'',$,96,4
	MOV	[-R0],R7
	?SYMB	'',$,96,6
	MOV	[-R0],R6
	?SYMB	'',$,96,8
	MOV	R9,[R0+#0EH]
	MOV	R8,[R0+#0CH]
; Locals:
; 
; CSEs:
;     pevent = R12R13
;     msg = R15R1
;     err = R8R9
;     OSTCBCur + 16 = R6R7
;     timeout = R14
; 
	?SYMB	'pevent',4,99,281
	?SYMB	'timeout',1,99,272
	?SYMB	'',01a0111H,38,331
	?SYMB	'err',3,99,331
	?SYMB	'msg',2,98,262
	?SYMB	'R12R13',$,100,4
	?SYMB	'R8R9',$,100,3
	?SYMB	'R14',$,100,1
	?LINE	123
	BCLR	IEN
	?LINE	124
	EXTP	R13,#02h
	MOVB	RL1,[R12+#08H]
	NOP
	CMPB	RL1,#01h
	JMPR	cc_EQ,_64
	?LINE	125
	BSET	IEN
	?LINE	126
	MOVB	RL1,#01h
	EXTP	R9,#01h
	MOVB	[R8],RL1
	?SYMB	'',$,102,3
	?LINE	127
	MOV	R4,#00h
	MOV	R5,#00h
	JMPA	cc_UC,_73
	?LINE	128
_64:
	?SYMB	'',$,102,4
	?SYMB	'',$,102,1
	?SYMB	'R12R13',$,100,4
	?SYMB	'R8R9',$,100,3
	?SYMB	'R14',$,100,1
	?LINE	129
	EXTP	R13,#02h
	MOV	R1,[R12+#02H]
	MOV	R15,[R12]
	?SYMB	'R15R1',$,100,2
	?LINE	130
	MOV	R6,R1
	OR	R6,R15
	JMPR	cc_Z,_65
	?LINE	131
	MOV	R6,#00h
	MOV	R7,#00h
	EXTP	R13,#02h
	MOV	[R12+#02H],R7
	MOV	[R12],R6
	?LINE	132
	BSET	IEN
	?LINE	133
	MOVB	RL6,#00h
	EXTP	R9,#01h
	MOVB	[R8],RL6
	?LINE	134
	JMPA	cc_UC,_72
_65:
	?SYMB	'',$,102,4
	?SYMB	'',$,102,3
	?SYMB	'',$,102,1
	?SYMB	'R12R13',$,100,4
	?SYMB	'R8R9',$,100,3
	?SYMB	'R14',$,100,1
	MOVB	RL6,_OSIntNesting
	CMPB	RL6,#00h
	JMPR	cc_ULE,_66
	?LINE	135
	BSET	IEN
	?LINE	136
	MOVB	RL7,#02h
	EXTP	R9,#01h
	MOVB	[R8],RL7
	?LINE	137
	JMPA	cc_UC,_72
_66:
	?SYMB	'',$,102,2
	?SYMB	'',$,102,4
	?SYMB	'',$,102,3
	?SYMB	'',$,102,1
	?SYMB	'R12R13',$,100,4
	?SYMB	'R8R9',$,100,3
	?SYMB	'R14',$,100,1
	?LINE	138
	MOV	R6,_OSTCBCur
	MOV	R7,(_OSTCBCur+2)
	ADD	R6,#016h
	EXTP	R7,#01h
	MOVB	RL1,[R6]
	BSET	R1.1
	EXTP	R7,#01h
	MOVB	[R6],RL1
	?LINE	139
	MOV	R6,_OSTCBCur
	MOV	R7,(_OSTCBCur+2)
	EXTP	R7,#02h
	MOV	[R6+#014H],R14
	NOP
	?LINE	140
	MOV	R6,R13
	MOV	R7,R12
	?SYMB	'',$,102,4
	MOV	R13,R6
	MOV	R14,#SOF _74
	?SYMB	'',$,102,1
	MOV	[-R0],R14
	?SYMB	'',$,96,10
	MOV	R14,#SEG _74
	MOV	[-R0],R14
	?SYMB	'',$,96,12
	JMPS	SEG _OSEventTaskWait,_OSEventTaskWait
	?SYMB	'',$,96,8
_74:
	MOV	R12,R7
	MOV	R13,R6
	?SYMB	'R12R13',$,100,4
	?LINE	141
	BSET	IEN
	?LINE	142
	MOV	R6,R13

⌨️ 快捷键说明

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