wcg.fatal.ru - dma_docs.zipЦитата:
Сообщение от madcore
Вид для печати
wcg.fatal.ru - dma_docs.zipЦитата:
Сообщение от madcore
Вот те на! Только я последний раз предложил нечто подобное прежним идеям В.Кладова
с "аппаратным EmuZWin-ом"? как он предлагает что-то напоминающее мои прежние идеи
(заранее извиняюсь, что влез сюда с отсылками к моей теме, кому-то, возможно надоевшей).
Я имею в виду, что фон опять 2 цвета на знакоместо, а многоцветность спрайтов только
имитируется (нечто подобное на комоде было с hi-res спрайтами). И в комп нужно лезть,
т.к. основное ОЗУ используется. От того и другого уже даже я отказался под давлением
общественности. :D Ну нужен народу режим "каждая точка своим цветом", хоть ты тресни!
Пришлось к этому адаптировать свою идею, не потеряв и то, что мне было нужно.
Vladimir Kladov> никакой совместимости с прежним режимом (т.е. переделка игр
` не будет тривиальной). А оно надо? Насмотрелись уже...
` Но если бы такой режим был в Спектруме... Я бы еще под него сам чего-нибудь поделал.
На несколько тысяч (хорошо, пусть сотен самых хороших) - насмотрелись?! :v2_eek:
И сколько еще не могут считаться хорошими именно по причине небрежной графики...
А тут переделка отпадает, а новый софт скорее всего будет делать сам В.Кладов?
Я частично согласен с CHRV в том, что если уж делать нечто несовместимое, то лучше
взять левый готовый видеочип - эксперимент дешевле обойдется. Хотя толку тоже мало
будет, на мой взгляд.
Vladimir Kladov> Проц не справится с чем-то большим, что есть в спектруме, Клайв был
` прав, когда спроектировал только тот режим, что есть в базовом. Единственное, что
` может победить тормоза - это спрайты.
А еще Клайв сказал, что причина успеха Спектрума - простой доступ к памяти. Снова
смотрим мои последние спецификации - раскладка еще проще, чем в оригинале, а скорость
вплотную приближается к 32 такта на байт для спрайтов с маской (соответственно, 16
тактов на байт для простых тайлов). А этот байт - восемь пикселов, и от глубины цвета
(количества линеек видеопамяти) скорость совершенно не зависит. В том числе для
векторной графики. В общем все почти как в EmuZWin - скорость такая же, как в обычном
режиме (если не быстрее в моем случае).
Все, что для этого нужно - хранить графику в неотображаемых областях видеопамяти и
осуществлять их переброску командой ldi (от которой, собственно, требуются только
адреса источника и приемника). А еще можно добавить "видеопроцессор" - не важно,
будет ли это z80, как в GS, или даже простая схема внутренних пересылок на логике
(тогда возможно копировать быстрее, чем с ldi), или что-то более навороченное типа
примитивного блиттера - еще и для векторной графики. Вообще отдельный видеопроцессор
(именно рисующий в видеопамяти, а не формирующий изображение "на лету") - вещь более
перспективная, чем спрайты. Опыт развития вычислительной техники убедительно показал,
что аппаратные спрайты - это тупик. Да и тормоза в спековских играх были по большей
части связаны именно с медленным скроллингом "вручную", а не с отрисовкой спрайтов.
Насчет спрайтов интересно вот что - а можно ли в принципе синхронизировать готовый
видеочип с самопальным видеоконтроллером, так чтобы смешивать изображения - например,
какой-то цвет в видеопамяти чипа считается прозрачным, делаем его фоном, а потом
спрайты накладываем на спековский экран - опять же, выбором одного из двух пикселов
по ходу луча. А если в памяти чипа не весь фон прозрачный, то получим еще один
"самый передний" план (или сколько там у него слоев). Но это, наверно, трудно
сделать, т.к. все такие видеочипы выдают сразу готовый видеосигнал - или я ошибаюсь?
(Даташиты скачать не удалось :( )
Что то подобное с совмещением спековскоко экрана с видеопроцессором от Dandy в своё время предлагал Веремеенко.см ZX-Ревю.Но имхо это не только сложно сделать но и просто не нужно так как видеопроцессор очень самодостаточен.Просто когда программа будет его использовать она автоматически переключает вывод изображение на него но во время работыЦитата:
Сообщение от Lethargeek
видеочипа ни что не мешает строить изображение на Спековском экране
как впрочем и наоборот.
Там познакоместное смешивание было, а не попиксельное, причем по смыслу именно спековский экран мог считаться "передним планом", что бесполезно для использования спрайтов видеочипа.
То есть проверять нужно именно выход видеочипа - окончательный, после всех наложений, есс-но. А здесь проблемы.
И пусть он даже самодостаточен, но это значит, что софт надо полностью новый, гибкости нет. Я за то, чтобы кодер сам мог решить, какой процент возможностей наворота используется, а не "все или ничего".
А что так что этак в любом случае софт получается новыйЦитата:
Сообщение от Lethargeek
так если видеочипа нет то всё равно программа будет работать ущербно
так как просто не увидишь что там на него выводиться.
Разумней тогда сделать 2 версии под простой экран и под видеопроц.
меня как и многих (я уверен) устраивает даже 2х-цветность спрайтов). Меня (как и большинство, и не только игроков, но и программистов) не устраивает клэшинг из-за того, что атрибут привязывается к квадратику 8х8, причем неподвижному. И не очень даже устроит (да тьфу, совсем не устроит) переход к привязке 4х4 или даже 2х2. Неудобно делать нормальную графику при таких ограничениях, либо тогда остается моно, либо клэшинг. А если привязка будет не к знакоместу, а к спрайту, да еще спрайт будет прозрачен на фоне обычного изображения, которое можно аккуратно подготовить так, что там не будет чувствоваться особо этот недостаток, то вообще одно удовольствие. И тогда уже все равно, аппаратно и на лету строится изображение или в видеопамяти командами видеочипа спрайты перебрасываются куда надо по командам от основного процессора. Просто во втором случае нужна большая видеопамять, чтобы сразу строить изображение хотя бы 16-цветное / на точку, что и есть в v9990, судя по описанию. Осталось подождать, когда же нам кинут намек на то, как будет организовано взаимодействие с v9990. Хотя бы интересен такой момент: как будет выполняться запись в видеопамять: нативно через его порты что ли только. Что-то там долготрудно это как-то, мне кажется, у него тактов побольше будет, по крайней мере переброску в видеопамять можно было бы сымитировать прямой записью в какую-нибудь память. Типа dma получилось бы. Ну, есть еще otir, конечно. Неважно как, скажите - как. Мы хотим знать.
Успех спектрума не в том как организована память, а в том, что ее было мало в нем, и он был поэтому самый дешевый. Спектрум с метром памяти - это уже не спектрум. Это сейчас 512К видеопамяти стоят дешево (и наверняка проще и часто не дороже получится при отсутствии нужной памяти найти бОльшую по размеру, и использовать на 20, 10, 5%). А тогда это было - ого-го.
А у нас в союзе успех спека определялся еще и тем, что он был простой, и его легко было "скопировать". Только гляньте на спецификацию MSX - сколько там устройств, портов, памяти, это же фиг сдерешь. Вот поэтому о том, что был такой MSX (якобы популярный в СНГ в те годы - чушь!) я узнал только недавно. Его просто н е б ы л о на нашем рынке, не существовало. А графика у него на порядок круче чем у спека, я бы при его наличии конечно же сделал однозначный выбор, пусть бы он и был дороже в 10 раз.
Vladimir Kladov> меня как и многих (я уверен) устраивает даже 2х-цветность спрайтов).
Я тоже так раньше думал. :) Могу только посоветовать перечитать мою тему. И про 4x4 тоже.
Vladimir Kladov> Успех спектрума не в том как организована память, а в том, что ее было мало в нем, и он был поэтому самый дешевый.
Дешевизна объясняет только первоначальный успех (а памяти у других компов было сравнимое количество, да и цены постепенно подровнялись). Но не может объяснить то, что Спек (платформа, а не фирма) так долго оставался "на плаву" при таких конкурентах. Здесь причина - в огромном кол-ве софта, которого было много, потому что благодаря тому самому простому доступу кодить на Спеке мог каждый. А вот на других платформах приходилось предварительно плотно изучать hardware.
Программирование же игр на Спеке предъявляло больше требований к дизайнеру, чем к кодеру. Потому и отстойных игрушек на нем тоже тьма.
это просто вы не в курсе. На спеке не больше софта чем на других машинах, его даже меньше, если не считать утилит специфичных для спековских платформ. Игры - все - есть на всех других платформах, и все те же, и даже больше (а многие появлялись впервые совсем не спеке), и графика в них и музыка получше на более приличных платформах. Больше например игр с фреймовым скроллом, на ямахе или атари. Потому что аппаратный скролл, спрайты и никакого клэша. Изучать - а чего там изучать-то. Спек тоже надо было изучать, одна только хитрая адресация видеопамяти чего стоит. При переделке фирменных игр на спек программерам ихним иногда приходелось весьма попотеть из-за клэшинга, тормозной графики, малого объема памяти. Проще сперва было сделать на чем-то более приличном, а уже потом на спек смотрели, просто из-за его массовости вследствие его дешевизны (так бы и вообще не смотрели, да жажда наживы, вот).
Ну например спецификацию Турбо2+ или Скорпиена со Смуком посмотреть, то МСХ наверно даже отдыхает :).Цитата:
Сообщение от Vladimir Kladov
МСХ был и назывался КУВТ Ямаха. Устанваливался ввиде учебных классов по стране. Так что насчет его не существования не согласен.
А устройств немного на самом деле:
- тот же звуковой процессор
- отдельный манаджер памяти (в виде чипа)
- дисковод (и то не на всех моделях)
- видеочип (основное пожалуй отличие).
Vladimir Kladov> это просто вы не в курсе. На спеке не больше софта чем на других машинах, его даже меньше, если не считать утилит специфичных для спековских платформ. Игры - все - есть на всех других платформах, и все те же, и даже больше...
Заходим на WoS, потом на комодурские, атаривские, амстрадовские и т.д. сайты и считаем. Причем надо учесть, что на WoS текстовые адвенчуры, порнуха и бейсиковские отдельно лежат, а у других обычно все в одной куче.
ИМХО только комод приближается к Спеку по кол-ву игрушек, особенно за вычетом откровенной лажи.