
    for(;;) // round Robin multitasking loop
    {
        if(bitFlags.msecFlag)  // process when 1 msec tic occured by 1msec timer interrupt
        {
            bitFlags.msecFlag    = 0;     // reset msec flag waiting for next tic
            if(bitFlags.repeatUpFlag)     // process when repeat up flag activated by debounced up switch
            {
                if(++repeatUpCntr == 250) // button pressed for 250 msec
                {
                    repeatUpCntr = 0;     // reset repeat up counter
                    repeatUp();           // increment the displayed number relative to cursor position
                    outFreq2(freqToOut);  // generate displayed frequency
                    dispFreq();           // display the incremented frequency
                }
            }
            if(bitFlags.repeatDnFlag) // process when repeat down flag activated by debounced down switch
            {
                if(++repeatDnCntr == 250)  // button pressed for over 250 msec
                {
                    repeatDnCntr = 0;      // reset repeat down timer 1msec increments
                    repeatDn(); // decrement the displayed number if positive depending on cursor position
                    outFreq2(freqToOut);  // generate displayed frequency
                    dispFreq();           // display the decremented frequency
                }
            }
            
            switch(systemState)  // PROCESS KEY SWITCH ENTRY IF ANY
            {
                case STATE0:  // check if New switch pressed?
                       -
                       -
                  rest of code
