User Tag List

Результаты опроса: Нужно ли улучшать графические возможности компьютера для облегчения написания игр ?

Голосовавшие
110. Вы ещё не участвовали в этом опросе
  • Да

    58 52.73%
  • Нет

    52 47.27%
Показано с 1 по 10 из 714

Тема: Идеальный Спектрум

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #9

    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AzAtom Посмотреть сообщение
    для каждого байта маска разная, поэтому, её придётся обновлять для каждого байта спрайта, что в итоге выйдет даже медленнее, чем программно накладывать маску.
    Так маску надо не накладывать, а просто записывать в ОЗУ. В этом-то и сюжет, - программное маскирование объектов на фоне заменяется аппаратным. Если маску выводить через регистр, не только отпадет необходимость коммутировать банки, но и можно быстрее двигать по фону вертикальные линии и прямоугольники, а также есть выирыш для окон, - чтобы открыть окно для сообщения, мы заносим в регистр маски FF и очищаем окно в плоскости объектов (плоскость фона не изменяется, но не видна). Получается, в 2.5 раза быстрее, чем писать маску как в обычное ОЗУ, переключая банки для каждого байта. Для вывода спрайта читаем два байта, первый байт сразу кидаем в регистр маски, а второй пишем в экран. Регистр маски экономит время, т.к отпадает переключение банок.

    Кстати, уж если вводить плоскость маски как обычное ОЗУ с доступом процессора, то лучше сделать расслоение памяти. Так раньше делали. Тогда четные по адресу байты читаются из одной банки, нечётные из другой. Если в данном такте из банки не читается, то из неё видео-схема читает экран. Т.о в любом случае видео-схема считает байты для регенерации экрана, без необходимости стопорить процессор по WAIT.

    В данном случае, когда четные байты - плоскость маски, а нечетные - плоскость объектов, отпадёт необходимость коммутировать плоскости или иметь регистр маски. Просто копируем спрайт и он сам себя маскирует.
    Последний раз редактировалось barsik; 12.03.2018 в 14:26.

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

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

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

Похожие темы

  1. Ответов: 4
    Последнее: 15.05.2017, 15:32
  2. Ответов: 18
    Последнее: 12.03.2016, 14:15
  3. Ответов: 69
    Последнее: 13.06.2012, 10:33
  4. GO! на спектрум!
    от bigral в разделе Программирование
    Ответов: 1
    Последнее: 11.01.2012, 09:44
  5. Спектрум и Я
    от Black_Cat в разделе Разный софт
    Ответов: 0
    Последнее: 05.08.2007, 21:00

Ваши права

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