Code:
Str: String;
is merely a pointer.

You should define strings with length if you want to use them in data blocks:

Code:
Str: String[64];
I think this is will take 65 bytes but usable like normal string. Just that it can have at max 64 characters if defined like that. You can alternatively use array[1..64] of char;