   bool last_gate;
   uint8_t last_stage;
 
-  bool display_changed, gate_changed;
+  bool display_changed[6];
 
   struct DU_SEQ_Parameter_Values {
     int8_t stage_pitch[8];

            params.vals.stage_steps[stage_selected] = 8;
          }
          seq_values.stage_steps[stage_selected] = params.vals.stage_steps[stage_selected];
          display->fill_rect(16 * stage_selected, 35, 16, 7, DUINO_SSD1306::White);
          display_steps(16 * stage_selected, 35, params.vals.stage_steps[stage_selected], DUINO_SSD1306::Black);
          break;
        case 4: // gate
          params.vals.stage_gate[stage_selected] += v;

        case 0: // save
          save_params(0, params.bytes, 30);
          display->fill_rect(123, 2, 3, 3, DUINO_SSD1306::Black);
          display_changed[0] = true;
          break;
        case 1: // top
          invert_current_selection();
