40 lines
395 B
ArmAsm
40 lines
395 B
ArmAsm
YKIdleTask:
|
|
|
|
push bp
|
|
mov bp, sp
|
|
|
|
yak_loop:
|
|
inc word [YKIdleCount]
|
|
jmp yak_loop
|
|
|
|
YKDispatcher:
|
|
|
|
cli
|
|
push bp
|
|
mov bp, sp
|
|
|
|
mov bx, [bp+4] ;Obtain stack pointer from TCB
|
|
mov sp, [bx+4] ;Load stack pointer into SP
|
|
|
|
pop bp
|
|
pop es
|
|
pop ds
|
|
pop si
|
|
pop di
|
|
pop dx
|
|
pop cx
|
|
pop bx
|
|
pop ax
|
|
|
|
iret
|
|
|
|
YKEnterMutex:
|
|
|
|
cli
|
|
ret
|
|
|
|
YKExitMutex:
|
|
|
|
sti
|
|
ret
|