CMNT Handles the 'Timer/Timeout' method CMNT Input: É ¥ inst/key/time/É CMNT Output: É/(time) ¥ ref/inst/É CMNT NOTE: ref will be zero if no action is required CMNT otherwise, ref will indicate the timer which timed out LITO 1 É ¥ 1/inst/key/time/É PRIM Stack/Xover É ¥ key/1/inst/key/time/É PRIM S_tree/Read É ¥ state/inst/key/time/É BRFL branch if not really timing PRIM Stack/Xdrop É ¥ inst/time/É PRIM Stack/Xdrop É ¥ inst/É LITO 0 É ¥ 0/inst/É BRTR PRIM Stack/Rotate down É ¥ time/inst/key/É PRIM Stack/Pop to aux É/time ¥ inst/key/É LITO 2 É/time ¥ 2/inst/key/É PRIM Stack/Xover É/time ¥ key/2/inst/key/É PRIM S_tree/Read É/time ¥ target_time/inst/key/É PRIM Stack/Dup from aux É/time ¥ time/target_time/inst/key/É CALL 354311 É/time ¥ rslt/target_time/inst/key/É BRFL branch if timeout not complete PRIM Stack/Drop from aux É ¥ target_time/inst/key/É PRIM Stack/Pop to aux É/target_time ¥ inst/key/É CALL 354310 É ¥ inst/É LITO 0 É ¥ 0/inst/É BRTR PRIM Stack/Drop É/time ¥ inst/key/É PRIM Stack/Over É/time ¥ key/inst/key/É LITO 0 É/time ¥ state/key/inst/key/É LITO 1 É/time ¥ 1/state/key/inst/key/É PRIM Stack/Rotate down É/time ¥ key/1/state/inst/key/É PRIM S_tree/Replace É/time ¥ inst/key/É PRIM Stack/Swap É/time ¥ key/inst/É