User Tag List

Страница 11 из 157 ПерваяПервая ... 789101112131415 ... ПоследняяПоследняя
Показано с 101 по 110 из 1564

Тема: Программирование на УКНЦ как?

  1. #101

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,805
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    147
    Поблагодарили
    78 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Попробовал снять все ограничения на использование символов КОИ-7 и КОИ-8 в комментариях и текстовых константах.

    В приложении - последняя версия программного комплекта MACRO-11 ( включая компилятор MACRO V05.06r со снятыми ограничениями ).
    Вложения Вложения

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

    Oleg N. Cher(03.03.2020)

  2. #102

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

    По умолчанию

    SIPP патч для простоты
    Последний раз редактировалось form; 08.06.2014 в 18:41.
    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

  3. #103

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

    По умолчанию И еще про 8бит...

    Поддержка 8бит в RT-11 V5.7 (SLP патчи для RMON.MAC и EDTG.MAC).
    Поддержка включается определением conditional EIGH$T = 1 на этапе SYSGEN.

    Патч тупо разрешает 8бит, хотя может правильнее запользовать PASAL$ бит в JSW, который правда отмечен как undocumented и используется для VENU$C=1.

    В перспективе - добавка вопроса в SYSGEN на эту тему и правка KED/K52.
    К слову в сорцах KED/K52 в коментариях отмечены места "change for 8bit", но там придется подумать - 8бит у них выполняет какую-то функцию. Тупо поправленный KED работает, но русский текст показывает в инверсном цвете
    Последний раз редактировалось form; 08.06.2014 в 18:41.
    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. #104

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

    По умолчанию Маленькие хитрости

    Раз уж есть тема по программированию, предлагаю сюда же свалить всякие хитрости какие кто пользует

    Например такие:

    Код:
            JSR     Rx,@PC          ;СОХРАНИТЬ Rx В СТЕКЕ, НЕ ТРОГАЯ PSW
    
            MOV     #160000,SP      ;ПОЛНАЯ ОЧИСТКА ПАМЯТИ (56Kb)
            MOV     #4747,@#0       ;И ЧИСТЫЙ ОСТАНОВ БЕЗ ОШИБОК 
            CLR     PC              ;В КОНЦЕ
    
            CALL    @(SP)+          ;ВЫЗОВ СОПРОГРАММЫ
    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. #105

    Регистрация
    04.03.2010
    Адрес
    Washington, DC
    Сообщений
    28
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    И я тоже добавлю - простой способ разворачивания цикла 2x:

    1. Пусть есть цикл, выполняющийся N раз, типа:
    mov N,r0
    1$: cmd ! некая команда, например, clr(r1)+
    sob r0,1$

    2. Простой способ разворачивания того ж цикла в линейку:
    mov N,r0
    inc r0
    asr r0
    bcc 2$
    1$: cmd
    2$: cmd
    sob r0,1$
    Идея состоит в том, чтоб позаботиться о нечётном числе итераций до начала
    цикла, и войти внутрь цикла в обход стандартного начала.

  6. #106

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

    По умолчанию

    Задавали тут вопросы, решил сюда занести на всякий случай - вдруг кто не в курсе

    Что слово .WORD можно опускать и писать

    Код:
    123,456,LABEL
    вместо

    Код:
    .WORD   123,456,LABEL
    знают наверное все.
    Но есть еще одна фича. Можно писать <имяинструкции> чтобы вписать
    код [первой] инструкции в программу:

    Код:
    010000     <MOV>
    005000     <CLR>
    Ну а полезное практическое применение этому на мой взгляд одно - использование
    понятных команд для очистки/установки нескольких признаков процессора одновременно (например <SEC>!<SEZ>, <CLV>!<CLZ>!<CLN>)...

    Хотя еще пожалуй для создания таблиц дизассемблера может пригодится
    Последний раз редактировалось form; 22.09.2011 в 09:40.
    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. #106
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #107

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

    Talking Шпора

    Настройка экрана и запуск приложений
    + процедура gotoXY(x,y : integer); - для паскаля
    + процедура waitKEY; ожидания нажатия кнопочки - для паскаля

    Код:
    Устанавливает цвет курсора
    8 цветов от 60 до 67 (третий параметр)
    .TTYOUT #33
    .TTYOUT #247
    .TTYOUT #67
    
    Цвет экрана
    .TTYOUT #33
    .TTYOUT #242
    .TTYOUT #60
    
    Цвет символов
    .TTYOUT #33
    .TTYOUT #241
    .TTYOUT #67
    
    Цвет знакоместа
    .TTYOUT #33
    .TTYOUT #240
    .TTYOUT #60
    
    Установка формата экрана
    (61 - 80х24, 62 - 40х24, 63 - 20х24, 64 - 10х24)
    .TTYOUT #33
    .TTYOUT #246
    .TTYOUT #61
    
    Запускаем нужное приложение (на примере 'МЗ1:ДИГГЕР.САЖ')
    .MCALL  .CHAIN
    MOV  #^RMZ1,@#500
    MOV  #^RDIG,@#502
    MOV  #^RGER,@#504
    MOV  #^RSAV,@#506
    .CHAIN
    PASCAL
    Код:
    PROCEDURE WAITKEY;
    VAR KEY ORIGIN 177560B: INTEGER;
    BEGIN
    REPEAT KEY:=0 UNTIL KEY>0
    END;
    
    Если завести глобальную переменную
    INKEY ORIGIN 177562B: INTEGER;
    там будет код последней нажатой клавиши
    
    PROCEDURE gotoXY(X,Y: INTEGER);
    BEGIN
     WRITE(CHR(27),'Y',CHR(32+Y),CHR(32+X));
    END;
    Вот вопрос такой родился - почему никто не пишет игры для УКНЦ?
    Платформа жива - пока для неё делают игры
    Последний раз редактировалось hobot; 27.09.2011 в 07:00.

  9. #108

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,392
    Спасибо Благодарностей отдано 
    1,701
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    При использовании на УК-НЦ печати через EMТ ^O341, возникла ситуация, когда видимо буфер где-то там переполняется и при интенсивной печати часть символов не выводится. Наверное где-то есть флажок, переполнен буфер или нет. Где он?

  10. #109

    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,249
    Спасибо Благодарностей отдано 
    360
    Спасибо Благодарностей получено 
    638
    Поблагодарили
    414 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    При использовании на УК-НЦ печати через EMТ ^O341, возникла ситуация, когда видимо буфер где-то там переполняется и при интенсивной печати часть символов не выводится. Наверное где-то есть флажок, переполнен буфер или нет. Где он?
    Ну да, если буфер переполнен, то устанавливается бит C в PSW. Поэтому код должен быть таким:
    Код:
            EMT     ^O341
            BCS     .-2
    Titus, а зачем такие сложности, можно же подцепить макробиблиотеку SYSMAC.SML (она вообще-то автоматом цепляется, если есть) и объявить макрос с помощью .MCALL .TTYOUT, а затем уже использовать этот макрос.

    Код:
            .TTYOUT #'A

  11. #110

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,392
    Спасибо Благодарностей отдано 
    1,701
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Код:
            .TTYOUT #'A
    А чего он делает в точности?

Страница 11 из 157 ПерваяПервая ... 789101112131415 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Программирование на Эмуляторе. Возможно ли это?
    от Toxic в разделе Программирование
    Ответов: 10
    Последнее: 20.01.2008, 19:20
  2. Программирование Altera и JTAG
    от Mikka_A в разделе Несортированное железо
    Ответов: 7
    Последнее: 18.01.2008, 09:07
  3. Программирование и софтмейк на NES
    от Splinter в разделе Nintendo
    Ответов: 7
    Последнее: 30.06.2006, 04:31

Ваши права

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