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

User Tag List

Страница 27 из 34 ПерваяПервая ... 232425262728293031 ... ПоследняяПоследняя
Показано с 261 по 270 из 339

Тема: Расскажите о ZX Next

  1. #261
    Veteran Аватар для savelij
    Регистрация
    23.03.2007
    Адрес
    г. Сухиничи, Калужская обл.
    Сообщений
    1,793
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CodeMaster Посмотреть сообщение
    Может, но с железом хоть кто-то пытается разовбраться, с кодом же только savelij заявил, что что-то делал, но пока непонятно, получилось ли хоть что-то.
    Год назад работало на реале, даже с учетом того что при патче накосячил и длина получилась на 2 такта короче. Я это в живую не видел. Потому о чем то говорить далее пока не вижу смысла. С учетом шизоцирка в барахолке выяснить пока не представляется возможным

    ---------- Post added at 18:14 ---------- Previous post was at 18:11 ----------

    Цитата Сообщение от KokaF77 Посмотреть сообщение
    Присоединяюсь.
    Уважаемый Conan, если есть возможность, скиньте, пожалуйста, в тему схему материнской платы в PCAD`е, sch и lib`ы. Заранее, СПАСИБО!
    Дались вам все эти либы и прочее. Нету там ZX-BUSа. Только родные контроллеры можно втыкать. Вам конечно виднее, но тупо повторить то что было сделано я считаю не резон.

    Скрытый текст

    Profi 4.02 512k
    Profi 5.04 1024k нижняя плата здесь
    Scorpion 256k+ProfROM+SMUC 1.3+SMUC 2.0+ZXMC2
    Pentagon v2.2+Z-controller+ZXMC2+NeoGS
    АТМ 7.10 1024k
    Pentagon 2.666LE
    ZX Evolution 4Mb rev B
    [свернуть]


    Извещение лички отключено, захожу редко.

  2. #262
    Veteran Аватар для KokaF77
    Регистрация
    22.09.2010
    Адрес
    Крымск
    Сообщений
    1,151
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    AIS, Я вообще уже теряюсь...

    Цитата Сообщение от Conan Посмотреть сообщение
    Процесс (упрощенно) выглядит так: устанавливаем требуемое напряжение питания ПЗУ и программируем короткими импульсами нужный быт(ы), при этом считываем их (многократно) и сравниваем полученные значения (нужно что бы равновероятно читались "0" и "1").
    ???
    Цитата Сообщение от Conan Посмотреть сообщение
    Цитата:
    Сообщение от CodeMaster: "2. В зависимости от внешних параметров (температура кристала и т.д.) карта ПБ не изменялась?"
    Да, поэтому и требовалось так много ПБ (чтобы покрыть требуемые значения питания и температуры).
    ???

    Однозначно надо вскрывать код! Иначе эти танцы с бубном никогда не закончатся. 2005-2011!!! Через четыре месяца будет 2012...
    Последний раз редактировалось KokaF77; 01.08.2011 в 23:11.
    Разыскиваю всё, что связано с ПЭВМ "Ириша".

  3. #263
    Activist Аватар для AIS
    Регистрация
    24.06.2011
    Адрес
    Тула
    Сообщений
    278
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я так понимаю - сделано так - плавающие биты перестают плавать при определенных условиях (температура , напряжение). Для поддержания постоянного количества ПБ программируются ещё биты, которые начинают плавать в тех условиях, когда первые плавать перестали. В результате количество ПБ во всем диапазоне внешних условий остается примерно постоянным.
    Кодом надо заниматься или спецпрограмматор лепить.
    Лучше уж код. Через пару дней освобожусь от срочных дел - начну.

  4. #264
    Veteran Аватар для KokaF77
    Регистрация
    22.09.2010
    Адрес
    Крымск
    Сообщений
    1,151
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Сильно много неизвестных моментов, но задачка того стоит. Зацепила она меня.
    Буду тоже изыскивать возможности и время.
    Код однозначно!
    И с макетом надо будет что-то придумать.
    Я подключаюсь.
    Разыскиваю всё, что связано с ПЭВМ "Ириша".

  5. #265
    Master Аватар для _Ratibor_
    Регистрация
    11.03.2011
    Адрес
    г. Челябинск
    Сообщений
    558
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CodeMaster Посмотреть сообщение
    Хотя с другой стороны я не понимаю как тогда работает код если VROM так нестабильно читается, говорить том, что эти биты относятся к защите ИМХО не приходится, так как тогда там половина кода получается плавает ;-)))
    Цитата Сообщение от CodeMaster Посмотреть сообщение
    Но в ZX Next VROM работает примерно в тех же (и даже более худших) условиях, но работатет. Поэтому создаётся такое ощущение, что подход к получению карты ПБ у нас в корне неверный, т.к. VROM должен был обеспечивать не только защиту, но и стабильную работу.
    Мысли вслух:
    Как правильно заметил CodeMaster - VROM должен был обеспечивать не только защиту, но и стабильную работу.
    Начнем сначала - насколько я понял, если просто скопировать прошивку, то ZX Next нормально работает примерно первые три минуты. Значит основной нужный нам код или большая его часть без ПБ. Тогда если несколько раз считывать дамп с холодной ПЗУ и если там будут плавающие биты или даже байты, то это мишура и к основному коду не имеет никакого отношения. Иначе бы ZX Next VROM просто не работал бы нормально в течении первых трех минут. Хотя это может и не совсем так, некоторые биты могут плавать и в основном коде сразу же, но обэтом чуть позже.

    Что же может происходить в эти первые три минуты:
    1. Предположим что в основном коде нет ПБ и он(основной код) собирает статистику по всей ПЗУ о ПБ и когда соберет ее и убедится что чтото не так, то отрубается. Но.... это слишком явно с точки зрения раскрытия кода и слишком сложно в реализации с точки зрения аппаратной части(нужна стабильность в плавании постоянного количества ПБ, причем в разное время и в разных местах). Так что этот вариан отпадает.
    2. По всей ПЗУ в виде мишуры записано куча плавающих битов и даже байтов(чтоб при взломе было трудно найти закономерность). При этом несколько реальных ПБ есть в основном коде.
    Цитата Сообщение от AIS Посмотреть сообщение
    Значащих, скорее всего много, а 10 байт, которые нужно пропатчить - это не плавающие ячейки, а места в коде, где они анализируются.
    Думаю немного не так, много незначащих, а те 10 они скорей всего не анализируются, а находятся в основном коде и выполняются. Как бы объяснить по доходчивей
    Скажем есть задача - подвесить проц через три минуты.
    Один из вариантов переполнить стек, так чтоб через три минуты он переполнился и проц фиг знает что начал выполнять.

    Вот простой пример:

    start:
    call loop
    jp start

    loop:
    nop
    jp start

    Стек переполнится.

    А теперь представим что в байте где стоит nop и там есть плавающие биты и nop заменяется на ret. Это конечно утрировано, но идея думаю понятна.

    Кроме стека еще куча возможностей завесить проц.
    Скажем заводим какой либо счетчик и его нужно будет обнулять раз в три минуты, а иначе он переполнится.

    Вот и нужны несколько байт с плавающими битами чтоб гарантировано один из них сработал, т.е. "поплыл" в нужное нам русло.

    Хороший пример тому в AVR - watchdog
    Если вовремя не обнулить его, то проц резетится.
    И нужно тупо в код в разные места натыкать несколько раз обнуление таймера и все.
    Применимо к нашему случаю с ПБ получится - байты будут считываться либо nop, либо обнуление таймера. Итого обе инструкции не влияют на выполнение основного кода, а на нормальную работоспособность проца ох как даже влияют. А еще натыкать пару сотен ПБ в неиспользуемые места, то попробуй повычисляй тогда

    Т.е. получается нужно всего лишь вычислить незначащие байты в основном исполняемом коде, точнее не влияющие на выполнение основной задачи поставленной перед ZX Next VROM и правильно исправить их.

    И Conan думаю знает что нужно искать. Допускаю что он может и не помнить где именно они находятся, но точно знает что нужно искать и на что править
    Впомним те годы (80-90) когда все это делалось.
    Кто мог - тот создавал, а кто не мог - тот тупо копировал.
    Причем даже и без всякой защиты частенько толком скопировать то без ошибок не могли
    Так что городить чтото невероятное небыло смысла.
    Как он правильно сказал, для того кто может, не составит труда написать программу по новой.
    А кто не может - тот фик скопирует и простую защиту.
    Защита была не от производителей Profi, АТМ, Scorpion и т.п.,
    а от тех кто тупо пытался копировать.

    Что первым делом будут делать ?
    Правильно - пытаться считывать несметное количество раз ПЗУ и искать закономерность
    Флаг им в руки, там больше пол ПЗУ с ПБ. Искать закономерность будут всю жизнь.
    Через неделю им надоест и они другим займутся, т.к. как говорится время деньги.

    Думаю расчет как раз и был на это.

    Исходя из соотношения трудозатраты-откат ни за что не поверю что в ZX Next VROM использовалась защита на уровне космических технологий(чтоб все плавало так, что даже зависило от направления ветра на марсе и при этом все это можно было просчитать, да к тому же при всем при этом основная программа выполнялась стабильно).

    Хотя думаю и понимаю его почему он не хочет просто так об этом рассказать.
    Последний раз редактировалось _Ratibor_; 02.08.2011 в 02:41.

  6. #266
    Veteran Аватар для KokaF77
    Регистрация
    22.09.2010
    Адрес
    Крымск
    Сообщений
    1,151
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от _Ratibor_ Посмотреть сообщение
    Что же может происходить в эти первые три минуты
    Три секунды.

    Цитата Сообщение от _Ratibor_ Посмотреть сообщение
    Один из вариантов переполнить стек
    Стека нет. ОЗУ то нет!? И подобные инструкции -->
    Цитата Сообщение от _Ratibor_ Посмотреть сообщение
    call loop
    сомневаюсь, что возможны. Хотя кто знает...
    Разыскиваю всё, что связано с ПЭВМ "Ириша".

  7. #267
    Master Аватар для _Ratibor_
    Регистрация
    11.03.2011
    Адрес
    г. Челябинск
    Сообщений
    558
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от KokaF77 Посмотреть сообщение
    Три секунды.
    Не суть важно.

    Цитата Сообщение от KokaF77 Посмотреть сообщение
    Стека нет. ОЗУ то нет!? И подобные инструкции -->

    сомневаюсь, что возможны. Хотя кто знает...
    Это тоже не суть важно, т.к. это всего лишь пример, чтоб проще понять(вернее объяснить) принцип возможной защиты.

  8. #268
    Activist Аватар для AIS
    Регистрация
    24.06.2011
    Адрес
    Тула
    Сообщений
    278
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Если использовать плавающие биты в кодах команд, то надо подбирать команды, отличающиеся кодами одним битом и этот бит делать плавающим.
    Проще использовать плавающий бит в адресе команды JMP и подсчитывать количество переходов по двум возможным адресам.
    Версий можно придумать тучу, осталось только выяснить что происходит на самом деле.

  9. #269
    Master Аватар для _Ratibor_
    Регистрация
    11.03.2011
    Адрес
    г. Челябинск
    Сообщений
    558
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AIS Посмотреть сообщение
    Если использовать плавающие биты в кодах команд, то надо подбирать команды, отличающиеся кодами одним битом и этот бит делать плавающим.
    ..........
    Версий можно придумать тучу
    Я об этом и пытался сказать

  10. #270
    Guru Аватар для CodeMaster
    Регистрация
    26.04.2009
    Адрес
    г. Воронеж
    Сообщений
    6,210
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    210
    Поблагодарили
    181 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от KokaF77 Посмотреть сообщение
    Ещё пара регистров, пара мультиплексоров. Ну, и видео надо как-то сформировать, т.е. немного мелочёвки всякой.
    Это как бы не обязательно, на до просто посмотреть остановится проц через 3 сек или нет.

    Цитата Сообщение от savelij Посмотреть сообщение
    Год назад работало на реале, даже с учетом того что при патче накосячил и длина получилась на 2 такта короче. Я это в живую не видел.
    Выложи её, я проверю на реале.
    "Во времена всеобщей лжи говорить правду - это экстремизм" - афоризм.

Страница 27 из 34 ПерваяПервая ... 232425262728293031 ... ПоследняяПоследняя

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

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

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

Ваши права

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