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

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%
Опрос с выбором нескольких вариантов ответа.
Страница 17 из 109 ПерваяПервая ... 131415161718192021 ... ПоследняяПоследняя
Показано с 161 по 170 из 1084

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

  1. #161

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

    По умолчанию

    Цитата Сообщение от zst Посмотреть сообщение
    Согласен, это облегчит программирование, но как указать видеокарте координаты за рабочим окном или всем экраном?
    Да,
    ввести отрицательные координаты.
    (координаты спрайта X и Y 2-байтовые)

    Цитата Сообщение от zst Посмотреть сообщение
    Нужно выбрать в каком виде нужно задавать координаты. Если крайний левый пиксел экрана имеет значение 0, а для режими 320х240, координата задается двумя байтами. А объект пытается выехать на 1 пиксел за левую границу. В каком формате программе будет указывать эти отрицательные координаты?
    тогда X координата объекта, будет -1
    (0xFFFF)

    ---------- Post added at 18:47 ---------- Previous post was at 18:43 ----------

    Цитата Сообщение от zst Посмотреть сообщение
    Для ПЛИС будет удобнее, чтобы координаты шли так: FFFE, FFFF, 0000, 0001...
    Да.
    (так и z80 считает.)




    ---------- Post added at 18:49 ---------- Previous post was at 18:48 ----------

    Цитата Сообщение от zst Посмотреть сообщение
    Для режима 256х192: FE, FF, 00, 01, но для отрицательных координат все-равно придется задавать координаты двумя байтами?
    Да, двумя байтами.

    ---------- Post added at 19:04 ---------- Previous post was at 18:49 ----------

    Цитата Сообщение от zst Посмотреть сообщение
    ПЛИС может загрузить координату FFFE в счетчик копирования, а затем циклически увеличивать. Если координаты не входят в диапазон 0-320, то при копировании не записывать данные в ОЗУ экрана.
    Да, вполне рабочий алгоритм.
    Только в идеале, хотелось, чтобы пропущенные точки (байты),
    не попадающие в окно,
    даже не читались из спрайт-памяти (для скорости).
    Последний раз редактировалось Valen; 01.07.2013 в 19:56.
    V6Z80P - Back for Good

  2. #162

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

    По умолчанию

    Добавил в список команд:

    КОМАНДЫ УПРАВЛЕНИЯ КУРСОРОМ. РАЗМЕР КУРСОРА РАВЕН ТЕКУЩЕМУ РАЗМЕРУ СПРАЙТА.
    LD (IY+1), CURSOR_RESTORE_X ; восcтановление координаты X
    LD (IY+2), число ; (обычно 1)

    LD (IY+1), CURSOR_RESTORE_Y ; восстановление координаты Y
    LD (IY+2), число ; (обычно 1)

    LD (IY+1), CURSOR_LEFT ; курсор влево
    LD (IY+2), число ; (обычно 1)

    LD (IY+1), CURSOR_RIGHT ; курсор вправо
    LD (IY+2), число ; (обычно 1)

    LD (IY+1), CURSOR_DOWN ; курсор вниз
    LD (IY+2), число ; (обычно 1)

    LD (IY+1), CURSOR_UP ; курсор вверх
    LD (IY+2), число ; (обычно 1)

    Эти команды можно будет использовать при заполнении фона и печати текста. После печати спрайтов в строке команда CURSOR_RESTORE_X восстановит координату X первого спрайта в строке. После этого для перехода к началу следующей строки можно использовать команду CURSOR_DOWN,

    ---------- Post added at 14:15 ---------- Previous post was at 14:09 ----------

    Цитата Сообщение от newart Посмотреть сообщение
    Обычному человеку сегодня 30-35 лет, Если он за это время не освоил Ассемблер, то и дальше этого скорее всего не случится.

    Поэтому и важно средство разработки, позволяющее максимально абстрагироваться от всех технических заморочек и сосредоточится на самой игре.
    Мы делаем простые команды для работы с графикой. Для динамичных игр для ZX SPECTRUM скорее всего ассемблер потребуется. Для простых игр среда разработки может быть полезна.

    ---------- Post added at 14:17 ---------- Previous post was at 14:15 ----------

    Цитата Сообщение от Valen Посмотреть сообщение
    Да, вполне рабочий алгоритм.
    Только в идеале, хотелось, чтобы пропущенные точки (байты),
    не попадающие в окно, даже не читались из спрайт-памяти (для скорости).
    Это не так просто - надо думать.
    Последний раз редактировалось zx-kit; 07.07.2013 в 13:12.
    "L-256"

  3. #163

    Регистрация
    27.10.2011
    Адрес
    Самара
    Сообщений
    1,248
    Спасибо Благодарностей отдано 
    2
    Спасибо Благодарностей получено 
    34
    Поблагодарили
    28 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от newart Посмотреть сообщение
    Поэтому и важно средство разработки, позволяющее максимально абстрагироваться от всех технических заморочек и сосредоточится на самой игре
    А разве кто то, что то ещё будет писать, особенно под эту видеокарту? по моему, главный смысл всех подобных начинаний, это вид спорта по изготовлению какой то железки, которой просто раньше не было.

  4. #164

    Регистрация
    19.01.2005
    Адрес
    Санкт-Петербург
    Сообщений
    11,551
    Спасибо Благодарностей отдано 
    205
    Спасибо Благодарностей получено 
    188
    Поблагодарили
    83 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от sergio78 Посмотреть сообщение
    А разве кто то, что то ещё будет писать, особенно под эту видеокарту?
    Под карту нет.

    А под среду разработки, которая автоматом экспортирует игру в HTML5, в которую можно будет играть хоть на айфоне, хоть на андроиде, хоть вконтакте - вполне возможно.

  5. #165

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

    По умолчанию

    Цитата Сообщение от sergio78 Посмотреть сообщение
    А разве кто то, что то ещё будет писать, особенно под эту видеокарту? по моему, главный смысл всех подобных начинаний, это вид спорта по изготовлению какой то железки, которой просто раньше не было.
    Да! Проработанные команды можно будет интегрировать также и в компьютеры на базе FPGA: ZXEvolution, ReVerSe и Speccy2010. Для других клонов с ZX-BUS - релизовать на отдельной видеокарте.

    alone, кто на ваш взляд смог бы написать игру для новой видеокарты ?

    Цитата Сообщение от Valen Посмотреть сообщение
    Может есть смысл, вообще отказаться от установки начальных/конечных рядов/столбцов спрайта ?
    Убрал команды задания границ спрайта. Добавил команды рисования точки:

    КОМАНДЫ ДЛЯ РИСОВАНИЯ ТОЧКИ

    ДЛЯ РИСОВАНИЯ ТОЧКИ ИСПОЛЬЗУЮТСЯ ТЕКУЩИЕ КООРДИНАТЫ КУРСОРА НА ЭКРАНЕ И ЦВЕТ INK. ПАРАМЕТР КОМАНДЫ PLOT МОЖЕТ СМЕЩАТЬ КУРСОР ПЕРЕД РИСОВАНИЕМ ТОЧКИ.

    LD (IY+1), INK
    LD (IY+2), число ; цвет, которым будут рисоваться точки

    LD (IY+1), PLOT ; рисовать точку, заданную координатами курсора
    LD (IY+2), СМЕЩЕНИЕ

    ПАРАМЕТР СМЕЩЕНИЕ ПЕРЕД РИСОВАНИЕМ ТОЧКИ ИЗМЕНЯЕТ ПОЛОЖЕНИЕ КУРСОРА:
    биты D1 и D0 задают смещение курсора по-вертикали (координата Y):
    00 - без смещения, 01 - на одну точку вниз, 11 - на одну точку вверх.
    биты D3 и D2 задают смещение по-горизонтали (координата X):
    00 - без смещения, 01 - на одну точку вправо, 11 - на одну точку влево.

    Таким образом, перед рисованием точки можно изменить координаты курсора в восьми направлениях. После этого новые координаты курсора становятся текущими.
    Последний раз редактировалось zx-kit; 12.07.2013 в 21:00.
    "L-256"

  6. #166

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

    По умолчанию

    ДАВАЙТЕ ПОДВЕДЕМ ИТОГИ ПРОЕКТИРОВАНИЯ ВИДЕОКАРТЫ "METEOR-2013" :

    Параметры новых режимов - 256х192 и 320х240 точек, 256 цветов с палитрой. Два экрана - теневой и отображаемый.
    Палитра - 3х6 бит (как BMP 256), разместить во внутренней памяти FPGA 256 * 18 бит.
    ЦАП - по 8 бит на каналы R,G,B (как в SPECCY2010).
    Система команд для управления видеокартой - разработана.
    Для рисования используем только координаты на экране и номер спрайта, никаких портов.
    Способ рисования - печать спрайтов с помощью блиттера и линиями по точкам. Спрайты лежат в памяти видеокарты.
    Способ включения и выключения новых режимов - через адрес первого атрибута стандартного экрана, подробнее описано в списке команд видеокарты (http://www.zx.pk.ru/showpost.php?p=610738&postcount=50).
    Пример на ассемблере для заполнения фона игры - разработан.
    Скорость заполения фона спрайтами - прикинута (для режима 320х240 время заполнения ~ 1/5 времени отображения кадра).
    Микросхемы - выбраны (FPGA EP2C5Q208, 2 шт SRAM 256К * 16бит, конфПЗУ, стабилизаторы +3.3V и +1.25V).
    Видеовыход - на плате разъем VGA с выходом на корпус. SCART - через гребенки или VGA разъем, выбор джамперами.

    Тактовый сигнал - 14 МГц с разъема ZX-BUS с умножением внутри FPGA до 14*7=98 МГц.
    Предусмотреть на плате возможность установки отдельного генератора на 98 МГц.
    Детали для опытного образца - приобретены.


    ТЕПЕРЬ ПЕРЕЧИСЛИМ, ЧТО ОСТАЛОСЬ СДЕЛАТЬ:

    Уточнить габариты платы - предлагаю расстояние от края ZX-BUS до торца платы (задней стенки корпуса) расстояние 47,62 мм (как у NeoGS).
    Развести и заказать плату для опытного образца.
    Где разместить джамперы выбора режимов видеокарты - предлагаю угловые DIP-SWITCH-и на плате возле VGA разъема.
    Выбрать язык проектирования прошивки FPGA - предлагаю Verilog. За основу предлагаю взять прошивку видеокарты ZEKа http://zx.pk.ru/showpost.php?p=184179&postcount=29), если он не против (там есть и режим АТМ).
    Написать прошивку для FPGA.
    Выбрать количество игр и типы для тестирования видеокарты. Предлагаю 10 штук разных жанров.
    На основе чего разрабатывать игры. Предлагаю избегать делать клонов с других платформ.


    Одна из возможных игр - "FUTURE TANK" (http://www.zx.pk.ru/showpost.php?p=350072&postcount=64).


    Основу заставки к игре нарисовал Slesar. Вместо землетрясения можно использовать падение метеорита.

    Выбрать среду разработки игр, ассемблер и эмулятор (пригодилась бы помощь от ZXMAK2).
    Сделать рабочий комплект с настройкой для общего использования.
    Разработать новые игры для демонстрации работы видеокарты.
    Подсчитать количество видеокарт для разработчиков.
    Выбрать программу для рисования спрайтов.
    В каком формате сохранять спрайты и как их переносить на ZX.
    Способ программирования FPGA - предлагаю через JTAG записывать в копфПЗУ (http://www.zx.pk.ru/showpost.php?p=179221&postcount=38).
    Программатор для FPGA.
    Возможность реализации команд нового режима в клонах на FPGA.
    Способ согласования FPGA с ZX-BUS - можно через 74LVC245AD или через резисторы 100 Ом и диоды на +3.3V внутри FPGA.

    ---------- Post added at 22:40 ---------- Previous post was at 20:57 ----------

    Надо уточнить удобное для игр расположение начала координат экрана (Y=0, X=0) - предлагаю оставить в левом верхнем углу.
    Последний раз редактировалось zx-kit; 12.07.2013 в 21:40.
    "L-256"

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

  8. #167

    Регистрация
    24.05.2005
    Адрес
    г. Запорожье, Украина
    Сообщений
    992
    Спасибо Благодарностей отдано 
    571
    Спасибо Благодарностей получено 
    365
    Поблагодарили
    239 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Дизю запилить надо по любому ))

    даже бейсика должно хватить )
    Последний раз редактировалось shurik-ua; 13.07.2013 в 00:08.

  9. #168

    Регистрация
    07.02.2008
    Адрес
    г. Рязань
    Сообщений
    2,928
    Спасибо Благодарностей отдано 
    37
    Спасибо Благодарностей получено 
    124
    Поблагодарили
    44 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Еще в "осталось" надо сделать поддержку этой карты в Unreal Spectrum. Ибо отладка.

  10. #169

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

    По умолчанию

    Цитата Сообщение от Alex Rider Посмотреть сообщение
    Еще в "осталось" надо сделать поддержку этой карты в Unreal Spectrum. Ибо отладка.
    Я вот подумал про отладку прошивок FPGA и игр. Можно встроить в видеокарту программатор для FPGA на базе FT2232HL. Это несколько увеличит стоимость видеокарты, но упростит прошивку через USB без открывания корпуса. У FT2232HL два канала и много вариантов работы.

    Хорошо бы свободный от JTAG канал использовать для загрузки тестовых программ в Z80 через USB и видеокарту. Для этого выделить определенные порты, например, как у Z-CONTROLER. На PC нужна будет программа для передачи блоков данных в Z80. А в ПЗУ вместо GLUK/HE GLUK написать загрузчик данных из видеокарты.

    Тогда, если бы появилась программа передачи данных из PC в ZX, с ее помощью можно было бы быстро загружать различные тестовые программы для отладки видеокарты... Это конечно мечты, но это бы ускорило и облегчило отладку игр и видеокарты. Подобное предложение было и от ZXMAK (http://www.zx.pk.ru/showpost.php?p=606464&postcount=308).

    Конечно, в окончательном серийном варианте лишние микросхемы можно не запаивать и отключить дополнительные порты в FPGA, чтобы не ухудшать совместимость видеокарты с остальным железом.

    ---------- Post added at 11:33 ---------- Previous post was at 09:53 ----------

    КОНЦЕПЦИЯ ЗАГРУЗЧИКА ДАННЫХ ИЗ PC НА ZX ДЛЯ ОТЛАДКИ ИГР

    На PC мы создаем файлы игры в различных программах - спрайты в редакторе спрайтов, звук - в звуковом редакторе, коды - в компиляторе.

    Представим, что у нас есть программа, которая может передавать файлы через USB-UART или другой подходящий интерфейс в FPGA.

    Загрузчик в ПЗУ ZX может загружать из сплошного потока данные порциями по 256 байтов с проверкой контрольной суммы и возможностью приостановки приема данных. Сначала загружается LOADER размером 256 байт. В нем программа в кодах, загружающая остальные блоки игры в нужные места, например, спрайты в видеокарту "METEOR-2013".

    На PC мы создаем bat-файл, в котором несколько раз запускается программа передачи данных на ZX с именами и местом расположения каждого файла игры.

    После сброса Z80 загружает LOADER игры, который загружает остальные блоки, а потом запускает игру с нужного адреса. Скорость загрузки может быть достаточно быстрой, даже если загружать спрайты размером 512 Кб в видеокарту.

    Не обязательно USB-загрузчик размещать в ПЗУ. Можно его загружать с любого носителя, имеющегося на компьютере. А дальше он загрузит LOADER игры.
    Последний раз редактировалось zx-kit; 13.07.2013 в 11:00.
    "L-256"

  11. #170

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

    По умолчанию

    Цитата Сообщение от zst Посмотреть сообщение
    Я вот подумал про отладку прошивок FPGA и игр. Можно встроить в видеокарту программатор для FPGA на базе FT2232HL. Это несколько увеличит стоимость видеокарты, но упростит прошивку через USB без открывания корпуса. У FT2232HL два канала и много вариантов работы.
    Это сто процентов нужно.
    Я так понял, что можно будет пере-прошить FPGA видео-карты, просто подключив её к PC, через USB кабель.
    Верно ?

    (Я думал предложить вариант, чтобы добавить EEPROM и микроконтроллер для пере-прошивки FPGA, но ваш вариант c USB , думаю лучше.)
    V6Z80P - Back for Good

Страница 17 из 109 ПерваяПервая ... 131415161718192021 ... ПоследняяПоследняя

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

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

Эту тему просматривают: 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

Ваши права

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