   attachInterrupt(digitalPinToInterrupt(re_pinPush), pinPush_isr, CHANGE);
 
   // look at RE button, if DOWN this function returns 'true'
-  // FIXME - Worry about bounce?
-  return ! (PIND & 0x10);
+  return (PIND & 0x10);
 }
 
 //----------------------------------------
 // Handler for pusbutton interrupts (UP or DOWN).
+// Note: input signal has been inverted.
 //----------------------------------------
 
 void pinPush_isr(void)
 {
   // sample the pin value
-  re_down = ! (PIND & 0x10);
+  re_down = (PIND & 0x10);
   
   if (re_down)
   {

//
// Return 'true' if button was down during setup.
// This is used to reset some VFO display values if necessary.
//----------------------------------------

bool re_setup(void)


//----------------------------------------
// Handler for pinA interrupts.
// Note: input signal has been inverted.
//----------------------------------------

void pinA_isr(void)
{
  // sample the pin values for pin 0 to 7
  byte reading = PIND & 0xC;  // mask pins of interest

  if ((reading == B00001100) && aFlag)
  { // check that we have both pins at detent (HIGH) and that we are expecting detent on
    // this pin's rising edge
    if (re_down)
