thanks that make a bit more sense to me now

i had only used the M_GTE flag = 0 for < values
and M_GTE_flag = 1 for > values
Code:
@  MATH_CMP _Result_32bit , _Slow_Sublap_32bit            ' Compare Pvars - result in M_EQ and M_GTE bits - if sublap result < slow_sublap then slow_sublap = sublap resutl
                  @  MOVE?PB  _M_GTE, _glc_s                                ' get result of compare ( Z=>X) into a tmp PBP byte                                                         
                  if glc_s = 0  then                                        ' if result is 0 then compare sublap < slow_sublap = true 
                     @  MOVE?PP  _Result_32bit , _Slow_Sublap_32bit         ' copy the sublap time to slow_sublap time 
                etc ......
which is not correct i think

i am using the nmath for time to sort out fastest , slowest times from a record
each record shows time value for each lap

base method is
tmp0 = 0
slowlap = 0
fastlap = 0

loop:
get a lap time & its record ref
convert time to secs_result
secs_result - tmp0 ' to get lap time in sec
tmp0 = secs_result ' copy last time into tmp for next loop
if sec_result < slowlap then
slowlap = sec_result
store other pbp records
endif

if sec_result > fastlap then
fastlap = sec_result
store other pbp records
endif
endloop