Files
Sepp J Morris 31738079c4 Upload
Digital Research
2020-11-06 18:50:37 +01:00

41 lines
1.0 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

;*****************************************************
;*
;* TICK Process
;*
;*****************************************************
;======
notick: ;NO ONE ON DELAY LIST
;======
mov bx,rlr ! mov es,p_uda[bx]
mov u_wrkseg,ds
mov al,io_stopclk ! call xiosif
tick: ;SOMEONE MAY BE ON DELAY LIST
;----
; flag wait on the TICK flag
mov dx,flag_tick ! mov cx,f_flagwait
int mpmint
; see if anyone delaying
pushf ! cli
mov bx,dlr
cmp bx,0 ! jz drl_empty
; decrement # of ticks to wait
; see if done waiting
dec p_wait[bx] ! jnz next_tick
; our process is done waiting
enddelay: mov si,p_link[bx] ! mov dlr,si
mov p_stat[bx],ps_run
mov ax,drl ! mov p_link[bx],ax
mov drl,bx
cmp si,0 ! je drl_empty
cmp p_wait[si],0 ! jne next_tick
mov bx,si ! jmps enddelay
next_tick: popf ! jmps tick
drl_empty:
popf ! jmps notick