PDA

Просмотр полной версии : Разработка НОВОГО клона



Страницы : [1] 2

MegaMyth
16.12.2006, 04:55
Предистория:
Примерно 1 декабря 2006 года я наткнулся на этот форум. Во первых был приятно удивлен что Spectrum ЖИВ!, а во вторых меня замучала настольгия по светлому прошлому и я решил собрать клон. Нужно заметить что году в 1999-2000 я сидел за живым спеком (у меня ещё не было пицюка), меня реально не устраивали 48К и существующий видеорежим. память я расширил до 128К по стандарту, а вот всё что выше до 1М как уш получилось. Но до видео так и не добрался. Были конечно попытки собрать новый контроллер со своей памятью, но все эти попытки останавливались после того как я на экране монитора получал полосатый матрац (без участия спека). Память я так к ниму и не прикрутил, так как: первое: не мог достать то что мне надо было, второе - откуда у бедного студента деньги...
Сейчас же всё изменилось. Денег хватает, времени мало, но тем не менее....
В чём суть:
Немного пораскинув мозгами я решил собрать таки клон. Но на современной элементной базе.
Железо:
1. Процессор Z84C0020VEC (Z80 20MHz PLCC44 CMOS)
2. ОЗУ K6R4008C1C-15 (SRAM 512K*8 15ns CMOS)x 2 шт
3. ПЗУ am29F010-90 (128K*8 90ns Flash)
4. Всё остальное - Altera EP1K30
5. Макетная плата (еще проектируется)
Концепция:
Особое внимание хочу уделить видеоконтроллеру о чем подробно и рассказываю.
Видеоконтроллер по сути дела состоит из синхрогенератора и счетчиков адреса.
Синхрогенератор будет иметь 8 портов, предназначенных для хранения информации о ширине синхроимпульса, импульса гашения, ширины бордюра, и ширине экрана. Таким образом появлется возможность полностью менять параметры экрана и если удастся запустить режим 640*480 100Гц. Изначально работы ведутся над 60 и 75Гц режимом, так на эти режимы информация имеется. Стандартный ТВ режим также будет присутствовать.
У Видеоконтроллера также будут присутствовать следующие возможности конфигурирования:
1. Управление частотой задающего генератора, что собственно и обеспечивает смену разрешений TV/VGA.
2. Управление счетчиком адреса (адресация спектрум экрана/линейная адресация памяти экрана)
3. Переключение экранов. Количество этих самых экранов будет ограничиваться объёмом ОЗУ.
4. Аппаратный мультиколор до 256 цветов из палитры 65536, а если остануться свободные ноги у ПЛИС то и 16777216.
5. Аппаратный скроллинг экрана по обеим осям.
6. Текствовый режим. в режиме ТВ размер символа 8*8 25 строк, в режиме VGA - 19*8 25 строк или 8*8 60 строк. Возможности загрузки шрифтов скорее всего не будет, т.к. возможности видеоконтроллера слихвой перекрывают эту необходимость.
Спектрум в целом:
Частота процессора будет также задаваться через порты ввода вывода. Могу сказать только одно процессор будет работать без WAIT'ов теоретически до 120 с чем-то МГЦ... такчто как разгонится :-)
Адресация памяти. Гарантировано будет совместимость до 128К, дальше как попрет... Диспетчер памяти. Рассматриваются два варианта. Первый: любая страница ОЗУ из 256[до 4МБ] и более (а возможно и 65536 [до 1 Гб]) становится в любую четверть экрана. Второй (посложнее): Введение аппаратного сегментного регистра по принципу IBM PC (к содержимому сегментного регистра прибавляются 2 старших бита адреса процессора. т.е. если содержимое регистра =#DEAD а программа обращется по адресу #ABCD, то реальный адрес памяти будет равен #37ABEBCD). В чем сложноть... для того чтобы не ограничивать программу объёмом 64К или не заставлять програмеров скакать от отного сегмента к другому, необходимо перехватывать КОП от Z80 и на время выполнения операций с памятью при выполнении команды LD A,(HL) LD (HL),A подставлять другой рестр, и так далее... Таким образом программист получает доступ к огромному объёму памяти данных...
Законченый вариант:
Плата будет иметь формфактор микро-ATX с 5ю системными разъёмами 62pin, возможно появиться и расширение этого разъёма (как ISA).
Что сделано на сегдня:
Подготавливается PCB файл для макетной платы... готовую плату получу через 1-2 дня. В Quatrus'е засимулированы режимы работы синхрогенератора... по всей вероятности работает
Цена:
На сегодняшний день всё это удовольствие обходится мне в 925 рублей. (плата бесплатная будет :-)))

На этомпока всё... у кого есть предположения - пишите... есть вопросы? отвечу.

Lethargeek
16.12.2006, 06:24
Особое внимание хочу уделить видеоконтроллеру о чем подробно и рассказываю.
Хых. Налицо очередная попытка слепить ни с чем не совместимые пэцэобразные "расширения" по внешнему признаку (а шобы было столько цветов и пикселей) путем подгонки под заданное железо (влезет в такую-то ПЛИС). Зато галочку можно ставить - "расширили".

MegaMyth
16.12.2006, 07:35
Налицо очередная попытка слепить ни с чем не совместимые пэцэобразные "расширения" по внешнему признаку
Видео контроллер получется неплохой, но со своими недостатками... нет аппаратных спрайтов... но в след. версии исправлю

влезет в такую-то ПЛИС
Если не влезет в эту, тогда поставлю другую.

З.Ы. Только что подготовил файл макетной платы... скоро на работу... 5-6 часов и плата готова...

Lethargeek
16.12.2006, 07:47
нет аппаратных спрайтов... но в след. версии исправлю
Ужоснах!! :v2_scare:
И почему все железячники так любят аппаратные спрайты и прочую дребедень, проистекающую из убогости элементной базы 80-х...

MegaMyth
16.12.2006, 08:05
И почему все железячники так любят аппаратные спрайты и прочую дребедень, проистекающую из убогости элементной базы 80-х...

А тебе что нужно??? OpenGL... я, например, посмотрю каково будет прорисовывать 25раз в сек 640*480=307200 байт, в то время как Z80 на 20 МГц LDIROM может копировать только 952380 байт в сек...

Romanich
16.12.2006, 08:27
1. Процессор Z84C0020VEC (Z80 20MHz PLCC44 CMOS)
2. ОЗУ K6R4008C1C-15 (SRAM 512K*8 15ns CMOS)x 2 шт


Хе-хе! Это случайно не от CHRV? Вродеб его позиции ;)



У Видеоконтроллера также будут присутствовать следующие возможности конфигурирования...


Какова планируется максимальная скорость заноса в видеобуфер? (если вообще планируется...)

Romanich
16.12.2006, 08:30
Ужоснах!! :v2_scare:
И почему все железячники так любят аппаратные спрайты и прочую дребедень, проистекающую из убогости элементной базы 80-х...

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

А товарищу пожелаю больших успехов в разработке своей машины!
Не каждый на это способен :)
ИМХО лучше 2Д-аксель на основе блитинга или спрайтов всё-таки сделать, чем погрязть в софтварщине...

Lethargeek
16.12.2006, 08:33
А тебе что нужно??? OpenGL... я, например, посмотрю каково будет прорисовывать 25раз в сек 640*480=307200 байт, в то время как Z80 на 20 МГц LDIROM может копировать только 952380 байт в сек...
Да я тут собс-но уже с год воюю по всему форуму. :)
Основная идея - отделить видеопамять от основной и организовать в виде параллельных плоскостей (довести до ума EGA-подобную схему), что позволит во многих случаях ускорить вывод графики только зетником (плюс удобная раскладка экрана, ибо от специфических восьмибитных ограничений разгон Z80 как таковой не спасает). А для нормальной полноцветной графики юзать блиттер, работающий за счет расширения ШД видеопамяти очень быстро (значит, актуальная графика тоже должна храниться "внутри").

Romanich
16.12.2006, 08:36
А тебе что нужно??? OpenGL... я, например, посмотрю каково будет прорисовывать 25раз в сек 640*480=307200 байт, в то время как Z80 на 20 МГц LDIROM может копировать только 952380 байт в сек...

В своё время я сделал софтварный рендеринг на LCD 128x128pixel 256color
видеоданные отправлял в LCD со скоростью 16МБит/с - регистром сдвига, данные формировались AVR-контроллером. Был видеобуфер(цвет прозрачности/отсечение)... Скорость получилась приемлемая.

Z80 конечно такое не потянет, поэтому нужно собирать аксель! Была идея на ту же LCDшку привешать ATmega8515 - собственно аксель - блитинг/смарт фильтр/отсечение/полу-прозрачность / скэйлинг/....
Но потом попался в руки V9990 и я передумал...

В любом случае для зэтника нужен аксель, а то графа будет отстойная по скорости

Lethargeek
16.12.2006, 08:44
Блин, неужели не понятно! Если железячники будут заморачиваться на софтварный рендеринг, то силы у них не останется на самую простую игрушку. Они и так очень многое делают, порой вся энергия кончается и нет сил ещё и программингом заниматься!!! (по себе знаю)
Ы, а кроме софтерного рендеринга ни на что фантазии не хватает? То есть "раз уж гоняли спрайты двадцать лет назад, то и мы тоже будем". А железку нужно так проектировать, чтоб потом силы на ее программирование как раз и не тратить.

Сегодня-то какая разница - вызывать стандартную процедуру, которая будет координаты с атрибутами у ограниченных спрайтов менять, или вызывать стандартную процедуру, которая блиттер запрограммирует на переброску произвольного блока? Сам же всех спрашиваешь - "и как только с этими спрайтами хитромудрыми обращаться?" ;)

Romanich
16.12.2006, 10:09
Ы, а кроме софтерного рендеринга ни на что фантазии не хватает?...
Сам же всех спрашиваешь - "и как только с этими спрайтами хитромудрыми обращаться?" ;)


Если б ты по-внимательнее был, то такую чушь не писал бы! Я не настаиваю на спрайтах, кроме них упомянул ещё аппаратный 2Д-рендеринг(bitblt и прочее с ним...). На ПЛИСах что угодно можно реализовать! И это нужно делать сразу чтоб потом не сожалеть и не заморачиваться!



То есть "раз уж гоняли спрайты двадцать лет назад, то и мы тоже будем".


Выбирать не приходится! Предложи какой-нить видеочип который по-твоему мнению современный и доставаемый! Чувствуешь, во что всё упирается??? На ПЛИСы не ссылаться!!!



А железку нужно так проектировать, чтоб потом силы на ее программирование как раз и не тратить.


Вот я про то же! Нужно делать 2Д-движок(типа DirectDraw), если спрайты не нравяца.

Lethargeek
16.12.2006, 12:34
На ПЛИСах что угодно можно реализовать! И это нужно делать сразу чтоб потом не сожалеть и не заморачиваться!
Не менее важно "чтоб потом не сожалеть и не заморачиваться" кое-что и НЕ делать сразу. ;)


Выбирать не приходится! Предложи какой-нить видеочип который по-твоему мнению современный и доставаемый! Чувствуешь, во что всё упирается??? На ПЛИСы не ссылаться!!!
А почему собс-но не ссылаться? Речь конкретно о Спектруме. Это если делать что-то с нуля, можно брать готовые компоненты. А Спек как домашний компьютер универсален, и графика у него должна оставать универсальной. Если в других домашних компах когда-то юзали спрайты, так это потому что другого выхода не было при общей слабости технологии.

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


Вот я про то же! Нужно делать 2Д-движок(типа DirectDraw), если спрайты не нравяца.
DirectDraw - прокладка, на Спеке и так все "direct". :)
Так оно и должно оставаться на обозримую перспективу имхо.

acidrain
16.12.2006, 13:38
Так оно и должно оставаться на обозримую перспективу имхо
Не должно! Ведь на теже грабли наступаем тов-щи! =) Надо уходить от директ-ковыряния в железе. Тогда и ось реально будет сделать и на спеке будет работать. Тем более на таком, как МегаМиф планирует! ;)

Valen
16.12.2006, 13:56
Особое внимание хочу уделить видеоконтроллеру.
если удастся запустить режим 640*480 100Гц.

100Гц подходящая развёртка для спека на ВГА.
Просто аппаратно повторять каждый кадр 2 раза.
Лучше будет смотреться спековский 50герцовый софт.




Изначально работы ведутся над 60 и 75Гц режимом,

Тоже неплохо.



Цена:
На сегодняшний день всё это удовольствие обходится мне в 925 рублей.
Смотрю efind.ru, там сама EP1K30 - 900р. Или не туда смотрю?
Оцени приблизительно полностью готовую (рабочую)плату.
(при розничных ценах на комплект.)

falanger
16.12.2006, 14:52
С интересом погляжу чего получится.
Если будет совместимость с ZX-линейкой по ПО и большая память со стандартизированной шиной например ZX-BUS или её расширенеим совместимым со старой стандартной шиной в которую можно втыкать переферию...
И память большую...
И 120 МГц Z-80...
И видеоконтроллер... подключающийся к стандартному VGA-SVGA...
И встроенный Немовский IDE....
И встроенный контроллер дисководов 3,5....
И встроенный интерфейсы клавиатуры-мыши PS/2...
А в переспективе может и USB...
В общем дайош Супер-ZX!
Глядиш ещё и погуляем по Интернету на ZX-Spectrum. Ради такого я и 200-300 "енотов" не пожалею... :)
Народ думаю тоже, если машина будет "реальной"...

Lethargeek
16.12.2006, 17:56
Не должно! Ведь на теже грабли наступаем тов-щи! =) Надо уходить от директ-ковыряния в железе.
"На те же грабли" - это объявление "новым Спеком" очередного "неспектрумовского" расширения. Уходить-то от "ковыряния" конечно надо, вот только не в приказном порядке, все старые возможности и приемы должны оставаться и быть легко доступны (я не имею в виду не просто сохранение 100% старого экрана без изменений, а вообще сложившуюся практику видеокодинга на Спеке).


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

MegaMyth
16.12.2006, 22:39
Смотрю efind.ru, там сама EP1K30 - 900р. Или не туда смотрю?


зайди на терраэлектроника она там стоит 500-600 ру... я ещё её не купил...

QUOTE=Valen]Оцени приблизительно полностью готовую (рабочую)плату.
(при розничных ценах на комплект.)[/QUOTE]

О цене речь пока не идет... Когда будет всё сделано, вот тогда и поговорим... ну не думаю что будет более 100 енотов... а может и будет... платы нынче дорогие :-)

MegaMyth
17.12.2006, 02:16
Только что закончил написание синхрогенератора для будущего спека. Реализовано всё что касалось временных показателей сигналов синхронизации. Плис занята на 10%.
Приступаю к описанию видеорежимов.

З.Ы. Скорее бы плату сделать, а нет - ждать до понедельника... симуляция в максе 2 кадров виртуальной картинки занимает примерно 15 минут :-) вот такие вот пирожки с котятами :-)

ZEK
17.12.2006, 02:36
ActiveHDL юзать надо для быстрой симуляции

acidrain
17.12.2006, 11:28
"На те же грабли" - это объявление "новым Спеком" очередного "неспектрумовского" расширения. Уходить-то от "ковыряния" конечно надо, вот только не в приказном порядке, все старые возможности и приемы должны оставаться и быть легко доступны (я не имею в виду не просто сохранение 100% старого экрана без изменений, а вообще сложившуюся практику видеокодинга на Спеке).
Давай так: кому надо будут покупать/юзать такой новый спек, а ты не будешь, ок? =)
На самом деле ситуация конечно несколькими людьми наколяется до нельзя Но вот экскурс в параллельный мир ретро-компов. На амиге тоже произошел раздел. Но там более серьезная ситуация, новые клоны эмулят токо проц и ось, а самое основное (чипсет) не мулируется. Так вот такой подход - это бред, а с backward-совместимостью, как предложено в этом проекте, это развитие и ничего более. И вообще философию в других ветках, ок? ;)

Valen
17.12.2006, 13:28
Давай так: кому надо будут покупать/юзать такой новый спек, а ты не будешь, ок? =)

Во-во.
Самое простое решение.


Мне, например, думается что при цене в ~100$ там должен стоять 20баксовый арм (180мипс). И программно эмулировать спек.
Делать дорогущие штучные платы, что паять туда относительно
маломощный 20Мгц z80, имхо, неэкономично.
Всё это ИМХО и может расходиться с реальностью.
В целом проект интересный.

Да, ещё мне хотелось бы массовости распространения клона.
Купить "раритет в рамке" не прикалывает.

ASDT
17.12.2006, 15:31
"Мне, например, думается что при цене в ~100$ там должен стоять 20баксовый арм (180мипс). И программно эмулировать спек."
Лучше 200 мипс, плюс USB-хост, плюс дма на все каналы ...
И параллельно смотреть фильм или гонять мп-3 ...

Да, раз название "Разработка НОВОГО клона" ...
Кто скажет - тридевятый чип совместим с msx2?

falanger
17.12.2006, 16:22
Я за ZX с которого можно будет лазить в Интернет а не только по BBSкам! :v2_yahoo:

jtn
17.12.2006, 18:25
Я за ZX с которого можно будет лазить в Интернет а не только по BBSкам!напиши софт под любой существующий ZX и будет лазить. железо не причем

falanger
17.12.2006, 20:00
напиши софт под любой существующий ZX и будет лазить. железо не причем

Типа посмешил. ;)
Ты попробуй на 6 кб экране оригинального ZX отразить хотябы 256 палитру минимальную. :v2_wink2:

jtn
17.12.2006, 20:18
Типа посмешил.
Ты попробуй на 6 кб экране оригинального ZX отразить хотябы 256 палитру минимальную.я не буду отвечать на эту реплику

Mikka_A
17.12.2006, 20:23
я не буду отвечать на эту реплику
а он прав.

как ты видишь эмуляцию простейшего 640 на 480?
не ну можно конечно,как я на даче вынужден,чтобы жпрс трафик не улетал в трубу,выключать полностью графику.
да,в таком режиме,и то,имхо,кое как,можно чтото сделать.
а так.
увы. импасибл.
почта ,и ася - вот реально возможные вещи.
а ввв....
а вот под него контроллер готовить надо.

jager
17.12.2006, 20:32
а на пц не прикалывает лазить в нет? обязятельно для этого изобретать новый спек-мутант? мне кажется, если и делать доступ к нету, то так чтобы он был доступен и в обычном спеке. иначе, как и большинство расширений, это останется просто развлекухой для разработчика и не получит распространения.
Т.е. я имею ввиду то, что как НГМД, есть возможность прикрутить его ко всем спекам, вот и пошло. И софт адаптировали уже написанный и написали новый. Так и с нетом. И софт новый напишут для сети (ftp, icq, irc и проч.) и существующий софт адаптируют (например, некоторые игрушки). А касателньно веба не вижу кайфа просмотра его на экране даже 640х480 с плохиньким цветом. Разве, что чисто для прикола показать друзьям (и для этого покупать новый спек а свою старенькую машинку на полку пылиться... хм... жалко...). Думаю правильнее чисто специализированные странички делать (типа как wap или для кпк), все равно на них никто, кроме спектрумистов, ходить не будет.

deathsoft
17.12.2006, 20:59
ActiveHDL юзать надо для быстрой симуляции
Или ModelSim от MentorGraphics

jtn
17.12.2006, 21:30
а он прав.

как ты видишь эмуляцию простейшего 640 на 480?я вижу так что для этого в 1ю очередь приспособлен пц. еще тоже самое хотел сказать по xxxx мипсовым армам под управлением эумулятора unreal

jtn
17.12.2006, 21:33
не ну можно конечно,как я на даче вынужден,чтобы жпрс трафик не улетал в трубу,выключать полностью графику.не смешно. я на адсле и с выкл. картинками

почта ,и ася - вот реально возможные вещи.а также ftp, irc, а еще есть сервис www by email

а ввв....
а вот под него контроллер готовить надо.контроллер чего??

Lethargeek
18.12.2006, 07:25
Давай так: кому надо будут покупать/юзать такой новый спек
...и действительно считать его "новым Спеком" до посинения... :D Хозяин-барин.


Так вот такой подход - это бред, а с backward-совместимостью, как предложено в этом проекте, это развитие и ничего более. И вообще философию в других ветках, ок? ;)
Осталось только понять - развитие чего? С амигой и позднейшими "амигами" как раз все понятно - развивают именно "идеологию в чистом виде" в отрыве от железа. А относительно Спека мне просто интересны побудительные мотивы людей, которые сначала возвращаются на Спек (пц надоел?), а потом под лозунгами "развития" начинают лепить из него нечто пэцэобразное (пц не надоел?!). :v2_wacko:

Lethargeek
18.12.2006, 07:33
Мне, например, думается что при цене в ~100$ там должен стоять 20баксовый арм (180мипс). И программно эмулировать спек.
Ваще-то подобный компьютер есть. Называется Acorn RiSC PC (развитие Archimedes).
Кто мешает его склонировать и развить при желании? ;)


Да, ещё мне хотелось бы массовости распространения клона.
Купить "раритет в рамке" не прикалывает.
Дык раритет и получится, особенно если новые видеорежимы будут заточены под схемотехнику конкретно данного клона. Имхо давно уже пора всякие видеорасширения "снаружи" делать.

jager
18.12.2006, 09:53
Дык раритет и получится, особенно если новые видеорежимы будут заточены под схемотехнику конкретно данного клона. Имхо давно уже пора всякие видеорасширения "снаружи" делать.
вот это точно! как база - мать чистого спека, хочешь видео режимы расширенные, подрубаешь карту видео контроллера.

MegaMyth
18.12.2006, 12:04
А относительно Спека мне просто интересны побудительные мотивы людей, которые сначала возвращаются на Спек (пц надоел?), а потом под лозунгами "развития" начинают лепить из него нечто пэцэобразное (пц не надоел?!).
ПЦ он и есть ПЦ. У него нет души, т.к. этот компьтер создается и развивается только ради денег! Я же занялся спеком отнюдь не ради того чтобы заработать! Многие люди сейчас занимаются разработкой железа, совта для него... и тоже не ради денег, а в своё удовольствие. А то что находтся много консерваторов, меня как интузиазиста огорчает, но не в той степени в которой бы хотелось первым.

Mikka_A
18.12.2006, 12:04
The Exploited



вот это точно! как база - мать чистого спека, хочешь видео режимы расширенные, подрубаешь карту видео контроллера.


я про это.

Mikka_A
18.12.2006, 12:18
ПЦ он и есть ПЦ. У него нет души,

вот!
вот слова,которые должны быть основой нового проекта!!!!


а в своё удовольствие.

Именно! Именно поэтому спек и жив.

у него нет практического применения!
у него есть ДУШЕВНОЕ применение.

А идея мать+карточки - мне ,например,по душе.

Есть Оригинальный Sinclair Reaserch LTD 1982

Захотел бетадиск - чик карточку.
Захотел Женирал соунд - вот она,воткнем счас.
НО база должна оставаться та,которая была заложена господином Синклером.

Valen
18.12.2006, 13:53
Дык раритет и получится, особенно если новые видеорежимы будут заточены под схемотехнику конкретно данного клона. Имхо давно уже пора всякие видеорасширения "снаружи" делать.
Я только "за" внешней видео-карты, которая втыкается в шину.

Возможно автору не нужно пытаться самому изобрести
видео-расширения.

skyther
18.12.2006, 14:18
2 MegaMyth: не слушай пессимистов, делай как нравится! когда сделаешь всем будет интересно, даже тем кто кричал "нафиг надо" ;)

Lethargeek
18.12.2006, 14:30
ПЦ он и есть ПЦ. У него нет души, т.к. этот компьтер создается и развивается только ради денег! Я же занялся спеком отнюдь не ради того чтобы заработать! Многие люди сейчас занимаются разработкой железа, совта для него... и тоже не ради денег, а в своё удовольствие. А то что находтся много консерваторов, меня как интузиазиста огорчает, но не в той степени в которой бы хотелось первым.
Да я не про деньги... Для того чтобы "серьезно" (это конечно не значит, что "эффективно") программировать на пц, нужно регулярно читать горы макулатуры - на Спеке одной своей головы хватает. Вот что надо сберечь. Поэтому переход на новые видеорежимы итп должен быть максимально гладким и безболезненным даже для не слишком опытного кодера-любителя, не вынуждать "перестраивать мышление" каждый раз.


НО база должна оставаться та,которая была заложена господином Синклером.
Альтвассером и позднее "придумщиками-испанцами". ;)


Кто скажет - тридевятый чип совместим с msx2?
Афаик обратная совместимость не 100%, к MSX приделывался только в качестве дополнения (не замены).

jager
18.12.2006, 14:42
2 skyther:
1. причем здесь пессимизм? может быть консерватизм?
2. если следовать вашей логике, зачем тогда человеку вообще надо было бы писать про то, что он намеревается делать? ну сделал бы тихо и получал бы удовольствие.
3. из 2. следует, что человек хочет пообщаться и сделать так, чтобы не только ему одному было интересно.

2 all?:
мое ИМХО, сейчас все эти фичи реализованные на матери совершенно не нужны, раньше, во времена спека, это были попытки борьбы за рынок, сейчас... а что сейчас... выпускается на заказ только 2 (?) модельки (ATM, Pentagon 1024). Не думаю, что у них целью стоит борьба за рынок. И зачем нужны будут эти нестандартные расширения? Как я уже писал выше, те кто имеют спек, врядли будут покупать новый только из-за этих никем не поддерживаемых расширений (кто купит? коллекционер, тот кто не имет спека реального, ну и несколько исключений из предложенного правила, и все). И врядли будет писаться софт, кроме 1-2 х демок написаных, например, автором. А если расширения будут в виде доступном многим владельцам старых/новых реальных спеков, то тут уже есть о чем подумать, целевая аудитория шире.

skyther
18.12.2006, 14:48
да я просто человека поддержать хочу :)

acidrain
18.12.2006, 15:19
Кто скажет - тридевятый чип совместим с msx2?
В каком плане совместим? Ищи лучше на сайтах и форумах фанов мсх. Скорее да, чем нет ;)

Максагор
18.12.2006, 17:50
мое ИМХО, сейчас все эти фичи реализованные на матери совершенно не нужны, раньше, во времена спека, это были попытки борьбы за рынок, сейчас... а что сейчас... выпускается на заказ только 2 (?) модельки (ATM, Pentagon 1024). Не думаю, что у них целью стоит борьба за рынок. И зачем нужны будут эти нестандартные расширения? Как я уже писал выше, те кто имеют спек, врядли будут покупать новый только из-за этих никем не поддерживаемых расширений (кто купит? коллекционер, тот кто не имет спека реального, ну и несколько исключений из предложенного правила, и все). И врядли будет писаться софт, кроме 1-2 х демок написаных, например, автором. А если расширения будут в виде доступном многим владельцам старых/новых реальных спеков, то тут уже есть о чем подумать, целевая аудитория шире.

Пишу не для возобновления спора-ругани, не для доказательства "истинной спектрумовости", и не для "проталкивания" АТМ, а лишь для восстановления элементарной справедливости:

Если иметь ввиду расширения для АТМ, то они очень даэе поддержаны софтом, и очень даже продолжают поддерживаться. Так что владельцы оной железяки будут включать сии режимы не только для того, чтобы показать гостям, что "и еще такое у меня на спектруме есть".

ASDT
18.12.2006, 18:29
"А то что находтся много консерваторов, меня как интузиазиста огорчает, но не в той степени в которой бы хотелось первым."
Не боись! :) Консерватизм - средство борьбы с различными
"вредоносными новшествами" ... :)

"Кто скажет - тридевятый чип совместим с msx2? "
"Афаик обратная совместимость не 100%, к MSX приделывался только в качестве дополнения (не замены)."
Тогда это мертвяк ...

"И зачем нужны будут эти нестандартные расширения?"
Вот и я уже давно этот вопрс задаю ...
Я могу тоже всякую фигню прикручивать, но
останавливаю себя ... :)

"Если иметь ввиду расширения для АТМ, то они очень даэе поддержаны софтом, и очень даже продолжают поддерживаться."
Относительно нуля ... очень.

Orionsoft
18.12.2006, 19:01
и будет возможность BORDER убрать вообще ?!

MegaMyth
18.12.2006, 19:15
Проект который я делаю - он не коммерческий.
То что я выложил на форуме его концеп - это не потому что провожу его рекламу, а потому что хочу выяснить что нужно пользователям спесси, тем, которые возможно захотят повторить его... Всем желающим я предоставлю файлы и даже помогу сделать платы и монтаж...
Я за то, чтобы спектрум не загнивал в том состоянии в котором его представил сер синклер и каком его увидел свет... давно следовало сделать спектрум не с 1-м системным разъёмом...
Если делать спек с множеством системных разъёмов расширения - под это нужен корпус... а по скольку только корпуса АТХ в настоящее время можно купить по низким ценам, поэтому выбран этот форм фактор... можно было сделать с форм фактором допустим Sun, но его мало кто сможет найти даже б/у, не говоря о новом...
Скептики меня не пугают... а наоборот предают мне некоторую уверенность в себе. Раз мой проект возбудил в толпе такую реакцию - значит он не безразлицен... и возможно даже комуто нужен... а если он нужен хоть одному человеку - значит это нужный проект и он обязательно увидет свет...
Обращаюсь к тем, кто считает что не стоит строить спектрум по принципу ПЦ:
ПЦ - это воплощение, практически совершенной, доступной машины с архитектурой, построеной в лучших традициях построения вычислительных систем.... и те кто против этого - либо жалают чтобы спектрум продолжал умирать... либо просто завидуют тому, что они сами этого не предложили...
И еще по поводу видеоконтроллера... давайте спросим у программистов, которые куют софт и работают с графикой... проще ли им работать с линейной адресацием памяти или с адресацием по типу спектрума....
Для тех и для других я предоставляю выбор - либо то либо другое... и даже возможность использования и той и той адресации одновременно...
Хочу сказать еще одну вещь... кому этот проект не интересен - просто не читайте и не пишите в эту ветку... если кому-то что-то не нравиться - пишите мне будет интересно и я приму это к сведению...

ZEK
18.12.2006, 19:28
Хачу развертку на 60Гц с NoFlic(или че то в это духе) фильтром.
100Гц не каждый монитор умеет а 60 умеют все!

ZEK
18.12.2006, 19:32
И че именно ACEX ?? он же почти в 3 раза дороже за макроячейку по сравнею с тем же первым циклоном, а стоимость почти не отличается

ASDT
18.12.2006, 20:01
"и будет возможность BORDER убрать вообще ?!"
Вот у себя я убрал совсем ...
Думаю это надо делать.

Valen
18.12.2006, 20:01
Хачу развертку на 60Гц с NoFlic(или че то в это духе) фильтром.
100Гц не каждый монитор умеет а 60 умеют все!

Хорошо было бы сделать и 100Гц (для CRT) и 60Гц (для TFT).
При 100Гц, спековский экран показывается 2 раза подряд.
При 60Гц нужен какой-нидь фильтр, чтобы "разбросать"
спековские кадры (50Гц) на ВГА кадры (60Гц).

Если будут новые режимы, там уже нужно подумать сможет ли
видео-контроллер сгенерить
1) 640*480*256 85Гц. (для CRT-шников)
2) 640*480*256 60Гц. (для TFT-шников)

ASDT
18.12.2006, 20:10
"Хочу сказать еще одну вещь... кому этот проект не интересен - просто не читайте и не пишите в эту ветку... "
Можно подумать это уникальный проект ...
Вот давеча свой "клон" доделал ..., и
у меня есть своё мнение ...
А это похоже на очередную "химеру" :)

Lethargeek
18.12.2006, 21:08
ПЦ - это воплощение, практически совершенной, доступной машины с архитектурой, построеной в лучших традициях построения вычислительных систем...
Нет слов. Я даже глаза на всякий случай протер. :v2_blink:
Да эту "совершенную машину" только в последние годы стали вытаскивать из маразма первоначальных разрабов (причем с изрядной потерей обратной совместимости). Вот только делать "новый Спек" (да и вообще новый комп) по типу "сегодняшнего" пц у одиночек-энтузиастов кишка тонка. Снова получится подобие "вчерашнего" пц. Видно народ подзабыл, что это такое.


И еще по поводу видеоконтроллера... давайте спросим у программистов, которые куют софт и работают с графикой... проще ли им работать с линейной адресацием памяти или с адресацием по типу спектрума....
Спрашивать надо на конкретных примерах, а не абстрактных "по типу того-сего".
Любое решение по адресации должно быть не самоцелью, а средством повышения эффективности кода.


Для тех и для других я предоставляю выбор - либо то либо другое...
Я даже знаю, что они выберут. Именно реально "проголосуют софтом" - как всегда.


и даже возможность использования и той и той адресации одновременно...
Одновременно в данном конкретном случае - это как?

jager
18.12.2006, 21:22
2 MegaMyth:
Хочу сказать еще одну вещь... кому этот проект не интересен - просто не читайте и не пишите в эту ветку... если кому-то что-то не нравиться - пишите мне будет интересно и я приму это к сведению...
Что-то не понятно, сначало человек просит, чтобы ему предложения предлагали, когда народ начал предлагать, немного не то, что хочет разработчик, он всех их назвал теми "кому не интересен проект". Обидно. Если Вы уже давно все решили, зачем тогда спрашивать? Я очень заинтересован в новом спеке. И, раз уж вы называете ПЦ продвинутой архитектурой, то почему делаете заранее встроенный в систему видеоконтроллер?

2 Максагор: Я вас ужасно уважаю и не хотел вас обидеть (если это так). Прошу прощения, если вас зацепило мое мнение. Это просто мое мнение. :-)

Максагор
18.12.2006, 22:06
2 Максагор: Я вас ужасно уважаю и не хотел вас обидеть (если это так). Прошу прощения, если вас зацепило мое мнение. Это просто мое мнение. :-)

Меня ничего нисколько не зацепило. Честно. :)
Я лишь уточнил вашу вразу о поддержке софтом конкретных режимов конкретного клона. Так сказать, внес свою правку в информацию. Совсем не с целью в данном случае кого-то разоблачить, затеять спор и т.д.. Ну, типа, если один скажет - "скорость света равна 300000 км в секунду", а другой в ответ - "Хочу уточнить - 300000 км в секунду в вакууме!"

Так что усе путем! :)

cr0acker
18.12.2006, 23:37
Меня ничего нисколько не зацепило. Честно. :)
Я лишь уточнил вашу вразу о поддержке софтом конкретных режимов конкретного клона. Так сказать, внес свою правку в информацию. Совсем не с целью в данном случае кого-то разоблачить, затеять спор и т.д.. Ну, типа, если один скажет - "скорость света равна 300000 км в секунду", а другой в ответ - "Хочу уточнить - 300000 км в секунду в вакууме!"

Так что усе путем! :)
В которм находится сферический конь?

Romanich
19.12.2006, 05:46
вопрос автору темы: Как достигнется частота 100-120MHz для Z80 который номинально до 20МГц? Разгон с радиатором или речь шла о "ПЛИСовском исполнении" проца?

Romanich
19.12.2006, 05:53
DirectDraw - прокладка, на Спеке и так все "direct". :)
Так оно и должно оставаться на обозримую перспективу имхо.


Какая прокладка нахрен? Я не про мелкософтовский DD, а про хардварный толкую. Дело в том, что DirectDraw - это стандарт на 2D-движок. Определяет механизмы взаимодействия RAM<->VRAM,
VRAM<->VRAM с визуальными спец-эффектами(прозрачность/цветовой ключ/отсечение/фильтрация/скэйлинг)

Вот я думаю, может вообще свой видеочип сделать? Из рассмотренных вообще ничё не вкатило. Разработчики чипов не согласуют свои труды с игроклёпами, а это жаль!

Готов написать документацию на такой аксель. Но в таком духе, чтоб чип удовлетворял программров по 2Д-акселерации. В железе обвешивается только кодером(если на ТВ) и памятью

Romanich
19.12.2006, 05:57
Проект который я делаю - он не коммерческий.
То что я выложил на форуме его концеп...


Может выложишь схемы и/или доки по твоей машине?
Интересует в частности хардверная реализация видеопроца

Romanich
19.12.2006, 06:06
ПЦ - это воплощение, практически совершенной, доступной машины с архитектурой, построеной в лучших традициях построения вычислительных систем.... и те кто против этого - либо жалают чтобы спектрум продолжал умирать... либо просто завидуют тому, что они сами этого не предложили...


ПЦ - скопище анахронизмов i8088, 64kB ISA Video Card, опасных и замороченных VGA регистров + новых добавлений о которых никто кроме виндописателей официально не знает... Бесконечные отрывистые сведения о регистрах периферии, медленный 16-битный и никому не нужный BIOS итд итп... Любая периферия - это караловый риф, который обрастает анахронизмами, нововведениями, усовершенствованиями...

Одним словом, чтобы понять что такое ПЦ - прочтите книги: Кулаков. Программирование на аппаратном уровне. Зубков. Асм для дос/виндовс/юниксь. Плюс лекции о защищённом режиме с работающими примерами (показывающее реальное уродство регистров GDTR,LDTR,.... и много чего ищё).

И вообще IBM PC - машина, ориентированная на бизнес-приложения. Как игровая платформа без nvidia и ati не идёт...

All imho

MegaMyth
19.12.2006, 09:58
100-120MHz
100-120МГц - это теоретическая частота Z80 на которой он может работать при нынешней памяти и ПЛИС... на частоте 120МГц максимальный поток данных составляет 40 МГЦ - а это реально на этом чипе..

MegaMyth
19.12.2006, 10:02
"и будет возможность BORDER убрать вообще ?!"
Программируются абсолютно все временные характеристики...

MegaMyth
19.12.2006, 10:06
Хорошо было бы сделать и 100Гц (для CRT) и 60Гц (для TFT).
При 100Гц, спековский экран показывается 2 раза подряд.
При 60Гц нужен какой-нидь фильтр, чтобы "разбросать"
спековские кадры (50Гц) на ВГА кадры (60Гц).

Если будут новые режимы, там уже нужно подумать сможет ли
видео-контроллер сгенерить
1) 640*480*256 85Гц. (для CRT-шников)
2) 640*480*256 60Гц. (для TFT-шников)

Ну, по расчетам на бумаге... 100Гц - реальность... как будет на практике покажет время...

MegaMyth
19.12.2006, 10:12
Да эту "совершенную машину" только в последние годы стали вытаскивать из маразма первоначальных разрабов (причем с изрядной потерей обратной совместимости).

Очень точно зпмечено, что в последнее время и стали витаскивать... тоже и со спеком... тот кто ничего не делает никогда не ошибается.

MegaMyth
19.12.2006, 10:13
Цитата:
Сообщение от MegaMyth
и даже возможность использования и той и той адресации одновременно...


Одновременно в данном конкретном случае - это как?

простой аут в порт сменит режим адресации....

MegaMyth
19.12.2006, 10:17
И, раз уж вы называете ПЦ продвинутой архитектурой, то почему делаете заранее встроенный в систему видеоконтроллер?
Сейчас действительно ВК стоит на одной борде с ЦПУ, т.к. плата макетная... в конечном варианте - это будет отдельная плата со своей памятью..

MegaMyth
19.12.2006, 10:35
2 MegaMyth:
Цитата:
Хочу сказать еще одну вещь... кому этот проект не интересен - просто не читайте и не пишите в эту ветку... если кому-то что-то не нравиться - пишите мне будет интересно и я приму это к сведению...


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

О предложениях... их как раз нет! единственное что было - это режимы VGA... а вопросов было задано много... и про адресацию страниц памяти... и про расширение ЦПУ... и про видео режимы... но почемуто по первым двум вопросам никто ничего не писал либо писалось но оч. мало... все сосредоточились на видео! Видимо это действительно больной вопрос. и нужно его решать, но в тоже время непонятно, почему столько противников...
Давайте тогда пойдем по другому пути... давайте выносить отдельный вопрос на обсуждение... и высказываться только по одному конкретному вопросу. как только будет достигнута золотая середина, сразу переходим к следующему вопросу...

MegaMyth
19.12.2006, 10:38
Может выложишь схемы и/или доки по твоей машине?
Интересует в частности хардверная реализация видеопроца
Выкладывать пока нечего... есть только макетная плата на которой стоит проц ром память (2*512кб срам) и алтера.

jager
19.12.2006, 10:47
2 MegaMyth:
и на этой карте будут реализованы и стандартный спектрумовский экран и расширенные режимы?

а возможность прикручивания к другим моделям спека этой карты наверное не реально реализовать без перепахивания этого спека (если вообще реально будет)? кстати, не решили какая шина расширения у вас будет? будет ли совместимость с ZX-BUS? что еще предполагаете разместить на материнке (звук/fdd/hdd/контроллер мышки/клавиатуры от ПЦ)?

jager
19.12.2006, 10:50
2 MegaMyth:
а память я так понимаю не ввиде модулей планируется или это временно? если модули, то какую использовать планируете? желательно, что-то доступное. я тут у себя в городе искал simm от 1Мб 30 пин для Pentagon 1024SL, кое как нашел.

ZEK
19.12.2006, 11:19
возможность прикручивания к другим моделям спека этой карты наверное не реально реализовать без перепахивания этого спека (если вообще реально будет)? кстати, не решили какая шина расширения у вас будет? будет ли совместимость с ZX-BUS?
Делать внешную карточку ничего не мешает единственная проблема - это отсуствие внешнего разьема расширения, можно сделать внешний девайс для которого резать ваще ничего не надо, хотя гораздо проще было бы сделать девай с 1 надрезом (INT снануржи на проц заводить)

icebear
19.12.2006, 11:42
100-120МГц - это теоретическая частота Z80 на которой он может работать при нынешней памяти и ПЛИС...

Так проц в корке или всё-таки реальный?

andrews
19.12.2006, 11:45
Видео 320x240 при 32000 цветах замечательно смотрится, так что если экран сможет поддержать mpeg-4(3gp), то большего и не нужно. А смена столов, а еще лучше поворот поверхности сферы обеспечит размещение множества экранных объектов ассоциированных с приложениями. Ориентируйтесь больше при разработке на современные мобильные решения- это значительно проще и интересней, чем desktop-ы и ноутбуки. Да и рынок посвободней. К тому же дешевле в плане портативных ЖКИ (OLED) дисплеев...на CRT-телевизоры давно пора забивать!

jager
19.12.2006, 12:14
2 heroy:
Ну тогда это очень замечательно, в новом клоне не только ввести новые стандарты видео, :-) но и реализовать возможность расширения совместимого с этими стандартами видео для других клонов.

ZEK
19.12.2006, 12:45
А какой язык юзается для описания девайса???

MegaMyth
19.12.2006, 13:45
А какой язык юзается для описания девайса???
AHDL

MegaMyth
19.12.2006, 13:53
и на этой карте будут реализованы и стандартный спектрумовский экран и расширенные режимы?

а возможность прикручивания к другим моделям спека этой карты наверное не реально реализовать без перепахивания этого спека (если вообще реально будет)? кстати, не решили какая шина расширения у вас будет? будет ли совместимость с ZX-BUS? что еще предполагаете разместить на материнке (звук/fdd/hdd/контроллер мышки/клавиатуры от ПЦ)?

И стандратный и расширенные всё на одной плате...
Шина ZX_Bus... при условии что на ней есть сигнал отключения памяти... (еще не изучал, т.к. пока не было необходимости)
FDD турбинированый, HDD, 2 порта PS/2 + RS232 (но это еще не согласовано с создалем схемы на ATMEGA8515)...
Звук - исклютельно отдельной картой... в принципе можно вынести еще и FDD HDD на отдельную плату, но я не думаю что в этих схемах будут существенные изменения

MegaMyth
19.12.2006, 13:59
Так проц в корке или всё-таки реальный?
изначально будет 1 процессор на 20Мгц... но как говорят знающие люди - он должен разогнаться до 28-30 МГц...
Не исключаю возможность, что будет создан Z80 "в корке"... если потребуется...

MegaMyth
19.12.2006, 14:03
Ориентируйтесь больше при разработке на современные мобильные решения- это значительно проще и интересней, чем desktop-ы и ноутбуки. Да и рынок посвободней. К тому же дешевле в плане портативных ЖКИ (OLED) дисплеев...на CRT-телевизоры давно пора забивать!
VGA есть практически у каждого... на VGA можно менять разрешение экрана как угодно, а вот если ставить отдельный ЖКИ с разрешением 640*480 - сколько это будет стоить? не дешевле ли взять бу ЛЦД 15"? который еще и 1024 потянет?

MegaMyth
19.12.2006, 14:08
а память я так понимаю не ввиде модулей планируется или это временно? если модули, то какую использовать планируете? желательно, что-то доступное. я тут у себя в городе искал simm от 1Мб 30 пин для Pentagon 1024SL, кое как нашел.
НА видео карте память будет SRAM. микросхемы в корпусе SOJ36... 2 штуки по 512КБ - 15 нс... есть и быстрее... это самое простое решение на данном этапе...
Эти микросхемы я покупал у CHRV стоят 90 рублей помоему за 1 шт.

Evgeny Muchkin
19.12.2006, 14:13
Эх... слова... слова... простите меня, конечно, но я не верю в реализицию подобных вещей в железе. Т.к. на данный момент есть только 2 человека, которые что-то сделали и довели это что-то до законченной конструкции. Это Камиль Каримов и Роман Чунин. И все.

jager
19.12.2006, 14:25
2MegaMyth:
Нет, я не про видео память, а про оперативку самой машинки.

icebear
19.12.2006, 14:25
изначально будет 1 процессор на 20Мгц... но как говорят знающие люди - он должен разогнаться до 28-30 МГц...

?


Не исключаю возможность, что будет создан Z80 "в корке"... если потребуется...

Цифры 100-120 МГц к корке наверное относятся?

ZEK
19.12.2006, 14:27
Цифры 100-120 МГц к корке наверное относятся?
Да MiniRISC (обрезанный еще к тому же) на такой частоте в FPGA не работает TV80 тем более

MegaMyth
19.12.2006, 14:31
Нет, я не про видео память, а про оперативку самой машинки.
Насчет оперативки самой машины не могу сказать пока ничего определенного... пока я буду использовать видеопамять как обычную РАМ для Z80... дальше будет видно... но DIMM точно отменяются... :-)

MegaMyth
19.12.2006, 14:43
Эх... слова... слова... простите меня, конечно, но я не верю в реализицию подобных вещей в железе. Т.к. на данный момент есть только 2 человека, которые что-то сделали и довели это что-то до законченной конструкции. Это Камиль Каримов и Роман Чунин. И все.

От CHRV: Так как лично знаком c MegaMyth и считаю его вполне профессиональным железячником, то надеюсь на его проект. Поэтому если у него все пойдет удачно, то подключусь на втором этапе проектирования (т.е. после получения работоспособного прототипа). Цель сотрудничества модификация и получение функциональности обсуждаемой внутри нашей экспертной группы. Если все будет идти по плану и без сбоев, то проект будет пущен в серию.
Возможно проекты не будут обьединены, но по крайней мере необходимый обмен информацией и решениями постоянно происходят.

Valen
19.12.2006, 14:55
Сейчас действительно ВК стоит на одной борде с ЦПУ, т.к. плата макетная... в конечном варианте - это будет отдельная плата со своей памятью..
Давно пора вынести видео и звук в отдельные дэвайсы, подключаемые
к шине. И не пытаться наскоком решить все проблемы.

Насчёт памяти, имхо
- не меньше метра для z80
- не меньше 2 метров, на видео-карте

ZEK
19.12.2006, 15:10
От CHRV:
Я вот непойму что ты этим хотел добиться :) Или после цитаты Z80 на 100МГц заработает??

Кстати что входит в уже описанный сихрогенератор?? (а то если понимать буквально то он слишком много схавал для набора счетчиков)

MegaMyth
19.12.2006, 15:37
Кстати что входит в уже описанный сихрогенератор?? (а то если понимать буквально то он слишком много схавал для набора счетчиков)
синхрогенератор реализован на 2-х 12-ти разрядных счетчиках и 8-ми регистрах, в которые газружаются параметры работы остальное - мелкая логика... также стоит отдельный счетчик адреса для видеопамяти... он правда 20-ти разрядный... думаю хватит... после чего стоит мультиплексор, который переключает адресацию линейная или спектрум... поллитра (палитра) пока не организована... буду её рисовать когда соберу макетку и увижу реальную картинку на VGA а не в виде графиков в симуляторе...
на всё это занято 11 процентов чипа EP1K30QC208-3.

ZEK
19.12.2006, 15:48
Слишком прожорливо для банального синхронизатора, надо извратиться к примеру 12 бит по вертикали в счетчике не надо , далее для хранения длинны плеч синхроимпольсов и размер плеч максимум необходимо 7 бит (по горизонтали) и 4-5 бит(по вертикали), далее это глупо для памяти делать отдельный счетчик адрес надо формировать из значения счетчиков опять же ресурсов меньше схавает, а то на такой мелкий модуль убахать 200 макроячеек

Lethargeek
19.12.2006, 16:22
Вот я думаю, может вообще свой видеочип сделать? Из рассмотренных вообще ничё не вкатило. Разработчики чипов не согласуют свои труды с игроклёпами, а это жаль!
+1


Готов написать документацию на такой аксель. Но в таком духе, чтоб чип удовлетворял программров по 2Д-акселерации. В железе обвешивается только кодером(если на ТВ) и памятью
Было бы очень интересно почитать твои доки и сравнить наши проекты и их планируемые характеристики.

Lethargeek
19.12.2006, 16:23
простой аут в порт сменит режим адресации....
Ух ты, до чего же все просто оказалось, и как я сразу не догадался? :D
Дело не в адресации как таковой, а в формате хранения данных. Если он различен в старом и новом режимах ("байт на точку" vs "бит на точку"), то после смены адресации на "неродную" при любой операции чтения или записи растра процессором необходимо выполнять преобразование из линейного формата в битплановый (и обратно соотв-но), а это значит надо каждый раз нехилую кучку битов читать и раскидывать.


О предложениях... их как раз нет! единственное что было - это режимы VGA...
VGA суксь, он не для восьмибитных компов (имею в виду раскладку и программирование).


Насчет оперативки самой машины не могу сказать пока ничего определенного... пока я буду использовать видеопамять как обычную РАМ для Z80... дальше будет видно... но DIMM точно отменяются... :-)
Восьмибитную? Посчитай, сколько при этом сканирование видеопамяти в кадре сожрет на 640x480...
Про разгон зетника сразу можно забыть.

jager
19.12.2006, 16:34
Вот думаю FDD надо оставить на материнке, так как тут точно врядли, что меняться когда будет, а вот HDD думаю лучше сделать как отдельную карту. Так как тогда остается выбор, что использовать в качестве накопителя HDD/CF/SD. Конечно можно воткнуть вместо винта преобразователь ATA-CF... Не знаю, в общем мысли такие, может я заблуждаюсь... :-)

oistalker
19.12.2006, 21:12
Планируется ли MMU? Не плохо бы было запустить на такой перспективной машине, самую передовую ось (я про Linux). Какой-нибудь, пусть плохонький, арифметический сопроцессор тоже не помешал бы для вычислений с плавающей точкой.

falanger
19.12.2006, 22:16
ИХМО HDD по схеме например NEMO надо на плату как и FDD.
А остальное в слоты пихать... Потому что без жёсткого или CFки через переходник кисло сейчас, если конечно пользователь не мазохист.
PS/2, RS-232, ZX LPRINT 3 должны инди также на плате. Потому что это минимально необходимая для нормального пользования переферия наряду с накопителями. Если конечно Спектрум не замена дендяшке...

MegaMyth
19.12.2006, 22:36
Слишком прожорливо для банального синхронизатора, надо извратиться к примеру 12 бит по вертикали в счетчике не надо , далее для хранения длинны плеч синхроимпольсов и размер плеч максимум необходимо 7 бит (по горизонтали) и 4-5 бит(по вертикали), далее это глупо для памяти делать отдельный счетчик адрес надо формировать из значения счетчиков опять же ресурсов меньше схавает, а то на такой мелкий модуль убахать 200 макроячеек
Изначально счетчики были меньшего размера, но были увеличены дабы была возможность вывода картинки вплоть до 1024*768. Также следует не забывать, что в плис организовано 8регистров по 8 байт для задания параметров синхронизатора (по 4-ре на каждую ось), а это уже 64 МЯ. В процессе эксплуатации девайса и отладки не нужные биты будут высвобождены...всё на стадии разработки... завтра утром получу 2 макетные платы... в четверг/пятницу приобрету EP1K50QC208-3 (она на 150 ру дороже но на 66% больше вентелей) появились некоторые задумки, о которых позже...

ilyaspb
19.12.2006, 23:03
FDD лутше на отдельной плате в слот т.к.это становится все менее надежным носителем информации,да и объем носителя моловат будет ,а на замену им использовать CF
на форуме,если поискать,есть примеры успешного их подключения

и еще вопрос к MegaMyth:1 каких примерно габаритов планируется новая плата
(16x16 cm можно уложиться?)
2 Будут ли на новой плате установлены всякие PAL и
прочие кодеры

SfS
20.12.2006, 07:24
Планируется ли MMU? Не плохо бы было запустить на такой перспективной машине, самую передовую ось (я про Linux). Какой-нибудь, пусть плохонький, арифметический сопроцессор тоже не помешал бы для вычислений с плавающей точкой.

Linux и без MMU прекрасно обходится. Только вот он под 32 бита заточен...

Romanich
20.12.2006, 08:04
+1


Было бы очень интересно почитать твои доки и сравнить наши проекты и их планируемые характеристики.

Вот только говорить так не надо... Твои, наши.... Кто мешает объединиться? ;)

Lethargeek
20.12.2006, 08:20
Вот только говорить так не надо... Твои, наши.... Кто мешает объединиться?
Термины условные, можно в кавычки взять. :)
Имею в виду, что я отталкивался именно от Спека, а ты плотно писишными акселями занимался, кому-то игровые приставки ближе...

jager
20.12.2006, 10:36
ИХМО HDD по схеме например NEMO надо на плату как и FDD.
я просто хотел сказать, что может быть на смену NEMO-HDD появится (не в качестве переходника HDD-CF) NEMO-CF/SD. NEMO-HDD вытащил из слота, воткнул NEMO-CF/SD. Либо на матери предусмотреть возможность отклбючения его, если он встроенный. А FDD сделать встроенным, так, на всякий случай чтобы был. :-)

acidrain
20.12.2006, 11:49
Т.к. на данный момент есть только 2 человека, которые что-то сделали и довели это что-то до законченной конструкции. Это Камиль Каримов и Роман Чунин. И все.
Ну не все, а как же KOE и пентагон1024?!

andrews
20.12.2006, 12:19
а вот если ставить отдельный ЖКИ с разрешением 640*480
в том числе и поэтому такое разрешение явно избыточно...солидарен с теми, кто за компактные (по пикселям) экраны в новых клонах, если это удешевляет железку.
Из какой функциональности Спектрума вы исходите при проектировании? Без ответа на этот вопрос бессмысленно проектировать. Если хотите, давайте устроим здесь опрос...только в разных вариантах обязательно должна присутствовать ожидаемая отпускная цена.

acidrain
20.12.2006, 12:37
в том числе и поэтому такое разрешение явно избыточно...Да нет же, не избыточно! Сколько можно разрабатывать софт на пц из за того, что глаза не охота ломать и инфы мало на экране? Пора уже и о себе подумать, без лишних телодвижений можно будет комфортно работать на спеке. Не надо ограничивать себя, нынче времена не те! Это раньше синклер экономил на всем и сделал такой "цветной" экран спека, потом ведь (спек на м68к проце) он это все исправил! Думайте господа, прежде чем концепции строить.
И не надо тут этих тем! Предложений кроме как "давайте поговорим еще с пару недель, опрос устроим, который не даст результатов (т.к. опросы составляются крайне не корректно)и забьем на эту тему, как только появится другая" не последует?
ММУ уже предложили. Менеджер прерываний? Ограничение по памяти (1-4ГБ). Новый Видео Контроллер, максимум всего внешнего (платы расширения)...

andrews
20.12.2006, 13:16
Не будут поддержаны ваши 640x480 инструментальными средствами разработки. Если бы набор инструментов, требующих подобного разрешения существовал, я бы не усомнился в правильности вашей концепции "больших экранов". Реальность же такова ( при отсутствии мощных производителей железа):
вы мне даете набор для сборки при минимуме чипов-я их изготавливаю плату на кухне на коленке.
320x240 экраны широко поддерживаются мобильными приложениями - их выпущены десятки и сотни миллионов штук во всем мире. Достаточно портировать Javу и спектрумистам становится доступной бездна готового софта. Что дадут эти 640x480 кроме удорожания железки ума не приложу.

andrews
20.12.2006, 13:35
Что же касается производительности процессора z80 и системы в целом, то никакие 120 МГц тут не помогут превзойти даже Pentium90! Чтобы смотреть видео 320x240 придется ставить DSP или готовый аппаратный mpeg4 декодер на программируемой логике...а чтобы поставить интерпретатор Java придется ставить ARM7. Так что такой мощный разгон совершенно очевидно бессмысленен без учета того, как будут устроены "расширители", на какой шине они будут работать.

Error404
20.12.2006, 14:20
Не будут поддержаны ваши 640x480 инструментальными средствами разработки. Если бы набор инструментов, требующих подобного разрешения существовал, я бы не усомнился в правильности вашей концепции "больших экранов".


А какая связь между ПО и разрешением экрана? ПО должно работать через драйвер, т.е. написать нужно одно единственное инструментальное средство - драйвер. Экран, не позволяющий 80х25 символов в нормальном (т.е. читаемом, а не в подслеповатом 3х8 или 4х8) знакоместе никому нафиг не нужен. На таком экране только в игрушки играться (что и было испокон на ZX).



320x240 экраны широко поддерживаются мобильными приложениями - их выпущены десятки и сотни миллионов штук во всем мире. Достаточно портировать Javу и спектрумистам становится доступной бездна готового софта. Что дадут эти 640x480 кроме удорожания железки ума не приложу.

Бездна игрушек (тормозных потому что Ява)? Мне и в существующие то не играется... Да и не портирует никто Яву - с сегодняшними темпами любительской разработки (один вечер раз в неделю) это будет грандиозный долгострой, который закончится ничем.

Нужно делать нормальный 80х25 текстовый (пусть и в графике) экран и драйвер стандартного терминала (к примеру VT52 и VT100) для него (что существенно проще чем Java), нужно делать режим выключения ПЗУ из адресного пространства (все 64к - ОЗУ) и с минимумом усилий поимеете СР/М, что уже немало (тысячи профессионально написанных программ). 8-битка на Z80 и без CP/M - нонсенс.
А Java... Уже потом можно попробовать, если не получится или получится неудовлетворительно по быстродействию (наверняка) - ну чтож, "ну нешмогла". :)

andrews
20.12.2006, 14:40
А какая связь между ПО и разрешением экрана?самая что ни на есть непосредственная :)...иначе бы зачем быть всяким там Windows Mobile...библиотеки все нужно менять...Laser Basic и другие не умеют работать с таким графическим экраном...
Конечно выскажу крамольную вещь, но CP/M сегодня не актуальна.
Новый Спектрум максимум чем может быть это недорогим мультимедийным и игровым компьютером, приближаясь к относительно современным(-1 поколения) приставкам в настольном, а при включении ЖКИ(OLED) экранов и портативным, отличаясь от (некоторых из них) в лучшую сторону возможностью базы данных для хранения игрового и мультимедийного контента. Для творчества это как раз то что надо. Попытка сделать из него компьютер для закрытых корпоративных сетей также может быть плодотворной. А для чего сегодня можно использовать CP/M? Только текстовый экран нужен разве что журналистам ( читать книги,журналы и газеты без графики тоже не интересно). Можно его конечно использовать как терминал, но многие ли его так используют. А строка в 40 символов не настолько уж и большое ограничение, если речь идет о названиях композиций, наименований книг и т.д.

andrews
20.12.2006, 14:45
Java на z80 я не предлагаю портировать, просто взять готовый порт под ARM7, его же ставить на отдельную плату в качестве "Java расширителя" со своей локальной памятью и возможностью ее загрузки с общих внешних носителей по шине z80. Получится как в GBA, только там arm7+ недоZ80, а здесь z80+arm7.

ASDT
20.12.2006, 16:24
Опять лепилы недо-РС ...
Дайте хоть 1 обоснование почему нужны
такие-то режимы и частоты.
А не на основании хотелки ...

И если есть объёктивная перспектива перехода
на современные жк мониторы, то почему это
означает необходимость "нового экрана" на спеке?

Разрешение 320х240 ... Себе приделал.
Почему? Первое - никто не выступил в защиту
старого бордюра, т.е. сейчас он не может быть
оправдан. Второе - при расширении памяти до 256к
дополнительная аппаратная стоимость расширения
экрана - одна-две микросхемки.

andrews
20.12.2006, 16:31
Разрешение 320х240 ... Себе приделал.
сорри за дурацкий вопрос...отстал от жизни...где об этом почитать? Сколько цветов, палитр, где в памяти и т.д. Еще желательно, если возможно схема, какой софт поддерживает.

ASDT
20.12.2006, 17:32
"где об этом почитать?"
А что читать? Там где был бордюр переключаю на
страницы за 128к ...
Итого 6 страниц: только верх-низ, только слева-справа,
и вместе ... плюс альтернативные.
Для программирования - фигово :)
Но это лучше, чем динамически рисовать на бордюре.

"Сколько цветов, палитр, где в памяти и т.д."
Расширение цветов отдельно. Тоже простецкие и доступные.
Атрибут на байт, 2 цвета на байт (при черном фоне).
Делается тоже на паре микрух...

"Еще желательно, если возможно схема,"
А надо? Главное логика работы. Но доступна для
большинства клонов и минимальная стоимость переделки.

" какой софт поддерживает."
Да никакой наверно...
Делал для своих и эксперементальных нужд.

Весь процесс переделки ленинграда-1 и итог -
в "некоторые результаты" есть.
И процесс раздумий ... :)

icebear
20.12.2006, 17:33
Разрешение 320х240 ... Себе приделал.
Почему? Первое - никто не выступил в защиту
старого бордюра, т.е. сейчас он не может быть
оправдан. Второе - при расширении памяти до 256к
дополнительная аппаратная стоимость расширения
экрана - одна-две микросхемки.

Где куски бордюра в памяти лежат? Я так понимаю ни о какой последовательности этих кусков речи не идёт, т.е. участок нулевой строки с 0 по 31 не лежит сразу перед участоком от 32 до 287 (старые 0 - 255) той же строки?

ASDT
20.12.2006, 18:07
"Я так понимаю ни о какой последовательности этих кусков речи не идёт, т.е. участок "
Как счетчик считает ... На какой участок
строчный/кадровый импульс выпадет, так и будет ...
Главное было - минимум работы.

icebear
20.12.2006, 18:13
"Я так понимаю ни о какой последовательности этих кусков речи не идёт, т.е. участок "
Как счетчик считает ... На какой участок
строчный/кадровый импульс выпадет, так и будет ...
Главное было - минимум работы.

Нифиганепонял. Давай по-русски. Судя по всему, у тебя четыре "новых" участка экрана. По каким адресам располагается каждый из них?

ASDT
20.12.2006, 18:28
"Давай по-русски. Судя по всему, у тебя четыре "новых" участка экрана."
Всего 4, новых 3.
Основной(стандартный) - без изменений.
+1 страница - слева-справа по высоте стандартного экрана
+1 страница - верх-низ аналогично
+1 страница - углы
Т.е. адрес формируется сигналом бордюра и его источниками
(по счетчику строк, счетчику столбцов)

MegaMyth
20.12.2006, 19:11
и еще вопрос к MegaMyth:1 каких примерно габаритов планируется новая плата
(16x16 cm можно уложиться?)
2 Будут ли на новой плате установлены всякие PAL и
прочие кодеры
16х17 можно но только с 1-м системным разъёмом... изначально либо 243х243 - это стандартный размер микро атх с 5-ю системными разъёмами... размеры менее 16х17 невозможно/неудобно закрепить в атх...
Место под пал кодер будет на видеокарте (т.к. она способна работать в дух режимах RGB/PAL и VGA, а вот собирать его или нет - это вопрос конечного пользователя. RF модулятора не будет 100%.

ZEK
20.12.2006, 19:35
Как счетчик считает ... На какой участок
строчный/кадровый импульс выпадет, так и будет ...
А ты понимаеш что счетчики у разных клонов сбрасываются и загрузаются разными константами, и что такой же режим к примеру фиг получиш на Pentagon или Kay

ASDT
20.12.2006, 21:45
"А ты понимаеш что счетчики у разных клонов сбрасываются и загрузаются разными константами"

На страницы то можно разделить ...
А это - не существенные делали. Программировать
коряво и так... ну ещё разновидности корявицы :)

ZEK
20.12.2006, 23:33
Ну подобный прикол был от AlCo звлся 384х304 он даже что то под это дело реализовал, тоже принцип сродни описаному тобой

Black_Cat
21.12.2006, 00:50
Предлагаю eдиный ZX конструктив:
http://www.zx.pk.ru/showthread.php?p=70845#post70845

Lethargeek
21.12.2006, 05:28
Разрешение 320х240 ... Себе приделал.
Почему? Первое - никто не выступил в защиту
старого бордюра, т.е. сейчас он не может быть
оправдан.
Я, я выступаю "в защиту"! :v2_conf2:
Спек без бордюра в стандартном режиме - НЕПРАВИЛЬНЫЙ Спек. ;)

Вот PAL стандарт 352x288 видимая область.
Пентагон отображает с бордюром 384x304 (ну ладно, он-то кривой).
Скорпион c бордюром 368x296 (и фирменный Спек афаик тоже).

Как вписать в стандартные VGA частоты?
Есть например стандартный режим 360x240
На CRT можно попробовать сконфигурировать ~360x288 (мож даже на 50Гц)
Вписать в "400x300" (в виде стандартного 800x600) со скандаблингом или интерлейсом (по строке-то растянуть не проблема). Заодно появится возможность режима с удвоенным разрешением только по горизонтали (для нормального текста вертикальное разрешение увеличивать не нужно).

captain cobalt
21.12.2006, 09:12
С точки зрения линейной адресации процессором z80 оптимальна высота экрана 256 пикселей. :)
При этом видеопамять представляет собой непрерывный блок с очень быстрым вычислением адресов. :)

NovaStorm
21.12.2006, 15:03
Эээ... была на VGA тн Q-Mode 256х256х256 цветов...

icebear
21.12.2006, 15:14
Эээ... была на VGA тн Q-Mode 256х256х256 цветов...

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

ASDT
21.12.2006, 18:41
"Ну подобный прикол был от AlCo звлся 384х304 "
На его основе - это да.

"Я, я выступаю "в защиту"!
Спек без бордюра в стандартном режиме - НЕПРАВИЛЬНЫЙ Спек. "
Отпиши в тему "правильный спек" ...

"Как вписать в стандартные VGA частоты?
Есть например стандартный режим 360x240"
Есть жк 320х240 ... Преобразователь в VGA
вроде не так уж сложен ...

"256х256х256 цветов..."
Вот насчет 256 цветов или выше - даже нет соображений.
Можно что-то сгородить, но ... из каких соображений?

KingOfEvil
21.12.2006, 19:24
Эх... слова... слова... простите меня, конечно, но я не верю в реализицию подобных вещей в железе. Т.к. на данный момент есть только 2 человека, которые что-то сделали и довели это что-то до законченной конструкции. Это Камиль Каримов и Роман Чунин. И все.

Здорово. А меня забыли

KingOfEvil
21.12.2006, 19:35
С интересом погляжу чего получится.
Если будет совместимость с ZX-линейкой по ПО и большая память со стандартизированной шиной например ZX-BUS или её расширенеим совместимым со старой стандартной шиной в которую можно втыкать переферию...
И память большую...
И 120 МГц Z-80...
И видеоконтроллер... подключающийся к стандартному VGA-SVGA...
И встроенный Немовский IDE....
И встроенный контроллер дисководов 3,5....
И встроенный интерфейсы клавиатуры-мыши PS/2...
А в переспективе может и USB...
В общем дайош Супер-ZX!
Глядиш ещё и погуляем по Интернету на ZX-Spectrum. Ради такого я и 200-300 "енотов" не пожалею... :)
Народ думаю тоже, если машина будет "реальной"...

Да вы, батенька, пц-шник...

NovaStorm
22.12.2006, 08:30
Кажется где-то был режим 512х192 ЧБ из двух страниц. Почему бы не сделать такой же цветной? Или же, если охота побольше, 512х256. А в пределах страницы как раз Q-Mode =)

Lethargeek
22.12.2006, 08:45
Кажется где-то был режим 512х192 ЧБ из двух страниц. Почему бы не сделать такой же цветной?
Это ж в пределах стандартного окна только. На весь экран надо 720-768x256 - в 800x600 хорошо впишется (будет только мелкий бордюр сверху/снизу и незначительный по бокам).

Размер квадратного low-res пиксела относительно размера экрана надо сохранить как на Спеке. ИМО.

captain cobalt
22.12.2006, 09:38
Это ж в пределах стандартного окна только. На весь экран надо 720-768x256 - в 800x600 хорошо впишется (будет только мелкий бордюр сверху/снизу и незначительный по бокам).

Размер квадратного low-res пиксела относительно размера экрана надо сохранить как на Спеке. ИМО. А почему бы и квадратные пиксели не поиметь помельче?

Типа 320-384x256.
Чтобы вписалось в 400x300.

ASDT
22.12.2006, 11:59
"Кажется где-то был режим 512х192 ЧБ из двух страниц."
Там получается расширение частотного диапазона
сигнала (по яркости). Т.е. тут ещё надо подумать ...

"Типа 320-384x256." Я считал, что запас 384-320=64,
не помешает (гашение например).
320х2=640 и 240х2=480
320х3=960(1024-64) и 240х3=720 (768-48)
Вроде нормально?

Lethargeek
22.12.2006, 19:57
А почему бы и квадратные пиксели не поиметь помельче?

Типа 320-384x256.
Чтобы вписалось в 400x300.
Я именно это имел в виду.
В 768x256 каждый квадратный пиксел 384x256 типа "разрезан пополам"


Я считал, что запас 384-320=64,
не помешает (гашение например).
320х2=640 и 240х2=480
320х3=960(1024-64) и 240х3=720 (768-48)
Вроде нормально?
Горизонталь 320/640/960... это писишные :v2_sick: типоразмеры, а не спековские
Режимы на 360 и 400/800 - наиболее близки к Спеку
Гашение там и так есть

ASDT
22.12.2006, 20:39
"Горизонталь 320/640/960... это писишные "
Мониторы сейчас остались тока такие ... Увы.

ASDT
22.12.2006, 22:21
Неохота старую свою темку подымать ...
Напишу тут :)
Планируемый "Сталинград-2":
2-х процессорный (пользовательский и системный)
Системный используется для дма и ускорения графики.
+Контроллер карт (позволит удвоить скорость чтения-
записи на карты)
Видео - 320х240(и стандартный) - RGB, PAL и SVGA выход.
Доп.цвета.

Error404
22.12.2006, 23:18
Планируемый "Сталинград-2":
2-х процессорный (пользовательский и системный)
Системный используется для дма и ускорения графики.
+Контроллер карт (позволит удвоить скорость чтения-
записи на карты)
Видео - 320х240(и стандартный) - RGB, PAL и SVGA выход.
Доп.цвета.

"Штурман, вы взяли карту?" (с) ;)
Какие карты планируете использовать?

ZEK
23.12.2006, 00:02
Мониторы сейчас остались тока такие ... Увы.
Мониторы не навязывают разрешение делай хоть 31х563

ASDT
23.12.2006, 10:48
Карточки ... SD, MMC, может MS
Может сперва AT45D081, как диск ...
Но это же планы на след. год :)

Error404
23.12.2006, 12:31
Карточки ... SD, MMC, может MS
Может сперва AT45D081, как диск ...
Но это же планы на след. год :)


До следующего года неделя. :)

А есть ли реальные OpenSource проекты чтения/записи SD на восьмибитках? Хотя бы RAW блоками?

MegaMyth
23.12.2006, 23:33
Карточки ... SD, MMC, может MS
Может сперва AT45D081, как диск ...
Давай сперва AT45DB081 подключай... с ней проблем не должно быть... там всё просто... а если я не ошибаюсь, то карточки тож по SPI работают (ИМХО).

Error404
23.12.2006, 23:45
Давай сперва AT45DB081 подключай... с ней проблем не должно быть... там всё просто... а если я не ошибаюсь, то карточки тож по SPI работают (ИМХО).

Диск на 1 (один) мегабайт? :v2_conf3:
кста, 400 руб. за штучку.

MegaMyth
24.12.2006, 01:28
Диск на 1 (один) мегабайт?
кста, 400 руб. за штучку.
Низнаю откуда такие цены... посмотри на http://www.terraelectronica.ru/catalog.php?ID=317&Search=1&Text=at45db&Gde=2&PageS=1
там они от 70 руб за штучку...
но не нужно такжзе забывать и о AT45DB642D которая стоит 300 ру, и имеет на борту 8 МБ...
Бесспорно стоимость Руб/МБ у них выше чем у Flash карт памяти, но также не стоит забывать и о том, что в процессе отладки устройства будет жалко спалить карточку за 600 руб, а не микросхему за 70ру.

ASDT
24.12.2006, 08:43
"Диск на 1 (один) мегабайт? "
Так для тр-дос самое оно, да и есть уже ...

Error404
24.12.2006, 09:34
Низнаю откуда такие цены... посмотри на http://www.terraelectronica.ru/catalog.php?ID=317&Search=1&Text=at45db&Gde=2&PageS=1
там они от 70 руб за штучку...
но не нужно такжзе забывать и о AT45DB642D которая стоит 300 ру, и имеет на борту 8 МБ...
Бесспорно стоимость Руб/МБ у них выше чем у Flash карт памяти, но также не стоит забывать и о том, что в процессе отладки устройства будет жалко спалить карточку за 600 руб, а не микросхему за 70ру.

Цена из ЧипаДипа. Там триста с чем-то, почти четыреста. Зато можно прийти в магазин и купить. С виртуальными магазинами у меня чего-то не ладится.

А SD меня еще и тем привлекает, что легко организуется обмен файлами с PC: всего делов - карточку переткнуть из своей восьмибитки в писюковый кардридер или наоборот. Я чаще пользуюсь эмуляторами на РС и иметь возможность удобно перекинуть данные на восьмибитку не помешает (что не так просто с микрухами)

acidrain
24.12.2006, 14:56
Режимы на 360 и 400/800 - наиболее близки к Спеку
мне не понятно - почему наиболее близки? На спеке всегда нравилось одно - что можно на след. строку перескочить простым inc h, кода на других платформах пришлось бы add пользовать. Вот и по вашему 400 - наиболее спековский размер? Не вижу логики. Ладно еще 512...

acidrain
24.12.2006, 14:58
А есть ли реальные OpenSource проекты чтения/записи SD на восьмибитках? Хотя бы RAW блоками?
Какие рав блоки? лучше аврку с spi и все! Кста авр 8 бит %) исходников полно в сети, ищите :)

Бесспорно стоимость Руб/МБ у них выше чем у Flash карт памяти, но также не стоит забывать и о том, что в процессе отладки устройства будет жалко спалить карточку за 600 руб, а не микросхему за 70ру.
Нет, ну зачем изобретать велик? почему за теже деньги (<200р) не сделать sd/mmc кардридер и просто в спек закидывать готовую инфу?
И палить карт не надо - все готовое (даже софт) в сети, взял, спаял, прошил и впред - к спеку! Карты целые, аврки тоже. Чо в зеленограде не популярны аврки?
=)

captain cobalt
24.12.2006, 15:52
На спеке всегда нравилось одно - что можно на след. строку перескочить простым inc h, кода на других платформах пришлось бы add пользовать. Вот и по вашему 400 - наиболее спековский размер? Не вижу логики. Ладно еще 512... Речь о том, чтобы высота была 256 пикс.
Последовательные байты видеопамяти соответствуют столбцу.
Тогда для перемещений вверх/вниз используется INC L / DEC L
А для перемещений вправо/влево используется INC H / DEC H
И это не в рамках знакоместной строки, а в любой точке экрана.

Вот это - самый z80 размер. ;)

ASDT
24.12.2006, 18:53
"Нет, ну зачем изобретать велик? почему за теже деньги (<200р) не сделать sd/mmc кардридер и просто в спек закидывать готовую инфу?"
Так проще начать делать "OpenTR-DOS", и просто - уже лежат :) А интерфейс одинаков ...

MegaMyth
24.12.2006, 23:06
Зато можно прийти в магазин и купить. С виртуальными магазинами у меня чего-то не ладится.

Эта фирма торгует в розницу. У неё есть свой магазин. Через интернет производится только резервирование товара. Я там купил себе альтеру. примерна на 300 ру дешевле чем в чипдип.

MegaMyth
24.12.2006, 23:09
Нет, ну зачем изобретать велик? почему за теже деньги (<200р) не сделать sd/mmc кардридер и просто в спек закидывать готовую инфу?
И палить карт не надо - все готовое (даже софт) в сети, взял, спаял, прошил и впред - к спеку! Карты целые, аврки тоже. Чо в зеленограде не популярны аврки?
=)
В зеленограде очень популярны. Я работаю на фирме, которая занимается поверхностным монтажем. Практически на каждую плату ставим аврки... я знаю что это такое :-)

Lethargeek
25.12.2006, 05:59
Вот и по вашему 400 - наиболее спековский размер? Не вижу логики. Ладно еще 512...
400x300 ближе всего по соотношению (размер пиксела)/(размер экрана). Подумай, к чему приведет 512 горизонталь. В битпланах это 64 байта, в линейном режиме "байт на точку" хоть и можно перемещаться по INC/DEC, уже нужно банки переключать (плюс проверки).


Речь о том, чтобы высота была 256 пикс.
...
Вот это - самый z80 размер. ;)
Больше того, 384x296 (352x288), из них адресуемый растр 256 строк - это максимальный близкий к 4:3 размер, при котором еще можно вписать экран в 16К страницу (по адресации). Брать больше - уже и в битпланах понадобится банкировать (что заметно снизит скорость графпроцедур). Все же low-res режим предназначен в первую очередь именно для быстрой динамической графики.

Sergey
25.12.2006, 18:19
Коль речь зашла о разработке нового ZX-клона, предлагаю реализовать следующие видеорежимы:

256x192: 0)16/64, 1)16/16, 2)16/4, 3)4/1 цветов на пиксель.
320x256: 4)16/16, 5)4/4, 6) 2/1 цветов на пиксель.

Все режимы (Screen Modes) должны иметь возможность отображаться в Телевизионном и VGA режимах как PAL (~15 kHz) и Double-PAL (~30kHz) соответственно (Screen Types).

Для режимов 0-3 должна быть возможность отображения памяти с любого адреса кратного 2кБ в любой странице памяти.

Для режимов 4-6 должна быть возможность отображения памяти с адресов #0000, #4000, #8000 и #C000 в любой странице памяти.

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

Управление экранами ZX-128 через порт #7FFD должно быть аппаратно согласовано с новыми портами.

Предлагаемая раскладка управляющих портов:
ScrModAdr port
Биты 7-3 - старшие 5-ть бит адреса экрана
Биты 2-0 - режим экрана

Для режимов 0-3 используются все 5 битов, для режимов 4-6 – только старшие 2. Можно использовать до 8 режимов. По RESET должен устанавливаться в %01000000 (#40), что означает стандартный спектрумовский экран с адреса #4000

ScrTypPage port
Бит 7 - тип экрана (PAL/DblPAL)
Биты 6-0 номер страницы

Тип экрана: 0 – PAL, 1 – DblPAL. Адресуется до 128 страниц – 2МБ ОЗУ, что более чем достаточно. Можно сократить до 64-32 страниц, высвободив дополнительно 1-2 бита на какие-либо нужды. По RESET должен быть установлен в %00000101 (#05), что соответствует 5-й странице, PAL, стандартный спектрумовский экран.
Все порты должны быть доступны и на запись, и на чтение.

Строение растра в видеорежимах, организацию палитры и спрайтов оставляю на усмотрение разработчика.
Сергей Москалёв aka Gris/RT.
22.12.2006г.

ZEK
26.12.2006, 01:34
А еще нада ввести порт который будет опциями правлять
к примеру
бит7 0=пиксельные шейдера 1.1 1=пикс. шейлера 2.0
бит6 0=прогресивная развертка 1=реверс луча монитора (для эффектов самое то) х=разворот развертки на случайный угол
бит5 0=спекавская адресация 1=карта сама по посылаемым данным определяет куда программа хотела записать (в отладочном режиме видеокарта может у пользователя спрашивать куда программа хотела вывести пиксель)
бит4 0=мпег2 декодер отключен 1=мпег2 декодер включен
бит3 0=воспроизведение видео с сидирома 1=воспроизведение с винчестера
бит2 0=подключен винт ИДЕ 1=подключен СКАЗИ винт х=автодетек
бит1 0=использовать векторный БГА шрифт 1=Использовать векторный ТруеТайп
бит0 0=совместимость с ZX 1=Совместимость с IBM х=совместимость с фирменным 48 спеком (винчестеры для видео эмулируются через магнитофон)

У кого еще конструктивные предложения по теме ;) ???

ПС. х=это бысто нада в бит записывать поочереди 0.1 и из за паразитной емкости шины данных там образуется среднеее значение плата будет этот момент отлавливать (к примеру при помощи быстродействующего ЦАП 16 бит с возможностью калибровки) состояние и реагировать нужным образом

Orionsoft
26.12.2006, 01:46
я голосую за двухпортовку в области памяти где по стандарту спековский экран- с другой стороны двухпортовки z80\z180\arm генерящий видеосигнал

Error404
26.12.2006, 12:19
А еще нада ввести порт который будет опциями правлять
к примеру
бит7 0=пиксельные шейдера 1.1 1=пикс. шейлера 2.0
бит6 0=прогресивная развертка 1=реверс луча монитора (для эффектов самое то) х=разворот развертки на случайный угол
бит5 0=спекавская адресация 1=карта сама по посылаемым данным определяет куда программа хотела записать (в отладочном режиме видеокарта может у пользователя спрашивать куда программа хотела вывести пиксель)
бит4 0=мпег2 декодер отключен 1=мпег2 декодер включен
бит3 0=воспроизведение видео с сидирома 1=воспроизведение с винчестера
бит2 0=подключен винт ИДЕ 1=подключен СКАЗИ винт х=автодетек
бит1 0=использовать векторный БГА шрифт 1=Использовать векторный ТруеТайп
бит0 0=совместимость с ZX 1=Совместимость с IBM х=совместимость с фирменным 48 спеком (винчестеры для видео эмулируются через магнитофон)

У кого еще конструктивные предложения по теме ;) ???

ПС. х=это бысто нада в бит записывать поочереди 0.1 и из за паразитной емкости шины данных там образуется среднеее значение плата будет этот момент отлавливать (к примеру при помощи быстродействующего ЦАП 16 бит с возможностью калибровки) состояние и реагировать нужным образом

:v2_thumb:
Еще нужно зарезервировать пару бит: один для связи с инопланетянами (они видят в другом спектре, чем мы, и потребуется переключение режимов) и один для включения/выключения управления подогрева видеопроцессора - грядет глобальное похолодание (из-за потепления, таяния ледников и поворота Гольфстрима) ;)
---
А если кроме шуток - из-за чего я в свое время бросил Спек практически сразу позле ознакомления, не помогли никакие игры (хотя успел спаять пару Пентагонов), так это убогий экран (только по разрешению, до цветности мне пофиг) и дурацкое ПЗУ с совершенно убогим ПО в адресном пространстве: четверть (!) ОЗУ псу под хвост. Как программисту Спек в то время мне был совершенно не интересен.

Orionsoft
26.12.2006, 14:26
дурацкое ПЗУ с совершенно убогим ПО в адресном пространстве
никогда не програмировал на basice ?

Error404
26.12.2006, 16:09
никогда не програмировал на basice ?

Программировал, в школе - на БК0010. :) Игрушки делал типа питонов и "разбей стену". Гыгы. :v2_finge:

На Спектруме не программировал на нем - пальцы сломаешь на 40 кнопках, да и команды отыскивать на клавишах тяжко. К моменту появления у меня 128-х Пентагонов (поиграл и задвинул на полку, один до сих пор вроде жив), у меня уже был Орион с CP/М и кучей нормальных бейсиков (и компиляторов и интерпретаторов, хотя и не умевших графику, что впрочем не мешало пользоваться для графики ASM из бейсиков). Даже пытался портировать PRESIDENT с ZX на CP/M - и даже частично работало, к сожалению сейчас потеряно. :frown:
Главное, что в Орионе в этом смысле не было никакого насилия над личностью - в ПЗУ (2к) только Монитор + начальный загрузчик с НГМД. Все остальное подгружай на собственное усмотрение, все 500кб памяти - твои.


А так, в-основном в то время программил на ASM и TurboPascal под CP/M (и даже есть собственный клон CP/M), немного на С там же (это что касается домашнего хобби, в институте другие задачи были - вплоть до пролога [буэээ]).

MegaMyth
27.12.2006, 16:23
глупо обсуждать назначение битов портов, пока нет самих портов (физически).

Sergey
27.12.2006, 22:23
глупо обсуждать назначение битов портов, пока нет самих портов (физически).
Чтобы получить определенный результат, нужно представить его, как-будто он уже существует. Не так-ли?
Если хочешь, это можно назвать "Техническое задание". ;-)

Sonic
28.12.2006, 09:57
Если хочешь, это можно назвать "Техническое задание"
Ты не прав. ТЗ формулируется как описание количества режимов, разрешений и глубины цвета. Это ты сделал.
Все что дальше называется "дизайн & архитектура", это уже примерно середина процесса разработки. При написании ТЗ тебя это не должно волновать никаким боком.

Sergey
28.12.2006, 16:20
...это уже примерно середина процесса разработки. При написании ТЗ тебя это не должно волновать никаким боком.
Это ТЗ на интерфейс :) - Я хочу именно так графикой управлять. Нужно же, чтобы программисту удобно было писать, а не железячнику схему разводить.

NovaStorm
28.12.2006, 16:36
Мне вот например нравится предложение captain cobalt. Очень удобно вообще, и для спрайтов, хранимых вертикально в частности. При 256 линиях и 4х3 получается горизонталь 340.

Sergey
29.12.2006, 08:37
Мне вот например нравится предложение captain cobalt. Очень удобно вообще, и для спрайтов, хранимых вертикально в частности. При 256 линиях и 4х3 получается горизонталь 340.
Это предложение мне тоже нравится, только как же 340-то?
256x256 ибо не влезает 340 в 8-мибитный регистр :) .

Lethargeek
29.12.2006, 09:02
Горизонталь 340 точек - это всего 42.5 :) байта в битплановом режиме.
384 точки - это всего 48 байт. 352 - 44 байта.

А в линейных режимах всяко придется банками щелкать (номер банка хранится отдельно).

NovaStorm
29.12.2006, 09:53
А и плевать, что 340 в байт не влезает. Оно при таком раскладе и не особо нужно. При расположении данных в памяти вертикально, получается вплоне себе линейная адресация. Причём байт из столбца может быть как на знакоместо, так и на другие величины, на 1,2,4 пиксела например. Но тут уж памяти надо много. И для переброса 340х256@256цветов экрана за прерывание потребуется навскидку мегагерц эдак 50.
Я бы не хотел работать с битпланами, но если приглядеться преимущества могут быть и тут. Например изменяющееся число этих самых планов. ТЕ хотим ЧБ - 1, 4 цвета 2 и тд вплоть до 32бит =)

Sergey
29.12.2006, 10:27
А и плевать, что 340 в байт не влезает. Оно при таком раскладе и не особо нужно.
Это я прогнал :(


И для переброса 340х256@256цветов экрана за прерывание потребуется навскидку мегагерц эдак 50.
Да работать с 85к видеоданных в 64к адресного пространства тяжеловато :)


Я бы не хотел работать с битпланами, но если приглядеться преимущества могут быть и тут. Например изменяющееся число этих самых планов. ТЕ хотим ЧБ - 1, 4 цвета 2 и тд вплоть до 32бит =)
Если битпланы экрана расположить в разных страницах, то работать с ними можно, только быстро не получится.

Я, вот, предлагал экраны наиболее близкие к стандартному, с которыми можно работать доволно быстро, и открывать почти с произвольного места. Последнее, учитывая желание иметь многозадачную ОС на спектруме, просто не заменимо. Так каждая задача может открыть свой собственный экран, а не перекидывать данные туда-обратно в #4000 или #C000.

MegaMyth
29.12.2006, 10:27
У меня появились некоторые соображения насчет видеоадаптера.
Многие говорили, что на спектруме удобнее перемещаться от строчки к строчке и от столбца к столбцу простым INC/DEC H/L. А что если в видеоадаптер ввести порты указателя начальной точки. затем подавать команды видеоадаптеру аналогичные INC/DEC H/L, данные записывать тоже аутом, при этом ВК будет знать в какую сторону ему перемещаться после записи данных. Также предлагаю ввести еще одну команду аналогичную PUSH POP для координат и регистры размера загружаемой области. Таким образом мы получаем чудовищное быстродействие... записав в ВК размер пересылаемой области и её координаты на экране (и указав номер видеоэкрана) мы делаем простой LDIR и данные прорисовываются быстро и красиво :-) также можно ввести регистр прозрачного цвета. и при копировании прозрачные точки будут игнорироваться. Еще можно прикрутить вместо LDIR более шуструю весч и пересылать данные еще быстрее...
Как будут работать PUSH POP: мы указываем начальную координату и кидаем в стек. потом занимаемся прорисовкой чего либо. достаем координаты со стека смещаем их куда нада опять кладем на стек рисуем дальше и так далее.
Также подумываю над тем, чтобы впиндюрить в ВК алгоритм прорисовки линий, многоугольников и окружностей, еще можно подумать над их заливкой.
Хотелось бы узнать Ваши предложения и пожелания.

P.S. работа над клоном и ВК идет полным ходом... макетная плата запаяна, байтбластер работает. Позавчера получил на мониторе 640*480*60Гц (другой кварц не нашел) и цветные полосочки :-) было приятно. По возможности скоро выложу фотки девайка и экрана который получил :-) Скорее всего это будет уже после НГ как отосплюсь.

NovaStorm
29.12.2006, 10:49
LD (rr),A - 7T
LD (HL),r - 7T
+INC rr - 6T
Это в сумме 13Т
OUT (C),r - 12Т + автоинкремент - разница невелика, а удобство сомнительно. По поводу "PUSH/POP" - это же DMA! По остальным соображениям получается блиттер с колоркеем. Но многим нравится делать всё в софте.

MegaMyth
29.12.2006, 10:53
По поводу "PUSH/POP" - это же DMA!
стек будет организован в самом ВК :-)

Lethargeek
30.12.2006, 07:45
Я бы не хотел работать с битпланами, но если приглядеться преимущества могут быть и тут. Например изменяющееся число этих самых планов. ТЕ хотим ЧБ - 1, 4 цвета 2 и тд вплоть до 32бит =)
Или после настройки палитры - например два слоя по 4 цвета.


Если битпланы экрана расположить в разных страницах, то работать с ними можно, только быстро не получится.
Еще как получится, лишь бы руки откуда надо росли.


У меня появились некоторые соображения насчет видеоадаптера...
Ну прям себя год назад вспомнил... :)


Многие говорили, что на спектруме удобнее перемещаться от строчки к строчке и от столбца к столбцу простым INC/DEC H/L. А что если в видеоадаптер ввести порты указателя начальной точки. затем подавать команды видеоадаптеру аналогичные INC/DEC H/L, данные записывать тоже аутом, при этом ВК будет знать в какую сторону ему перемещаться после записи данных.
OUT суксь, он регистр BC сожрет, да и делать сможет немногое. А INC/DEC тем и хороши, что в любой момент можно сменить направление, юзать любой динамически вычисляемый шаг, выборочное стирание/заливка текстурой, выборочное чтение с экрана с проверками итд - что в башку взбредет.


Также предлагаю ввести еще одну команду аналогичную PUSH POP для координат и регистры размера загружаемой области. Таким образом мы получаем чудовищное быстродействие...
Всего лишь небольшой прирост за счет оптимизации работы с регистрами (меньше сохранений/перезагрузок). Да и то еще не факт.


записав в ВК размер пересылаемой области и её координаты на экране (и указав номер видеоэкрана) мы делаем простой LDIR и данные прорисовываются быстро и красиво :-) также можно ввести регистр прозрачного цвета. и при копировании прозрачные точки будут игнорироваться.
Зачем тут ldir? Куда он писать будет половину рабочего времени?
Тогда уж давать команду ВК схавать N следующих байт с ШД (кроме циклов M1), загнать в SP указатель на блок и N/2 раз выполнить POP.


Еще можно прикрутить вместо LDIR более шуструю весч и пересылать данные еще быстрее...
DMA называется. В продвинутом варианте - правильно, блиттер.


Как будут работать PUSH POP: мы указываем начальную координату и кидаем в стек. потом занимаемся прорисовкой чего либо. достаем координаты со стека смещаем их куда нада опять кладем на стек рисуем дальше и так далее.
Зачем обратно вытаскивать-то? Хто "смещает"? При перекачке данных чисто процессором смысла не вижу. Вот для блиттера была бы полезная штука, но только там не стек нужен, а очередь (и какой-то стандартный формат блиттерных команд).


Также подумываю над тем, чтобы впиндюрить в ВК алгоритм прорисовки линий, многоугольников и окружностей, еще можно подумать над их заливкой.
Хотелось бы узнать Ваши предложения и пожелания.
Даже куча реализованных "в железе" возможностей не оправдают неудобную раскладку экрана и разрешение "от фонаря". На блочных пересылках и векторной графике свет клином не сошелся, Спек - не приставка.

Valen
30.12.2006, 14:04
Также подумываю над тем, чтобы впиндюрить в ВК алгоритм прорисовки линий, многоугольников и окружностей, еще можно подумать над их заливкой.
Хотелось бы узнать Ваши предложения и пожелания.


Попробуй начать с простого игрового режима.
Игровой режим можно особо не выдумывать, берёшь режим P1 из
даташита по v9990. Только под своё разрешение 640*480*256@60,75-85Гц.
В P1 отображается 2 тайловых слоя, +спрайты.

Потом уже можно и о примитивах (с заливкой) подумать.

Sergey
30.12.2006, 23:29
...Только под своё разрешение 640*480*256@60,75-85Гц...
Ребят,
чего-то я никак не уразумею, о чём вы здесь толкуете. Какое отношение разрешение 640x480x256 имеет к Спектруму?!

ASDT
31.12.2006, 08:29
Вот ещё новогодний вопросик ... :)
Что с Basic делать? Нужен ли он?

Lethargeek
31.12.2006, 08:48
Что с Basic делать? Нужен ли он?
Только как картридж для совместимости

MegaMyth
02.01.2007, 14:58
Вот ещё новогодний вопросик ...
Что с Basic делать? Нужен ли он?

новогодний юмор:

Изначально не задумывался басик как токовой. Должен быть тапе лоадер и всё. А потом подумали, и решили, что если у человека нет ни одной кассеты что ему делать с эти спектрумом. И придумали Басик. поскольку остались неиспользование кнопки не клавиатуре (не порядок) придумали еще команды CAT MOVE ERASE и.т. Для чего они были нужны никто еще пока не знал, но всё равно решили оставить. Прошли годы, пользователи начали задавать вопрос. а для чего все эти команды. и тогда придумали Interface 1 и TR-DOS. Снова проходят годы, прикручивают 128 КБ памяти и Басик 128 с тейп лоадером. Люди в недопонимани. Если есть уже TR-DOS и Интерфейс 1, зачем басик и Тапе лоадер?
Настали наши дни. Прикручивают уже всё что угодно к бедному спектруму... и 4 МБ Рамы и HDD и видеокарты с 512к и более... а тапе лоадер и басик остался? вопрос:
Кто еще грузит игрушки объёмом 600К с кассеты на LOW?
Может кто-то грузит CP/M с кассеты?
Или кто-то доастал 120часовую аудиокассету, записал туда Демо видео от NedoPC Group и смотрит?
Кому-то еще нужен супер медленный Басик, для написания таких же реактивных демок?

Error404
02.01.2007, 15:35
Ребят,
чего-то я никак не уразумею, о чём вы здесь толкуете. Какое отношение разрешение 640x480x256 имеет к Спектруму?!

Никакого. Так же как и Спек к чему либо кроме игр (с таким то экранчиком).

MegaMyth
02.01.2007, 21:00
НГ позади и сегодня великий день :-) на экране монитора сформирован растр 512/384. на картинках - фотки девайса и полученной "радуги" :v2_clapp:. Продолжаю рабоать... процесс пошел.

(соори за карявые фотки... больше фоткать пока нечем :v2_cry: )

Raydac
02.01.2007, 21:25
Ребят,
чего-то я никак не уразумею, о чём вы здесь толкуете. Какое отношение разрешение 640x480x256 имеет к Спектруму?!

Похоже парни заигрались, а писишка не дает им покоя (как вариант пытаются переманить оттуда когонить... ) .. если нужны навороченные видеорежимы, то круче Спринтера у них не получится.. а то что предлагают - концептуальная ошибка и к спектруму не относится.. получится скорее "мы воткнули вместо пня Z80 и тормознули..."

MegaMyth
03.01.2007, 00:52
Опытным путём на обчном CRT были получены стандартные спектрумовские видеорежимы. При этом кадрова частота была от 50 до 150 гц.
Это даёт некоторую писчу для размышлений...
Вобще должен заметить что LG StudioWorks 575N выводит любую картинку, если его кадровые и строчные частоты находятся в диапазоне допустимых значений!

завтра попробую получить на экране какуюнить картинку (отличную от полосочек и квадратов...

To be continued!

P.S. 2 CHRV память пришлось подключать к 3.3В, на 5В сильно грееца!

Sergey
03.01.2007, 09:26
Также и Error404.

Похоже парни заигрались, а писишка не дает им покоя (как вариант пытаются переманить оттуда когонить... ) .. если нужны навороченные видеорежимы, то круче Спринтера у них не получится.. а то что предлагают - концептуальная ошибка и к спектруму не относится.. получится скорее "мы воткнули вместо пня Z80 и тормознули..."
Согласен на 150%, точнее и не скажешь. Я-то по простоте душевной думал, что, наконец-то, хорошую шуструю и удобную машинку склепают.
А тут... 300кБ видеоданных гонять на Z80 с 64кБ адресного пространства?! Похоже ребята живут где-то за пятым кольцом Сатурна, если не дальше. Я разочарован :v2_cry:
Ну ничего, у меня тут знакомый схемотехник скоро освободится от диссертации, - будем своё с нуля делать.

Error404
03.01.2007, 11:50
Также и Error404.

Согласен на 150%, точнее и не скажешь. Я-то по простоте душевной думал, что, наконец-то, хорошую шуструю и удобную машинку склепают.
А тут... 300кБ видеоданных гонять на Z80 с 64кБ адресного пространства?! Похоже ребята живут где-то за пятым кольцом Сатурна, если не дальше. Я разочарован :v2_cry:
Ну ничего, у меня тут знакомый схемотехник скоро освободится от диссертации, - будем своё с нуля делать.

Интересно, а что Вы планируете делать на 256х192? Опять играться? Зачем тогда городить огороды - берите Ленинград1 и играйтесь. А экран, кстати, не обязательно должен быть ТОЛЬКО многоплоскостным и, соответственно, требовать перекачивания больших объемов графики. Можно сделать и режим с атрибутами - область цвета единожды покрасить (и изредка подкрашивать при открывании окошек), а в области графики (к примеру, 512х384=16к) организовать нормальный текстовый экран, а не спектрумовский недоделанный.

oistalker
03.01.2007, 12:42
Также и Error404.

Согласен на 150%, точнее и не скажешь. Я-то по простоте душевной думал, что, наконец-то, хорошую шуструю и удобную машинку склепают.


Эээ... вам нужен стандартный Spec только ускоренный на 500%? Берем PC + EMuzWin, делаем ускорение 500% и вуаля получаем, что хотели.

P.S.
Вообще хотелось бы машинку не хуже, чем Sinclair QL, а может и лучше, иначе варить всю эту кашу нет никакого смысла.

http://www.q40.de/q40.dedownload.html

http://q40.de/download/Q60.jpg

MegaMyth
03.01.2007, 13:59
А тут... 300кБ видеоданных гонять на Z80 с 64кБ адресного пространства?! Похоже ребята живут где-то за пятым кольцом Сатурна, если не дальше. Я разочарован

Ребяты!!! 640 на 480 - это макс. Если вы считаете что ваше приложение будет на нем работать без тормозов - используйте, если нет - тогда уменьшайте.
Посмотрите на многие аркадные игрушки: Экран статический, подвижной графики менее 20% экрана. В графическом редакторе работать тоже можно. Если это разрешение вы считаете не нужным - не используйте, вот и всё.
Что вы привязались к 640 на 480. Есть и другие режимы забавные. например: 320х240, 320х200, 256х192 как 1,2,4,8 бит на пиксель, с палитрой/без, с атрибутами и без них... я делаю гибкую систему. Можно задавать свои видеорежимы например 64х64 пиксела :-) с бордюром по 288 208 по горизонтали и вертикали соответсвенно. Как фантазии хватит и как позволит ваше логическое мышление. Теоретически (еще не проверял) можно получить видеоразрешение (максимально возможное) 1024х1024х8Бит но это жесть :-)

Raydac
03.01.2007, 16:22
Интересно, а что Вы планируете делать на 256х192? Опять играться? Зачем тогда городить огороды - берите Ленинград1 и играйтесь.

Конечно 256 на 192 это слабый режим, но не стоит забывать что и расчитывался он на ТВ :) а я, достаточно плотно сталкиваясь с интерактивными ТВ приставками и разрешениями до HDTV и разработкой под них, :) нахожу что это разрешение было вполне неплохим выбором.. Что же касается идей витающих здесь, то я нахожу их жизнеспособными, но.. некрасивыми... специальный видеоконтроллер это некрасиво имхо.. списывать что сам Z80 не справится, ну значит надо сделать так что бы справился иначе теряется прозрачность платформы, разработчики завязываются как на писишке на дядю-доброго разработчика "видеокамня", да и повторяемость на "железной" логике такого решения сомнительна

MegaMyth
03.01.2007, 16:49
Конечно 256 на 192 это слабый режим, но не стоит забывать что и расчитывался он на ТВ
На ТВ например замечательно вписывается и 384х288... точто также как и на VGA монитор. У меня например нет ни телевизора, ни монитора с ТВ развёрткой. А рас уж делается клон под VGA монитор, то почему бы докучей не пульнуть туда и 640х480... мало ли пригодиться... хотябы картинки смотреть точно можно.
А вот текстовый режим реально лучше смотрица на VGA нежели на ТВ, я имею ввиду 80*25.

Valen
03.01.2007, 16:53
Ребяты!!! 640 на 480 - это макс. Если вы считаете что ваше приложение будет на нем работать без тормозов - используйте, если нет - тогда уменьшайте.

В том то и прикол, что если сделать отдельную карту (со своей быстрой памятью) то в режиме 640*480 вполне можно отображать 2 тайловых слоя, +спрайты.
Мало того, такая карта может работать паралельно со спеком.

Уменьшить можно до 512*384. И то из соображений экономии памяти.

Raydac
03.01.2007, 19:09
Я бы просто хотел объяснить свое видение такой платформы как ZX-Spectrum, что бы объяснить почему не вижу смысла в видеоконтроллерах и мегавидеорежимах которые несоменно приблизят к писишным качество графики с аппаратными ускорителями.. На данном этапе Спектрум не является общераспространенным и бытовым в "народном" смысле этого слова, это скорее компьютер любителей попрограммить на низком уровне, которых можно было бы сравнить с каякерами (это такие лодки для спуска по горным рекам) и в целом весь кайф программинга под спектрум лежит именно в том, что ты обходишь эти камни и выжимаешь из платформы не только то что она может, но и то чего она не может.. все кто любит комфорт и покой давно уже на писишке и это всех вполне устраивает, все же любители приделывать к спеку мощные процессора несовместимые с Z80 или видеопроцессора которые будут рисовать кучу линий аппаратно и делать заливку, сами того не осознавая, делают вещь которая не дает плюсов как таковая в более широком диапазоне нежели сиюминутный, тягаться в секторе бытовых компьютеров с PC нереально, а такие разработки призваны ускорить разработку именно "бытового" софта и снижение издержек на его производство, что в нашем случае бессмысленно.. так что прежде чем ставить на каяк мотор, парус и пытаться выводить его на поток без препятствий :) лучше тысячу раз подумать, так как "некоторые вещи сломаны, потому что они должны быть именно такими" :)

Lethargeek
04.01.2007, 06:40
В том то и прикол, что если сделать отдельную карту (со своей быстрой памятью) то в режиме 640*480 вполне можно отображать 2 тайловых слоя, +спрайты.
Мало того, такая карта может работать паралельно со спеком.

Уменьшить можно до 512*384. И то из соображений экономии памяти.
Щаз, два слоя 640x480 (еще и "+спрайты")!! Для независимого-то девайса многовато будет, даже с расширенной ШД и SRAM на 15ns (о чем я вам уже намекал)... "Отображать" оно конечно будет, но вот динамика - только и остается, что исключительно убогими плоскими тайлами ворочать... Вот нахрена из Спека тупую приставку делать? Если можно лучше (и проще).

А тут ваще человек планирует классический APA-mode, общую память на все (проц тоже должен когда-то работать), и есс-но ШД 8 бит, со всеми вытекающими. :sleep:

MegaMyth
04.01.2007, 06:53
Щаз, два слоя 640x480 (еще и "+спрайты")!! Для независимого-то девайса многовато будет, даже с расширенной ШД и SRAM на 15ns (о чем я вам уже намекал)... "Отображать" оно конечно будет, но вот динамика - только и остается, что исключительно убогими плоскими тайлами ворочать...
Карочи всё посчитано на калькуляторе... к карточке время доступа будет составлять примерно 30-50 нс... чего хватает для пары z80 работающих на частоте 28МГц

Lethargeek
04.01.2007, 07:18
Карочи всё посчитано на калькуляторе... к карточке время доступа будет составлять примерно 30-50 нс... чего хватает для пары z80 работающих на частоте 28МГц
Сколько байт в кадре сканер вытаскивает?

MegaMyth
04.01.2007, 17:12
Сколько байт в кадре сканер вытаскивает?
614400 (на два слоя) при 640*480 без спрайтов.
Но сканер пока ничего путного не вытаскивает, т.к. Андер канстракшен :-).

Lethargeek
04.01.2007, 17:54
614400 (на два слоя) при 640*480 без спрайтов.
:v2_scare: Дык на 28МГц в кадре всего 560000 циклов SRAM!! :v2_conf2:

MegaMyth
04.01.2007, 18:35
Дык на 28МГц в кадре всего 560000 циклов SRAM!!
Это ты сейчас что спросил???
640*480=307200 байт на 1 слой. умножаем на 2 так как 2 слоя, вот тебе и 614400.

ZEK
04.01.2007, 18:37
28MHz / 50Гц = 560000 тактов на кадр
на 60Гц еще меньше, поменяй батерейки в калькуляторе :)

MegaMyth
04.01.2007, 18:44
Ребяты... памать 16-ти битная... одновременно читаться будет 2 слоя.

ZEK
04.01.2007, 18:50
Все равно не получиться 2 Z80 на 28МГц надо что бы без останова процов 37МГц память (я имею ввиду + видео еще 60Гц хотяб).

Valen
04.01.2007, 19:39
Вот считаем, сколько сканеру нужно вычитать за кадр:
2 тайловых слоя + 1 спрайтовый
640*480*3слоя = ~922КБ

Для комфортного режим 85Гц (сканер максимально загружен)
922 * 85 = 79МБ/сек

Реально цифра чуть побольше будет на 5-7%.

Такая видео-карта с 2 - 4 метрами памяти
уделает многие игровые консоли, включая сегу.

ZEK
04.01.2007, 20:17
Главное не разрешение и магабайты а динамика.

Valen
04.01.2007, 21:04
Главное не разрешение и магабайты а динамика.
Автор хотел разшарить память между ВК и процами.
А тут сам ВК съедает 80МБ/сек.

Sergey
04.01.2007, 21:39
Что вы привязались к 640 на 480. Есть и другие режимы забавные. например: 320х240, 320х200, 256х192 как 1,2,4,8 бит на пиксель, с палитрой/без, с атрибутами и без них... я делаю гибкую систему...
Ну ладно... Только, чтобы удобно было! О.К.? :smile:
А, вообще, по-моему, не стоило бы такую кучу видеорежимов городить (в этом утонуть можно), - лучше лишние элементы ПЛИС на другие полезные вещи потратить:
полноценный контроллер прерываний, конроллер ПДП, таймеры, качественный звук и т.п.
Желаю успеха!

Vladimir Kladov
04.01.2007, 21:40
А скажите, память нынешняя, за какое время чтение делает - от подачи адреса, до получения на выходе значения? А то я что-то в сумлениях, то ли мкс, то ли нс...

Правка. Инет (гугл) нашел: 70нс для DDR200 SDRAM. Или какие мелкосхемы памяти использвать предполагается?

P.S. Я заинтересовался созданием своего проца (не клона спека, увы). И хотел бы попробовать засунуть формирователь видеосигнала внутрь самого проца, по крайней в конфигурации, когда нет возможности подцепить внешюю видеокарту. Но меня ессно заволновал режим 1024х768 с как минимум 64К цветов, 60Гц. По расчетам получается, что на 1 обращение к памяти за видеоданными проц успеет сделать еще 10 обращений для прочих своих нужд...

ZEK
05.01.2007, 10:08
Гораздо интересней всунуть в EmulZ эмуль ARM7TDMI проц по идее очень просто эмулиться (хотя есть и свои загоны как конвеер и т.д.) и скажем под это мероприятиен написать бивис с эмуляцией Z80 :) Типа получиться эмулятор эмулятора. %)

MegaMyth
05.01.2007, 12:22
полноценный контроллер прерываний, конроллер ПДП, таймеры, качественный звук и т.п.
Всё будет... но не сразу :-) Мне сейчас нужна хоть какаята плата с процом и видео... даже клавы еще нет... а вы про DMA IRQ SB и т.д.

MegaMyth
05.01.2007, 12:48
Вот считаем, сколько сканеру нужно вычитать за кадр:
2 тайловых слоя + 1 спрайтовый
640*480*3слоя = ~922КБ

Для комфортного режим 85Гц (сканер максимально загружен)
922 * 85 = 79МБ/сек

Реально цифра чуть побольше будет на 5-7%.

Такая видео-карта с 2 - 4 метрами памяти
уделает многие игровые консоли, включая сегу.

У меня есть 133МБ/Сек, думаю этого хватит :-)

Valen
05.01.2007, 15:57
У меня есть 133МБ/Сек, думаю этого хватит :-)
Так это полоса для ВК и процов
или только для ВК ?
Т.е. будет ли у ВК своя память и своя шина?

Vladimir Kladov
05.01.2007, 17:12
А еще у DDR есть такая фишка, что если подряд данные читать, с инкрементом адреса, то скорость возрастатет, ан пол-порядка. С 70нс до 10нс. Прочитал строчку в буфер и потихоньку ЦАПаешь ее в видеовыход, а проц может спокойно дальше шутрить.

ZEK
05.01.2007, 17:16
Прочитал строчку в буфер и потихоньку ЦАПаешь ее в видеовыход, а проц может спокойно дальше шутрить.
Да это не только в DDR2 есть, пакетные передачи зовутся, но все это к неграм что бы ставить DDR2 надо иметь заводик для производства плат по 5 класу точности и инженеров соответсвующей квалификации.

Vladimir Kladov
05.01.2007, 19:56
а вы что ставите? Я вообще-то считал, что dimm'ы покупаются уже готовые, впихиваются через стандартный разъем, и какая там еще точность нужна. Или как раньше озу припаивается на плату паяльником? o:

Vladimir Kladov
05.01.2007, 20:04
Кстати. Я для себе разрабатываю идею защиты памяти с точностью до 4х байт. Раз уж для Спека так сложилось, что в нем просто не может быть реальной защиты страниц одних программ от других, может, кто-то из клонирующих новые модели позаимствует идею? Памяти надо - в 2 раза больше, но ведь и так реально задействуется едва ли половина. Чуть больше тактов на обращения к теневой памяти с декскриторами, но современные скорости чипов и памяти без проблем это устраняют. Зато появляется реальная возможность иметь многозадачность и одновременно - полную безопасность и изоляцию одних программ от других.

ZEK
05.01.2007, 20:13
а вы что ставите? Я вообще-то считал, что dimm'ы покупаются уже готовые
Да плата куда эти димы вставляются должна быть тоже достаточно непростой и эта технология не для маленьких

ZEK
05.01.2007, 20:15
Кстати. Я для себе разрабатываю идею защиты памяти с точностью до 4х байт
IMHO если думать в контексте спека до достаточно модуль страничной трансляции адреса со страницами в 16К И скажем для тех же 4Мб достаточно будет 256х16 мелкосхемы

Raydac
06.01.2007, 22:25
Немного поизголялся над платформой в эти праздники, то с чем меня в свое врмя послали Зонов ("спектрум уже умер!"), Петерс ("у нас своя разработка!"), Немо ("да как вы можете, это же не спектрум!"), одна американская контора ("мы профессионалы и спектрумами не занимаемся").. так не став миллионером пришлось податься в управдомы
http://zx.pk.ru/showpost.php?p=73131&postcount=94

Lethargeek
07.01.2007, 07:52
Ребяты... памать 16-ти битная... одновременно читаться будет 2 слоя.
Я че-то не въехал в монструкцию: у ВК ШД 16 бит, а два проца сидят на одной 8-бит? Там даже на 37МГц для одного-то максимум 21МГц выходит (и то с 50Гц кадровой), куда уж там два на 28МГц... Или каждый на своей отдельной 8-битной половинке (взаимодействие?) - то есть сможет рисовать только в своем слое?? :D А ведь еще типа спрайты планируются...

P.S. Откуда цифра 133Мб/сек?

MegaMyth
07.01.2007, 13:07
Процессор Z80 выполняет команды не за 1 такт. минимальный цикл цтения из памяти составляет 3 такта (чтение дополнительных байт команды) Отсюда следует, что максимальный поток составляет 21 Мгц/3=7Мб/сек.

Разделения доступа процов:
1. У каждого проца свои порты адресации памяти.
2. На процессоры подаётся тактовая частота со смещением фазы.
3. Коммутация адресных шин и шин данных процов производится внежней логикой, которая управляется ПЛИС.
4. Шины управления процов идут на плис напрямую.
5. Плис сама разбирается, сколько процов, кто мастер, на какой проц послать прерывание, какой перевести в режим ожидания (если более 1 проца обращаются к шине).

на P.S. 133 МБ/сек - это пиковая. Реальная будет отличаться. время доступа к памяти 15 нс. Это 66 Мгц или 66МБ/Сек @ 8бит. следовательно при 16 бит в 2 раза больше, а это и есть 133 МБ/сек.

Lethargeek
08.01.2007, 07:08
3. Коммутация адресных шин и шин данных процов производится внежней логикой, которая управляется ПЛИС.
4. Шины управления процов идут на плис напрямую.
5. Плис сама разбирается, сколько процов, кто мастер, на какой проц послать прерывание, какой перевести в режим ожидания (если более 1 проца обращаются к шине).

Я так понял, все обращения к памяти и портам идут через ПЛИС. Это сколько же ног понадобится на два-то процессора + сама 16-битная память?! :v2_scare: И/или "внешняя логика" в виде нехилой кучки вентилей, которые афаик для таких частот недоставаемы... :v2_conf3:


время доступа к памяти 15 нс. Это 66 Мгц или 66МБ/Сек @ 8бит
Помницца heroy утверждал, что уже на 37МГц будут проблемы... :v2_unsur:

MegaMyth
08.01.2007, 11:42
Помницца heroy утверждал, что уже на 37МГц будут проблемы...
Пока не замечал таких проблем... по крайней мере на 60 мгц их не было :-)

Это сколько же ног понадобится на два-то процессора + сама 16-битная память?! И/или "внешняя логика" в виде нехилой кучки вентилей, которые афаик для таких частот недоставаемы...
Ноги ПЛИС:
Процы: ША-16, ШД-8, ШУ~9*2 = 42 (для 2-х процов)
Память: ША-19, ШД-16, ШУ-4 = 39
Video: RGB-15(решил что больше не нужно) HSYNC VSYNC 17
ROM: OE, WR, ADR[6] = 8
Итого ног - 106.
Свободных вроде порядка 40 остается (которые пойдут на формирование шины NEMO
Комутация процов через шуструю логику 74AC (время порядка 5нс чтоли там). На комутацию 1 проца - 4мсх корпус SO/DIP20.
Не нужно также забывать что плата эксперементальная. В последствии будет естественно не одна ПЛИС. 1 - "Чипсет", 2 - "Видео". Либо урезаный вариант платы 1 проц и видео на 1 ПЛИС.
P.S. и еще по конструктиву:
1-й проц будет находится на мат плате. последующие (до 4-х) на отдельных платках, которые вставляются в маму. на 1 такой платке - 4 20ти ножки и 1 проц. Ориентировочная стоимость комплектухи такой платки будет менее 200ру. (и это пожалуй единственная платка, которую можно будет сделать "под утюг".

Vladimir Kladov
08.01.2007, 11:46
Ну ног-то у ПЛИСов как раз очень даже много. Не уверен, правда, что все ноги можно задействовать как попало, но что много - это точно. >100

MegaMyth
08.01.2007, 11:53
Ну ног-то у ПЛИСов как раз очень даже много. Не уверен, правда, что все ноги можно задействовать как попало, но что много - это точно. >100
Не поленился посмотрел датащит. у моей плис всего 147 юзерских ног.

Vladimir Kladov
08.01.2007, 12:28
И что, 147 не хватает для реализации независимой работы 2х процов Z80? У нее всего-то 40 было вроде?

MegaMyth
08.01.2007, 14:41
И что, 147 не хватает для реализации независимой работы 2х процов Z80? У нее всего-то 40 было вроде?
Ног на 2 проца хватает, но не нужно забывать что нужно еще и другие функции в плис заталкать, такие как IRQ DMA возможно серийные порты пару штук всевозможные дешифраторы портов и многое многое другое.

Micro-80
13.01.2007, 12:56
Ног на 2 проца хватает, но не нужно забывать что нужно еще и другие функции в плис заталкать, такие как IRQ DMA возможно серийные порты пару штук всевозможные дешифраторы портов и многое многое другое.

Привет. А процесс будет продолжаться?
Вообще, кстати, правильно люди советовали присмотреться к более современным FPGA... Например первый Cyclone я купил за 600 рублей - но там пара PLL, и почти 6000 LE, три синклера влезет :).
Да, а 2-й Циклон с 4600 LE и 13-ю аппаратными умножителями стоит в Точке опоры $17... Куда катится мир...

И тоже недавно начав осваивать FPGA, прислушался к людям, изучаю Verilog. После AHDL - небо и земля. Синтезируемый язык - рулез!

Успехов!

MegaMyth
14.01.2007, 04:17
Привет. А процесс будет продолжаться?
В том то и дело что процесс продолжается... На сегодняшний день имею:
Произвольную синхронизацию, произвольный размер рабочей области (разрешение), аппаратный скролинг по Х и У, 256 цветов из палитры 32К (всего палитр 4). Кстати "прыгающий ржач" в аватаре не случаен... это была первая анимашка каторой я порадовал сожителей по квартире...
Ах да... чуть не забыл... проца до сих пор нет, но сделан эквивалент его шины, для загрузки данных в видеопамять и запись в порты ВК через LPT порт... собран он банально на еще одной плис :-) MAX7128 (другой не было, а эта досталась нахаляву... работа хорошая).
Общее кол-во мсх в девайсе пока 4-ре... 1 Плис, 2 ОЗУ и 1 логика (буфер синхров на ВГА).



Вообще, кстати, правильно люди советовали присмотреться к более современным FPGA...
Я вот уже тоже начинаю подумывать над чемнить более современным. Мне CHRV показал пальцем на ACEX и сказал сколько стоит... мне понравилось... да и вроде спринтер на ней собран... начал юзать - понравилось... написал палитру - начались проблемы связанные с задержками внутри плис... при клоке в 24 мгц (41нс) задержки составляют 32 нс... минимальное время доступа к памяти - 15нс... чудо что микрухи успевают за 9нс сделать все свои дела, но жаль что не все а только 50%, поэтому на экране каката хрень появляется порой, но потом прогреваются и ситуация улучшается, но опять таки не на много. Подумываю над тем чтобы снизить частоту клоков (для того чтобы не останавливать работу над проектом), до тех пор пока не куплю новую ПЛИС.

Планы на будущее:
1. Реализовать стандартный экран спектрума.
2. Сделать EGA режим.
3. Сделать Текстовые режимы (ПЗУ с фонтами ставить не буду, так как шить не где :-)))

Lethargeek
14.01.2007, 07:17
2. Сделать EGA режим.
Вот токо не надо обзывать EGA все что угодно, где есть "16 цветов на точку".
То, что имеем на АТМ или SAM Coupe - это не EGA никаким боком.

ASDT
14.01.2007, 09:28
Я сумел остановиться в железных разработках ...
И другим советую. Софтом надо заниматься ...

Valen
14.01.2007, 17:28
Планы на будущее:
1. Реализовать стандартный экран спектрума.
2. Сделать EGA режим.
3. Сделать Текстовые режимы
Про игровой (тайлово/спрайтовый) режим забыл.

Кстати, зачем EGA?
Обычный VGA 640*480*256 подойдёт, как для игрового
так и для GUI режима.

Raydac
14.01.2007, 21:03
Я сумел остановиться в железных разработках ...
И другим советую. Софтом надо заниматься ...

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

Lethargeek
15.01.2007, 06:05
Планы на будущее:
1. Реализовать стандартный экран спектрума.
2. Сделать EGA режим.
3. Сделать Текстовые режимы (ПЗУ с фонтами ставить не буду, так как шить не где :-)))

Про игровой (тайлово/спрайтовый) режим забыл.
Кстати, зачем EGA?
Обычный VGA 640*480*256 подойдёт, как для игрового
так и для GUI режима.
Ты што?! Режимов и так маловато намечено. :v2_neutr:
Одних текстовых нужно несколько штук с разным размером матрицы символа. :v2_neutr:
Спрайтовых тоже желательно парочку - с "квадратными" спрайтами и с "вертикальными". :v2_neutr:
Раскладок разных тоже побольше. Кроме того, желательо, чтобы разные видеорежимы могли работать только на разных мониторах и поменьше пересекались (решения, проверенные временем!!). :v2_neutr:
И главное - ориентация только на софтверные интерфейсы и драйвера!! :v2_neutr: :v2_neutr: :v2_neutr:

Тогда все вышеперечисленное точно имеет шанс стать стандартом. :v2_neutr:
А то на этом аццтойном Спектруме уже 20+ лет один режим на все случаи жизни... Безобразие какое... Писишники издавна имеют возможность впихивать в каждую софтину кучу библиотек и наборов графики для разных режимов, а спектрумисты чем хуже?

Romanich
15.01.2007, 08:58
Спрайтовых тоже желательно парочку - с "квадратными" спрайтами и с "вертикальными".


Вам нужен спрайтовый режим??? :v2_scare:
Вы изменили своим взглядам? ;)

Micro-80
15.01.2007, 10:00
В том то и дело что процесс продолжается... На сегодняшний день имею:
Произвольную синхронизацию, произвольный размер рабочей области (разрешение), аппаратный скролинг по Х и У, 256 цветов из палитры 32К (всего палитр 4). Кстати "прыгающий ржач" в аватаре не случаен... это была первая анимашка каторой я порадовал сожителей по квартире...
Ах да... чуть не забыл... проца до сих пор нет, но сделан эквивалент его шины, для загрузки данных в видеопамять и запись в порты ВК через LPT порт... собран он банально на еще одной плис :-) MAX7128 (другой не было, а эта досталась нахаляву... работа хорошая).
Общее кол-во мсх в девайсе пока 4-ре... 1 Плис, 2 ОЗУ и 1 логика (буфер синхров на ВГА).:-)))

А пишете , как я понял в квартусе? Шьёте чем? Мне это еще предстоит - пока модели в симуляторе отлаживаю :), хотя микрухи уже куплены.



Я вот уже тоже начинаю подумывать над чемнить более современным. Мне CHRV показал пальцем на ACEX и сказал сколько стоит... мне понравилось... да и вроде спринтер на ней собран... начал юзать - понравилось... написал палитру - начались проблемы связанные с задержками внутри плис... при клоке в 24 мгц (41нс) задержки составляют 32 нс... минимальное время доступа к памяти - 15нс... чудо что микрухи успевают за 9нс сделать все свои дела, но жаль что не все а только 50%, поэтому на экране каката хрень появляется порой, но потом прогреваются и ситуация улучшается, но опять таки не на много. Подумываю над тем чтобы снизить частоту клоков (для того чтобы не останавливать работу над проектом), до тех пор пока не куплю новую ПЛИС.

Я тоже сначала купил асекс 1К10, валялась год, но когда в декабре наконец-то дошли руки - понял, что мала она. Купил циклон-1, его должно хватить. Кстати, по скорости - какая тактовая частота у вас? Откуда задержки такие большие - у меня 32-битное умножение за 24нс выполняется, причем без оптимизации...

icebear
15.01.2007, 11:58
Мне CHRV показал пальцем на ACEX и сказал сколько стоит... мне понравилось...

ACEX уже не выпускается, стоит так же, как Сyclone, вместимость меньше, наворотов (типа вских ClockBoost и т.п.) меньше - нафига?

MegaMyth
15.01.2007, 14:44
А пишете , как я понял в квартусе? Шьёте чем? Мне это еще предстоит - пока модели в симуляторе отлаживаю , хотя микрухи уже куплены.
Именно там. Шью через JTAG аля ByteBlaster
Кстати, по скорости - какая тактовая частота у вас? Откуда задержки такие большие - у меня 32-битное умножение за 24нс выполняется, причем без оптимизации...
Тактовая 27Мгц, от задержек избавился - были ошибки в AHDL.

MegaMyth
15.01.2007, 14:47
Работа кипит и продолжается. Вчера мою винду снес какойто мудрый вирус... причем еще успел похерить гдета порядка 15-20Гб музыки, но проект не тронул.
Вчера эксперементировал с видеорежимом 320*480*15Бит. Картинки ни чем не отличаются от писюковых... палитра пока барахлит, нужно отлаживать код, чем и займусь сегодня вечером и займусь видеорежимом спека.

MegaMyth
15.01.2007, 15:00
Ты што?! Режимов и так маловато намечено. :v2_neutr:
Одних текстовых нужно несколько штук с разным размером матрицы символа. :v2_neutr: Спрайтовых тоже желательно парочку - с "квадратными" спрайтами и с "вертикальными". :v2_neutr:
Раскладок разных тоже побольше. Кроме того, желательо, чтобы разные видеорежимы могли работать только на разных мониторах и поменьше пересекались (решения, проверенные временем!!). :v2_neutr:
И главное - ориентация только на софтверные интерфейсы и драйвера!! :v2_neutr: :v2_neutr: :v2_neutr:

Тогда все вышеперечисленное точно имеет шанс стать стандартом. :v2_neutr:
А то на этом аццтойном Спектруме уже 20+ лет один режим на все случаи жизни... Безобразие какое... Писишники издавна имеют возможность впихивать в каждую софтину кучу библиотек и наборов графики для
разных режимов, а спектрумисты чем хуже?

По поводу спрайтового режима:
спрайты не будут делиться на вертикальные квадратные круглые и т.д. по учебнику геоометрии... Буду стараться сделать спрайты произвольного размера кратные 8ми пикселам.
Текстовый режим будет также один, но с произвольным размером символа, с подгружаемыми шрифтами, возможно организован на базе спрайтового... Возможно будет опция врезки поверх текстового режима графических областей... и естественно будет аппаратная поддержка курсора мыши.
Так же еще в рукаве имеется несколько "нежданчиков" которые надеюсь приятно порадуют и Вас тоже.

Lethargeek
15.01.2007, 21:46
Вам нужен спрайтовый режим???
Вы изменили своим взглядам? ;)
Не, это просто такое упражнение для мозгов - пытаюсь обосновать, зачем бы они ваще могли мне понадобиться. Безуспешно пока что... ;)


По поводу спрайтового режима:
спрайты не будут делиться на вертикальные квадратные круглые и т.д. по учебнику геоометрии... Буду стараться сделать спрайты произвольного размера кратные 8ми пикселам.
И пусть все буржуи-разработчики спрайтовых движков удавятся от зависти!! :v2_neutr:


Текстовый режим будет также один, но с произвольным размером символа...
Это теперь называется "текстовый режим"?! :v2_neutr:


и естественно будет аппаратная поддержка курсора мыши.
Отдельный спрайт с хвостиком? :v2_neutr:


Так же еще в рукаве имеется несколько "нежданчиков" которые надеюсь приятно порадуют и Вас тоже.
Да я и так радуюсь каждый раз, когда захожу в данную ветку. :v2_neutr:
(спокойно, Летаргик, спокойно...) :v2_neutr: :v2_neutr: :v2_neutr: ... :v2_neutr: :v2_neutr: ... :v2_neutr: ... :v2_sick:
(...нет, не могу больше!!) :v2_laugh: :v2_lol: :v2_lol: :v2_lol:

MegaMyth, не обижайся пжалста, просто когда я читаю твои посты, каждый раз как будто смотрю в кривое зеркало (где кстати отражаюсь не только я) ;)

Micro-80
21.01.2007, 13:55
...
И пусть все буржуи-разработчики спрайтовых движков удавятся от зависти!! :v2_neutr:
...


А можно пару ссылок на такие разработки, желательно открытые?
И еще вопросы:
- стоит делать несколько типов спрайтов - 4х8, 8х4, 8х8... ?
- сколько палитр (256цветных)?
- сколько слоёв?
и глупый вопрос - что такое ТАЙЛ? :)

Lethargeek
22.01.2007, 08:00
А можно пару ссылок на такие разработки, желательно открытые?
Я постепенно накачал себе кучку док по приставкам (Sega, NES, GBA...)
и прочим компам (комод, атари800, амига...), но сцылков сейчас не найду. :(
Нигде спрайты произвольных размеров не реализованы - слишком сложно.
В Sega Genesis есть правда два фиксированных размера спрайтов - 32x32 и 16x16.


- стоит делать несколько типов спрайтов - 4х8, 8х4, 8х8... ?
Спрайты ваще делать никакие не стоит, в 80-е годы их юзали от бедности, а щас это просто бесполезный анахронизм.


- сколько палитр (256цветных)?
- сколько слоёв?
Слоев - больше двух невыгодно, палитр - желательно по числу слоев.


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

Аппаратные тайлы афаик всегда квадратные обычно размера 8x8 пикселов (но бывают и больше), из которых строится изображение всего экрана (или слоя) при помощи так называемой "карты тайлов", то есть массива ссылок на начальные адреса битмапов в видеопамяти. Представляют собой еще более вредный, чем спрайты, пережиток прошлого. :mad:

NovaStorm
22.01.2007, 08:18
Мне вот блиттера хватило бы по самые некуда, но если хочется чего то особенного - можно сделать Z-буфер =)

Orionsoft
22.01.2007, 08:44
Ктож , будет тогда вырисовывать точные до пикселя спрайты ?

ASDT
22.01.2007, 13:35
2Lethargeek
"Я постепенно накачал себе кучку док по приставкам "
Можно список, что есть?

Да, и доку по твоему "вк" ...

Romanich
23.01.2007, 10:29
Я постепенно накачал себе кучку док по приставкам (Sega, NES, GBA...)


Блин, я ж говорил - приставки рулят! :v2_rolley



В Sega Genesis есть правда два фиксированных размера спрайтов - 32x32 и 16x16.


Нифига! 1x1,1x2,1x3,1x4,2x2,2x3,2x4,3x3,3x4,4x4 тайлов^2.
1тайл=8x8пикселей^2



Спрайты ваще делать никакие не стоит, в 80-е годы их юзали от бедности, а щас это просто бесполезный анахронизм.


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



Аппаратные тайлы афаик всегда квадратные обычно размера 8x8 пикселов (но бывают и больше), из которых строится изображение всего экрана (или слоя) при помощи так называемой "карты тайлов", то есть массива ссылок на начальные адреса битмапов в видеопамяти. Представляют собой еще более вредный, чем спрайты, пережиток прошлого. :mad:


И как потом делать расчёт столкновений на 8-битном CPU?
Тормозить также безбожно будет!

Lethargeek
23.01.2007, 11:54
Ктож , будет тогда вырисовывать точные до пикселя спрайты ?
Чего?! Блиттер прекрасно рисует всякие "спрайты" любых форм и размеров.


Можно список, что есть?
Вот разгребу свою свалку, могу тогда список прислать, ежели интересно.


Да, и доку по твоему "вк" ...
Я ее как раз переписываю с учетом последних споров... и жду комменты кой-от-кого.
То, что в старой теме - неактуально уже, разве что как основа...

Sergey
23.01.2007, 12:34
И как потом делать расчёт столкновений на 8-битном CPU?
Тормозить также безбожно будет!
Всем:
Я тут периодически наблюдаю за темой, и вот что я заметил:
постоянно упоминаются ограничения Z80 (и мной в т.ч.).

Я считаю, что про Z80 уже давно пора забыть.
В 21 веке сидеть на 8-бит ЦПЭ нагромождая на него при этом вга-шные видео режимы, по размеру данных в несколько раз перекрывающих его адресное пространство, - это не то, что смешно, а просто нелепо!
Другая нелепость - предлагают(в других ветках) Спектрум на ARM делать.

По-моему, лучший вариант для НОВОГО КЛОНА - Z380. 32 бита - это вполне современно. Сразу получаем высокую производительность, возможность работать с графикой высокого разрешения, и совместимость со всем ПО, написанным для Спектрума.

Да, Z380 сейчас не найдешь, однако можно реализвать его в ПЛИС, добившись частоты порядка 50-60МГц.
Минусы: придётся самим прошивку писать.
Плюсы: можно оптимизировать набор команд.
(например, добавить команды типа CALL (HLz+d16).
Пусть будет не совсем Z380, - чего такого-то?

Z380 может работать в режиме Z80, а можно и реальный Z80 поставить для совместимости со старым ПО. Можно и эмулятор написать, для тех, кто не хочет RESET нажимать, чтобы в старые игры поиграть.

По поводу графики - блиттеров, копперов, битмапов, спрайтов и звука могу для информации сбросить руководство программиста по ECS Амиги. Кстати,
OCS в настоящее время уже реализован в ПЛИС одним энтузиастом.
Предсталяете: Амига, под которую можно писать на родном Z80 ассемблере!

В общем, если что новое и делать, то делать НОВОЕ.
Я всё сказал.

Lethargeek
23.01.2007, 12:50
Блин, я ж говорил - приставки рулят!
Приставки суксь, почитав доки, я в этом только сильнее уверился.


Нифига! 1x1,1x2,1x3,1x4,2x2,2x3,2x4,3x3,3x4,4x4 тайлов^2.
1тайл=8x8пикселей^2
Да, перепутал. Но и эти (8/16/24/32)x(8/16/24/32) произвольными не назовешь.


Для видпроцов, работающих на десятках мегагерц - это единственный способ сделать быструю графику.
Дааааа? А что, в жефорсах спрайтайловые движки?


Ибо блитер на таких частотах безбожно тормозит!
"Тормозит" не блиттер, а видеопамять. В старые времена частоты были смешные, сейчас - достаточные. Если еще шину данных расширить, то все просто летает, я цифры приводил.


И как потом делать расчёт столкновений на 8-битном CPU?
Тормозить также безбожно будет!
Коллизии с точностью до пиксела при отрисовке блиттером тоже прекрасно можно запоминать (правда не знаю, делал ли кто-то такое на практике, но принципиальных препятствий нет). К тому же коллизии - не критично, на Спеке же как-то обходились без них? И на тридевятом их тоже нет почему-то... :p

Lethargeek
23.01.2007, 12:52
По поводу графики - блиттеров, копперов, битмапов, спрайтов и звука могу для информации сбросить руководство программиста по ECS Амиги. Кстати,
OCS в настоящее время уже реализован в ПЛИС одним энтузиастом.
Предсталяете: Амига, под которую можно писать на родном Z80 ассемблере!
У меня есть, читал. Amiga ECS уже неактуально, сейчас можно сделать гораздо лучше, причем под Z80 (да так, чтобы можно было цеплять к любому Спеку).

Romanich
24.01.2007, 01:59
Дааааа? А что, в жефорсах спрайтайловые движки?


Разберитесь в проблеме более тонко, прежде чем писать!
Вышеупомянутые жфорсы работают на 450 и выше

На счёт битмаповских режимов-там особо ума не треуется чтоб сделать коллизии

P.S. учите матчасть ;) Она вам ещё понадобица

Lethargeek
24.01.2007, 02:48
На счёт битмаповских режимов-там особо ума не треуется чтоб сделать коллизии
На тридевятом коллизий нет ни в каком режиме (никто не нашел в мануалах).


Разберитесь в проблеме более тонко, прежде чем писать!
Вышеупомянутые жфорсы работают на 450 и выше
Ах, "десятки мегагерц" - это мало оказывается. Ну, в жефорсах до 450МГц было помницца и поменьше, да и разрешения там охренительные. Сейчас ВК на 80+ Спеку типа не хватит? И главное в 2D-графике - пропускная способность ШД VRAM, скорость собс-но VDP - это уже для 3D критично.

Спрайтайлы - далеко не единственный способ "сделать быструю графику", расширение ШД и параллельная обработка - хороший прием, использующийся в том числе и на современном железе - при всех его мегагерцах.

А матчасть я учу постоянно.
И гипотезы проверяю расчетами, прежде чем сразу чуть что кричать: "ЕДИ-И-И-И-И-ИНСТВЕННЫЙ СПОСОБ!!!" ;)

MegaMyth
25.01.2007, 07:51
и жду комменты кой-от-кого.
Намёк понял, но времени нет... Могу сказать одно - идея неплохая... дока заходит в мозг трудно... В ближаёшее время постараюсь перечитать и осознать.

Romanich
25.01.2007, 08:00
На тридевятом коллизий нет ни в каком режиме (никто не нашел в мануалах).


OMG!!! Неужели кто-то нашол блиттерный движок с аппаратными колизиями??? :v2_jawdr: %)
Название карточки или видеочипа?

MegaMyth
25.01.2007, 08:05
Организация курсора мыши: Мышь - спрайт размером 32*32 пиксела*8бит, ессесенно с прозрачностью... спрайт сам по себе нахожится не в видео памяти а в памяти ПЛИС. Положение на экране задаётся записью в порт.
спрайтов скорее всего сделаю не один, в зависимости от свободной памяти в плис.

В недельной поездке домой задумался над смыслом и надобностью спрайтов. пока пришел к выводу что они не особо нужны. Подумаю еще побольше - и скорее всего от них откажусь... для совместимости с В9990 поддержка спрайтов будет на уровне ПО+блиттер.

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

boo_boo
25.01.2007, 09:13
спрайт сам по себе нахожится не в видео памяти а в памяти ПЛИС. Положение на экране задаётся записью в порт. то есть спрайт курсора будет прошитым намертво, или я туплю? :v2_blink: