📄 os_time.asm
字号:
R2=R2+10
R3=R2 // QImode move
R1=[R3] // QImode move
CMP R1,0 // QImode test
NSJNZ L36 //QImode NE
.debug
.dw '.stabn 0x44,0,175,',0,0
.dd LM55-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM55:
LBB8:
call _Critical_out // call with return value
.debug
.dw '.stabn 0x44,0,176,',0,0
.dd LM56-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM56:
R1=80 // QImode move
pc=L32 // Indirect jump
.debug
.dw '.stabn 0x44,0,177,',0,0
.dd LM57-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM57:
LBE8:
L36:
.debug
.dw '.stabn 0x44,0,179,',0,0
.dd LM58-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM58:
R2=[BP] // QImode move
R1=R2 // QImode move
R2=R2+10
R1=0 // QImode move
R4=R2 // QImode move
[R4]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,180,',0,0
.dd LM59-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM59:
R2=[BP] // QImode move
R1=R2 // QImode move
R2=R2+11
R3=R2 // QImode move
R3=[R3] // QImode move
R1=R3&55
CMP R1,0 // QImode test
NSJZ L37 //QImode EQ
.debug
.dw '.stabn 0x44,0,181,',0,0
.dd LM60-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM60:
R1=[BP] // QImode move
R2=R1 // QImode move
R1=R1+11
R3=[BP] // QImode move
R2=R3 // QImode move
R3=R3+11
R4=R3 // QImode move
R4=[R4] // QImode move
R2=R4&(-56)
R4=R1 // QImode move
[R4]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,182,',0,0
.dd LM61-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM61:
R2=[BP] // QImode move
R1=R2 // QImode move
R2=R2+12
R1=1 // QImode move
R3=R2 // QImode move
[R3]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,183,',0,0
.dd LM62-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM62:
pc=L38 // Indirect jump
L37:
.debug
.dw '.stabn 0x44,0,184,',0,0
.dd LM63-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM63:
R2=[BP] // QImode move
R1=R2 // QImode move
R2=R2+12
R1=0 // QImode move
R4=R2 // QImode move
[R4]=R1 // QImode move
L38:
.debug
.dw '.stabn 0x44,0,186,',0,0
.dd LM64-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM64:
R2=[BP] // QImode move
R1=R2 // QImode move
R2=R2+11
R3=R2 // QImode move
R3=[R3] // QImode move
R1=R3&8
CMP R1,0 // QImode test
NSJNZ L39 //QImode NE
.debug
.dw '.stabn 0x44,0,187,',0,0
.dd LM65-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM65:
LBB9:
R2=[BP] // QImode move
R1=R2 // QImode move
R2=R2+17
R1=[_OSRdyGrp] // QImode move
R4=R2 // QImode move
R4=[R4] // QImode move
R1|=R4
[_OSRdyGrp]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,188,',0,0
.dd LM66-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM66:
R2=[BP] // QImode move
R1=R2 // QImode move
R2=R2+15
R1=_OSRdyTbl // QImode move
R3=R2 // QImode move
R2=[R3] // QImode move
R1 = R1 + R2 //addqi3
R3=[BP] // QImode move
R2=R3 // QImode move
R3=R3+15
R2=_OSRdyTbl // QImode move
R4=R3 // QImode move
R3=[R4] // QImode move
[bp+2]=R2 // QImode move
R2=[bp+2] // QImode move
R2 = R2 + R3 //addqi3
[bp+2]=R2 // QImode move
R4=[BP] // QImode move
R3=R4 // QImode move
R3=R4+16
[bp+3]=R3 // QImode move
R4=[bp+2] // QImode move
R2=[R4] // QImode move
R4=[bp+3] // QImode move
R4=[R4] // QImode move
R2|=R4
R4=R1 // QImode move
[R4]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,189,',0,0
.dd LM67-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM67:
call _Critical_out // call with return value
.debug
.dw '.stabn 0x44,0,190,',0,0
.dd LM68-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM68:
call _OS_Sched // call without return value
.debug
.dw '.stabn 0x44,0,191,',0,0
.dd LM69-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM69:
LBE9:
pc=L40 // Indirect jump
L39:
.debug
.dw '.stabn 0x44,0,192,',0,0
.dd LM70-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM70:
LBB10:
call _Critical_out // call with return value
.debug
.dw '.stabn 0x44,0,193,',0,0
.dd LM71-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM71:
LBE10:
L40:
.debug
.dw '.stabn 0x44,0,194,',0,0
.dd LM72-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM72:
R1=0 // QImode move
pc=L32 // Indirect jump
.debug
.dw '.stabn 0x44,0,195,',0,0
.dd LM73-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM73:
LBE5:
.debug
.dw '.stabn 0x44,0,195,',0,0
.dd LM74-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LM74:
L32:
sp+=4
pop bp from [sp]
retf
.endp // end of OSTimeDlyResume
.debug
.dw '.stabs "prio:p21",160,0,0,7',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB5-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
.debug
.dw '.stabs "ptcb:45=*44",128,0,0,0',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB6-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE6-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB7-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE7-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB8-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE8-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB9-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE9-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB10-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE10-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE5-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
.debug
.dw '.stabf ',0,0
.dd LME3-_OSTimeDlyResume
.dw 0x0d,0x0a
.code
LME3:
.code
.debug
.dw '.stabs "OSTimeGet:F25",36,0,0,',0,0,offset _OSTimeGet,seg _OSTimeGet,0x0d,0x0a
.CODE
.public _OSTimeGet
_OSTimeGet: .proc
.debug
.dw '.stabn 0x44,0,213,',0,0
.dd LM75-_OSTimeGet
.dw 0x0d,0x0a
.code
LM75:
// total=3, vars=3
// frame_pointer_needed: 1
push bp to [sp]
sp-=3
bp=sp+1
R1=BP+6
[bp+2]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,214,',0,0
.dd LM76-_OSTimeGet
.dw 0x0d,0x0a
.code
LM76:
LBB11:
.debug
.dw '.stabn 0x44,0,221,',0,0
.dd LM77-_OSTimeGet
.dw 0x0d,0x0a
.code
LM77:
call _Critical_in // call with return value
.debug
.dw '.stabn 0x44,0,222,',0,0
.dd LM78-_OSTimeGet
.dw 0x0d,0x0a
.code
LM78:
//split R1, [_OSTime]
R1=[_OSTime] // QImode move
R2=[_OSTime+1] // QImode move
//split [BP], R1
[BP]=R1 // QImode move
[bp+1]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,223,',0,0
.dd LM79-_OSTimeGet
.dw 0x0d,0x0a
.code
LM79:
call _Critical_out // call with return value
.debug
.dw '.stabn 0x44,0,224,',0,0
.dd LM80-_OSTimeGet
.dw 0x0d,0x0a
.code
LM80:
//split R3, [BP]
R3=[BP] // QImode move
R4=[bp+1] // QImode move
//split R1, R3
R1=R3 // QImode move
R2=R4 // QImode move
pc=L47 // Indirect jump
.debug
.dw '.stabn 0x44,0,225,',0,0
.dd LM81-_OSTimeGet
.dw 0x0d,0x0a
.code
LM81:
LBE11:
.debug
.dw '.stabn 0x44,0,225,',0,0
.dd LM82-_OSTimeGet
.dw 0x0d,0x0a
.code
LM82:
L47:
sp+=3
pop bp from [sp]
retf
.endp // end of OSTimeGet
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB11-_OSTimeGet
.dw 0x0d,0x0a
.code
.debug
.dw '.stabs "ticks:25",128,0,0,0',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE11-_OSTimeGet
.dw 0x0d,0x0a
.code
.debug
.dw '.stabf ',0,0
.dd LME4-_OSTimeGet
.dw 0x0d,0x0a
.code
LME4:
.code
.debug
.dw '.stabs "OSTimeSet:F19",36,0,0,',0,0,offset _OSTimeSet,seg _OSTimeSet,0x0d,0x0a
.CODE
.public _OSTimeSet
_OSTimeSet: .proc
.debug
.dw '.stabn 0x44,0,242,',0,0
.dd LM83-_OSTimeSet
.dw 0x0d,0x0a
.code
LM83:
// total=1, vars=1
// frame_pointer_needed: 1
push bp to [sp]
sp-=1
bp=sp+1
R1=BP+4
[BP]=R1 // QImode move
.debug
.dw '.stabn 0x44,0,249,',0,0
.dd LM84-_OSTimeSet
.dw 0x0d,0x0a
.code
LM84:
LBB12:
call _Critical_in // call with return value
.debug
.dw '.stabn 0x44,0,250,',0,0
.dd LM85-_OSTimeSet
.dw 0x0d,0x0a
.code
LM85:
R3=[BP] // QImode move
//split R1, [R3]
R1=[R3++] // QImode move
R2=[R3--] // QImode move
//split [_OSTime], R1
[_OSTime]=R1 // QImode move
[_OSTime+1]=R2 // QImode move
.debug
.dw '.stabn 0x44,0,251,',0,0
.dd LM86-_OSTimeSet
.dw 0x0d,0x0a
.code
LM86:
call _Critical_out // call with return value
.debug
.dw '.stabn 0x44,0,252,',0,0
.dd LM87-_OSTimeSet
.dw 0x0d,0x0a
.code
LM87:
LBE12:
.debug
.dw '.stabn 0x44,0,252,',0,0
.dd LM88-_OSTimeSet
.dw 0x0d,0x0a
.code
LM88:
L48:
sp+=1
pop bp from [sp]
retf
.endp // end of OSTimeSet
.debug
.dw '.stabs "ticks:p25",160,0,0,4',0x0d,0x0a
.CODE
.debug
.dw '.stabn 0xc0,0,0,',0,0
.dd LBB12-_OSTimeSet
.dw 0x0d,0x0a
.code
.debug
.dw '.stabn 0xe0,0,0,',0,0
.dd LBE12-_OSTimeSet
.dw 0x0d,0x0a
.code
.debug
.dw '.stabf ',0,0
.dd LME5-_OSTimeSet
.dw 0x0d,0x0a
.code
LME5:
.external _Critical_out
.external _Critical_in
.external _OSTime
.external _OSTCBPrioTbl
.external _OS_Sched
.external _OSRdyGrp
.external _OSRdyTbl
.external _OSTCBCur
.external __divu2
.external __lshiu2
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -