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

User Tag List

Страница 3 из 7 ПерваяПервая 1234567 ПоследняяПоследняя
Показано с 21 по 30 из 67

Тема: тест INT`a от Ковалевского

  1. #21
    Veteran Аватар для ZXMAK
    Регистрация
    30.01.2006
    Адрес
    Харьков
    Сообщений
    1,406
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    20
    Поблагодарили
    14 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от _Ratibor_ Посмотреть сообщение
    Что и подтверждает мои слова.
    Для справки: в фирменном спектруме 48 нет вайта, там только есть торможение тактовки при прорисовке экрана.
    Я в курсе.


    Цитата Сообщение от _Ratibor_ Посмотреть сообщение
    Вот как раз с точностью до наоборот.
    При торможении тактовки, количество тактов не меняется, а при вайте как раз меняется.

    Это заблуждение. В принципе можно было и догадаться что такого просто не может быть. Ведь что это за торможение, которое занимает 0 тактов?
    Для примера рассмотрим ситуацию когда ULA останавливает процессор на 6 тактов в момент такта 14362 (исчисляемого от начала кадра):

    Вариант торможения WAIT'ом - после выполнения инструкции NOP, следующая инструкция начнет выполнятся на такте 14372.

    Вариант торможения CLK - после выполнения инструкции NOP, cледующая инструкция начнет выполнятся на такте 14372.


    Найдите отличия

    С точки зрения схемотехники разница есть и серьзезная. С точки зрения растактовки кадра - разницы нет, если не считать то что WAIT не на любом такте сможет приостановить процессор.

    ---------- Post added at 22:33 ---------- Previous post was at 22:24 ----------

    Цитата Сообщение от _Ratibor_ Посмотреть сообщение
    Здесь ошибочка в вашем эмуляторе, у ленинграда-2 полосы совпадают нормально.
    А эмулировать инт у ленинграда-1 и дельт - это безперспективное занятие,
    Вообще-то это ULA Ленинград-1, а у ленинград-2 инт разве отличается? Просто мне тут выкладывали фотки мультиколора на Л1 и Л2. И судя по ним я сделал вывод что инт у них одинаковый...
    Последний раз редактировалось ZXMAK; 12.10.2011 в 23:38.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

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

    По умолчанию

    Alexander Makeev, Вы вообще представляете что такое торможение тактовки ?

    Объясняю на пальцах:
    скажем нам надо задержать проц по времени на 2 такта.
    1. удлинняем вайт на 2 такта и все, при этом проц выполнит 2 такта(проц выполнит дополнительно ноп).
    2. грубо говоря подаем на проц вместо 3.5 мгц - 1.75 мгц, при этом проц выполнит 1 такт и никаких нопов выполнятся не будет, но по времени это будет совпадать с первым вариантом.

    Цитата Сообщение от Alexander Makeev Посмотреть сообщение
    Вообще-то это ULA Ленинград-1, а у ленинград-2 инт разве отличается? Просто мне тут выкладывали фотки мультиколора на Л1 и Л2. И судя по ним я сделал вывод что инт у них одинаковый...
    Абсолютно разная реализация инта в ленинграде-1 и ленинграде-2.

  3. #23
    Veteran Аватар для ZXMAK
    Регистрация
    30.01.2006
    Адрес
    Харьков
    Сообщений
    1,406
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    20
    Поблагодарили
    14 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от _Ratibor_ Посмотреть сообщение
    Alexander Makeev, Вы вообще представляете что такое торможение тактовки ?

    Объясняю на пальцах:
    скажем нам надо задержать проц по времени на 2 такта.
    1. удлинняем вайт на 2 такта и все, при этом проц выполнит 2 такта(проц выполнит дополнительно ноп).
    2. грубо говоря подаем на проц вместо 3.5 мгц - 1.75 мгц, при этом проц выполнит 1 такт и никаких нопов выполнятся не будет, но по времени это будет совпадать с первым вариантом.
    представляю, на пальцах можно не объяснять, первая моя специальность- цифровая схемотехника

    Ваше заблуждение основано на том что развертка видеолуча задается тактами процессора, поэтому вы считаете что если остановить такты процессора, то остановится и вся ULA (читай развертка). Т.е. луч на экране телевизора застынет и будет ожидать пока на процессор опять подадут тактовую частоту

    ---------- Post added at 22:55 ---------- Previous post was at 22:52 ----------

    Цитата Сообщение от _Ratibor_ Посмотреть сообщение
    Абсолютно разная реализация инта в ленинграде-1 и ленинграде-2.
    а фотографиями экрана на живом ленинграде-2 можете помочь?
    Для первого тоже нужны, проверка лишней не будет

    Кстати информацию про такты Ленинграда-1 я черпал из этой схемы, может она неправильная?
    Последний раз редактировалось ZXMAK; 12.10.2011 в 23:57.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

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

    По умолчанию

    Цитата Сообщение от Alexander Makeev Посмотреть сообщение
    Ваше заблуждение основано на том что развертка видеолуча задается тактами процессора, поэтому вы считаете что если остановить такты процессора, то остановится и вся ULA (читай развертка). Т.е. луч на экране телевизора застынет и будет ожидать пока на процессор опять подадут тактовую частоту
    Вот как раз и нет.
    Это заблуждение было у тех, кто делал наши клоны, за исключением создателей старой москвы и срисованных с нее дельт с раздельными полями памяти и создателей профиков.

    Это Вы противоречите своим словам, наглядный тому пример ленинград-1 с вайтами и без.
    Последний раз редактировалось _Ratibor_; 12.10.2011 в 23:59.

  5. #25
    Veteran Аватар для ZXMAK
    Регистрация
    30.01.2006
    Адрес
    Харьков
    Сообщений
    1,406
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    20
    Поблагодарили
    14 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от _Ratibor_ Посмотреть сообщение
    Вот как раз и нет.
    Это заблуждение было у тех, кто делал наши клоны, за исключением создателей старой москвы и срисованных с нее дельт с раздельными полями памяти и создателей профиков.
    Я знаю что говорю - задержки в оригинальном спектруме останавливают только процессор. ULA продолжает считать такты и на основе их формировать ТВ сигнал

    Иначе и быть не может, ТВ-сигнал - это не процессор, его не остановишь. Именно поэтому ULA и останавливает процессор, а не развертку ТВ сигнала.


    Не вижу никакого заблуждения разработчиков наших клонов. Их решение было вполне объяснимо - чем меньше WAIT'ов, тем больше производительность. То что это может повлиять на мультиколор в играх скорей всего просто либо сознательно не учитывали, упрощая схемотехнику. Либо просто не догадывались.

    ---------- Post added at 23:07 ---------- Previous post was at 23:03 ----------

    Цитата Сообщение от _Ratibor_ Посмотреть сообщение
    Это Вы противоречите своим словам, наглядный тому пример ленинград-1 с вайтами и без.
    в чем вы усмотрели противоречие?

    Ленинград - это плохой пример воздействия WAIT'ов на мультиколор. Плохой , потому что WAIT'ы в Ленинграде возникают только во время цикла M1 и только если он приходится на нечетный такт. Это означает что WAIT'ов у Ленинграда немного, соответственно и влияние их небольшое, но более чем заметное.
    Последний раз редактировалось ZXMAK; 13.10.2011 в 00:13.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

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

    По умолчанию

    Теперь смотрите:

    Запускаем улатест3 на фирменном спектруме 48 и получаем:


    Теперь берем ленинград-1 с вайтом, но отрезаем нафиг инт и делаем инт на тм2 как и положено от кадрового синхроимпульса. Запускаем улатест и получаем то же самое.
    Что делает улатест3: рисует в первой строке атрибуты от 64 (40 в hex) до 95(5F в hex). Далее по приходу инта начинает считать такты проца(не важно заторможенные они или нет) и считывать данные с шины.

    И что получаем в итоге: что на фирменном 48, что на ленинграде, экран выводится через одно и тоже количество тактов после прихода инта. Именно тактов проца(самая левая колонка).

    Теперь запускаем тестинт.

    На фирменном получаем:


    А на ленинграде получаем более менее совпадающие желтую и белую полосы.
    Последний раз редактировалось _Ratibor_; 13.10.2011 в 00:40.

  7. #27
    Veteran Аватар для ZXMAK
    Регистрация
    30.01.2006
    Адрес
    Харьков
    Сообщений
    1,406
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    20
    Поблагодарили
    14 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от _Ratibor_ Посмотреть сообщение
    Теперь берем ленинград-1 с вайтом, но отрезаем нафиг инт и делаем инт на тм2 как и положено от кадрового синхроимпульса. Запускаем улатест и получаем то же самое.
    а смысл в этой операции?

    Суть UlaTest3 заключается в том чтобы изучать задержки оригинального спектрума. Изучать путем поиска номера такта на котором ULA делает выборку нужного байта из видеопамяти.

    А что сделали вы - подогнали растактовку таким образом чтобы значения этой программы совпадали с тем что получается на фирменном спектруме. Вы подогнали растактовку и какой смысл тогда смотреть на данные которые вы подгоняли?
    То что картинка в этой программе совпадает, вовсе не означает что тайминги такие-же как в фирменном спектруме. Это значит только что вам удалось обмануть конкретную программу - UlaTest3, не более. Этим и объясняется то что в другой программе разница с фирменным спектрумом есть.

    А вообще у меня есть сомнения в том что одним интом получится добиться полностью идентичной картинки UlaTest3 на Ленинграде.
    Последний раз редактировалось ZXMAK; 13.10.2011 в 00:50.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

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

    По умолчанию

    Цитата Сообщение от Alexander Makeev Посмотреть сообщение
    а смысл в этой операции?

    Суть UlaTest3 заключается в том чтобы изучать задержки оригинального спектрума. Изучать путем поиска номера такта на котором ULA делает выборку нужного байта из видеопамяти.

    А что сделали вы - подогнали растактовку таким образом чтобы значения этой программы совпадали с тем что получается на фирменном спектруме. Вы подогнали растактовку и какой смысл тогда смотреть на данные которые вы подгоняли?
    В том то и дело что я ничего не подгонял.

    Цитата Сообщение от Alexander Makeev Посмотреть сообщение
    То что картинка в этой программе совпадает, вовсе не означает что тайминги такие-же как в фирменном спектруме. Это значит только что вам удалось обмануть конкретную программу - UlaTest3, не более.
    Опять же в том то и дело что ничего я не обманывал.

    Цитата Сообщение от Alexander Makeev Посмотреть сообщение
    А вообще у меня есть сомнения в том что одним интом получится добиться полностью идентичной картинки UlaTest3 на Ленинграде.
    Я же Вам сказал сперва разберитесь что такое вайт и что такое торможение тактовки и что такое инт и когда он должен приходить и что такое порт атрибутов и что там и когда выводится.
    И бросьте эмулировать клоны по фотографиям
    Последний раз редактировалось _Ratibor_; 13.10.2011 в 00:59.

  9. #29
    Veteran Аватар для ZXMAK
    Регистрация
    30.01.2006
    Адрес
    Харьков
    Сообщений
    1,406
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    20
    Поблагодарили
    14 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от _Ratibor_ Посмотреть сообщение
    В том то и дело что я ничего не подгонял.
    значит это случайное совпадение. Тайминги фирменного спектрума и ленинграда (с модами или без - не важно) - это совершенно разные вещи. Задержки у этих машин не имеют ничего общего.
    И простыми модами ленинграда добиться такого-же поведения как на фирменном спектруме не выйдет. Если удалось подогнать уровень бордюра (о совпадении по горизонтали я уж не говорю) в одной программе, он поплывет в дургой. Потому что структура задержек у фирменного спектрума и ленинграда совершенно разная.
    ZXMAK2 - Виртуальная Машина ZX Spectrum https://github.com/zxmak/ZXMAK2 (старая ссылка http://zxmak2.codeplex.com)
    ZXMAK.NET - спектрум на C# http://sourceforge.net/projects/zxmak-dotnet

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

    По умолчанию

    Цитата Сообщение от Alexander Makeev Посмотреть сообщение
    значит это случайное совпадение. Тайминги фирменного спектрума и ленинграда (с модами или без - не важно) - это совершенно разные вещи. Задержки у этих машин не имеют ничего общего.
    И простыми модами ленинграда добиться такого-же поведения как на фирменном спектруме не выйдет. Если удалось подогнать уровень бордюра (о совпадении по горизонтали я уж не говорю) в одной программе, он поплывет в дургой. Потому что структура задержек у фирменного спектрума и ленинграда совершенно разная.
    Вы опять путаете тайминги с тактами проца
    Грубо говоря тайминги - это ход телевизионного луча,
    а такты проца-это количество тактовых импульсов(не длину, а именно количество) пришедшие на 6 ногу проца.

    Есть строго стандарты кадра.
    Есть строго положение инта в кадре - сразу за кадровым импульсом.
    Все остальное - лирика.
    При неправильном положении инта как раз и начинается неразбериха.
    Вместо того чтобы исправить положение инта, а потом подгонять все эффекты тактовкой,
    начинают заниматься фигней с вайтом. Да, как вы и сказали если вайтом обмануть одну программу, то все равно глюки вылезут в другой. Но если исправить инт, а потом тактовку, то абсолютно во всех программах будет полное совпадение. Сегодня я убедился в этом на одном клоне - полное совпадение по всем программам с фирменным 48.
    Последний раз редактировалось _Ratibor_; 13.10.2011 в 01:26.

Страница 3 из 7 ПерваяПервая 1234567 ПоследняяПоследняя

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

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

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

Похожие темы

  1. Тест ОЗУ 48
    от PicNov76 в разделе Память
    Ответов: 31
    Последнее: 24.12.2018, 13:02
  2. Тест Ю.Ковалевского
    от Costa в разделе Несортированное железо
    Ответов: 14
    Последнее: 19.11.2014, 03:03
  3. тест-ПЗУ
    от Egal в разделе Память
    Ответов: 18
    Последнее: 27.08.2010, 13:12

Ваши права

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