SoftwareSerial Signal FIFO

the problem is in these two lines

if (UltraSerial.available()) {
    for(;;) {

suppose you have one byte available in UltraSerial, it enters an endless loop that (tries to) read a char per iteration (assuming neu and new are the same;)

add a few lines to check it.

  if (UltraSerial.available()) {
    for(;;) {

      neu = UltraSerial.read();
      Serial.print("<");
      Serial.print(neu, DEC);
      Serial.println(">");