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

User Tag List

Страница 5 из 6 ПерваяПервая 123456 ПоследняяПоследняя
Показано с 41 по 50 из 52

Тема: SpectrumProgress#3

  1. #41
    Guru
    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    13,773
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    143
    Спасибо Благодарностей получено 
    1,179
    Поблагодарили
    775 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Лас Посмотреть сообщение
    сектор 1 желательно считать
    вот он, с реала
    (получается стандартный - 256b, ксорка по буквам из текста)

    Hello hacker!
    I think it is not very hard to crack my defence.
    But what the reason?
    Don't waste your time. Send me a letter.
    (My adress is in the end of the scroll.)


    чё-то я стормозил (реал уже убрал) надо было посмотреть реальную структуру дорожки.

    сдвиг платки (я так и не понял на ней приёмник или передатчик) реально помогает, в ZXDstudio сразу видно как смещаются сектора. программа реально полезная и работает ещё на win2k
    Последний раз редактировалось goodboy; 26.01.2014 в 19:13.

  2. #42
    Veteran Аватар для Лас
    Регистрация
    18.11.2008
    Адрес
    пос.Полярный, ЯНАО
    Сообщений
    1,078
    Спасибо Благодарностей отдано 
    5
    Спасибо Благодарностей получено 
    9
    Поблагодарили
    7 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alexandr Medvedev Посмотреть сообщение
    Естественно не нужны. Приложения для DOS работают напрямую с железом без каких-либо драйверов. У makefdi надо правильно ключи в командной строке выставить чтобы результат был.
    А драйвер нужен только для Windows приложений.
    Раскажите это файлу mouse.com

    ---------- Post added at 19:58 ---------- Previous post was at 19:44 ----------

    Цитата Сообщение от goodboy Посмотреть сообщение
    вот он, с реала
    (получается стандартный - 256b, ксорка по буквам из текста)
    Он расксорен уже, что ли, тобою. Нужен просто сектор с дискеты без преобразований. Во вложении то, что нужно?

  3. #43
    Veteran Аватар для Лас
    Регистрация
    18.11.2008
    Адрес
    пос.Полярный, ЯНАО
    Сообщений
    1,078
    Спасибо Благодарностей отдано 
    5
    Спасибо Благодарностей получено 
    9
    Поблагодарили
    7 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Удалось починить OpenIT из образа td0, что выкладывал Гудбой...

    Как стало ясно ранее, на 154 треке было всего 2 сектора, один исправный, вместо другого в образ считалась "каша".

    Сконвертировал td0 в fdi - просто мне так проще редактировать.
    В редакторе вместо сектора с "кашей" вставил тот сектор, что удалось считать Гудбою на реале.
    Пометил этот сектор сбойным (как задумано автором) с помощью флага КС в .fdi.
    Наконец, исправил нумерацию секторов на 154 треке. Должны были быть сектора с номерами 2 и 3, а не 101 и 2, как было считано.

    Больше ничего не трогал. Авторские проверки на 154 треке отрабатывают как надо.
    Работоспособность игры не проверял - загрузил, увидел игровое поле, выключил.
    Вложения Вложения

  4. #44
    Guru
    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    13,773
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    143
    Спасибо Благодарностей получено 
    1,179
    Поблагодарили
    775 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    ох уж эти Петербуржцы, один ставит защиту - другой её ломает, а я так и не понимаю откуда берётся сектор с нужными данными
    (скрины с реала)

  5. #45
    Master
    Регистрация
    17.01.2005
    Адрес
    Старый Оскол
    Сообщений
    537
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    7
    Поблагодарили
    4 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Лас Посмотреть сообщение
    Раскажите это файлу mouse.com
    Рассказываю :-) .
    mouse.com (запущенный под WinXP) работает напрямую с виртуальной мышью, эмулируемой VDM подсистемой для DOS приложений.
    Код:
    When a DOS program running inside a VDM needs to access a peripheral, Windows will either allow this directly (rarely), or will present the DOS program with a Virtual Device Driver which emulates the hardware using operating system functions.
    Это типа маленький встроенный mini VirtualBOX.
    Для DOS приложений можно ещё и виртуальный SoundBlaster настроить см. %windir%/config.nt, %windir%/autoexec.nt . Однако на реальном компе может стоять любая звуковая карта.

  6. #46
    Veteran Аватар для Лас
    Регистрация
    18.11.2008
    Адрес
    пос.Полярный, ЯНАО
    Сообщений
    1,078
    Спасибо Благодарностей отдано 
    5
    Спасибо Благодарностей получено 
    9
    Поблагодарили
    7 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    не понимаю откуда берётся сектор с нужными данными
    (скрины с реала)
    Сектор 3 - привет хакеру Крису - загружается автором первым. С нормальным crc.
    Сектор 2 - привет неизвестному хакеру, ксорка - загружается поверх третьего сектора. Это "битый" сектор (с обязательной ошибкой считывания, это ключевой момент защиты от копирования). Контроллер состояния ВГ должен указывать на ошибку после чтения этого сектора, автор это проверяет. Еще автором затем проверяется контрольная сумма того, что считалось.
    Их всего 8 штук на дорожке, этих вторых секторов, они все одинаковые. Причуда автора.
    В образе td0 на 154 дорожке при создании образа было 2 ошибки - сектор 2 шел под 101-м номером и содержал не полезные данные, а разметку дорожки. А сектор 3 шел в образе td0 под 2-м номером, но прочитался правильно.

    Я не ломал ничьих защит. Изучил логику загрузки. Взял считанный тобой на реале 2-й сектор, пихнул его в fdi вместо 101-го и пометил его сбойным. А также исправил номер 3го сектора, который изначально в образе td0 был 2-м.
    Всё. Ну, можно еще на 154 дорожке продублировать 2й сектор еще 7 раз.

    ---------- Post added at 16:58 ---------- Previous post was at 16:53 ----------

    Alexandr Medvedev, mouse.com это драйвер мыши или нет?

    ---------- Post added at 17:18 ---------- Previous post was at 16:58 ----------

    Цитата Сообщение от Лас Посмотреть сообщение
    Их всего 8 штук на дорожке, этих вторых секторов, они все одинаковые. Причуда автора.
    Или не причуда. На Спектруме не знаю, как проверить.
    Возможно, что там на 154 дорожке семь секторов №2 записаны нормально, а восьмой сектор №2 - записан с ошибкой. После считывания 3-го сектора, перед тем, как перейти к считыванию сбойного сектора №2, автором сделана задержка сколько-то мс. Вероятно, для того, чтобы диск успел повернуться на определенный угол, к нужному сектору из "одинаковых".

    На спектруме сложно проверить эту версию - копировщики встретят нормальный сектор №2 и отрапортуют, что считан ОК. Что, кстати, видно на скрине Гудбоя - сканированием дорожки получена её карта, а вот сбойных секторов №2 там нет.

    ---------- Post added at 18:36 ---------- Previous post was at 17:18 ----------

    Вообще я тут поспешных выводов наделал, похоже. Надо вечером сесть с нуля разбираться. Похоже, там немного иначе автор задумал...
    Последний раз редактировалось Лас; 27.01.2014 в 16:57.

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

  8. #47
    Guru
    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    13,773
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    143
    Спасибо Благодарностей получено 
    1,179
    Поблагодарили
    775 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Лас Посмотреть сообщение
    Вообще я тут поспешных выводов наделал, похоже. Надо вечером сесть с нуля разбираться. Похоже, там немного иначе автор задумал...
    помучал на реале этот кусок. как я понял содержимое сектора d=154,e=2 совершенно не важно (я для примера грузил его в 0),
    наверно от его загрузки требуется только позиционирование головки, а вот дальнейшая пауза важна, иначе потом загрузится блок с приветом Крису.
    после загрузки второго блока с=4 и подсчёт контрольной суммы верный. то есть загрузка этих блоков больше не повторяется.
    Последний раз редактировалось goodboy; 27.01.2014 в 21:40.

  9. #48
    Veteran Аватар для Лас
    Регистрация
    18.11.2008
    Адрес
    пос.Полярный, ЯНАО
    Сообщений
    1,078
    Спасибо Благодарностей отдано 
    5
    Спасибо Благодарностей получено 
    9
    Поблагодарили
    7 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вобщем, загрузка идет не так, как я думал ранее...

    А вот как:
    Первым грузится сектор 3. Функция его одна - это начало отсчета угла поворота диска.
    Далее пауза на поворот диска на определенный угол, с которого затем происходит считывание определенного сектора №2, записанного, как верно заметил Alexandr Medvedev:
    Цитата Сообщение от Alexandr Medvedev Посмотреть сообщение
    с использованием перерванной записи, поэтому чтение происходит до момента рассинхронизации MFM
    Как указал goodboy, после чтения этого сектора:
    Цитата Сообщение от goodboy Посмотреть сообщение
    после загрузки второго блока с=4
    рег. С=4 это при команде чтения сектора установленный бит D2 - потеря данных. Всё сходится.

    Этот сбойный сектор с №2 спрятан среди других семи секторов с номером 2 (фальшивые, с приветом Крису). При трассировке отладчиком (или копировании трековым копировщиком после сканирования трека) считан будет другой сектор (с вероятностью 1 к 8 ?). Так как точный поворот на угол от начала отсчета не будет выдержан отладчиком (или копировщиком).

    Структура 154 трека:

    -индексное отверстие
    -сектор 3 - хлам типа байтов разметки дорожки, читается ОК
    -сектор 2 - фальшивый, привет крису, читается ОК
    -сектор 2 - настоящий, нужные данные, сбойный (читается 512 байт, потом рассинхронизация данных)
    -сектор 2 - фальшивый, привет крису, читается ОК
    -сектор 2 - фальшивый, привет крису, читается ОК
    -сектор 2 - фальшивый, привет крису, читается ОК
    -сектор 2 - фальшивый, привет крису, читается ОК
    -сектор 2 - фальшивый, привет крису, читается ОК
    -сектор 2 - фальшивый, привет крису, читается ОК

    В результате экспериментов выяснилось:
    UnrealSpeccy при включенной опции перехват процедур TR-DOS ("Trap tr-dos r/w") жульнически грузит первый встреченный от индексного отверстия сектор 2 (таким образом, попадая на фальшивый).
    При отключенной опции перехват процедур TR-DOS ("Trap tr-dos r/w")
    UnrealSpeccy за время задержки "поворачивает диск" и честно грузит настоящий сектор №2.

    Если, в целя эксперимента, увеличивать программную задержку на время поворота диска, то UnrealSpeccy грузит сектор №2 дальше от индексного отверстия.

    Вопрос: нужно ли делать "честный" образ с этой игрой, которая будет грузиться и запускаться в UnrealSpeccy отключенными ловушками и неизвестно, будет ли работать в других эмуляторах? Или достаточно того, что я уже выкладывал.

    Спасибо всем, кто участвовал. Лично мне было очень интересно поковыряться в этой узкоспециальной теме.
    Последний раз редактировалось Лас; 28.01.2014 в 09:22.

  10. #49
    Master
    Регистрация
    17.01.2005
    Адрес
    Старый Оскол
    Сообщений
    537
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    7
    Поблагодарили
    4 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Лас Посмотреть сообщение
    В результате экспериментов выяснилось:
    UnrealSpeccy при включенной опции перехват процедур TR-DOS ("Trap tr-dos r/w") жульнически грузит первый встреченный от индексного отверстия сектор 2 (таким образом, попадая на фальшивый).
    А если фальшивые сектора №2 перенумеровать например 5 вместо 2 (оставив с номером 2 только настоящий) чтобы не мешались и не сбивали с толку эмулятор?
    Цитата Сообщение от Лас Посмотреть сообщение
    Вопрос: нужно ли делать "честный" образ с этой игрой, которая будет грузиться и запускаться в UnrealSpeccy отключенными ловушками и неизвестно, будет ли работать в других эмуляторах?
    Думаю нужно.
    Будет неплохой тест на качество эмуляции.

  11. #50
    Veteran Аватар для Лас
    Регистрация
    18.11.2008
    Адрес
    пос.Полярный, ЯНАО
    Сообщений
    1,078
    Спасибо Благодарностей отдано 
    5
    Спасибо Благодарностей получено 
    9
    Поблагодарили
    7 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Alexandr Medvedev Посмотреть сообщение
    А если фальшивые сектора №2 перенумеровать например 5 вместо 2 (оставив с номером 2 только настоящий) чтобы не мешались и не сбивали с толку эмулятор?
    Это уже сделано. Я выше выложил версию, где на дорожке только сектор 2 и 3. Должно работать в любом эмуляторе с поддержкой fdi.

Страница 5 из 6 ПерваяПервая 123456 ПоследняяПоследняя

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

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

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

Ваши права

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