User Tag List

Страница 173 из 174 ПерваяПервая ... 169170171172173174 ПоследняяПоследняя
Показано с 1,721 по 1,730 из 1740

Тема: Реверс-инжиниринг УКНЦ (1515ХМ1&2, 1801ВП1, 1801ВМ2)

  1. #1721

    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    485
    Спасибо Благодарностей отдано 
    140
    Спасибо Благодарностей получено 
    392
    Поблагодарили
    147 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Есть в УКНЦ особенности работы с прерываниями на аппаратном уровне в некоторых микросхемах.
    А можно поподробнее что было дальше: возникло прерывание, регистр 0177702 не считали, вышли в RT-11... А вектор восстановили? Бит разрешения прерывания дергали?
    Вектор восстановлен. Ничего не дергалось. Процесс был запущен как-обычно в диспетчере процессов ПП, прерывание там рядом переназначено. После возникновения прерывания был выход с него (тупо inc KeyDwn; rti). Далее в диспетчере задач по дохождению до кода было видно что что-то нажали, был выход из диспетчера и затем ЦП давал команду на очистку памяти ПП. Вообщем обычное дело.
    Ну так вот - если не делать считывание из ячейки по возникновению прерывания - затем блокировались например .ttyin (висело в бесконечном цикле) в ЦП. Нажатия клавиш тоже не слышно было.

    Помогло в прерывании тупо сделать считывание с ячейки (пометка что вызвалось нажатие клавиши как и раньше оставалась) и rti потом. Без считывания с ячейки происходил факап какой-то.
    Я делал это в соседней теме про косичку от Manwe для БК-0010 чтобы по возникновению прерывания тупо выйти из всего в RT-11. Вот без считывания выходит "косячно". Если в прерывании считывать адрес - выходит нормально.

    Вот такой код прокатил:
    Код:
    ; 'keyboard' interrupt
    INTKB1:	mov	R0, -(SP)
    	mov	@#177702, R0
    	; TODO: change drawing variables in CPU from pressed keys
    	inc	KEYPR0
    	mov	(SP)+, R0
    	rti
    Закомментировав строку с mov @#177702.. - уже не прокатывает.

    Правда есть момент - я не менял ВЕСЬ вектор. Только адрес прерывания, и восстанавливал его также. Но думается это иррелевантно что там в PS проца запишется, как и раньше оставалось-же.

    Весь код (он большой конечно и может быть там косяки?) где-то тут: https://raw.githubusercontent.com/bl...ter/kosich.mac
    Но сама рисовка там в ЦПУ ничего не портит. А в ПП достаточно закомментить считывание по прерыванию из 177702 и после выхода в RT-11 ничего больше не нажмешь.
    Последний раз редактировалось BlaireCas; 16.09.2022 в 22:11.
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

  2. #1722

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

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    Вектор восстановлен. Ничего не дергалось. Процесс был запущен как-обычно в диспетчере процессов ПП, прерывание там рядом переназначено. После возникновения прерывания был выход с него (тупо inc KeyDwn; rti). Далее в диспетчере задач по дохождению до кода было видно что что-то нажали, был выход из диспетчера и затем ЦП давал команду на очистку памяти ПП. Вообщем обычное дело.
    Ну так вот - если не делать считывание из ячейки по возникновению прерывания - затем блокировались например .ttyin (висело в бесконечном цикле) в ЦП. Нажатия клавиш тоже не слышно было.

    Помогло в прерывании тупо сделать считывание с ячейки (пометка что вызвалось нажатие клавиши как и раньше оставалась) и rti потом. Без считывания с ячейки происходил факап какой-то.
    Я делал это в соседней теме про косичку от Manwe для БК-0010 чтобы по возникновению прерывания тупо выйти из всего в RT-11. Вот без считывания выходит "косячно". Если в прерывании считывать адрес - выходит нормально.
    Естественно считывать ячейку 0177702 нужно обязательно. Сигнал запроса на прерывание устанавливается по фронту сигналов IE & RDY, т.е. если предыдущее значение бита готовности .И. разрешения прерывания было нулём, а новое стало единицей, то контроллер выставляет сигнал запроса на прерывание. Сбрасывается этот запрос удовлетворением прерывания, т.е. контроллер передаёт вектор, вызывается подпрограмма обработки. Вот если в подпрограмме обработки не считали регистр, то IE & RDY останутся единицей, и нового запроса на прерывание не будет, даже если нажмут клавишу. А при чтении регистра происходит сброс бита готовности, поэтому при новом нажатии снова возникнет фронт сигнала IE & RDY и будет выставлен новый запрос на прерывание.
    Последний раз редактировалось Alex_K; 16.09.2022 в 22:22.

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

    BlaireCas(16.09.2022)

  3. #1723

    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    485
    Спасибо Благодарностей отдано 
    140
    Спасибо Благодарностей получено 
    392
    Поблагодарили
    147 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я в железках не очень понимаю, но вообщем тут все сложно Ух кошмар. Какие-то люди давно сделали на этих там вон плис или как оно называется - цельный спектрум. А тут жуть какая-т. (да и не нужно никому
    Что-ж делать когда эти все микросхемы сдохнут.. эээ.. ну ладно. Не надо о грустном.

    Никита вон сделает авось эмуль на джаваскрипт (уже!) и может и нормас.

    (извиняюсь заранее, несколько эдаким "быдло-стайл" языком тут пишу, что удивительно для человека пишущего код на макро-11, но как-то так, не обижайтесь, это всё случайности, когда перечитываю сам в шоке)
    Последний раз редактировалось BlaireCas; 16.09.2022 в 22:48.
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

  4. #1724

    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    2,051
    Спасибо Благодарностей отдано 
    1,142
    Спасибо Благодарностей получено 
    1,473
    Поблагодарили
    525 сообщений
    Mentioned
    20 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    Я в железках не очень понимаю, но вообщем тут все сложно Ух кошмар. Какие-то люди давно сделали на этих там вон плис или как оно называется - цельный спектрум. А тут жуть какая-т. (да и не нужно никому
    Что-ж делать когда эти все микросхемы сдохнут.. эээ.. ну ладно. Не надо о грустном.

    Никита вон сделает авось эмуль на джаваскрипт (уже!) и может и нормас.
    Как раз таки, я очень очень надеюсь, что кто-нибудь всё же пройдёт эту дорогу и сделает полнеценно работающий УКНЦ в ПЛИС.
    Выглядит так, что все кусочки для этого уже есть.

    Оффтопик: Эмулятор УКНЦ на JavaScript есть, но он писан не мной - там чисто код на Си++ переписан в JS. А я делал эмулятор на основе WebAssembly - это тот же Си++ код ядра UKNCBTL, собранный через Emscripten.

  5. #1725

    Регистрация
    05.04.2016
    Адрес
    г. Мончегорск, Мурманская обл.
    Сообщений
    414
    Спасибо Благодарностей отдано 
    98
    Спасибо Благодарностей получено 
    68
    Поблагодарили
    45 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    Что-ж делать когда эти все микросхемы сдохнут.. эээ.. ну ладно. Не надо о грустном.
    Распереживавшись, что могу остаться без УКНЦ, как то со временем обзавёлся несколькими комплектами БМК, и несколькими рабочими платами.
    Сейчас всё же думаю что есть зерно истины в словах: - "УКНЦ наделали столько, что несмотря на металлистов, и нам и нашим детям хватит")

    Я не к тому, что не нужно увековечивать УКНЦ в FPGA.
    Просто к радости немногих любителей, она оказалась наиболее массово производившимся компьютером.
    aberrant_hacker

  6. #1726

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

    По умолчанию

    Цитата Сообщение от nzeemin Посмотреть сообщение
    Выглядит так, что все кусочки для этого уже есть.
    Не выглядит, а есть.

    И даже один форумчанин начал собирать это дело в ПЛИС, но что-то пошло не так, и рабочий результат пока не получен.

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

  8. #1727

    Регистрация
    10.04.2019
    Адрес
    г. Фокино, Брянская обл.
    Сообщений
    401
    Спасибо Благодарностей отдано 
    52
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    65 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Не выглядит, а есть.
    А где можно посмотреть на эти кусочки?

  9. #1728

    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    2,051
    Спасибо Благодарностей отдано 
    1,142
    Спасибо Благодарностей получено 
    1,473
    Поблагодарили
    525 сообщений
    Mentioned
    20 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZPilot Посмотреть сообщение
    А где можно посмотреть на эти кусочки?
    В том числе в этой теме.

    Я пытался выписывать текущее состояние, но наверное нужно обновлять: http://www.emuverse.ru/wiki/%D0%A3%D...91%D0%9C%D0%9A

    Да, ещё процессор вот тут: https://github.com/1801BM1/cpu11
    Последний раз редактировалось nzeemin; 19.09.2022 в 19:31.

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

    BlaireCas(22.09.2022), SuperMax(21.09.2022), Titus(19.09.2022), ZPilot(20.09.2022)

  10. #1729

    Регистрация
    19.01.2005
    Адрес
    Санкт-Петербург
    Сообщений
    11,555
    Спасибо Благодарностей отдано 
    205
    Спасибо Благодарностей получено 
    188
    Поблагодарили
    83 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от randomizer Посмотреть сообщение
    Сейчас всё же думаю что есть зерно истины в словах: - "УКНЦ наделали столько, что несмотря на металлистов, и нам и нашим детям хватит")
    Это правда, в год их всплывает по несколько сотен. Как минимум треть с обычными конденсаторами, поэтому для утилизаторов большого интереса не представляют.

  11. #1730

    Регистрация
    10.04.2019
    Адрес
    г. Фокино, Брянская обл.
    Сообщений
    401
    Спасибо Благодарностей отдано 
    52
    Спасибо Благодарностей получено 
    104
    Поблагодарили
    65 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от nzeemin Посмотреть сообщение
    Я пытался выписывать текущее состояние, но наверное нужно обновлять: http://www.emuverse.ru/wiki/%D0%A3%D...91%D0%9C%D0%9A
    Было бы очень здорово. Спасибо!

Страница 173 из 174 ПерваяПервая ... 169170171172173174 ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 32
    Последнее: 18.12.2024, 18:19
  2. Реверс-инжиниринг игры Boovie
    от Oleg N. Cher в разделе Программирование
    Ответов: 41
    Последнее: 09.01.2022, 23:07
  3. Реверс инжиниринг печатной платы
    от Filin в разделе Несортированное железо
    Ответов: 36
    Последнее: 11.03.2018, 22:46
  4. Куплю 1515ХМ1-6006, 1515ХМ1−6008
    от moxjemi в разделе Барахолка (архив)
    Ответов: 3
    Последнее: 10.01.2012, 17:23
  5. 1801ВМ2 А и Б
    от dk_spb в разделе ДВК, УКНЦ
    Ответов: 2
    Последнее: 03.05.2010, 11:51

Ваши права

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