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

User Tag List

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

Тема: Вектор-06Ц: Эмуляция - КР580ВИ53

  1. #21
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,105
    Спасибо Благодарностей отдано 
    772
    Спасибо Благодарностей получено 
    643
    Поблагодарили
    398 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот небезынтересный сорец из MAME. Не думаю, что этот таймер выдержал бы проверку Вектором, но он тоже не в лоб по даташиту написан.

    http://mamedev.org/source/src/emu/ma...pit8253.c.html

    ---------- Post added at 20:10 ---------- Previous post was at 19:55 ----------

    Да, к слову сказать, установка флага разрешения счета у меня происходит на следующий за загрузкой таймерклок, значит первый отсчет случится еще на следующий. Как будто бы сходится с твоей "аксиомой"?
    Больше игр нет

  2. #22
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,846
    Спасибо Благодарностей отдано 
    83
    Спасибо Благодарностей получено 
    227
    Поблагодарили
    166 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я отрихтовал эмулятор, чтобы он показывал такие-же буковки, как и скрины тестов ВИ53 от Tim0xA. Занимательно то, что как и svofski я не смог пока победить тест 0-3, который аналогично выдаёт 2С28 вместо 2С26.

  3. #23
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,105
    Спасибо Благодарностей отдано 
    772
    Спасибо Благодарностей получено 
    643
    Поблагодарили
    398 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    b2m, лол. Предлагаю принять наш вариант единственно верным =)

    В коде MAME есть какая-то очень подозрительная оговорка насчет режима 3. Что-то типа timer->value &= 0xFFFE; в функции load_timer_value(). Как ты думаешь, что они имели ввиду? Впрочем, режим 3 у них реализован вообще странно.
    Последний раз редактировалось Tim0xA; 08.10.2009 в 00:38. Причина: Сортировка по темам
    Больше игр нет

  4. #24
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,846
    Спасибо Благодарностей отдано 
    83
    Спасибо Благодарностей получено 
    227
    Поблагодарили
    166 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Нечётное значение инициализации счётчика в режиме 3 должно как-то хитро обрабатываться. Например, если загружаем 5, то счёт ведётся примерно так: 5 4 2 5 2 5 4 2 5 2 ... Если откинуть пятёрку, то так и получится, что младший бит нужно в ноль установить. Но это неправильно.
    Последний раз редактировалось b2m; 06.10.2009 в 18:22.

  5. #25
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,105
    Спасибо Благодарностей отдано 
    772
    Спасибо Благодарностей получено 
    643
    Поблагодарили
    398 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Даташит говорит, что если значение нечетное и output == 1, вычитаем 3. Если нечетное и output == 0, вычитаем 1 (ну или наоборот). Что делается при загрузке числа 1, разумеется, непонятно. В MAME есть на этот счет поправка, ссылаются на экспериментальные исследования.

    Но в наших тестах загружается $FFFF...
    Больше игр нет

  6. #26
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,846
    Спасибо Благодарностей отдано 
    83
    Спасибо Благодарностей получено 
    227
    Поблагодарили
    166 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Поправил предыдущий пост. Действительно либо 3, либо 1 в первом такте вычитается, а дальше чётное число пошло.

    ---------- Post added at 20:00 ---------- Previous post was at 19:23 ----------

    Всё, теперь работает как на картинке

  7. #27
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,105
    Спасибо Благодарностей отдано 
    772
    Спасибо Благодарностей получено 
    643
    Поблагодарили
    398 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну а чего ты сделал-то, колись?
    Больше игр нет

  8. #28
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,846
    Спасибо Благодарностей отдано 
    83
    Спасибо Благодарностей получено 
    227
    Поблагодарили
    166 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я не стал мудрить со счётом, счётчик тупо загружает нечётное число, а при считывании, если режим 3 и в счётчик было загружено нечётное значение - один раз добавляется еденичка, другой раз убавляется. Тут, конечно, есть фича - никогда не считывается исходное число, которым производили инициализацию, но в целом работает.

  9. #29
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,105
    Спасибо Благодарностей отдано 
    772
    Спасибо Благодарностей получено 
    643
    Поблагодарили
    398 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Хмм... Как в даташите:

    Код:
    7 4 2 0(7) 6 4 2 0(7) 4 2 ...
    Как у тебя:
    Код:
    6 4 2 0 8 6 4 2... (считывается)
    7 5 3 1 7 5 3 1    (внутри)
    Так?
    Больше игр нет

  10. #30
    Guru
    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,846
    Спасибо Благодарностей отдано 
    83
    Спасибо Благодарностей получено 
    227
    Поблагодарили
    166 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну, у меня всё гораздо запутаннее
    Код:
    8 6 4 2 6 4 2 8... (считывается)
    7 5 3 1 6 4 2 7    (внутри)
    Внутри, когда значение меньше или равно нулю доплюсовывается начальное значение. При считывании, если число нечётное (в режиме 3), то добавляется еденичка. Вообще-то, надо бы скорректировать условие, должно быть: если число нечётное (в режиме 3) и оно меньше начального значения, то добавляется еденичка.

    ---------- Post added at 16:13 ---------- Previous post was at 16:12 ----------

    А чё, по даташиту может ноль считаться?

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

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

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

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

Похожие темы

  1. Вектор-06Ц: Эмуляция
    от ZEman в разделе Вектор
    Ответов: 1450
    Последнее: 16.03.2024, 20:18
  2. Вектор-06Ц: Эмуляция - КР580ВМ80А
    от Ramiros в разделе Вектор
    Ответов: 199
    Последнее: 17.08.2014, 22:19
  3. Вектор-06Ц: Эмуляция - AY-3-8910 (YM2413)
    от ivagor в разделе Вектор
    Ответов: 27
    Последнее: 04.11.2009, 13:10
  4. Вектор-06Ц: БП от PC
    от Dmitry Dubrovenko в разделе Вектор
    Ответов: 11
    Последнее: 08.03.2009, 21:53
  5. Ищу ВЕКТОР-06ц
    от BYTEMAN в разделе Барахолка (архив)
    Ответов: 13
    Последнее: 17.11.2008, 20:50

Ваши права

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