Важная информация

User Tag List

Страница 22 из 22 ПерваяПервая ... 1819202122
Показано с 211 по 216 из 216

Тема: TSX-Plus OS

  1. #211
    Guru Аватар для form
    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,823
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    281
    Поблагодарили
    227 сообщений
    Mentioned
    29 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Переработал набор патчей для TSX-Plus V6.01/V6.50 и собрал их в одну кучу.
    Командный файл, запускаемый через IND, сам спросит все что нужно, сам определит версию и сам пропатчит.
    Патчи работают на дистрибутивах для PDP-11 (вариант с поддержкой PRO/для PRO не подойдет).
    При применении всех патчей проверяется контрольная сумма, так что если что не так - должно сразу быть видно.

    Если в TSX-Plus V6.01 TSGEN.MAC поделен на файлы TSG1.MAC, TSGEN.MAC и TSG2.MAC (попадался такой), нужно сначала собрать файлы в один:
    Код:
    .COP TSG1.MAC+TSGEN.MAC+TSG2.MAC XXX.MAC
    
    .REN XXX.MAC TSGEN
    Патчи в наборе:
    • Поддержка дат после 1999 года в системе (для TSX-Plus V6.01)
    • Поддержка дат после 1999 года в FILTIM.SAV
    • Поддержка дат после 1999 года в SYSMON.SAV
    • Подержка загрузки не-RT систем командой BOOT/$STOP
    • Запрет проверки таймера для запуска на быстрых эмуляторах


    V6.50:
    Код:
    .IND LD:TSXPAT
    ;
    ; TSX-Plus V6.01/V6.50 patcher V02.00.
    ; Copyright (c) 2023 by Oleg Safiullin <[email protected]>
    ;
    * What is the name of the patch kit device [S R:1-4 D:"LD0"]:
    * What is the name of the TSX-Plus kit device [S R:1-4 D:"DU2"]:
    ;
    ; DU2: Found TSX-Plus V6.50
    ;
    ; Press <ESC><RET> for more information.
    ;
    * Fix display of dates after 1999 in FILTIM.SAV? [Y/N D:Y]:
    * Fix display of dates after 1999 in SYSMON.SAV? [Y/N D:Y]:
    * Allow booting of foreign systems? [Y/N D:Y]:
    * Disable checking of line clock? [Y/N D:Y]:
    .$@PATCH
    
    .COPY/PREDELETE FILTIM.SAV FILTIM.OLD
    
    .UNPROTECT FILTIM.SAV
    
    .$@LD0:FILTIM.SIP
    
    .R SIPP
    *FILTIM.SAV/A/C
    Base?    0
    Offset?  50
    
      Base       Offset      Old  New?
       000000     000050  002440  2522
       000000     000052  000000  ^Z
    Offset?  2162
    
      Base       Offset      Old  New?
       000000     002162  005305  4767
       000000     002164  010546  254
       000000     002166  012702  ^Z
    Offset?  2250
    
      Base       Offset      Old  New?
       000000     002250  062705  4767
       000000     002252  000110  204
       000000     002254  004737  ^Z
    Offset?  2442
    
      Base       Offset      Old  New?
       000000     002442  000000  42705
       000000     002444  000000  177760
       000000     002446  000000  5305
       000000     002450  000000  11646
       000000     002452  000000  10566
       000000     002454  000000  2
       000000     002456  000000  207
       000000     002460  000000  16601
       000000     002462  000000  2
       000000     002464  000000  6201
       000000     002466  000000  301
       000000     002470  000000  42701
       000000     002472  000000  177637
       000000     002474  000000  60501
       000000     002476  000000  62701
       000000     002500  000000  3664
       000000     002502  000000  5000
       000000     002504  000000  71027
       000000     002506  000000  144
       000000     002510  000000  10005
       000000     002512  000000  10146
       000000     002514  000000  4737
       000000     002516  000000  2022
       000000     002520  000000  12605
       000000     002522  000000  207
       000000     002524  000000  ^Y
    
    Checksum? 30306
    *^C
    
    .COPY/PREDELETE SYMAIN.OBJ SYMAIN.OLD
    
    .MACRO/OBJECT:PATCH LD0:SM65
    
    .R PAT
    *SYMAIN.NEW=SYMAIN/C:170502,PATCH
    *^C
    
    .UNPROTECT SYMAIN.OBJ
    
    .RENAME SYMAIN.NEW SYMAIN.OBJ
    
    .DELETE/NOQUERY PATCH.OBJ
    
    .COPY/PREDELETE TSX2.OBJ TSX2.OLD
    
    .MACRO/OBJECT:PATCH LD0:TK365
    
    .R PAT
    *TSX2.NEW=TSX2/C:54550,PATCH
    *^C
    
    .UNPROTECT TSX2.OBJ
    
    .RENAME TSX2.NEW TSX2.OBJ
    
    .DELETE/NOQUERY PATCH.OBJ
    
    .COPY/PREDELETE TSX1.OBJ TSX1.OLD
    
    .MACRO/OBJECT:PATCH LD0:TI65
    
    .LIBRARY/EXTRACT TSX1 TSINIT
    Global? INITGO
    Global? 
    
    .R PAT
    *TSINIT.NEW=TSINIT/C:36053,PATCH
    *^C
    
    .UNPROTECT TSX1.OBJ
    
    .LIBRARY TSX1 TSINIT/REPLACE
    
    .DELETE/NOQUERY (PATCH,TSINIT).OBJ,TSINIT.NEW
    .DELETE/NOQUERY PATCH.COM
    @ <EOF>
    
    .
    V6.01:
    Код:
    .IND LD:TSXPAT
    ;
    ; TSX-Plus V6.01/V6.50 patcher V02.00.
    ; Copyright (c) 2023 by Oleg Safiullin <[email protected]>
    ;
    * What is the name of the patch kit device [S R:1-4 D:"LD0"]:
    * What is the name of the TSX-Plus kit device [S R:1-4 D:"DU2"]:
    ;
    ; DU2: Found TSX-Plus V6.01
    ;
    ; Press <ESC><RET> for more information.
    ;
    * Add support for dates after 1999? [Y/N D:Y]:
    * Fix display of dates after 1999 in FILTIM.SAV? [Y/N D:Y]:
    * Fix display of dates after 1999 in SYSMON.SAV? [Y/N D:Y]:
    * Allow booting of foreign systems? [Y/N D:Y]:
    * Disable checking of line clock? [Y/N D:Y]:
    .$@PATCH
    
    .COPY/PREDELETE TSEM2.OBJ TSEM2.OLD
    
    .MACRO/OBJECT:PATCH LD0:TE261
    
    .R PAT
    *TSEM2.NEW=TSEM2/C:176327,PATCH
    *^C
    
    .UNPROTECT TSEM2.OBJ
    
    .RENAME TSEM2.NEW TSEM2.OBJ
    
    .DELETE/NOQUERY PATCH.OBJ
    
    .COPY/PREDELETE TSKM2A.OBJ TSKM2A.OLD
    
    .MACRO/OBJECT:PATCH LD0:TK2A61
    
    .R PAT
    *TSKM2A.NEW=TSKM2A/C:152100,PATCH
    *^C
    
    .UNPROTECT TSKM2A.OBJ
    
    .RENAME TSKM2A.NEW TSKM2A.OBJ
    
    .DELETE/NOQUERY PATCH.OBJ
    
    .COPY/PREDELETE TSX2.OBJ TSX2.OLD
    
    .MACRO/OBJECT:PATCH PATPFX+LD0:TK361
    
    .R PAT
    *TSX2.NEW=TSX2/C:173377,PATCH
    *^C
    
    .UNPROTECT TSX2.OBJ
    
    .RENAME TSX2.NEW TSX2.OBJ
    
    .DELETE/NOQUERY PATCH.OBJ
    
    .COPY/PREDELETE FILTIM.SAV FILTIM.OLD
    
    .UNPROTECT FILTIM.SAV
    
    .$@LD0:FILTIM.SIP
    
    .R SIPP
    *FILTIM.SAV/A/C
    Base?    0
    Offset?  50
    
      Base       Offset      Old  New?
       000000     000050  002440  2522
       000000     000052  000000  ^Z
    Offset?  2162
    
      Base       Offset      Old  New?
       000000     002162  005305  4767
       000000     002164  010546  254
       000000     002166  012702  ^Z
    Offset?  2250
    
      Base       Offset      Old  New?
       000000     002250  062705  4767
       000000     002252  000110  204
       000000     002254  004737  ^Z
    Offset?  2442
    
      Base       Offset      Old  New?
       000000     002442  000000  42705
       000000     002444  000000  177760
       000000     002446  000000  5305
       000000     002450  000000  11646
       000000     002452  000000  10566
       000000     002454  000000  2
       000000     002456  000000  207
       000000     002460  000000  16601
       000000     002462  000000  2
       000000     002464  000000  6201
       000000     002466  000000  301
       000000     002470  000000  42701
       000000     002472  000000  177637
       000000     002474  000000  60501
       000000     002476  000000  62701
       000000     002500  000000  3664
       000000     002502  000000  5000
       000000     002504  000000  71027
       000000     002506  000000  144
       000000     002510  000000  10005
       000000     002512  000000  10146
       000000     002514  000000  4737
       000000     002516  000000  2022
       000000     002520  000000  12605
       000000     002522  000000  207
       000000     002524  000000  ^Y
    
    Checksum? 30306
    *^C
    
    .COPY/PREDELETE SYSMON.OBJ SYSMON.OLD
    
    .MACRO/OBJECT:PATCH LD0:SM61
    
    .R PAT
    *SYSMON.NEW=SYSMON/C:103243,PATCH
    *^C
    
    .UNPROTECT SYSMON.OBJ
    
    .RENAME SYSMON.NEW SYSMON.OBJ
    
    .DELETE/NOQUERY PATCH.OBJ
    
    .COPY/PREDELETE TSX1.OBJ TSX1.OLD
    
    .MACRO/OBJECT:PATCH LD0:TI61
    
    .LIBRARY/EXTRACT TSX1 TSINIT
    Global? INITGO
    Global? 
    
    .R PAT
    *TSINIT.NEW=TSINIT/C:55617,PATCH
    *^C
    
    .UNPROTECT TSX1.OBJ
    
    .LIBRARY TSX1 TSINIT/REPLACE
    
    .DELETE/NOQUERY (PATCH,TSINIT).OBJ,TSINIT.NEW
    .DELETE/NOQUERY PATCH.COM
    @ <EOF>
    
    .
    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

  2. #211
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #212
    Guru Аватар для form
    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,823
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    281
    Поблагодарили
    227 сообщений
    Mentioned
    29 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Перевел модуль TSINIT от V6.50 в MAC, расставил метки в соответствии с листингом от V6.40 (руки бы поотрывать!)
    Большая часть откоментирована (коментарии взяты из того же листинга).
    Еще есть над чем поработать.

    Полный список отличий от TSINIT в V6.40:
    • метки TSX адресуются в виде @#INISTP вместо INISTP
    • добавлена версия RT-11 V5.6 в список узнаваемых
    • эмулируемая версия RT-11 по умолчанию теперь 5.5 вместо 5.4
    • в эмулируемом RMON слово $CNFG3 отображает бит CF3.DM (есть DMA драйверы) в соответствии с драйверами TSX


    Интересный факт: при компиляции с макробиблиотекой RT-11 V5.7 не совпадает код двух макрокоманд с оригиналом: у .DSTATUS и .FETCH сначала заносится аргумент в стек, потом в R0, а в оригинале (скорее всего макробиблиотека от V5.4) наоборот.
    Функционально никакой разницы, но чексума модуля получается другая
    Последний раз редактировалось form; 03.04.2023 в 02:38.
    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

  4. #213
    Guru Аватар для form
    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,823
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    281
    Поблагодарили
    227 сообщений
    Mentioned
    29 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Обновил патч кит TSX-Plus V6.01/V6.50.
    Мелкие исправления.
    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

  5. #214
    Guru
    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    6,996
    Спасибо Благодарностей отдано 
    285
    Спасибо Благодарностей получено 
    631
    Поблагодарили
    531 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    при компиляции с макробиблиотекой RT-11 V5.7 не совпадает код двух макрокоманд с оригиналом: у .DSTATUS и .FETCH сначала заносится аргумент в стек, потом в R0, а в оригинале (скорее всего макробиблиотека от V5.4) наоборот
    Я с похожим столкнулся, когда делал генерацию макро-обращений для своего DisAsm-а, где именно столкнулся - не вспомню, но смысл тот же - в макро-библиотеке одно, а при дизасме программы - немного другой порядок.

  6. #215
    Guru Аватар для form
    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,823
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    281
    Поблагодарили
    227 сообщений
    Mentioned
    29 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    немного другой порядок
    Посмотрел макробиблиотеки - начиная с версии 4.0 порядок такой же как в 5.7.
    Видимо они свои макросы использовали чтобы не привязываться к системной макробиблиотеке
    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

  7. #216
    Guru Аватар для form
    Регистрация
    27.05.2009
    Адрес
    СССР, Новосибирск
    Сообщений
    5,823
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    281
    Поблагодарили
    227 сообщений
    Mentioned
    29 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Перелопатил немного FILTIM.SAV.
    Вместо Y2K хука (напомню, что в версии TSX-Plus V6.50 программа FILTIM осталась та же самая какая была еще во времена V6.01) переписал вывод года.
    Добавил возможность запуска под обычным RT-11.

    Под TSX-Plus программа как обычно использует EMT 375 с кодом функции 145.
    Код:
    .RU FILTIM FILTIM.SAV
    DK:FILTIM.SAV      6   18-Jan-2024  15:10:24  62082
    
    .
    Под RT-11 делается поиск по каталогу вручную.
    Работа под TSX-Plus определяется по параметрам SYSGEN, соответственно совсем старые версии или RAFOS/TS не опознаются как TSX-Plus, но что-то мне подсказывает, что там и не было нужного функционала, так что все правильно.
    Код:
    .SH CONF
    
    RT-11FB  V05.07  
    Booted from VS0:RTEMFB
    
    USR     is set SWAP
    EXIT    is set SWAP
    KMON    is set NOIND
    MODE    is set NOSJ
    TT      is set NOQUIET
    ERROR   is set ERROR
    SL      is set ON
    EDIT    is set KED
    FORTRAN is set FORTRA
    KMON nesting depth is 3
    Global .SCCA flag is disabled
    
    CLI is set DCL, CCL, UCL, NO UCF
    
    Emulated RT-11 environment, processor type unknown
    60KB of memory
    FP11 Hardware Floating Point Unit
    Extended Instruction Set (EIS)
    50 Hertz System Clock                  
    
    Multi-terminal support
    Global .SCCA support
    FPU support
    Extended unit support
    
    
    .RU FILTIM FILTIM.SAV
    DK:FILTIM.SAV      6   18-Jan-2024  00:00:00  56683
    
    .
    Не то, чтобы оно сильно нужно, но на досуге может прикручу время создания файла в RT-11 (что отмечено в последних доках DEC как планируемое на будущее).

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

    Еще немного информации по новому FILTIM.SAV.
    По уомлчанию расширение файла .MAC - как было, поменять можно по смещению 1000 (в RADIX-50).
    Если по смещениям 3206-3210 записать NOPы, то под TSX-Plus тоже будет использоваться прямое чтение каталога.
    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

  8. Эти 2 пользователя(ей) поблагодарили form за это полезное сообщение:

    Andrey_Ak (18.01.2024), vva (21.01.2024)

Страница 22 из 22 ПерваяПервая ... 1819202122

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

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

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

Ваши права

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