User Tag List

Показано с 1 по 10 из 471

Тема: RT-11 для чайников

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11

    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,850
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    289
    Поблагодарили
    233 сообщений
    Mentioned
    30 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Manwe Посмотреть сообщение
    Можно чуть подробней? Возможно ли обработать код, посланный программой в Терминал, и если этот код равен, скажем, "A" - выйти из COM-файла?
    В RT-11 начиная с версии 5.0 входит IND процессор, позволяющий кроме выполнения команд, писать достаточно навороченные программы.
    Описание его можно найти здесь.

    - - - Добавлено - - -

    Пример командного файла IND для RT-11 (на самом деле он тут универсальный для многих систем, в том числе RT-11)

    Скрытый текст

    Код:
            .ENABLE SUBSTITUTION
    
            ;
            ; IOSCAN V4.0 generation program.
            ;
    
            .IF <SYSTEM> <> 1 .GOTO 10
            .SETS SYSTEM "RSX-11M"
            .SETS RSXSTB "LB:'<SYSUIC>'RSX11M.STB"
            .SETS RSXMC "LB:[11,10]RSXMC"
            .SETS EXEMC "LB:[1,1]EXEMC"
            .SETF MPLVEC
            .SETF POSVEC
            .GOTO BLDRS
    .10:
            .IF <SYSTEM> <> 6 .GOTO 20
            .SETS SYSTEM "RSX-11M-PLUS or Micro/RSX"
            .SETS RSXSTB "LB:'<LIBUIC>'RSXVEC.STB"
            .SETS RSXMC "LB:[11,10]RSXMC"
            .SETS EXEMC "LB:[1,1]EXEMC"
            .SETT MPLVEC
            .SETF POSVEC
            .GOTO BLDRS
    
    .20:
            .IF <SYSTEM> <> 11 .GOTO 30
            .SETS SYSTEM "P/OS"
            .SETS RSXSTB "LB:[1,5]POS.STB"
            .SETS RSXMC "LB:[1,5]RSXMC"
            .SETS EXEMC "LB:[1,5]EXEMC"
            .SETF MPLVEC
            .SETT POSVEC
            .GOTO BLDRS
    
    .30:
            .IF <SYSTEM> <> 7 .IF <SYSTEM> <> 10 .GOTO NOSUP
            .SETS SYSTEM "RT-11"
            .GOTO BLDRT
    
    .NOSUP:
            ; Running on unsupported operating system
            ;
            .EXIT <ERROR>
    
    .BLDRT:
            ; Running on RT-11 system.
            ;
            ; Building programs:
            ;       IOSCAN.BIN - IOSCAN for XXDP/XXDP+
            ;       IOSCAN.BOT - standalone IOSCAN (magtape bootstrap)
            ;       IOSCAN.LDA - standalone IOSCAN (absolute loader format)
            ;       IOSCAN.PDP - standalone IOSCAN
            ;       IOSCAN.PPU - standalone IOSCAN (PRUN format for MC0511)
            ;       IOSCAN.SAV - IOSCAN for RT-11
            ;
            .SETS FILES "SY:MACRO.SAV SY:LINK.SAV SY:SPLIT.SAV"
            .GOSUB FILTST
    
            MAC IOSCAN
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
            MAC IOSPP
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
            MAC IOSRT
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
            MAC IOSST
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
            MAC IOSXDP
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
            LIN/FOR/EXE:IOSCAN.PPU IOSPP,IOSCAN
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
            LIN/EXE:IOSCAN IOSRT,IOSCAN
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
            LIN/LDA/EXE:IOSCAN IOSST,IOSCAN
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
            LIN/LDA/EXE:IOSCAN.BIN IOSXDP,IOSCAN
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
            LIN/EXE:IOSCAN.BOT IOSST,IOSCAN
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
            SPLIT IOSCAN.BOT/B:1 ,IOSCAN.BIN
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
            DEL/NOQ IOS(CAN,PP,RT,ST,XDP).OBJ
            .EXIT <EXSTAT>
    
    .BLDRS:
            .SETS TSK "this 'SYSTEM' system only"
            .IFT MPLVEC .OR .IFT POSVEC .SETS TSK "any 'SYSTEM' system"
    
            ; Running on 'SYSTEM' system.
            ;
            ; Building programs:
            ;       IOSCAN.TSK - IOSCAN for 'TSK'
            ;
            .SETS CLI "MCR"
            .IFDF <CLI> .SETS CLI <CLI>
            .SETF DCL
            .IF CLI = "MCR" .GOTO COMPL
            .SETT DCL
            .IF CLI = "DCL" .GOTO COMPL
            ; Unsupported CLI - 'CLI' -- use MCR or DCL to build IOSCAN
            ;
            .EXIT <ERROR>
    
    .COMPL:
            .SETS FILES "'RSXSTB' 'RSXMC'.MAC 'EXEMC'.MLB"
            .GOSUB FILTST
    
            .SETS DIR <UIC>
            .IFDF <DIRECT> .SETS DIR <DIRECT>
    
            .OPEN IOSCANPRE.MAC
            .IFT MPLVEC .DATA IO$MPL        = 0     ;M+ exec vector support
            .IFT POSVEC .DATA IO$POS        = 0     ;P/OS exec vector
            .IFF MPLVEC .IFF POSVEC .DATA ;No exec vector support
            .CLOSE
    
            .OPEN IOSCANASM.CMD
            .DATA IOSCAN=IOSCAN
            .DATA IOSRSX='EXEMC'/ML,'RSXMC'/PA:1,SY:'DIR'IOSCANPRE,IOSRSX
            .CLOSE
    
            .OPEN IOSCANBLD.CMD
            .DATA IOSCAN/PR:5=IOSRSX,IOSCAN
            .DATA 'RSXSTB'/SS
            .DATA /
            .DATA ASG=TI:1
            .DATA UNITS=1
            .DATA //
            .CLOSE
    
            .GOSUB TSKTST
    
            MAC @IOSCANASM
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
            .IFT DCL LIN @IOSCANBLD
            .IFF DCL TKB @IOSCANBLD
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
            .IFT DCL DEL/NOWAR IOSCANPRE.MAC;*,IOSCANASM.CMD;*,IOSCANBLD.CMD;*
            .IFT DCL DEL/NOWAR IOSCAN.OBJ;*,IOSRSX.OBJ;*
            .IFT DCL PUR/NOWAR IOSCAN.TSK
            .IFF DCL PIP IOSCANPRE.MAC;*,IOSCANASM.CMD;*,IOSCANBLD.CMD;*/DE/NM
            .IFF DCL PIP IOSCAN.OBJ;*,IOSRSX.OBJ;*/DE/NM
            .IFF DCL PIP IOSCAN.TSK/PU
            .EXIT <EXSTAT>
    
    .FILTST:
            .SETF MISS
    .100:
            .PARSE FILES " " FILE FILES
            .TESTFILE 'FILE'
            .IF <FILERR> = 1 .GOTO 110
            .SETT MISS
            ; File not found - 'FILE'
    .110:
            .IF FILES <> "" .GOTO 100
            .IFT MISS ;
            .IFF MISS .RETURN
            .EXIT <ERROR>
    
    .TSKTST:
            .IFINS ...PIP .GOTO 200
            INS $PIP
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
    .200:
            .IF <SYSTEM> <> 11 .IFINS ...MAC .GOTO 210
            .IF <SYSTEM> <> 11 INS $MAC
            .IF <SYSTEM> = 11 .IFINS ...PMA .GOTO 210
            .IF <SYSTEM> = 11 INS $PMA
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
    .210:
            .IF <SYSTEM> <> 11 .IFINS ...TKB .GOTO 220
            .IF <SYSTEM> <> 11 INS $TKB
            .IF <SYSTEM> = 11 .IFINS ...PAB .GOTO 220
            .IF <SYSTEM> = 11 INS $PAB
            .IF <EXSTAT> <> <SUCCES> .EXIT <EXSTAT>
    .220:
            .RETURN
    [свернуть]


    - - - Добавлено - - -

    Цитата Сообщение от Manwe Посмотреть сообщение
    Возможно ли обработать код, посланный программой в Терминал
    Обработка вывода из программ - это немного из другой оперы - это ближе к BATCH процессору.
    Он в RT-11 тоже есть, но особой популярностью не пользовался.
    PDP-11/83, Электроника МС0511 (УК-НЦ), DECserver 90M
    Q-Bus: H9278-A, DLV11-J, DZQ11, DHV11, DELQA-M, LPV11, CQD-420/TM, DRV11
    PMI: KDJ11-BF, MSV11-JE
    VT220, CM7209

    Этот пользователь поблагодарил form за это полезное сообщение:

    hobot(13.09.2020)

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 206
    Последнее: 19.08.2020, 10:36
  2. Монолоадер для чайников.
    от ZX_NOVOSIB в разделе Для начинающих
    Ответов: 226
    Последнее: 24.05.2018, 08:54
  3. TS Conf прошивка для Чайников
    от AAA в разделе Софт
    Ответов: 157
    Последнее: 10.01.2015, 04:46
  4. Ответов: 35
    Последнее: 01.12.2006, 10:06

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •