Nothing has changed. Subroutines work in Hobby with M98 and M99, just not with G65 and G66. Also, conditional G code is an industrial feature that is not in hobby. What you are seeing is the WHILE (line 28) in the embedded subroutine causing the "feature not licensed".
Perhaps the example is not the best. I will make it so that it works in hobby by taking out the WHILE loop.
Steve