Задумал написать консольную утилитку, преобразующую входной текстовый файл. Взялся за XDS, поскольку это самый простой на сегодня консольный инструмент среди Оберонов. Требование такое: на выходе могут быть файлы с Unix-овыми переводами строк (одиночный символ LF = 0AX).

Out.Ln выдаёт CRLF, это понятно. Настройки, чтобы задать LF - нету, это ладно.
Out.Char(0AX) выдаёт последовательность CRLF. Это уже странно.
Ладно, модуль Out - это надстройка над стандартной подсистемой работы с каналами ввода-вывода, написанной на Modula. Полезем в эту подсистему.

RawIO.Write(StdChans.OutChan(), 0AX); -выдаёт CRLF.
ch := 0AX; IOChan.RawWrite(StdChans.OutChan(), SYSTEM.ADR(ch), 1); -выдаёт CRLF.

Чувствую себя идиотом.