Forever and ever .... loops question

I would assume that the block nested in a forever-loop would run, say forever or unti I press some button. However, the program stops after only a few cycles.

What am I doing wrong?

#include <MAKERphone.h>

MAKERphone mp;

void setup() {
  mp.begin(1);
  mp.display.fillScreen(TFT_BLACK);
  mp.popup("A very Nice Program", 2);
}

void loop() {
  mp.update();
  mp.display.fillScreen(TFT_WHITE);
  mp.popup("Now goes it loose", 2);
  delay(500);
  mp.leds[2] = CRGB::Blue;
  mp.leds[3] = CRGB::Red;
  mp.leds[4] = CRGB::Green;
  mp.update();
  mp.display.fillScreen(TFT_CYAN);
  mp.popup("Aba hallo", 2);
  delay(500);
  mp.leds[5] = CRGB::Blue;
  mp.leds[6] = CRGB::Red;
  mp.leds[7] = CRGB::Green;
  mp.update();
}