PDA

Просмотр полной версии : uGFX



shurik-ua
17.09.2015, 13:22
У нас (MVV & shurik-ua) возникла идея создания некоей универсальной карточки под ZX-Bus что-то типа All-in-Wonder ) - то есть карточка совмещает в себе несколько устройств и занимает при этом один слот.
Естественно такая карточка будет на базе какой-нибудь FPGA - ну и из устройств которые в неё можно залить это Generel Sound, DivMMC (эти уже отлажены) и акселератор для работы с графикой (тут как бы раздолье для творчества, но для начала будет обычный спековский видеовыход).

Отсюда возникает вопрос - нужно ли это, будет ли востребовано?
Ну и мы видим два варианта развития событий:
1. карточку выпускаем своими силами, делаем сколько получится - остатки распродаём. Это будет довольно долго в зависимости от свободного времени;
2. 15-20 желающих сбрасываются на комплектующие, заказ плат, работу и через небольшой (по сравнению с вариантом 1) промежуток времени плата выходит тиражом в количестве этих самых желающих )).

В общем такая идея - голосуйте, предлагайте свои идеи.

upd:
Предположительная стоимость собранной платы $30.

bigral
17.09.2015, 14:25
Сдается мне что fpga (в силу своего дикого размера и скорости) превращают спектрум в шото сродни современного любительского ардуино или raspberry pi (потому что железо задействовано того же уровня), ну и интерес к такому падает, а софт остается спектрумовский (ясное дело что против 32bit arm gcc или avr не катит).

Совсем другое дело новодел в стиле Phoenix. Всякие PLA, PAL, PROM частично могут решить проблему.

Valen
17.09.2015, 14:58
Мне тема интересна, да и на форуме уже пытались сделать видео карту ускоритель.

Вы правильно прикинули:
- видео выходы TV, VGA
- стерео аудио выход
- слот под карточку

Итого получается медиа-ускоритель под zx-bus.
Видео + звук + карточка.


Первое что делать по видео:
- показ спековского экрана на VGA и TV PAL

по аудио:
- добавить GeneralSound

SD карточка, если как DivMMC - тоже норм.

Ценой не больше лучше 20-60 долл.

Ну и потом уже можно добавить простой блиттер.
(И если хватит сил, то и спрайты + тайлы)

Ну и чтобы, юзер мог прошивать новую (обновленную) прошивку fpga, без программаторов, прямо с ПЦ через кабель.
(оционально и со спека прошивать)

Хотелки:
- RGB выход
- композит тюльпан и/или s-video выход
- стандартный VGA 60 Гц выход

Ewgeny7
17.09.2015, 15:29
MVV, ПЦ - инструмент всего лишь. Не смешивай в кучу.
Ретро - оно и есть ретро. Наделять его возможностями современных технологий... Ну не то это... Делать калькулятор Электроника БЗ-34 с возможностью космической связи.

Dr.Potapov
17.09.2015, 16:01
и акселератор для работы с графикой (тут как бы раздолье для творчества, но для начала будет обычный спековский видеовыход)

Очень правильные и интересные мысли, меня бы определенно заинтересовала такая. С условием, что (немного хотелок, совсем не запредельных):
* VGA / DVI выход (что бы прицепиться к любой видео-корче)
* софт-прошивка из памяти
* 6912 стандартный видеорежим как основной это прекрасно особенно через VGA!
* нормальный линейный 80х25 с контролами через проецируемую основную (#4000) видеопамять (2кб на знаки + 2кб на атрибуты) и еще 2кб свободных под различные настройки режима (цвет бордера, ID текущего шрифта и прочие) или под 80х30, там еще 1.3кб останется.
* подгружаемый из основной памяти в память медиа-карты шрифт 8х16 (ID + 4кб данных)

Это вот добро даже без всякого звука меня бы очень обрадовало )

Dr.Potapov
17.09.2015, 16:55
Переход на HDMI выбрано в пользу:
- современный взгляд;
- качество видео, т.к. не используется повторное преобразование DAC-ADC;
- малая занимаемая площадь разъема;
- это поддержка глубины цвета от 1bpp-24bpp;
- малое кол-во используемых выводов ПЛИС (8), по сравнению с VGA (26);
- возможность вывода стерео звука 24бит
- простой перенос проектов на плату U16, Марсоход3

Да отлично ) DVI или HDMI не столь принципиально, так как сейчас полно техники, что поддерживает это, а вот с VGA уже проблемы некоторые возникают.

Спасибо большое за ответы, рад был быть полезен хотя бы словом )

Mick
17.09.2015, 17:06
Что-бы не повторятся, вот для любителей DIP http://www.s100computers.com/index.html


А что ты имеешь против любителей DIP и ретро в целом. У тебя смотрю жуткий баттхерт возникает по этому поводу и ты каждый раз лезешь со своим Реверсе в каждую дырку и восхваляя ее как будущее. А ты не задумывался, что любителям DIP и ретро глубоко насрать на твою Реверсе и иже с ними. Но в отличии от тебя, у них не возникает жуткое зудение в одном месте и они не лезут и не учат тебя как правильно жить.

Ты мне напомнил Алоне с его рекламой АТМ. В результате получилась не сколько реклама, а скорее наоборот. Вот так вот и с твоими конструкциями. Чем больше у тебя зудит, тем более хочется насрать на твои поделия.

P.S. Извини за откровенность, ничего против твоего железа не имею, оно имеет право на существование и развитие. Но большая просьба, тебе не равятся любители DIP и ретро - пройди мимо, пусть люди занимаются тем что им нравится.

zx_
17.09.2015, 20:31
fpga spectrum hdmi
чемто эта концепция напоминает нашу космическую программу

хочу ула плюс на дискретах под шину и без вга
слабо вот
для прикола добавить немо иде на эту же плату)

shurik-ua
17.09.2015, 20:37
для прикола добавить немо иде на эту же плату)
для прикола можно и радиолампу туда впиндюрить - чтоб греться теплотой лампового звука )

zx_
17.09.2015, 20:42
кста, давно нужно кмк радиолампу применить)
к турбофм допустим, плюс ламповый двухканальный для наушников
лампы есть, 12 вольт для анода есть, лампы с низковольтным накалом

с разных эпох конечно, но смотрелось бы

AndyD
17.09.2015, 21:29
Идея хорошая и не имеет значения на чем собрана,хоть на лампах хоть на фпга.
какая разница на чем z80 команды выполняться будут,главное обратная совместимость со Спектрумом.
Для продвинутых расширений графики как минимум должна быть память с пдп ,тоесть вся память должна быть на акселе и вместе с ней должны быть все быстрые устройства типа ХДД,СДкарты.
Меня интересует вопрос,есть у меня ЕвО если подключить uGFX какая архитектура компа получиться,ведь пдп же нет через zxbus?[COLOR="Silver"]

shurik-ua
17.09.2015, 21:42
Для продвинутых расширений графики как минимум должна быть память с пдп
зачем там пдп - непонятно. у неё на борту будет примерно 4 мега, любые обращения к памяти можно отловить и сохранить - поэтому пдп не нужен.

AndyD
17.09.2015, 22:01
зачем там пдп - непонятно. у неё на борту будет примерно 4 мега, любые обращения к памяти можно отловить и сохранить - поэтому пдп не нужен.
Предположим я закачиваю картинку на 8страничек памяти(128кбт) и потом в определенный момент мне ее надо вывести на экран(послать в видео карту),каким способом эти 8-мь страниц окажутся в памяти видеокарты?
На видео будет СДкарта ,тогда грузим прямо в видео память,скажем со страниц 9-255 это память на видео карте,а 0-8 память спека в которой крутиться только управляющий код ,а в видео только данные.
Вы бы расписали как это все должно работать,а то одни догадки.

Dr.Potapov
17.09.2015, 22:27
Предположим я закачиваю картинку на 8страничек памяти(128кбт) и потом в определенный момент мне ее надо вывести на экран(послать в видео карту),каким способом эти 8-мь страниц окажутся в памяти видеокарты?

Есть мысль делать это последовательно, опишу общий алгортм (возможно он поможет разработчикам):
1. Загружаем с диска данные в озу
2. Взводим порты на карте в виде id,rampage,length и загружаем все в память карты

В итоге имеем в видеопамяти объект с которым можно совершать различные действия.

Важно отметить про двух-уровневую организацию видеопамяти, где первый уровень является неким renderTarget куда формируется финальное изображение для вывода и второй уровень это просто видеопамять, где хранятся ранее загруженные объекты разных типов (спрайт например, источник партиклов) с которыми работает ускоритель.

Соответственно по тому же замапленному в видеопамять #4000 можно разместить контролы для управления объектами - id объекта, координаты, поворот, скейл, z-сортировка. Даже если структура контрола займет 32 байта все равно получится достаточное количество объектов (192) для формирования неплохой картинки а процу не составит труда тусовать объекты так как нужно даже в бейсике.

А если при этом оставить экран 256/192 будет вообще круто )))

Мысли всего лишь )

shurik-ua
18.09.2015, 16:43
Вы бы расписали как это все должно работать,а то одни догадки.
в момент загрузки в память спектрума - подставлять в то же окно ещё и память видеокарты - то есть данные запишутся как в основную память компа так и в память видеокарты.

---------- Post added at 16:43 ---------- Previous post was at 16:37 ----------


Соответственно по тому же замапленному в видеопамять #4000 можно разместить контролы для управления объектами - id объекта, координаты, поворот, скейл, z-сортировка.
не обязательно именно по этому адресу - его можно менять, а так да примерно такие мысли тоже возникали - чтобы проц в начале фрейма давал работу акселю пересылкой очень небольшого кол-ва байт, где те же самые id объекта, позиция, возможно поворот - и всё видеокарта отображает результат работы предыдущего кадра и одновременно заполняет следующий.

Dr.Potapov
18.09.2015, 17:41
не обязательно именно по этому адресу - его можно менять
А смысл менять? ) Все равно когда работает аксель и включен другой режим - экранная область ведь не используется и может служить стандартной controlArea для любого режима видео. Ну будет там программа по #4000 а по #С000 экран - в чем профит от рокировки? Хотя можно быстренько махнуть страницы с подготовленными данными.

batr
18.09.2015, 19:29
В команду нужен программист и FPGA инженер, для помощи в разработке софта и конфигурации.
По мне, не плохой проект, поэтому готов поучавствовать в данном проекте как финансово, так и в качестве ПЛИС инженера.

Valen
18.09.2015, 20:06
Закончил разработку схемы платы uGFX.

Добавил таки, s-video (или композит тюльпан) выход на телек PAL 50 Гц ?

(Для любителей полной эмуляции экрана спеки и/или для имеющих только не особо новые телики.)

Anubis_OD
18.09.2015, 21:30
Отлично, может сообща и звук через HDMI сделаете..

AndyD
19.09.2015, 11:45
теперь плату можно подключить через IDE разъем вместо IDE Video-DAC (ts-labs)
Вот это интересное решение,то есть можно будет гонять данные через пдп евы на видео и обратно? можно поподробнее?
.

Alex Rider
19.09.2015, 22:01
Остался вопрос- нужен ли на плате Ethernet или USB-HOST для подключения флешки, клавиатуры, мыши, принтера, веб-камеры, джойстиков...
Может, сделать интерфейс для модуля Wi-Fi (http://forum.tslabs.info/viewtopic.php?f=6&t=586)? Олсо, пара USB для мышки и клавиатуры не помешала бы, сегодня искал PS/2 мышь в Москве натужно.

Alex Rider
20.09.2015, 10:37
а вот c перехватом порта клавиатуры нужно разбираться.
И все же это неплохая фича получилась бы. Сейчас уже PC-матерей с PS/2 (по крайней мере, с двумя PS/2) днем с огнем не сыщешь, а повесить ZX и PC на КВМ было бы весьма удобно, рабочее место было бы аккуратнее. Где-то я натыкался на обсуждение адаптыров USB -> PS/2 для Эвы, только не могу вспомнить сходу где.

---------- Post added at 10:37 ---------- Previous post was at 10:35 ----------


.возможность реализации FPU (shurik-ua)
Могу BASIC под него адаптировать, если фичи будут в эмуле. Увы, в мою Эву карта не влезет физически.

Valen
20.09.2015, 12:48
нужен ли на плате Ethernet или USB-HOST для подключения флешки, клавиатуры, мыши, принтера, веб-камеры, джойстико

USB нужен.
Подключаем USB джойстик и он эмулируются как любой спековский джой.
(выбор типа спековского джоя както черз OSD или некий конфиг софт )
Подключаем два USB джоя и играем в любимую спековскую игрульку вдвоём.

USB клава как обычная клава спека.

USB разъёмы - два минимум.
(четыре наверно не влезет)


Но USB, это сразу плюс 10 долл к стоимости...

AndyD
20.09.2015, 13:02
Насколько подорожает платка с Ethernet?
Может такую можно прикрутить? http://ru.aliexpress.com/item/ENC28J60-LAN-Ethernet-Network-Board-Module-for-arduino-25MHZ-Crystal-AVR-51-LPC-STM32-3-3V/32265679112.html?ws_ab_test=201526_4,201527_4_71_7 2_73_74_75,201409_2

Alex Rider
20.09.2015, 23:09
Может такую можно прикрутить?
И охота тебе маяться с проводами? У Спека не было никогда Enternet, это явно новодельная фича, так зачем приделывать явно устаревший способ коммуникации? Чтобы через 5 лет бегать искать роутер с Ethernet-выходами?

---------- Post added at 23:09 ---------- Previous post was at 23:06 ----------


Если согласуем с ts-labs, то карту к Evo можно будет подключить через IDE.
У меня в корпусе места нет :). Да и отлаживаться в эмуле удобнее.

AndyD
21.09.2015, 00:51
И охота тебе маяться с проводами?
не охота конечно,это как вариант,чтоб на плату лишнего не разводить,а я себе EPS8266 заказал жду, как приедет буду к Еве подключать и развлекаться.

Valen
21.09.2015, 10:30
Спрашивал у mvv.

USB хост будет разведен на плате. Но это плюс 10 долл к стоимости.
Т.е. всего около 40$.

Но, по желанию, можно не впаивать USB чип, такая готовая плата будет стоить 30 $.


WiFi, Ethernet, и т.п. в виде отдельного модуля (платки), на плате зарезервированы под это дело пины.

andrew_curds
21.09.2015, 10:47
Может сразу WiFi добавить?
http://tslabs.info/forum/viewtopic.php?t=586

А, выше уже предложили, сорри

Ovvnex
21.09.2015, 18:34
Мде, очень жаль, что так мало желающих участвовать в поддержке разработки такого интересного девайса. Имхо, это сильно круче, чем плата, которую сейчас разрабатывает zst.
При цене 30-50 баксов - она уже получается сильно полезнее того же NeoGS. Хоть ща и финансовый кризис, а пожалуй проголосую в поддержку этого устройства. Хотя, наверное, уже поди и поздно...

Ovvnex
21.09.2015, 23:39
бросать работу над платой uGFX поздно.
MVV, твои устройства уже заслужили доброе имя! Рад, что и эта платка будет разрабатываться. Даже если до массового тиража она не дойдёт, готов уже сейчас поддержать начинание финансового. Пиши в личку куда скинуть теньге и успеха в разработке этой полезной штукенции! Кабы не терки между нашими странами - лично бы приехал в Харьков на пообщаться, благо не так далеко и живу.
З.Ы. Очень понравилась тема, что эту платку можно будет повешать на IDE разъём Эвы. И даже если мои теньге просто поддержат прототип, я уже буду доволен! Пиши в личку и ещё раз успеха!

Alex Rider
22.09.2015, 15:40
Олсо тоже поддержу $$, если скажете куда.

Ovvnex
22.09.2015, 16:25
А можно предварительные спецификации устройства закинуть в шапку темы? Мне кажется, что желающие поучаствовать финансово ещё появятся, но без спецификации и списка возможностей девайса процесс может и подзатянуться. :)

И это... всё же никак не получится сделать на этой платке полноценный vga выход, а не только (2:2:2)?

Alex Rider
22.09.2015, 16:26
И это... всё же никак не получится сделать на этой платке полноценный vga выход, а не только (2:2:2)?
Однозначно надо делать 5:5:5.

Alex Rider
22.09.2015, 17:24
было принято решение использовать HDMI
Ага. Тоже неплохо. Тока у меня ни одного монитора HDMI нет. Да и ни одного реала пока, в который карту можно будет впихнуть :) А всякие DisplayPort, DVI-D нереально сделать?

Ovvnex
23.09.2015, 14:41
Для реализации VGA на плате нужно 29 выводов FPGA и еще около того, для разных хотелок. Это реализуемо на FPGA с большим количеством выводов, к примеру в корпусе BGA. Но так-как такое решение значительно повлияет как на стоимость устройства, так и на сложность самостоятельной сборки, то было принято решение использовать HDMI, как современный цифровой видео выход, удовлетворяющий заявленным требованиям RGB(5:5:5), т.е. будет поддерживаться RGB(8:8:8) и ещё если разберусь, то и стерео 24-бит звук через HDMI.

Кстати, а правильно я понимаю, что проблему сопряжения uGFX с мониторами с vga входом можно будет решить с помощью вот этого чуда китайской мысли? И ценник вроде вполне вменяемый.
HDMI to VGA cable adpater HDMi to VGA with audio converter for HDMI device to VGA monitor (http://ru.aliexpress.com/item/Free-shipping-wholesale-2PCS-lot-Active-HDMI-to-VGA-female-AV-converter-with-audio-power-supply/842414062.html?spm=2114.03020208.3.125.NrcHrI&ws_ab_test=201526_2,201527_2_71_72_73_74_61_75,201 409_2)

vlad
24.12.2016, 13:07
Реализовано в DivGMX (http://zx-pk.ru/threads/27225-divgmx.html).

Спасибо всем, кто принимал участие и всячески поддерживал.

Hacker VBI
24.12.2016, 13:52
Alex Rider, кстати, существует большое количество самых разных переходников с HDMI в DVI-D или DisplayPort

Alex Rider
24.12.2016, 15:48
Alex Rider, кстати, существует большое количество самых разных переходников с HDMI в DVI-D или DisplayPort
С переходником на DVI столкнулся недавно, работает. Переходников прям чтобы переходников (пассивных) HDMI-DisplayPort не существуют, насколько я знаю. Есть сомнительные китайские адаптеры не за 5 копеек... В 2-3 года назад, правда, гуглил на эту тему, старая видюха с HDMI так и была подключена к монитору с DisplayPort кабелем DVI-DVI.

Hacker VBI
24.12.2016, 18:03
Не ожидал что тебе нужен именно пассивный.
поэтому могу предложить только активного (http://www.computermarket.ru/main/catalog/catid/1345752.aspx)! :v2_tong2: