If you put the cursor at the end of the comment line below that finishes with CRC16 END and press return, slick goes into a permanent busy loop and has to be killed with task manager. Happens in V21.0.3 and in RC2.
procedure calc_eeprom_stringlist_crc(const stringlist_data : TStringList, var RunCrc : word, var ln : cardinal);
var
k, h, len : cardinal;
begin
// LEN CAL Z1 Z2 Z3 F1 A1 F2 A2 F3 A3 CRC16 END
RunCrc := 0;
for k := 2 to 10 do // Z1 to A3
begin
len := length(stringlist_data[k]);
ln := ln + len;
for h := 0 to len - 1 do
ByteCrc16(stringlist_data[k][h], RunCrc);
end;
end;