PDA

Просмотр полной версии : А вот если бы тогда...



Максагор
02.04.2005, 02:25
Вопрос прежде адресован всем, кто когда-либо разрабатывал какую-либо модель Спекки или устройства к нему (прежде всего к CARO и CONANу, но может еще кто здесь бывает), но могут присоединиться и помечтать все желающие:

А вот если бы представить такую гипотетическую ситуацию, что тогда, в те годы, когда разрабатывался ZX-NEXT, Кворум и др. клоны, при том огромном количестве спектрумистов, большом спросе, сушествовавшем тогда, у вас были бы современные технические возможности, элементная база (а у кого-то и финансовая, может быть), современный накопленный опыт и сведения о путях развития разных ZX-клонов... В общем, если бы в те годы, да при таких гипотетических условиях вы бы взялись разрабатывать спектрум-клон, то каким бы вы его создали? Ведь бывает, люди часто вздыхают - "эх,да мне бы в те годы то-то и то-то, что есть сейчас, я бы...". Вот давайте и помечтаем - как бы выглядел ВАШ спектрум?

dhau
02.04.2005, 03:22
Если денег не жалко, то в титановом корпусе с окошком на кишки

fan
02.04.2005, 21:56
Как бы эту тему не приаттачили к ВОЗМОЖНО ЛИ ... ;)

Но темнемение - Обратимся к машине "Если бы ..." ;)

Это точно был бы Pentagon UpTo 1024 + контроллер HD + DMA USC + видео контроллер собственной фантазии .

Собственно тольколько человечьего видео контроллера и не хватает спектруму. Всё что нужно сделать - взять (некую абстрактную) однокристалку (или проц + рассыпуха) и снабдить её спец программкой для работы в различных видео режимах . Соотвветственно никакого прямого программирования быть не должно .
Плюсов от применения подобного видео контроллера масса ! -
1. Возможность выбора любого (разумного) разрешения , любой скролируемой(!) палитры, любого цветового оттенка (при восьми битах на канал - 16777215
вариантов).
2. Возможность хранить формируемую на экране кртику (задний план например) где угодно в памяти и шевелить только спрайтами , причем спрайты могут быть какой угодно битности , ВК будет сам накладывать спрайты поверх (более цветного) задника.
3. Впринципе ничто не мешает ВК заниматься простой и сложной анимацией , шевелить спрайтами и делать всевозможные эфекты без участия процессора ,если не считать кратких указаний для ВК (указания помещаюся в специально отведённый участок памяти).
4. Эффекты - какие угодно , но главное - изменение геометрии текстур!!! Вслед за выходом из 2D ступора , это хоть как то позволит вырваться из 3D ступора на спектруме .

Вроде всё . Конечно поддержка PAL/NTSC/SVGA входит в комплект . Так же на однокристалке весит ряд сервесных функций (нечто вроде биоса) в том числе по различному конфигурированию ПЛМ и связъ с ПЫЦЫ для обновления прошивок .

З.Ы. Переход на Z380 и т.п. считаю полным бредом , но не считаю таковым дикий разгон обычного Z80 (запихнутого в FPGA чип).

Вот такой результат на САБЖ выдала машина "Если бы ..." ;)

lvd
02.04.2005, 23:27
Как бы эту тему не приаттачили к ВОЗМОЖНО ЛИ ... ;)

Но темнемение - Обратимся к машине "Если бы ..." ;)

Это точно был бы Pentagon UpTo 1024 + контроллер HD + DMA USC + видео контроллер собственной фантазии .

Собственно тольколько человечьего видео контроллера и не хватает спектруму. Всё что нужно сделать - взять (некую абстрактную) однокристалку (или проц + рассыпуха) и снабдить её спец программкой для работы в различных видео режимах . Соотвветственно никакого прямого программирования быть не должно .
Плюсов от применения подобного видео контроллера масса ! -
1. Возможность выбора любого (разумного) разрешения , любой скролируемой(!) палитры, любого цветового оттенка (при восьми битах на канал - 16777215
вариантов).
2. Возможность хранить формируемую на экране кртику (задний план например) где угодно в памяти и шевелить только спрайтами , причем спрайты могут быть какой угодно битности , ВК будет сам накладывать спрайты поверх (более цветного) задника.
3. Впринципе ничто не мешает ВК заниматься простой и сложной анимацией , шевелить спрайтами и делать всевозможные эфекты без участия процессора ,если не считать кратких указаний для ВК (указания помещаюся в специально отведённый участок памяти).
4. Эффекты - какие угодно , но главное - изменение геометрии текстур!!! Вслед за выходом из 2D ступора , это хоть как то позволит вырваться из 3D ступора на спектруме .

Вроде всё . Конечно поддержка PAL/NTSC/SVGA входит в комплект . Так же на однокристалке весит ряд сервесных функций (нечто вроде биоса) в том числе по различному конфигурированию ПЛМ и связъ с ПЫЦЫ для обновления прошивок .

З.Ы. Переход на Z380 и т.п. считаю полным бредом , но не считаю таковым дикий разгон обычного Z80 (запихнутого в FPGA чип).

Вот такой результат на САБЖ выдала машина "Если бы ..." ;)

Ну и чё - к спеку дендю уже подключали. Если делать меганавороченный 2д-3д техтуроспрайтоскроллоконт роллер, то тогда сразу же з80 встанет колом по 3д-расчётам для него (да и вообще не успеет кучи спрайтов накидывать - вон, даже неогей с 68000@12мгц иногда подтормаживает!), да что там расчётам - даже просто битмап 320x256x256цветов перерисовать - уже большой кол! А если простой контроллер (типа дендиляторного) - то эта простота равносильна убогости - даже нормального битмапа не порисуешь, всё только тайловые аппаратно-скроллящиеся планы и спрайты. Хороший пример - тот же коммодуре64. Казалось бы, и спрайты аппаратные есть, и всякие скроллы недоаппаратные =) можно с экраном делать, но как только речь заходит о более-менее серьёзных фефектах, типа тмаппинга, то всё встаёт колом и рисуется в маленьком очке. Или просто встаёт колом - хорошо видно на примере например гамы fairlight - 1 к 1 со спека цельнотянутая, и всё процом прорисовывается - опять же колом =)

В этом именно и сила спека - что Z80@3.5мгц + 6 кило экран - как раз по силам зетнику. Коммодурям остаётся только пинать ВИК каждую строчку немощным 6502.

fan
03.04.2005, 02:14
2 lvd

Ну и чё - к спеку дендю уже подключали
Не удачный "пример". И использование готовых сопров противоречит концепци (и вообще это полный бред - кончились микрухи = кирдык стандарту..., да и к тому же он неахти...).

Если делать меганавороченный 2д-3д ...
Не нужно его делать, не нужно...

даже просто битмап 320x256x256цветов перерисовать ...
Вот этим и будет заниматься ВК.

6 кило экран - как раз по силам зетнику
И уж тем более ему по силам просто напросто говорить ВК что делать.

---------------------------------------------------------------------------------
Вобщем моя идея была неправильно понята...

Попробую подробней расписать.
---
"Мой" ВК (на какой либо обстрактной однокристалке, т.е. микроконтроллере) фунцеклирует как обычный спектрумовый , только ему можно задать любой способ формирования картинки (допустим привлекая его внимание через свободный бит какого либо порта к определённому участку памяти где содержится информация о требуемом видео режиме).

Допустим - следующим по "сложности" формирования изображния является трёх битное изображение (при том же разрешении), т.е. каждая точка своим цветом (16кило) при восьмицветной (любой) палитре (8+8+8bit*8=192bit , конечно можно сделать и меньше). Это так называемый первый степпинг (он же дубовый) формирования картинки . В "те времена" я бы был бы рад и такому режиму.

Второй степпинг. (с которым наверное и стоит заморачиваться (в прошедшем времени))
ВК в "дубовом режиме" просто тупо (можно сказать "линейно") "бегает" по одному и тому же участку памяти рисуя картинку и в принципе никто не мешает заставить его "бегать не линейно"(!) т.е. прокрутить какую либо анимацию или состряпать картинку из кусочков (спрайтов).
Для этого распихиваем спрайты (как персонажей так и фона) по памяти , причём как можно дальше (центральный процессор к ним больше обращаться не будет!!!) , далее в спец.выделенном участке памяти оставлямм спец информацию для ВК о том что есть спраты персонажей а что задника (причём эту информацию можно так же запихнуть в не зоны 64к) , а так же указываем где будет находиться информация (в зоне 64к) о управления спрайтом и скролом задника .
Итого - центральный процессор вааще не участвует в формировании картинки! Он лишь указывает ВК в какую сторону крутить(скролировать) уже собраный задник и куда перемещать спрайты (спрайты есесно накладываются по верх задника самим контроллером автоматически). Всё!

Степпинг три - "Спец Эфекты"
Прежде всего условимся что речь идёт всётаки об обстрактном ВК на обстрактной однокристалке (микрокомъютере) . И я прекрасно представляю что "мощи" имеющихся однокристалок может не хватить и на четверть описанного...
Начну с конца - изменение геометрии (или перспективы) спрайта.
Теперь у нас имеется возможность менять данные о геометрии спрайта .
Так же как и во втором степпинге проделываем ряд действий чтобы ВК "знал" где находится спрайт . Далее меняя всего навсего несколько байтов в спец области памяти можно повсякому исковеркать спрайт в соответствии с возможностями ВК.
Уменьшение/увеличение. С таким эфектом + изменение геометрии можно уже сделать тунель или типо того .
Врещение спрайта по/против часовой стрелке (как перед ,так и после изменения геометрии)
Вобщем можно по всякому извращаться , но конечно для нормального 3D нужно придумать нечто другое , а для спрайтиков и такое сойдёт.

Остаются ещё - Прозрачность,шум,моушен блюр и т.д. ......

Степпинг три - 3D
В САД!

-----------------------------------------------------------------------------------
2ALL
Относитесь к написанному как к "если бы ..." а не к "как будет".
Не приводите безбашенных примеров на тему "как всё запущенно" , а задавайте конкретные вопросы с конкретными цитатами.

Conan
06.04.2005, 22:40
Вопрос прежде адресован всем, кто когда-либо разрабатывал какую-либо модель Спекки или устройства к нему (прежде всего к CARO и CONANу, но может еще кто здесь бывает), но могут присоединиться и помечтать все желающие:

А вот если бы представить такую гипотетическую ситуацию, что тогда, в те годы, когда разрабатывался ZX-NEXT, Кворум и др. клоны, при том огромном количестве спектрумистов, большом спросе, сушествовавшем тогда, у вас были бы современные технические возможности, элементная база (а у кого-то и финансовая, может быть), современный накопленный опыт и сведения о путях развития разных ZX-клонов... В общем, если бы в те годы, да при таких гипотетических условиях вы бы взялись разрабатывать спектрум-клон, то каким бы вы его создали? Ведь бывает, люди часто вздыхают - "эх,да мне бы в те годы то-то и то-то, что есть сейчас, я бы...". Вот давайте и помечтаем - как бы выглядел ВАШ спектрум?
Максим, спасибо за добрый вопрос, но в нем самом заложена загвоздка. Если бы была современная элементная база, то стоила бы она в СКВ довольно прилично, значит и все спектрумисты, по логике должны были быть богаче (что бы иметь возможность покупать дорогое железо). А если все были бы обеспеченными и сытыми, то это была бы уже совсем другая страна и другие компьютеры.

Я думаю корректнее поставить вопрос: «Что бы вы сделали по-другому?» или «Что осталось нереализованным?»

Согласен?

Максагор
06.04.2005, 23:56
Максим, спасибо за добрый вопрос, но в нем самом заложена загвоздка. Если бы была современная элементная база, то стоила бы она в СКВ довольно прилично, значит и все спектрумисты, по логике должны были быть богаче (что бы иметь возможность покупать дорогое железо). А если все были бы обеспеченными и сытыми, то это была бы уже совсем другая страна и другие компьютеры.

Я думаю корректнее поставить вопрос: «Что бы вы сделали по-другому?» или «Что осталось нереализованным?»

Согласен?

На твои вопросы тоже можно попытаться ответить, будет интересно почитать. Но смысл вопроса, который задал я в другом. Знаешь, бывает в школах детям задают сочинение на тему "Что бы я сделал, если бы у меня был бы миллион долларов?". Вот и надо школьнику взять, напрячь фантазию, и подумать. И в данном случае то, что данная ситуация для этих школьников абсолютно невозможна и просто фантастична, не имеет совершенно никакого значения. Так и тут. Я прекрасно отдаю себе отчет в том, что условия, описанные мною, реально невозможны. Но, почему бы не включить воображение? Поэтому повторюсь, ДОПУСТИМ на мгновение, что у вас в то время ВДРУГ (ну попала к вам в руки машина времени, что поделаешь, так что можно привозить из будущего альтеры по дешевке (проблемы со спецслужбами, которые заинтересуются, откуда у вас наплатах микрухи, которые даже в силиконовой долине еще находятся в разработке - тоже оставим за кадром для чистоты эксперимента. ОК?)) есть возможность по нынешним (2005 год) ценам добывать современную элементную базу и по нынешним ценам клепать материнки. При этом у вас по каким-то причинам уже накоплен опыт (удачный и не удачный) по производству спектрумов (и устройств к ним) - своих и чужих (тот, что есть сейчас). Приэтом, на дворе стоит, ну, скажем, 1993 год, время наивысшего спроса на спекки, с МИЛЛИОНАМИ (по подсчетам ZX-ревю) пользователями платформы. КАК БЫ ВЫГЛЯДЕЛ ВАШ СПЕКТРУМ с такими техничесиким и ценовыми возможностями при таком спросе на рынке? Вопрос о возможности такой ситуации не стоит. ПРОСТО ПОМЕЧТАЕМ!

Shaos
07.04.2005, 06:44
Если бы была современная элементная база, то стоила бы она в СКВ довольно прилично, значит и все спектрумисты, по логике должны были быть богаче (что бы иметь возможность покупать дорогое железо). А если все были бы обеспеченными и сытыми, то это была бы уже совсем другая страна и другие компьютеры.

Штука в том, что в те далекие времена спектрумы действительно стоили довольно прилично и обычному бедному студенту (коим был я в начале 90-х) были просто не по карману - их покупали взрослые дядьки ради развлечения, богатые родители покупали детям, ну или самые смышленные индивидуумы собирали их самостоятельно - но даже в этом случае накопление денег на плату и комплектуху занимало приличное количество времени. Свой первый 48-й спектрум в общагу мы купили вскладчину с товарищем в 1992-м после того как заработали прилично денег в колхозе. Вот так то...

Wlodek
07.04.2005, 07:12
ну или самые смышленные индивидуумы собирали их самостоятельно


Ура! Я - смышлёный индивидуум! :) :) :) :)

CHRV
07.04.2005, 08:46
Ура! Я - смышлёный индивидуум! :) :) :) :)
АНалогично!
ПРичем сборка растягивалась на месяцы, пока денег добывалось на микрухи!
А на первый БК0010 я заработал на заводе за две рацухи по ускореню тех процесса мне выплатили 250руб и еще стоко же заработал - предки тогда отпали я за два месяца заработал больше чем они :)

SfS
07.04.2005, 09:26
2 lvd

Ну и чё - к спеку дендю уже подключали
Не удачный "пример". И использование готовых сопров противоречит концепци (и вообще это полный бред - кончились микрухи = кирдык стандарту..., да и к тому же он неахти...).

Если делать меганавороченный 2д-3д ...
Не нужно его делать, не нужно...

даже просто битмап 320x256x256цветов перерисовать ...
Вот этим и будет заниматься ВК.

6 кило экран - как раз по силам зетнику
И уж тем более ему по силам просто напросто говорить ВК что делать.

---------------------------------------------------------------------------------
Вобщем моя идея была неправильно понята...

Попробую подробней расписать.
---
"Мой" ВК (на какой либо обстрактной однокристалке, т.е. микроконтроллере) фунцеклирует как обычный спектрумовый , только ему можно задать любой способ формирования картинки (допустим привлекая его внимание через свободный бит какого либо порта к определённому участку памяти где содержится информация о требуемом видео режиме).

Допустим - следующим по "сложности" формирования изображния является трёх битное изображение (при том же разрешении), т.е. каждая точка своим цветом (16кило) при восьмицветной (любой) палитре (8+8+8bit*8=192bit , конечно можно сделать и меньше). Это так называемый первый степпинг (он же дубовый) формирования картинки . В "те времена" я бы был бы рад и такому режиму.

Второй степпинг. (с которым наверное и стоит заморачиваться (в прошедшем времени))
ВК в "дубовом режиме" просто тупо (можно сказать "линейно") "бегает" по одному и тому же участку памяти рисуя картинку и в принципе никто не мешает заставить его "бегать не линейно"(!) т.е. прокрутить какую либо анимацию или состряпать картинку из кусочков (спрайтов).
Для этого распихиваем спрайты (как персонажей так и фона) по памяти , причём как можно дальше (центральный процессор к ним больше обращаться не будет!!!) , далее в спец.выделенном участке памяти оставлямм спец информацию для ВК о том что есть спраты персонажей а что задника (причём эту информацию можно так же запихнуть в не зоны 64к) , а так же указываем где будет находиться информация (в зоне 64к) о управления спрайтом и скролом задника .
Итого - центральный процессор вааще не участвует в формировании картинки! Он лишь указывает ВК в какую сторону крутить(скролировать) уже собраный задник и куда перемещать спрайты (спрайты есесно накладываются по верх задника самим контроллером автоматически). Всё!

Степпинг три - "Спец Эфекты"
Прежде всего условимся что речь идёт всётаки об обстрактном ВК на обстрактной однокристалке (микрокомъютере) . И я прекрасно представляю что "мощи" имеющихся однокристалок может не хватить и на четверть описанного...
Начну с конца - изменение геометрии (или перспективы) спрайта.
Теперь у нас имеется возможность менять данные о геометрии спрайта .
Так же как и во втором степпинге проделываем ряд действий чтобы ВК "знал" где находится спрайт . Далее меняя всего навсего несколько байтов в спец области памяти можно повсякому исковеркать спрайт в соответствии с возможностями ВК.
Уменьшение/увеличение. С таким эфектом + изменение геометрии можно уже сделать тунель или типо того .
Врещение спрайта по/против часовой стрелке (как перед ,так и после изменения геометрии)
Вобщем можно по всякому извращаться , но конечно для нормального 3D нужно придумать нечто другое , а для спрайтиков и такое сойдёт.

Остаются ещё - Прозрачность,шум,моушен блюр и т.д. ......

Степпинг три - 3D
В САД!

-----------------------------------------------------------------------------------
2ALL
Относитесь к написанному как к "если бы ..." а не к "как будет".
Не приводите безбашенных примеров на тему "как всё запущенно" , а задавайте конкретные вопросы с конкретными цитатами.


Все современные компы работают именно по этому принципу - основной процессор занимается указанием, а изображение рисует видеопроцессор.
Причем видеопроцессор на ВК - отнюдь не на гигагерцы (десятки-сотни МГЦ)
Так что (как показала практика) - разделение ВК и основного процессора - единственно правильный подход.
Кстати, для вывода изображений на ТВ не надо супер-пупер мощностей процессора. Если в NEXTе Z80й формировал все видеосигналы, то какой-нибудь недорогой AT91Mххх, который умеет выполнять команду за такт при 32МГЦ - и подавно справится с выводом спрайтов и формированием всех видеосигналов. Даже если будет непалитровый режим 16Мегацветов.

CityAceE
07.04.2005, 10:04
SfS, не злоупотребляй цитатами. Ладно?

lvd
07.04.2005, 12:01
даже просто битмап 320x256x256цветов перерисовать ...
Вот этим и будет заниматься ВК.


ВК перерисовыванием обычно не занимается, а если и занимается - то никак не 80 кило за кадр. Это естественно не относится ко всяким г-лётным 3д-карточкам =)



6 кило экран - как раз по силам зетнику
И уж тем более ему по силам просто напросто говорить ВК что делать.

Ну да, конечно. А сегу мегадраев и неогея делали видно тормоза - поставили туда зачем-то 68000 на 7 и на 12 мгц соответственно. Ведь и зетник успел бы, да и 6502 тоже вполне!



"Мой" ВК (на какой либо обстрактной однокристалке, т.е. микроконтроллере) фунцеклирует как обычный спектрумовый , только ему можно задать любой способ формирования картинки (допустим привлекая его внимание через свободный бит какого либо порта к определённому участку памяти где содержится информация о требуемом видео режиме).


Ну разве что на абстрактной. На реальной не получится.



Допустим - следующим по "сложности" формирования изображния является трёх битное изображение (при том же разрешении), т.е. каждая точка своим цветом (16кило) при восьмицветной (любой) палитре (8+8+8bit*8=192bit , конечно можно сделать и меньше). Это так называемый первый степпинг (он же дубовый) формирования картинки . В "те времена" я бы был бы рад и такому режиму.

Ничего не понял. 3 битплана что ли? Ну и, теперь экран 18кб будет - фпс какой, сам угадаешь? =)



Второй степпинг. (с которым наверное и стоит заморачиваться (в прошедшем времени))
ВК в "дубовом режиме" просто тупо (можно сказать "линейно") "бегает" по одному и тому же участку памяти рисуя картинку и в принципе никто не мешает заставить его "бегать не линейно"(!) т.е. прокрутить какую либо анимацию или состряпать картинку из кусочков (спрайтов).
Для этого распихиваем спрайты (как персонажей так и фона) по памяти , причём как можно дальше (центральный процессор к ним больше обращаться не будет!!!) , далее в спец.выделенном участке памяти оставлямм спец информацию для ВК о том что есть спраты персонажей а что задника (причём эту информацию можно так же запихнуть в не зоны 64к) , а так же указываем где будет находиться информация (в зоне 64к) о управления спрайтом и скролом задника .
Итого - центральный процессор вааще не участвует в формировании картинки! Он лишь указывает ВК в какую сторону крутить(скролировать) уже собраный задник и куда перемещать спрайты (спрайты есесно накладываются по верх задника самим контроллером автоматически). Всё!

А вот и не всё. 'задников', а точнее плейфилдов бывает не менее 2, а лучше больше. Спрайты тоже должны иметь приоритеты друг относительно друга и так же относительно плейфилдов (это всё к вопросу об абстрактных, которые в данном случае отдыхают плотно). Далее, вот впихал ты это добро в общую память и всё... Включается дма и проц весь кадр стоит на /BUSRQ.



Степпинг три - "Спец Эфекты"
Прежде всего условимся что речь идёт всётаки об обстрактном ВК на обстрактной однокристалке (микрокомъютере) . И я прекрасно представляю что "мощи" имеющихся однокристалок может не хватить и на четверть описанного...
Начну с конца - изменение геометрии (или перспективы) спрайта.
Теперь у нас имеется возможность менять данные о геометрии спрайта .
Так же как и во втором степпинге проделываем ряд действий чтобы ВК "знал" где находится спрайт . Далее меняя всего навсего несколько байтов в спец области памяти можно повсякому исковеркать спрайт в соответствии с возможностями ВК.
Уменьшение/увеличение. С таким эфектом + изменение геометрии можно уже сделать тунель или типо того .
Врещение спрайта по/против часовой стрелке (как перед ,так и после изменения геометрии)
Вобщем можно по всякому извращаться , но конечно для нормального 3D нужно придумать нечто другое , а для спрайтиков и такое сойдёт.

Вот именно - извращаться можно по-всякому, но имеет ли это смысл для системы на Z80@3.5мгц? Возможностей у вк будут тонны, а проц и десятой доли их не заюзает - не успеет.



Остаются ещё - Прозрачность,шум,моушен блюр и т.д. ......

Это ты уже перепутал вк с 3дкарточками... =)



Степпинг три - 3D
В САД!

Причём не только его =)



Относитесь к написанному как к "если бы ..." а не к "как будет".
Не приводите безбашенных примеров на тему "как всё запущенно" , а задавайте конкретные вопросы с конкретными цитатами.

От того, что оно 'если бы', оно не перестанет быть 'нахненадо' =)

lvd
07.04.2005, 12:11
Все современные компы работают именно по этому принципу - основной процессор занимается указанием, а изображение рисует видеопроцессор.

В современных компах вообще нет видеопроцессора - да и видеовыхода впрочем тоже =).



Причем видеопроцессор на ВК - отнюдь не на гигагерцы (десятки-сотни МГЦ)

На несколько сотен мегагерц - это память как минимум, а что там внутри происходит - никто не знает =)=)



Так что (как показала практика) - разделение ВК и основного процессора - единственно правильный подход.

В случае 'пц+видимо карточки' практика показала обратное - чем круче процы-'видеопроцы'-быстрее память - тем хуже общий уровень работ.



Кстати, для вывода изображений на ТВ не надо супер-пупер мощностей процессора. Если в NEXTе Z80й формировал все видеосигналы, то какой-нибудь недорогой AT91Mххх, который умеет выполнять команду за такт при 32МГЦ - и подавно справится с выводом спрайтов и формированием всех видеосигналов. Даже если будет непалитровый режим 16Мегацветов.


Не справится. Зетник там именно что видеосигналы формировал (да и то с каким трахами - читай темы про zxnext! =), а ты предлагаешь выводить изображение! Это надо сначала сообразить, какая часть картинки видна, потом считать указатели на тайлы (ведь не огроменный 10000*10000 бипмап ты в памяти собрался хранить?), сделать это для нескольких плейфилдов, потом ещё выкачать спрайты, потом начать выборку тайлов из памяти и выдавать инфу на цап, при этом не забывая про спрайты, про приоритеты спрайтов и плейфилдов др. относительно друга, и т.д...

И всё это делать в реальном времени - задержка на такт не допустима.

Conan
07.04.2005, 13:09
Штука в том, что в те далекие времена спектрумы действительно стоили довольно прилично и обычному бедному студенту (коим был я в начале 90-х) были просто не по карману - их покупали взрослые дядьки ради развлечения, богатые родители покупали детям, ну или самые смышленные индивидуумы собирали их самостоятельно - но даже в этом случае накопление денег на плату и комплектуху занимало приличное количество времени. Свой первый 48-й спектрум в общагу мы купили вскладчину с товарищем в 1992-м после того как заработали прилично денег в колхозе. Вот так то...
Цены на Speccy в те, и даже более ранние годы я помню хорошо. 1989 год: плата «Балтик» - 700руб.; дисковод 5305 – 800руб.; Z80 – 50руб.; «Пентагон 48» в сборе плюс дисковод – 3000руб. Неофицильный курс 10руб/$1

И это были еще не самые высокие цены. Например, советский компьютер БК0010 стоил 650 рублей, и был жутким дефицитом. А видеомагнитофон «Электроника ВМ12» стоил 1200руб. но купить его (по огромной очереди) могли только ветераны войны. Новый «Москвич 4141» - 12-16тыс. руб (на рынке); дополнительный метр жилой площади при обмене (Москва) – 300-500руб. Так что Speccy того времени был компьютером «для богатых», это факт. Но была еще одна лазейка: купить плату, детали и собрать его самому. Обходилось все это примерно три раза дешевле, так что даже некоторые студенты (со степухой) могли наскрести на ленточный вариант.



А вот с начала 90-х Speccy стал компьютером «для всех». Стоил недешево, но и не заоблачно, производился массово и продавался повсеместно (конкуренция сбила цены). В 92-м собранная плата «Пентагон 128» стоила $15-20; матричный принтер «Robotron» - $35, Z80 - $1. Правда, курс был 150руб/$1. А вот самая дешевая PC XT (чешский клон) – $250. И инфляция была просто бешенная: Начало 1992: 80руб/$1, начало 1993: 800руб/$1. Но именно тогда Speccy стал наиболее массовым, потому что производился из отечественных (за редким исключением) деталей и на наших заводах и фабриках. И не дорожал вместе с долларом и писюками.

fan
07.04.2005, 20:28
2 lvd

ВК перерисовыванием обычно не занимается, а если и занимается - то никак не 80 кило за кадр.
Это уж смотря на чём его сделать . Да и ваще это как бы всё фантазии...

Ну да, конечно. А сегу мегадраев и неогея...
У нас спектрум и фантазии.

3 битплана что ли?
Три цветовых канала RGB (извиняюсь что криво написал, чукча писатель... Фантаст! ;) ).

Ну и, теперь экран 18кб будет - фпс какой, сам угадаешь? =)
Вовсе не обязательно это использовать под игровой процесс , да и присутствие DMA контроллера тоже надо учитывать. Впроче можно и нафантазировать и безбашенный разгон всей системы при запихивании её в FPGA (надеюсь скептицизм у всех уменьшится %) а может и добавится...)

Вот именно - извращаться можно по-всякому, но имеет ли это смысл для системы на Z80@3.5мгц? Возможностей у вк будут тонны, а проц и десятой доли их не заюзает - не успеет.
Ему не надо ничего успевать , ему нужно только управлять .

От того, что оно 'если бы', оно не перестанет быть 'нахненадо' =)
Не я придумал тему... И я прекрасно понимаю что из всех возможностей этого ВК максимум что пригодится - потенциальная возможность работы в любом ТВ стандарте и более лёгкая подстройка таймингов чем при использовании ПЛМ .
---------------------------------------------------------------------------------

Насчёт существующих однокристалок ничего ценного сказать не могу (я лишь говорил об обстрактных вещах), впринципе можно закатать какое либо известное/существующе ядро проца/однокристалки с рассыпухой в FPGA матрицу и разогнать слегка... (это была фантазия , а не призыв к действию).

Vladimir Kladov
07.04.2005, 21:27
добавлю мои 5 копеек насчет успеваемости на 3.5МГц отрисовать несколько слоев. Моя информациятакая, что наличие нескольких плоскостей как раз могли пригодиться именно потому, что проц не успевал. Именно так были реализованы многие "крутые" (по сравнению со спеком) платформы, в том числе приставки. Единственное, что требовалось - это поддержка аппаратного смещения слоя. Кто-нибудь видел на Ямахе какие-нибудь игрули? Я видел пару аркад, и мне пояснил тогда специалист, как это сделано. Главный объект всегда в центре экрана, двигается на фоне полноцветная картинка позади него. Плюс в том же слое, что и вертолетик игрока, рисуются прочие подвижные объекты. Проге для движения заднего плана надо только подрисовывать края, и задавать сдвиг. Что кардинально отличается по затратам процессора от полной перерисовки, или даже программного сдвига. И совсем дешево реализуется аппаратно.

И на спеке аналогичные штуки пытались кажется сделать. Поздно было уже, эра живого спека начала закатываться. Никому не стало интересно.

Ronin
08.04.2005, 14:51
AT91Mххх, который умеет выполнять команду за такт при 32МГЦ

или филлипс из той же песни на 60Мгц ;)

Ronin
08.04.2005, 14:53
или филлипс из той же песни на 60Мгц

а еще DSP у TI есть (и даже есть недорогие), там и быстрее такта коечего можно даже делать

fan
09.04.2005, 01:40
2 Vladimir Kladov

Именно это я и предлагаю (в разумных пределах ;) )
(в прошедшем времени...)

И на спеке аналогичные штуки пытались кажется сделать. Поздно было уже, эра живого спека начала закатываться. Никому не стало интересно.

В точку... Сейчас даже более менее разумные разработки/доработки практически никого не заинтерезуют... Где же ты была DMA USC...

Vladimir Kladov
09.04.2005, 12:18
и что самое прикольное при таком n-слойном подходе: почти исчезает проблема attributes clash. Например, в верхнем слое можно нарисовать 3-хцветный спрайт игрока (красно-желто-зеленый к примеру), а на слое под ним - спрайты противника, например сине-зелено-белые. И никаких проблем наложения атрибутов. Плюс 1 раз нарисованный неподвижный фон заднего плана. Классика - пакман, и не надо про clash вообще думать даже.

Или наоборот на заднем плане сдвигая с точностью до 1 пиксела нарисованную картинку рисуем местность, по которой бежит наш стрелок - на переднем плане. Здесь же, или в слое между ними - противники (других цветов, или тех же, но с преобладанием другого цвета из того же набора) бегают по той же местности. А взрывы на самом переднем слое - вообще в своей палитре. В общем 3 слоя уже здорово, а 4 - вообще роскошь была бы. И 3.5МГц по за глаза хватило бы.

Я подозревал, что Сэр Клайв стибрил свою схему видео-атрибутики (ну может не саму схему, а идею) у приставок, которые работали вот таким макаром. Но почему-то не стал реализовывать многослойность, из-за чего программирование игр превратилось в жуткую мороку с цветами. Приходилось во многих играх упрощать все экраны до 2х цветов, и разнообразить просто выбором палитры при переходе из комнаты в комнату, что весьма не всегда было здорово, по сравнению с инкарнациями на других платформах.

lvd
11.04.2005, 21:32
2 lvd

ВК перерисовыванием обычно не занимается, а если и занимается - то никак не 80 кило за кадр.
Это уж смотря на чём его сделать . Да и ваще это как бы всё фантазии...

Интересно, ты так квотишь криво специально? =) Если у тебя фантазии, то у меня дубинка - скидывать тебя на землю иногда, к реальности =)



Ну да, конечно. А сегу мегадраев и неогея...
У нас спектрум и фантазии.

Ну раз так, то Z80 НЕ УСПЕЕТ рулить суперпупернавороченным ВК. =) Если даже 68000@12MHz в неогее не всегда успевает...



3 битплана что ли?
Три цветовых канала RGB (извиняюсь что криво написал, чукча писатель... Фантаст! ;) ).

24 бита что ли? Частота выборки 21мгц/байт, размер буфера 144кб. И никакой ВК тебя не спасёт =)



Ну и, теперь экран 18кб будет - фпс какой, сам угадаешь? =)
Вовсе не обязательно это использовать под игровой процесс , да и присутствие DMA контроллера тоже надо учитывать. Впроче можно и нафантазировать и безбашенный разгон всей системы при запихивании её в FPGA (надеюсь скептицизм у всех уменьшится %) а может и добавится...)

Угу, вон спринтер уже нафантазировали, и каков результат? А он кроме растягивающихся строчек ничего вовсе и не умел. (интересно вот, ИванМак только думом на пц что ли фанател? =)



Вот именно - извращаться можно по-всякому, но имеет ли это смысл для системы на Z80@3.5мгц? Возможностей у вк будут тонны, а проц и десятой доли их не заюзает - не успеет.
Ему не надо ничего успевать , ему нужно только управлять .

Once again: sega md: 68000@7mhz, neogeo: 68000@12mhz. Зачем они там? Ведь и Z80/3.5mhz успел бы. И заклятие 'спектрум!' тебе не поможет аргументированно ответить на этот вопрос =)



От того, что оно 'если бы', оно не перестанет быть 'нахненадо' =)
Не я придумал тему... И я прекрасно понимаю что из всех возможностей этого ВК максимум что пригодится - потенциальная возможность работы в любом ТВ стандарте и более лёгкая подстройка таймингов чем при использовании ПЛМ .

Тут вообще фигня - кого интересует нтсц и подстройка таймингов? Ты всё ж о пуперспектруме с ВК или об эмуляции пятигоновских таймингов речь ведёшь? =)=)=)



Насчёт существующих однокристалок ничего ценного сказать не могу (я лишь говорил об обстрактных вещах), впринципе можно закатать какое либо известное/существующе ядро проца/однокристалки с рассыпухой в FPGA матрицу и разогнать слегка... (это была фантазия , а не призыв к действию).

Угу, поставить фпгу навороченную в TQFP, к ней СДРАМку на мегов несколько, и рядом зетник@3.5Mhz. Уже, по-моему, смешно... =)

lvd
11.04.2005, 21:40
и что самое прикольное при таком n-слойном подходе: почти исчезает проблема attributes clash. Например, в верхнем слое можно нарисовать 3-хцветный спрайт игрока (красно-желто-зеленый к примеру), а на слое под ним - спрайты противника, например сине-зелено-белые. И никаких проблем наложения атрибутов. Плюс 1 раз нарисованный неподвижный фон заднего плана. Классика - пакман, и не надо про clash вообще думать даже.

Проблема клещинга решается проще - путём убирания атрибутов как класса, и введения плоскостей в несколько битпланов =)




Или наоборот на заднем плане сдвигая с точностью до 1 пиксела нарисованную картинку рисуем местность, по которой бежит наш стрелок - на переднем плане. Здесь же, или в слое между ними - противники (других цветов, или тех же, но с преобладанием другого цвета из того же набора) бегают по той же местности. А взрывы на самом переднем слое - вообще в своей палитре. В общем 3 слоя уже здорово, а 4 - вообще роскошь была бы. И 3.5МГц по за глаза хватило бы.

В сеге слоёв как бы не более 3, и ещё спрайтов куча, но почему же там 68000, а не Z80? =)



Я подозревал, что Сэр Клайв стибрил свою схему видео-атрибутики (ну может не саму схему, а идею) у приставок, которые работали вот таким макаром.

А мне почему-то кажется, что он вообще и не знал, как в спеке экран устроен. Сделали ему спек - и хорошо, в улу запхали - ещё лучше, получилось криво и ломуче - ну и фиг с ним =)



Но почему-то не стал реализовывать многослойность, из-за чего программирование игр превратилось в жуткую мороку с цветами.


И славабогу. А то получили бы мы ещё в 3 раза больший тормоз экранной памяти, а мелкой логики в клонах спека было бы килограмма 2, если б конечно кто взялся бы отклонировать. Вон, комодуре64 и то простая как пробка (ВК не особо сложен и разобран по тактам уже давно), ан нет - не склонировали почему-то. =)




Приходилось во многих играх упрощать все экраны до 2х цветов, и разнообразить просто выбором палитры при переходе из комнаты в комнату, что весьма не всегда было здорово, по сравнению с инкарнациями на других платформах.

Дык, экономия на спичках. =)

SfS
17.04.2005, 08:51
В современных компах вообще нет видеопроцессора - да и видеовыхода впрочем тоже =).


От того, что "видепроцессор" стал называться "видеокарта" - суть не изменилась. Кстати - видеокарты с видеовыходом на телек - дело обычное)



На несколько сотен мегагерц - это память как минимум, а что там внутри происходит - никто не знает =)=)


Посмотри что там стоит - ЦОС0-процессор обычно плюс некий чип, который заточен под конкретно видеообработку. Короче - видеокарточка - это специализированный микрокомпьютер для построения изображений. "Никто не знает" - это неправда. Можно ведь почитать )



В случае 'пц+видимо карточки' практика показала обратное - чем круче процы-'видеопроцы'-быстрее память - тем хуже общий уровень работ.


С чего бы вдруг ? В общем случае более медленный проц (пример - дюрон 800 у меня дома) + хорошая видеокарточка (RIVA TNT2 у меня дома) дает гораздо более хорошую производительность по видео, чем гораздо более крутой проц (P4 - 2ГГЦ у меня на работе) + интегрированная видюха без ускорителей видео.

И все это именно потому, что все основное построение видеоизображения производит именно видюха а не ЦП.



Не справится. Зетник там именно что видеосигналы формировал (да и то с каким трахами - читай темы про zxnext! =), а ты предлагаешь выводить изображение! Это надо сначала сообразить, какая часть картинки видна, потом считать указатели на тайлы (ведь не огроменный 10000*10000 бипмап ты в памяти собрался хранить?), сделать это для нескольких плейфилдов, потом ещё выкачать спрайты, потом начать выборку тайлов из памяти и выдавать инфу на цап, при этом не забывая про спрайты, про приоритеты спрайтов и плейфилдов др. относительно друга, и т.д...
И всё это делать в реальном времени - задержка на такт не допустима.


Тут спорить не буду - это было чистое ИМХО. Надо считать, спорить бесполезно)

Conan
18.04.2005, 16:26
В ZX-Next второй Z80 формировал не только видеосигналы (ССИ, КСИ, BLANK, BORDER), но и адреса для вывода видео (разумеется, кроме младших). То есть формально выводом изображения он тоже занимался. Кроме того, эти адреса отличались для точек/атрибутов и для видеорежима CGA. При желании можно было сделать аппаратный scroll по вертикали или вывод с определенных адресов (сдвиги экрана по вертикали – горизонтали и прочее). Конечно, это не идет ни в какое сравнение с современными видеоконтроллерами на специализированных чипах. И об обработке изображения (изменения содержимого видео памяти) тоже речи не было, ибо для этого скорости явно не хватит.

Цель была совершенно другая – сделать открытой архитектуру (не использовать заказные микросхемы) и решить проблемы: регенерации, надежности, повторяемости и простоты. Z80 вместо двух десятков корпусов мелкой логики оказался более гибким (больше возможностей), надежным (не надо согласовывать времянки и проще монтаж), дешевым (и стоимость и косвенные затраты на монтаж и меньшая площадь на плате) и доступным. Разумеется, платой за все это стала необходимость написания качественного кода выверенного до такта. То есть пришлось заниматься тем, что позднее назвали «экстремальным программированием». Наложило отпечаток и то, что код пришлось защищать – да так, что до сих пор никто не взломал. Хотя уж вроде все что нужно рассказал…

Shiru
18.04.2005, 18:31
И все это именно потому, что все основное построение видеоизображения производит именно видюха а не ЦП.
Фигню городите, товарищи. Есть приложения GPU-limited, есть CPU-limited, в зависимости от того, что в конекретной системе больше нагружается. GPU умеет только треугольники растеризовать, и немного обрабатывать координаты, но сцену и данные ему всё равно готовит CPU.. Вобщем, для хорошей производительности мощными должны быть все компоненты. Слабый CPU+мощный GPU и наоборот - это неэффективно, и сильно теряет в производительности.

lvd
18.04.2005, 19:51
От того, что "видепроцессор" стал называться "видеокарта" - суть не изменилась.

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



Кстати - видеокарты с видеовыходом на телек - дело обычное)

Угу, и почему же тогда до сих пор не сделали идеальный эмулятор спека - с выводом на телевизор развёрткой 50гц? ;)




Посмотри что там стоит - ЦОС0-процессор обычно плюс некий чип, который заточен под конкретно видеообработку. Короче - видеокарточка - это специализированный микрокомпьютер для построения изображений.

Там стоит дикой дури рендерилка в память всяких полигонов и текстур и примитивнейший выводитель байтиков из памяти через ЦАП на монитор. И толку от этого?




"Никто не знает" - это неправда. Можно ведь почитать )

Именно что никто не знает. Максимум знают об опенгл и директ3д. А что там внутри - НИКТО не знает.





В случае 'пц+видимо карточки' практика показала обратное - чем круче процы-'видеопроцы'-быстрее память - тем хуже общий уровень работ.

С чего бы вдруг ? В общем случае более медленный проц (пример - дюрон 800 у меня дома) + хорошая видеокарточка (RIVA TNT2 у меня дома) дает гораздо более хорошую производительность по видео, чем гораздо более крутой проц (P4 - 2ГГЦ у меня на работе) + интегрированная видюха без ускорителей видео.

Вот с того и вдруг, что теперь если у тебя не радион последний или жофорц, то демы с отсембли 2005 у тебя не заработают. А уж про дум3 вообще молчу. Каждая игра теперь делается за миллион баксов, а поиграв в неё 10 минут, ты плюнешь и сотрёшь её с диска.




Тут спорить не буду - это было чистое ИМХО. Надо считать, спорить бесполезно)

Угу, вообще прежде чем спорить, полезно ознакомиться c видеосистемами амиги, сеги, денди, комодуре 64, етц... =)

lvd
18.04.2005, 19:53
[skip]
Цель была совершенно другая – сделать открытой архитектуру
[skip]
Наложило отпечаток и то, что код пришлось защищать – да так, что до сих пор никто не взломал.

Вот это меня просто умиляет, в совокупности с рассказами об извратах с плавающими битами =)

lvd
18.04.2005, 20:03
Фигню городите, товарищи. Есть приложения GPU-limited, есть CPU-limited, в зависимости от того, что в конекретной системе больше нагружается. GPU умеет только треугольники растеризовать, и немного обрабатывать координаты, но сцену и данные ему всё равно готовит CPU.. Вобщем, для хорошей производительности мощными должны быть все компоненты. Слабый CPU+мощный GPU и наоборот - это неэффективно, и сильно теряет в производительности.

Это тоже меня радует. =)=)=) Эмулятор спектрума например - он цпу-лимитед или гпу-лимитед? А считалка системы дифф.уравнений - она какая? А хотя бы ворд обычный? $)$)$)

Conan
27.04.2005, 19:13
Вот это меня просто умиляет, в совокупности с рассказами об извратах с плавающими битами =)
А в чем проблема? Никаких заказных компонент не использовалось, а уж если килобайт кода взломать не смогли, так или значит ломальщики такие, или не надо это было уже никому. При цене ПЗУ 1 доллар, и времени вбуханном на разработку, меня тоже очень умиляют подобные разглагольствования. Особенно если учесть что открытая архитектура это, прежде всего возможность легко дорабатывать компьютер под свои требования. Или печатная плата (которая много дороже ПЗУ) это тоже элемент закрытой архитектуры? Ведь без нее очень тяжело обойтись.