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

User Tag List

Страница 14 из 28 ПерваяПервая ... 101112131415161718 ... ПоследняяПоследняя
Показано с 131 по 140 из 276

Тема: Практическое программирование в среде RT-11 на ассемблере.

  1. #131

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

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    любой из сборников
    Ты пальцем ткни

    Цитата Сообщение от hobot Посмотреть сообщение
    А тут вместо STARTS.COM в пятом блоке монитора пишем SE JS ON
    Это само по себе не мешает обойти. Еще раз: оборвать можно ДО того как стартовая команда выполнится
    Но теоретически я могу предположить как можно предотвратить это.
    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. #132

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    Ты пальцем ткни

    http://archive.pdp-11.org.ru/ukdwk_a...t/Other/40in1/


    Подходит и для эмулятора и для живой машинки )))
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  3. #133

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

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    для живой машинки
    До живой еще дожить надо. Я даже телевизер silelis добыл себе, но руки не доходят сделать из него монитор
    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. #134

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    оборвать можно ДО того как стартовая команда выполнится
    ага, только нету на SY: ни PIP ни DUP ни DIR ничего вообще нету )
    Чёрный экран, приглашение ком.строки и курсор мигает. ) Такое прерывание не позволит ничего сделать кроме как
    перезагрузить дискету (ну со сторонней дискеты мучать её никто не запретит никому и никогда).

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

    Цитата Сообщение от form Посмотреть сообщение
    silelis
    Я помню ты уже "хвастался", я про эти телеки ничего не знаю (про себя прозвал их "шляндыч") )))
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  5. #135

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

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    Такое прерывание не позволит ничего сделать кроме как
    перезагрузить дискету
    Отчего ж не позволит? Команды D, E, ST никто не отменял - можно простенькую программку набросать и запустить
    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

  6. #136

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    form, это ты можешь ) Только ты ещё должен сориентироваться и понять где и что прервать.
    А вот у нас юзер который без инструкции UKNCBTL запустить не может ))) Надо же оберегать
    от него пакет программ. К тому же - меню для игр - это только 1 вариант использования.
    А если полновесную граф. оболочку под КЦГД накатать поверх RT-11 ?
    Вот там и пригодятся
    Цитата Сообщение от form Посмотреть сообщение
    Команды D, E, ST никто не отменял - можно простенькую программку набросать и запустить
    и прочие всякие вещи в консольном окне что бы мелькали )))
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

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

  8. #137

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

    По умолчанию

    Вот для начала драйвер. Не причесывал, для простоты пока работает только в 5.02 и новее. Для включения LOA SH, для выключения UNL SH (если есть возможность ). Запускает прогу SY:SHELL.SAV если она есть. Если нету - обычная работа в системе.
    Код:
    .LO SH
    
    .COP/NOPRO PIP.SAV SHELL
     Files copied:
    DK:PIP.SAV     to DK:SHELL.SAV
    
    *
    PIP V05.31 
    *
    PIP V05.31 
    *^C
    
    *^C
    
    *SHELL.SAV/D
    *^C
    
    .UNL SH
    
    .
    Если есть желание - можешь самостоятельно доработать
    В драйвере никаких хитростей, никаких перехватов векторов. Все документированное-стандартное
    Последний раз редактировалось form; 13.12.2016 в 06:24.
    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

  9. #138

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от form Посмотреть сообщение
    Если нету - обычная работа в системе.
    а где же то самое кольцо??? )))
    надо что бы (если нету) он тупо писал - нету!!! нету нету нету нету нету нету нету нету - бесконечно )))
    Обычная работа в системе - не надо! )))

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

    он вообще выпадать в систему не должен! он наоборот от этого должен оберегать (от выпадания в систему)

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

    но этот вариант я изучу, спасибо.

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

    забрал из каки вместе с исходником

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

    Цитата Сообщение от hobot Посмотреть сообщение
    нету!!! нету
    обращение к SY между сообщениями само собой происходит )
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

  10. #139

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

    По умолчанию

    Цитата Сообщение от hobot Посмотреть сообщение
    нету нету нету нету нету нету нету нету - бесконечно
    Ну так просто убрать проверку файла и будет бесконечно писать
    Так даже проще - сразу куча кода высвободится и сохранять регистры не нужно...

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

    Или можно вставить код зачистки нижней памяти с чистым остановом (на ВМ3 правда он по дороге трапнется, но большую часть зачистит, ну а на УКНЦ вчистую отработает)
    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

  11. #140

    Регистрация
    30.08.2011
    Адрес
    Зеленоград
    Сообщений
    7,161
    Спасибо Благодарностей отдано 
    2,979
    Спасибо Благодарностей получено 
    374
    Поблагодарили
    311 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    form, кстати говоря - я только сейчас обратил внимание!!!
    Смотри - классический JS.SYS какая хитрая скотинка.

    Во первых прервать его таки можно, но это его не убивает (если только не выгрузить),
    после запуска любой программы он снова ищет свою прогу (значит он что то в памяти в делает с монитором, но не на диске - ибо "не навреди") и сам в себе он строку об ошибке не содержит!
    Это KMON вместо него орёт что файла нету !!! (см. скрин выше).
    Сейчас правлю исходник SH - переименовал его в SSH - типа Старт Шелл )))
    Попробую что получиться, но
    1. я понятия не имею что такое ХУК
    2. мне то можно .PRINT использовать или нет?

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

    form, НЕТ у меня не блинчик и даже не ком получился.
    1. LINK ругнулся на три глобальных метки которые я не трогал !!!
    2. теперь по LO SSH MON пишет что команда-инвалид )))

    Листинг SSH.MAC
    Код:
    .MCALL    .MODULE
    .MODULE    SSH,VERSION=1,COMMENT=<RT-11 Shell Driver>,AUDIT=YES
    
    $SYPTR    =:    54            ;POINTER TO RMON
    $E16LS    =:    316            ;EMT 340-357 DISPATCH TABLE OFFSET
    $KMONI    =:    450            ;KMON INDICATOR OFFSET
    
    E6.PRI    =:    <351-340>*2        ;OFFSET TO .PRINT ROUTINE
    
        .MCALL    .ADDR,.CHAIN,.DRDEF    ;SYSTEM MACRO CALLS
        .MCALL    .DSTAT,.EXIT,.LOOKUP    ;
        .MCALL    .LOOKUP,.PURGE,.PRINT    ;
    
        .DRDEF    SSH,340,0,0,0,0        ;DEFINE DRIVER PARAMETERS
        .DRPTR    LOAD=SHLOA,FETCH=*NO*,UNLOAD=SHUNL ;DEFINE SERVICE ENTRIES
    
        .DRBEG    SSH            ;START OF DRIVER CODE
        MOV    SHCQE,R4        ;GET ADDRESS OF QUEUE ELEMENT
        BIS    #HDERR$,@-(R4)        ;SET HARD ERROR STATUS
        .DRFIN    SSH            ;FINISH I/O
    
    SHINT::    TST    @(PC)+            ;RUNNING KMON?
    SHKMI::    .BLKW                ;
        BEQ    20$            ;IF EQ NO
    .IF    EQ    MMG$T
        CMP    @14(SP),(PC)+        ;CHECK IF PROMPT IS PRINTED
    .IFF
        CMP    @16(SP),(PC)+        ;CHECK IF PROMPT IS PRINTED
    .ENDC
        MOV    R5,R5            ;
        BNE    20$            ;IF NE NO
        MOV    R0,-(SP)        ;SAVE REGISTERS
        MOV    R1,-(SP)        ;
    5$:    .ADDR    #SHARE,R0        ;POINT TO EMT AREA
        .ADDR    #SHPGM,R1        ;POINT TO PROGRAM NAME
        .LOOKUP    R0,#0,R1        ;LOOKUP THE FILE
        ROL    -(SP)            ;SAVE ERROR STATUS
        .PURGE    #0            ;PURGE CHANNEL
        ROR    (SP)+            ;RESTORE ERROR STATUS
        BCS    10$            ;IF CS FILE NOT FOUND
        MOV    #500,R0            ;POINT TO CHAIN AREA
        MOV    (R1)+,(R0)+        ;COPY PROGRAM NAME
        MOV    (R1)+,(R0)+        ;
        MOV    (R1)+,(R0)+        ;
        MOV    (R1)+,(R0)+        ;
        .CHAIN                ;CHAIN TO PROGRAM
    10$:    .PRINT    #NSHF            ;RESTORE REGISTERS
    ;    MOV    (SP)+,R0        ;
    ;    JMP    @(PC)+            ;JUMP TO SYSTEM ROUTINE
    20$:    BR    5$
    SHPRI::    .BLKW                ;ADDRESS OF SYSTEM .PRINT ROUTINE
    
    SHARE::    .BLKW    3            ;EMT AREA
    SHPGM::    .RAD50    /SY SHELL SAV/        ;PROGRAM TO CHAIN TO
        .DREND    SSH
    
        .PSECT    SETOVR
    SHLOA::    MOV    @R5,R5            ;R5=SHLQE
        MOV    @#$SYPTR,R4        ;R4=RMON
        MOV    R4,R2            ;COPY
        ADD    $E16LS(R4),R4        ;R4=EMT 340-357 DISPATCH TABLE
        MOV    E6.PRI(R4),R3        ;R3=ADDRESS OF .EXIT ROUTINE
        ADD    R4,R3            ;
        MOV    R3,SHPRI-SHLQE(R5)    ;STORE IN DRIVER
        MOV    R5,R3            ;R3=SHINT
        ADD    #SHINT-SHLQE,R3        ;
        SUB    R4,R3            ;R3=OFFSET TO SHINT
        MOV    R3,E6.PRI(R4)        ;POINT TO OUR ROUTINE
        ADD    #$KMONI,R2        ;R2=KMON INDICATOR
        MOV    R2,SHKMI-SHLQE(R5)    ;STORE IN DRIVER
    SHXIT::    CLC                ;FLAG NO ERROR
        RETURN                ;RETURN
    
    SHUNL::    MOV    @R5,R5            ;R5=SHLQE
        MOV    @#$SYPTR,R4        ;R4=RMON
        ADD    $E16LS(R4),R4        ;R4=EMT 340-357 DISPATCH TABLE
        MOV    E6.PRI(R4),R3        ;R3=ADDRESS OF .EXIT ROUTINE
        ADD    R4,R3            ;
        MOV    #SHINT-SHLQE,R2        ;R2=SHINT
        ADD    R5,R2            ;
        CMP    R3,R2            ;OUR HOOK SET?
        BEQ    20$            ;IF EQ YES
        JSR    R0,10$            ;NO, SET ERROR MESSAGE
        .ASCIZ    /?SH-F-Other driver hooks .PRINT - can't unload/
        .EVEN
    10$:    COM    (SP)+            ;CLEAN STACK, SET CARRY
        RETURN                ;RETURN
    20$:    MOV    SHPRI-SHLQE(R5),R5    ;R5=ADDRESS OF SYSTEM .PRINT ROUTINE
        SUB    R4,R5            ;CONVERT TO OFFSET FROM EMTLST
        MOV    R5,E6.PRI(R4)        ;UNHOOK .PRINT
        BR    SHXIT            ;EXIT
    
    NSHF:    .ASCIZ    /?SH-F-File not found SY:SHELL.SAV/
    
        .END
    Архив программ для УК-НЦ, ДВК и БК.

    Ищу игру "СТРАНА МОНСТРОВ" [monstr.sav] для ДВК.

Страница 14 из 28 ПерваяПервая ... 101112131415161718 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Арифметические процедуры на ассемблере
    от spensor в разделе Программирование
    Ответов: 27
    Последнее: 13.05.2017, 20:56
  2. Пишем на ассемблере под эмулятором
    от GM BIT в разделе Для начинающих
    Ответов: 76
    Последнее: 15.07.2016, 20:04
  3. try-catch на ассемблере z80
    от siril в разделе Программирование
    Ответов: 22
    Последнее: 30.10.2012, 21:17
  4. Продам книгу- AMIGA: программирование на ассемблере
    от Doctor Max в разделе Барахолка (архив)
    Ответов: 11
    Последнее: 01.03.2012, 00:35
  5. Подпрограмма на ассемблере в памяти?
    от jimled в разделе Программирование
    Ответов: 1
    Последнее: 29.11.2009, 06:46

Ваши права

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