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

User Tag List

Страница 78 из 155 ПерваяПервая ... 747576777879808182 ... ПоследняяПоследняя
Показано с 771 по 780 из 1550

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

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

    По умолчанию Conflicting SYSGEN options

    Поднимем немного тему... Уже наверное все знают что за сообщение такое - то, что вынесено в заголовок. Суть его состоит в том, что младшие 4 бита слова параметров генерации системы не совпадают с соответствующими битами параметров с которыми был собран драйвер. В некоторых случаях драйвер можно перенастроить без пересборки на новую систему - просто заменить байтик по смещению 60 драйвера, в некоторых нельзя. Попробую вкратце разобрать как сделать драйвер который можно перенастроить таким способом.

    Прежде всего драйвер должен содержать полный вектор для вызова системных подпрограмм. Причем никакие
    Код:
    .IIF EQ ERL$G  .BlkW 1
    .IIF EQ TIM$IT .BlkW 1
    (как например написано в HX драйвере) тут не помогут. Точнее помогут частично - предотвратят затирание кода драйвера при загрузке в системе которая поддерживает больше опций чем было указано драйверу при сборке. Но это все - вектор не будет совпадать с реальностью, и попытка перенастроить тот же HX под другие опции обречена на провал в системе с поддержкой расширенной памяти. Поэтому для генерации полного вектора нужно или использовать параметр FORCE=7 в макровызовах .DREND/.DRBOT, или в явном виде определить эти опции:
    Код:
    ERL$G   =       1                       ;FORCE ERROR LOGGING
    MMG$T   =       1                       ;FORCE MEMORY MANAGEMENT
    TIM$IT  =       1                       ;FORCE DEVICE TIMEOUT
    Но и этого мало. Так будет сформирован полный вектор, но вот беда: с точки зрения системы он меняется в зависимости от параметров генерации:
    Код:
    .IF NE MMG$T!<FORCE&2.>
    $RLPTR::.WORD   0
    $MPPTR::.WORD   0
    $GTBYT::.WORD   0
    $PTBYT::.WORD   0
    $PTWRD::.WORD   0
    .ENDC
    .IF NE ERL$G!<FORCE&1>
    $ELPTR::.WORD   0
    .ENDC
    .IF NE TIM$IT!<FORCE&4.>
    $TIMIT::.WORD   0
    .ENDC
    $INPTR::.WORD   0
    $FKPTR::.WORD   0
    Отсюда видно, что .DRAST и .FORK будут нормально работать в любой системе (вектор зполняется системой с конца и вниз), вызовы .TIMIO/.CTIMIO будут нормально работать в системе с поддержкой device timeout, а вот вызов сервиса регистрации ошибок @$ELPTR будет работать только в системе с поддержкой device timeout. Если такой поддержки в системе нет, то значение которое должно оказаться в $ELPTR будет записано в $TIMIT. Аналогично с вызовами для XM/ZM мониторов - в зависимости от поддержки device timeout и error logging вектор будет заполнен либо правильно либо со смещением на 1 или 2 слова для данных подпрограмм. Это нужно учитывать и патчить драйвер в момент загрузки или в момент подстройки под систему.

    В аттаче (упрощенный) пример работающего драйвера терминального порта (собран для 176500/300) на который можно выводить что-то. На ввод не работает, но реагирует на нажатие клавиш (на этом терминале) и приостанавливает/возобновляет вывод. Драйвер работает во всех мониторах RT-11. Для XM/ZM/XB/ZB драйвер должен называться UHX.SYS, для остальных UH.SYS (или UHs.SYS если в системе установлен суффикс s для драйвера). Подстраивается командой SET UH SYSGEN.
    Вложения Вложения
    • Тип файла: rar uh.rar (1.3 Кб, Просмотров: 52)
    Последний раз редактировалось form; 15.02.2016 в 20:33.
    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. #772
    Guru
    Регистрация
    02.03.2015
    Адрес
    г. Караганда, Казахстан
    Сообщений
    2,321
    Спасибо Благодарностей отдано 
    35
    Спасибо Благодарностей получено 
    225
    Поблагодарили
    177 сообщений
    Mentioned
    17 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ни разу не видел систему, сгенерённую с ERRLOG'ом. В смысле, в работе не видел. Опять же, XM-ные дела - совершенно отдельный вопрос. Вот таймаут - это да, важно. Произвольно взятая система с вероятностью 0.5 может оказаться как с поддержкой таймаута, так и без нее. И именно на ней, чаще всего и возникает конфликт, вынесенный в заголовок.
    Кто мешает тебе выдумать порох непромокаемый? (К.Прутков, мысль № 133)

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

    По умолчанию

    Цитата Сообщение от AFZ Посмотреть сообщение
    Ни разу не видел систему, сгенерённую с ERRLOG'ом.
    Я генерил только для интереса посмотреть как работает. И даже драйвер MY с поддержкой логгинга делал. А так - тоже ни разу не видел.

    Цитата Сообщение от AFZ Посмотреть сообщение
    Опять же, XM-ные дела - совершенно отдельный вопрос.
    Обычно не делают универсальный XM/не-XM драйвер - зачем держать кучу мусора в памяти. Я лишь для примера показал как можно сделать чтобы и там и там работал.

    Цитата Сообщение от AFZ Посмотреть сообщение
    И именно на ней, чаще всего и возникает конфликт, вынесенный в заголовок.
    Фактически 100% именно этот параметр. А попытка подправить драйвер по смещению 60 приводит к затиранию кода программы в не-XM системе с поддержкой (XM всегда с поддержкой). Если же драйвер реально использует поддержку возможно падение также из-за вызова неизвестно чего в системе без поддержки.
    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. #774
    Banned
    Регистрация
    05.07.2010
    Адрес
    Москва
    Сообщений
    1,058
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Удаление в знак протеста против действий MM
    Последний раз редактировалось MacBuster; 27.01.2019 в 09:07. Причина: Удаление в знак протеста против действий MM

  5. #775
    Veteran Аватар для nzeemin
    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    1,996
    Спасибо Благодарностей отдано 
    1,061
    Спасибо Благодарностей получено 
    1,224
    Поблагодарили
    478 сообщений
    Mentioned
    15 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    MacBuster, есть загрузчик из Сети в ПЗУ, находится по адресу 164160 -- см. листинги ПЗУ.
    http://www.emuverse.ru/wiki/%D0%A3%D...6_ROM_disasm_6

    Описание сети Micronet -- но не берусь судить насколько оно адекватно реальности:
    http://www.emuverse.ru/wiki/%D0%A3%D...D0%A6_Micronet

  6. #776
    Guru
    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,208
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    607
    Поблагодарили
    399 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Когда-то этот вопрос задавался. Ответ - http://zx-pk.ru/showthread.php?t=159...l=1#post393141.

  7. #777
    Banned
    Регистрация
    05.07.2010
    Адрес
    Москва
    Сообщений
    1,058
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Удаление в знак протеста против действий MM
    Последний раз редактировалось MacBuster; 27.01.2019 в 09:07. Причина: Удаление в знак протеста против действий MM

  8. #778
    Master
    Регистрация
    05.03.2010
    Адрес
    Санкт-Петербург
    Сообщений
    781
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    3 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от MacBuster Посмотреть сообщение
    Мысль следующая: попробовать попасть в современную локальную сеть с УК-НЦ прямо через СА с каким-нибудь переходником, типа RS232-USB или RS232-Ethernet.
    http://zx-pk.ru/showthread.php?t=15947&page=14
    http://zx-pk.ru/showthread.php?t=20753&page=8

  9. #779
    Guru Аватар для bigral
    Регистрация
    12.07.2006
    Адрес
    г. Киев, Украина
    Сообщений
    2,147
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    95
    Поблагодарили
    82 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от MacBuster Посмотреть сообщение
    Мысль следующая: попробовать попасть в современную локальную сеть с УК-НЦ прямо через СА с каким-нибудь переходником, типа RS232-USB или RS232-Ethernet..
    Ну прикрутить прямо в корпусе HLK-RM04 модуль можно теоретически. https://www.youtube.com/watch?v=3aMpe5LZCbo

  10. #780
    Banned
    Регистрация
    05.07.2010
    Адрес
    Москва
    Сообщений
    1,058
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Удаление в знак протеста против действий MM
    Последний раз редактировалось MacBuster; 27.01.2019 в 09:07. Причина: Удаление в знак протеста против действий MM

Страница 78 из 155 ПерваяПервая ... 747576777879808182 ... ПоследняяПоследняя

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

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

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

Похожие темы

  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

Ваши права

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