That appears to be Intel HEX format, it should be written to EEPROM as binary data, but that would depend on how you are writing to the EEPROM.
void tisk(int dis) {
dis = (dis * 5);
Serial.print("dis = "); Serial.println(dis);
char buf[4];
sprintf(buf, "%X", (EEPROM.read(dis + 0)));
Serial.print(" data = "); Serial.println(buf);
for (byte k = 0; k < strlen_P(buf); k++) {
myChar = pgm_read_byte_near(buf + k);
Serial.print(" k="); Serial.print(k); Serial.print(" mychar="); Serial.print(myChar);
}
}
Why (dis * 5)? Each address would be two bytes. 5 implies that you believe the data is being saved as a null-terminated char array.
EEPROM.read will only read a single byte of data from EEPROM, if you want to read a multi-byte value use EEPROM.get.
Are you short of program memory? Would be a lot easier to store this data in PROGMEM.
I do not see how you are saving any memory by using EEPROM, since you still have individual display.print function calls for each string - just reference the string in PROGMEM directly, or use the F() macro.