Ich finde es komisch, dass das ohne Angabe eines Encodings nicht auf beiden Seiten mit dem gleichen Standardwert klappt. Du kannst es aber einmal explizit mit UTF-8 Kodierung versuchen. Readln und Writeln unterstützen beide als zweiten Parameter das Encoding, z.B. würde ich es mit IndyTextEncoding_UTF8 aus der
Unit IdGlobal versuchen und das bei beiden Funktionen übergeben.