Простенькая утилитка для создания универсальных командных файлов RT-11 (в условиях когда IND недоступен/неудобен).
Позволяет выполнять команды при определенных условиях.
Программа работает только в RT-11 V5.02 и новее (и совместимых).
Сильно не заморачивался, сделал несколько проверок на которые натыкаюсь когда перетаскиваю рабочие системы с места на место без изменений.Код:IF [NOT] DECpro [cmd] - проверяет что система запущена на DEC Professional IF [NOT] EXIsts file [cmd] - проверяет что файл существует IF [NOT] INItialized dev [cmd] - проверяет что устройство инициализировано под RT-11 (проверяется только home block, соответственно то, что инициализировано кривыми прогами вроде FLX не будет распознано) IF [NOT] INStalled dev [cmd] - проверяет что драйвер установлен IF [NOT] LOAded dev [cmd] - проверяет что драйвер загружен IF [NOT] MAPped [cmd] - проверяет что система поддерживает управление памятью IF [NOT] MULtiterminal [cmd] - проверяет что система многотерминальная IF [NOT] PROtected file [cmd] - проверяет что файл защищен от удаления IF [NOT] RSTs [cmd] - проверяет что система - RSTS/E (на самом деле последний вариант RSTS/E совместим максимум с RT-11 V3, так что вряд-ли эта проверка сработает когда-либо) IF [NOT] RTEm [cmd] - проверяет что система - RTEM-11 IF [NOT] TSX [cmd] - проверяет что система - TSX-Plus
Все ключевые слова можно сокращать до трех букв.
Если команда не указана - просто печатается сообщение в случае совпадения условия.
Команд для выполнения может быть несколько (разделяются через \):Код:RT-11XM (S) V05.07 .IF INS VM: IF NOT INI VM: INI VM:/NOQ .IF INS VM: ASS VM0: CF .IF INS VM: ASS VM0: WF .IF INI DU4: ASS DU4: DK .R TTSET /SL .IF INS EQ: LOA EQ: .R DATE ?DATE-I-Time source: 70-71-BC-50-EB-D0, OpenBSD 6.7 amd64 ?DATE-I-Date & time: 24-MAY-2020 13:03:19 .IF LOA EQ: UNL EQ: .Код:.IF MULTITERM SET XL MTTY\SET XL LINE=1




Ответить с цитированием