User Tag List

Результаты опроса: Для какого компьютера и конструктива делать видеокарту "METEOR" ?

Голосовавшие
46. Вы ещё не участвовали в этом опросе
  • "ZXM-PHOENIX" с шиной ZX-BUS без корпуса

    18 39.13%
  • "ЛЕНИНГРАД" с шиной IDC-40 в корпусе

    8 17.39%
  • МОДУЛЬНЫЙ КОМПЬЮТЕР "CHELYABINSK" с шиной ZST-BUS без корпуса

    2 4.35%
  • ОРИГИНАЛЬНЫЙ "ZX SPECTRUM" с шиной ZX-EDGE в корпусе

    9 19.57%
  • "ZX-EVO" с урезанной шиной ZX-BUS без корпуса

    23 50.00%
Опрос с выбором нескольких вариантов ответа.
Страница 8 из 100 ПерваяПервая ... 456789101112 ... ПоследняяПоследняя
Показано с 71 по 80 из 1084

Тема: Быстрая видеокарта "METEOR-2013"

Комбинированный просмотр

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

    Регистрация
    21.12.2005
    Адрес
    Kyiv/Ukraine
    Сообщений
    415
    Спасибо Благодарностей отдано 
    7
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zst Посмотреть сообщение
    Вы согласны, что спрайты в банке должны быть одинакового размера ?
    Да, конечно.

    Цитата Сообщение от zst Посмотреть сообщение
    Чтобы видеокарта могла найти спрайт по номеру она должна знать начало банка и размеры спрайтов в этом банке.
    Верно.


    Смотрите, можно проще, прям без "банков", вот так:
    - установил начало области (3 байта адрес спрайт памяти)
    - установил размер спрайтов области (2 байта)
    - копирую спрайт по номеру спрайта (номер спрайта: 1 или 2 байта)
    - ...


    Т.е. всё тоже самое, что вы говорили, только понятия "банка", мы не вводим. А просто при необходимости, подаются команды установки "начала области" и "размера спрайтов области" (вместо переключения банков).
    По моему так по-проще будет.
    Последний раз редактировалось Valen; 24.06.2013 в 16:47.
    V6Z80P - Back for Good

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

  3. #2

    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    52 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Valen Посмотреть сообщение
    Смотрите, можно проще, прям без "банков", вот так:
    - установил начало области (3 байта адрес спрайт памяти)
    - установил размер спрайтов области (2 байта)
    - копирую спрайт по номеру спрайта (номер спрайта: 1 или 2 байта)
    Т.е. всё тоже самое, что вы говорили, только понятия "банка", мы не вводим. А просто при необходимости, подаются команды "установки начала области" и "размера спрайтов области" (вместо переключения банков).
    По моему так по-проще будет.
    Хорошо. давайте остановимся на этом варианте.
    "L-256"

  4. #3

    Регистрация
    03.01.2006
    Адрес
    Рязань
    Сообщений
    2,935
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    На нормальных видеоконтроллерах спрайты лежат в виде битмапа шириной 512 и не требуют никакого умножения. Тслабсу это было внедрено в мосх ещё два года назад, он понял сразу.

  5. #4

    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    52 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от alone Посмотреть сообщение
    На нормальных видеоконтроллерах спрайты лежат в виде битмапа шириной 512 и не требуют никакого умножения. Тслабсу это было внедрено в мосх ещё два года назад, он понял сразу.
    Вроде решили, что не стоит ограничивать полет фантазии программиста размерами спрайта 16 х 16 точек или каким-либо другим. Пусть он сам выбирает размер, например 6х8 точек для букв. А для произвольного размера нужно умножение при определении по номеру адреса начала спрайта .


    В команды добавлено:

    АДРЕС НАЧАЛА ОБЛАСТИ СПРАЙТОВ
    LD (IY+1), SPR0_ADDR0 ; младший байт адреса
    LD (IY+1), число
    LD (IY+1), SPR0_ADDR1 ; средний байт адреса
    LD (IY+1), число
    LD (IY+1), SPR0_ADDR2 ; старший байт адреса
    LD (IY+1), число

    РАЗМЕР СПРАЙТОВ В ОБЛАСТИ
    LD (IY+1), SIZE_X ; размер спрайта по-горизонтали (обычно 16)
    LD (IY+1), число

    LD (IY+1), SIZE_Y ; размер спрайта по-вертикали (обычно 16)
    LD (IY+1), число
    Последний раз редактировалось zx-kit; 24.06.2013 в 17:12.
    "L-256"

  6. #5

    Регистрация
    03.01.2006
    Адрес
    Рязань
    Сообщений
    2,935
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zst Посмотреть сообщение
    Вроде решили, что не стоит ограничивать полет фантации программиста размерами спрайта 16 х 16 точек или каким-либо другим.
    При чём тут размер спрайта?
    Последний раз редактировалось alone; 24.06.2013 в 17:12.

  7. #6

    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    52 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от alone Посмотреть сообщение
    При чём тут размер спрайта?
    Тогда объясните поподробнее, что вы имели ввиду.
    "L-256"

  8. #7

    Регистрация
    03.01.2006
    Адрес
    Рязань
    Сообщений
    2,935
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zst Посмотреть сообщение
    А для произвольного размера нужно умножения для определения начала спрайта по номеру.
    Если все спрайты одного размера - то это не "произвольный размер".
    И умножение не нужно. Вообще. Ни для начала спрайта, ни для середины спрайта.

  9. #8

    Регистрация
    03.01.2006
    Адрес
    Рязань
    Сообщений
    2,935
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Пользователь задаёт координаты левого верхнего угла спрайта в битмапе и размер этого спрайта. Первая строка спрайта берётся по адресу base+256*Y+X. Следующая строка спрайта берётся по адресу +256. И так далее.

  10. #9

    Регистрация
    11.04.2009
    Адрес
    г. Санкт-Петербург
    Сообщений
    3,603
    Записей в дневнике
    15
    Спасибо Благодарностей отдано 
    19
    Спасибо Благодарностей получено 
    67
    Поблагодарили
    52 сообщений
    Mentioned
    1 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от alone Посмотреть сообщение
    Пользователь задаёт координаты левого верхнего угла спрайта в битмапе и размер этого спрайта. Первая строка спрайта берётся по адресу base+256*Y+X. Следующая строка спрайта берётся по адресу +256. И так далее.
    То есть в первом отрезке памяти длиной 256 байтов размещены первые строки спрайтов нескольких спрайтов (256/SIZE_X) , в следующих 256 байтов - вторые строки этих же спрайтов и т.д.?
    "L-256"

  11. #10

    Регистрация
    03.01.2006
    Адрес
    Рязань
    Сообщений
    2,935
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    При произвольном размере спрайтов каждый конкретный спрайт может начинаться с любой строки.

Страница 8 из 100 ПерваяПервая ... 456789101112 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 17
    Последнее: 26.12.2015, 23:22
  2. Ответов: 19
    Последнее: 30.09.2011, 03:08
  3. Ответов: 0
    Последнее: 15.08.2010, 14:38
  4. Ответов: 18
    Последнее: 27.08.2008, 20:27
  5. Ответов: 6
    Последнее: 20.11.2007, 11:29

Ваши права

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