После продолжительных и многократных подходов в GCC была добавлена поддержка процессоров 1801вм1 и 1801вм2.
Бинарники, собранные под Windows с помощью MING-W64, выложены Славе на сайт:
http://www.1801bm1.com/files/pdp11/c...out-11.2.1.zip
c4d55afc5150262f9ebbe3a9749a9d86 ming-w64-pdp11-aout-11.2.1.zip
Дата сборки: 13.11.21 ~ 16:41
Выбор модели "target" осуществляется опциями `-mbm1a`, `-mbm1g` или `-mbm2` в дополнение к оригинальным `-m10`, `-m40` и `-m45`.
`-mbm1` есть алиасом для `-mbm1a` -- процессор 1801вм1а поддержки MUL, как в 1801вм1г.
Нужно заметить, что данная сборка - это чистый кросс-компилятор без стандартной библиотеки C, без libgcc (нет софтверной реализации MUL, DIV операций). Дело наживное, можно "потянуть" из наработок DEC.
Соотвественно, буду со временем допиливать libgcc и базовую libc для RT11 (работа с файлами для начала).
Сборка поддерживает только компиляторы C и C++. Попытка добавить Ada и Fortran с наскока не получилось, возможно оно требует установки каких-то компонентов в систему при сборке, или какие-то специальные ключи конфигураци GCC.
Известно, что для свежего GCC 11+ есть Modula-2 frontend. Возможно, попробую прикрутить его для любителей изделий Вирта (Паскаль).
В сборку так же входят утилиты bin2load.exe и lda2sav.exe для облегчения получения выполняемых файлов в RT11.
Есть репозиторий с примером использования кросс-компилятора для генерации файлов в формате Files11 (*.SAV), использование ASM вставок для вывода символов/строк с помощью EMT 0341, 0351
https://github.com/yshestakov/pdp11-...ster/hello-gcc