Не только. Есть ещё условная компиляция и некоторое количество наворотов вокруг неё.
Потому что полно кода, который уже в (стандартном) obj формате плюс всякие линкеры для сборки
Не вариант
Вид для печати
Некоторый обзор API в разных ОС БК, навеян https://pashigorov.pdp-11.ru/files/osreview.html
argv cli, работа с аргументами
serr обработка ошибок пользователем
isys installable device drivers
ivfs installable file systems
fat FAT как родная file system
date хранит last modified
hdd умеет в винчестер
subdir умеет в подкаталоги
large умеет в файлы больше 64K
byte хранит размер файла в байтах
blockio произвольный доступ к файлам (поблочный)
fileio произвольный доступ к файлам
dirio работа с каталогами (findfirst, next ...)
ttyio работа с консолью
0010/0011 с монитором 0010
ANDOS !argv serr isys !ivfs* fat* date hdd subdir* large byte blockio fileio* dirio !ttyio
ivfs -- только в оболочке DM
fat -- fat12 фиксированного размера (800K) с самодельными подкаталогами
fileio -- только open/close; random i/o надо делать самому (есть syscalls для работы с fat)
subdir -- фс умеет в subdirs, open() -- нет
DX-DOS argv serr? isys* !ivfs fat* date !hdd !subdir large byte blockio fileio dirio ttyio
isys -- пользуется 160006 (chs) вместо 160004 (lba) api
fat -- fat12 без подкаталогов, размер не больше 800K?
MK-DOS argv* serr* !isys ivfs* !fat !date hdd subdir* !large byte* blockio* !fileio dirio ttyio
argv -- только в оболочке MC; не документировано
serr -- только подавление вывода ошибок на экран; при ошибках диска всегда делается seek +1/-1 ?
ivfs -- только через эмуляцию EMT36?
subdir -- фс умеет в subdirs, open() -- нет
byte -- длина файла хранится дважды -- в байтах и блоках; размер фс не больше ___
blockio -- фс не умеет в фрагменты, поэтому file i/o получается добавлением offset из dirent; append делается созданием нового файла итп
0011 native
AO-DOS argv serr* !isys !ivfs !fat !date !hdd subdir* !large byte blockio* !fileio dirio? ttyio
serr -- только подавление вывода ошибок на экран
subdir -- фс умеет в subdirs, open() -- нет
blockio -- только файлы целиком (EMT36)
CSI-DOS argv* !serr !isys !ivfs !fat !date hdd* subdir large* byte* blockio !fileio dirio !ttyio
argv -- только в оболочке x-shell?
hdd -- только самарский?
large, byte -- для длинных файлов длина хранится в блоках
HC-DOS argv serr? isys !ivfs !fat date !hdd !subdir !large byte? blockio fileio* dirio ttyio
fileio -- только последовательное?
ОСБК-11 (RT-11)
argv serr isys !ivfs !fat date hdd* !subdir large? !byte blockio fileio dirio ttyio
hdd -- нужно патчить драйвер BY.SYS?
BKUNIX (LSX UNIX)
argv serr !isys !ivfs !fat date !hdd subdir large* byte blockio fileio dirio ttyio
large -- предел 1MB
еще бы сами API собрать в кучу
ANDOS
https://forum.maxiol.com/index.php?showtopic=5558 (ANDOS.VXT, ANDOS330.VXT, ANTECH.VXT -- нету README, MASTER, ANUTILS, PROFIT, MASTECH)
API оболочки DM сделан через IOT + резервные команды 107xxx, 007xxx и 070xxx
AO-DOS
в дистрибутиве с https://r-games.net/bk001x/softbk/23...e-sistemy.html
CSI-DOS
https://forum.maxiol.com/index.php?showtopic=4985
DX-DOS
в дистрибутиве с https://r-games.net/bk001x/softbk/23...e-sistemy.html
disasm -- https://gid.pdp-11.ru/src/dx_dos.zip
HC-DOS
в дистрибутиве с https://r-games.net/bk001x/softbk/23...e-sistemy.html
MK-DOS
https://forum.pk-fpga.ru/viewtopic.php?f=23&t=5535 (+ исходники)
ОСБК-11
в дистрибутивах с https://bkcrew.pdp-11.ru/images.htm
https://gid.pdp-11.ru/books/00015-01.32.01.html -- макросы из BKLIB.MLB
BKUNIX
https://gunkies.org/wiki/LSX + https://github.com/sergev/bkunix
Спасибо
Собрал эту сводную воедино со всеми файлами документации и дистрибутивами
Операционные системы для БК-0010/БК-0010.01/БК-0011/БК-0011М
+ дополнил еще и NORDом
Вот более полное собрание всяких документаций, надёрганных из всяких образов os_docs.7z. А то мне тоже иногда бывает надо, и нужно чтобы всё в одном месте лежало, что найти быстрее было.
Я там архив слегка подправил, исходников MKDOS добавил. И хочу напомнить, что есть полные дизассемблированные исходники ANDOS 3.10. Правда Диск Мастер мне полностью осилить не удалось. Но ядро - тщательно откомментировано. andos310_src.zip
Ядро ANDOS 3.30 почти ничем не отличается, но вот Диск Мастер я так и не осилил. Потому исходников 3.30 нет.
обновил
заодно выложил и в файловом варианте
https://mirrors.pdp-11.ru/_bk0010-11-11m/soft/_OC_/