БК-0010, что в Сети нашел, то и использую.
А ты можешь приаттачить файл в сообщение?
Вид для печати
БК-0010, что в Сети нашел, то и использую.
А ты можешь приаттачить файл в сообщение?
IanPo, насамделе, сцылки, что дал бриз - это частное мнение alco, и не более :)
Устоявшегося стандарта нет, ввиду почти полного отсутствия софта поддерживающего расширенные видеорежимы. Пока alco заведовал анрилом, он переставлял биты в #EFF7 как хотел. Действительно мультиколор раньше был на D0, но alco зачем-то повесил туда 16 color, а мультиколор перекинул на D5. От alco же есть и единственная программа использующая аппаратный мультиолор - Hexagonal Filler. Я не уверен что во всех архитектурах поддерживают то, что в своё время alco намутил. Например у DDp на D5 был гигаскрин. Но по большому счёту ввиду почти полного отсутствия софта - это особой роли не играет. Единственное, что имеет значение - это чтоб видеорежимы оставались развитием родного спековского экрана, и при этом ещё непременно были масштабируемыми по параметрам. Из существовавших ранее, этим требованиям удовлетворяют только мультиколор, флешколор, 16колор (512х192 и гигаскрин - это не видеорежимы, а модификаторы видеорежимов, т.к. применимы к любому видеорежиму). Видеорежимы 384х304 alco, и 512х240 CP/M Profi хотя и можно причислить к развитию спековского экрана, но они абсолютно не вписываются в сетку масштабирования спековского экрана, поэтому о них можно сразу забыть, как о неудачных экспериментах. На сегодняшний день, единственной вменяемой системой построения сетки видеорежимов отвечающей вышеизложенным требованиям, является архитектура Хiмеra. Только в этой архитектуре может быть обеспечена полная программная совместимость с имеющимся софтом, удобное управление видеорежимами, простота их схемотехнической реализации и возможность работы спековского софта под ОС. Поэтому могу предложить как основу взять именно эту архитектуру, чтоб получить скелет сетки видеорежимов, а потом на этот скелет можно уже наращивать всякие примочки ускорителей. Управление описано здесь: http://zx.clan.su/forum/7-57-1 Если ты согласен с предложением, пойдём дальше.
чтобы не двоило - юзать надо экран в его родном разрешении. если монитор у тебя например 1280 на 1024 то в любых других разрешениях - выглядеть все будет просто угребищно. для более менее адекватного отображения ретро компов - надо искать мониторы с нативными 640 на 480 или 800 на 600. в остальных вариантах - качества не будет. Проверяется кстати легко - запустите любую 3д игруху ПэЦэшную настраивая ее под разные разрешения а потом поставьте для нее - родное разрешение моника. и удивитесь насколько коряво показывает не родное разрешение.
balu_dark, он верхнюю половину экрана двоит, а нижнюю - нет. И ручной подстройкой исправить невозможно. А родное разрешение 1920х1200 = (640*3)х1200, т.е. двоить не должно по идее. Про режим монитор пишет 800х600@50, т.е. думает, что в строке 1024 точки при 800 отображаемых.
В общем, не поддерживает.
---------- Post added at 13:41 ---------- Previous post was at 13:39 ----------
БК-0010, у меня от тетрапортов с головой плохо становится. Очень уж сложно. Понадобится - я переделаю, всего лишь прошивка все-таки.
Не надо гнать велосипед! Во первых биты переставил DeathSoft, когда приводил в порядок UnrealSpeccy. Из каких соображений это сделано я не знаю, но тем не менее AlCo с этим согласился и переделал свои программы! Во вторых, эти биты поддержаны как минимум ещё двух клонах — в Pentagon 1024 SL 2.2 и в PentEvo! А следовательно это уже не частное мнение AlCo, а «стандарт» который поддержан другими производителями РЕАЛЬНОГО железа! А не просто эмулятором несуществующих концепций :eek:
IanPo, очень настоятельно рекомендую прислушаться к здравому смыслу, и поправить биты как описано выше.
breeze, я сделал по твоему совету.
Вот результат.
Бриз не знает, что в оригинальной прошивке от КоЕ в Пентагоне 2.2 режима мультиолор вообще небыло :) , а был он только в прошивке от DDp, и включался совсем по другому, а разрядом D5, как я уже указывал выше, у DDp включался Gigascreen :) . Что касательно прошивки Пентево, то в официальном руководстве от NedoPC нет ни слова об управлении видеорежимами через порт #EFF7 :) . Но насамделе это и не важно, т.к. подчёркиваю повторно архитектура Хiмеra обеспечивает полную совместимость с существовавшим ранее железом! :) Просто breeze, ввиду своей абсолютной некомпетентности в железе, этого не понимает :)
:) Насамделе, это только сложно написано, а реализуется всё просто:
1) Видеопорт для совместимости со старым железом разделён на две половинки, которым соответствуют следующие группы разрядов:
- младшая группа разрядов - Lo: D0, D1, D5, D6. Дешифрируется: 1110111xxxxx0111
- старшая группа разрядов - Hi: D2, D3, D4, D7. Дешифрируется: 111011x0xxxx0111
Таким образом, для старого софта, юзающего режимы мультиолор и 16колор управление остаётся прежним, а для нового открываются широкие возможности, при том с сохранением совместимости со старым железом (т.е. с Пентагоном 2.2).
Для нового софта, работающего с новым железом, и использующего все его возможности, управление видеорежимами осуществляется записью в единственный порт #EEF7 (ессно, что в старом железе новые возможности не поддержаны и корректно работать не будут).
2) Системный порт тоже разделён на две половинки:
- младшая группа разрядов - Lo: D0, D1, D5, D6. Дешифрируется: 1110110xxxxx0111
- старшая группа разрядов - Hi: D2, D3, D4, D7. Дешифрируется: 111011x1xxxx0111
Таким образом, для старого софта, юзающего #EFF7 управление остаётся прежним, а для нового открываются широкие возможности, при том с сохранением совместимости со старым железом (т.е. с Пентагоном 2.2).
Для нового софта, работающего с новым железом, и использующего все его возможности, управление системными функциями осуществляется записью в единственный порт #EDF7 (ессно, что в старом железе новые возможности не поддержаны и корректно работать не будут).
Т.е. для программистов, при работе с существовавшим ранее функционалом рекомендуется использовать #EFF7, а при работе с новым функционалом - для управления видеорежимами - #EEF7, для управления системными функциями - #EDF7.
Использование единственного порта для управления видеорежимами сделано специально для ускорения переключения видеорежимов при использовании на одном экране сразу нескольких видеорежимов.
---------- Post added at 16:06 ---------- Previous post was at 15:54 ----------
попробуй с D0, это наверно не переделанная версия программы, выпущенная ещё до того как alco полез биты менять
breeze, так я и говорю, нормально все :)
БК-0010
попробуй с D0, это наверно не переделанная версия программы, выпущенная ещё до того как alco полез биты менять
Это как раз переделанная под D5, она нормально работает.
Примутил палитру, пока без записи.
Возникает вопрос: какие есть стандарты на запись в палитру?
Размер палитры - 16 цветов * 16 (555) бит = 32 байта.
Пока думаю так:
Если делать палитру только в мультиколоре, то сразу после +6144.
А если надо в обычном режиме, то переключившись в МуК, записав и переключившись обратно. Дополнительно стоит копеечных несколько байт кода.
Но играть палитрой в обычном режиме будет нельзя :(
точного ответа нет, но… думаю будет интересно почитать мысли DDp здесь.
для Спектрума стандартов нет, ввиду нераспространённости девайса. Из Спеков токо на Profi в режиме CP/M была палитра 16 из 256. Но т.к. это в режиме CP/M, то и нафиг. Короче - можно считать что и небыло никогда. Щас бриз проявит некомпетентность утверждая что я забыл АТМ, который наверняка у бриза тоже есть :) . Должен расстроить бриза, АТМ - не Спектрум, и никогда Спектрумом не был :)
Да, чуть не забыл - есть один стандарт для эмулятора, но он очччееень особенный, ULA+ называется, пока лучче оставить его в покое :)
лучче делать по той раскладке памяти, что я давал: палитру располагать в 4 странице в адресах:
- младший байт: #1B00-#1BFF
- старший байт: #3B00- #3BFF
Принимаются предложения по порядку следования байтов в памяти (т.е. старший/младший, снизу-вверх/сверху-вниз).
Теперь по её работе - собсно для палитры эта память не нужна, т.к. у палитры собственная регистровая память, отображающаяся на адреса ОЗУ. Запись сквозь ОЗУ в регистровую память нам надо токо для получения снапшота, где зафиксировано состояние палитры. Никакая другая схема палитры этого не позволяет, токо палитра Хiмеr'ы, т.к. для этой архитектуры это важно для реализации режима многозадачности.
Какие особенности у этого режима:
1) Для новых программ, работающих на архитектуре Хiмеra, и учитывающих местоположение палитры - проблем нет.
2) Для старых программ, загружающих в область палитры чёто своё, палитру надо грузить до загрузки программ, и такие программы не могут менять её на ходу, и использовать палитру в режиме многозадачности.
На сегодняшний день рабочим портом разрешающим запись в регистровое ОЗУ палитры сквозь ОЗУ, является D7=1 #EBF7, дешифрация - 11101011xxxx0111
---------- Post added at 19:58 ---------- Previous post was at 19:38 ----------
не, лучше 655-GRB
breeze, ну, там сурово сделано :) через порты. Даже не знаю.
БК-0010
Спасибо, буду думать.
не, лучше 655-GRB
Это пока что не изменить, т.к. сделано аппаратно на тестовой карточке.
будешь рисовать схему пиши, я тебе расскажу как правильно выходной каскад делать, или посмотри схему палитры здесь:http://zx.clan.su/forum/8-62-1 Сама схема уже устарела, так что возьми оттуда токо выходной каскад и смеситель-переключатель видеовывода, чтоб без загруженной палитры было изображение.
---------- Post added at 20:59 ---------- Previous post was at 20:50 ----------
ну, если думаешь - давай свои мысли :) , но вообще я всё уже продумал раньше, так что присоединяйся! :)
Палитра готова.
296 ячеек Альтеры (после оптимизации будет меньше).
Проект прилагаю (первый раз Квартус будет ругаться на HEX-файл, надо сделать повторную компиляцию).
При включении палитра стандартная спековская.
После включения бита и записи в 5B00-5B1F палитра меняется.
Мультиколор + палитра кроют гигаскрин, как бык овцу.
Думаю, дальше режимы развивать не стоит.
Знаешь, я тож поначалу хотел разместить палитру в 5 странице - это удобно для быстрой её помены, и одинаово во всех режимах памяти 48/128/256..., но переменные бейсика 128, и команды принтера чёт навели на меня тоску. И то и другое гадит в эту область. Т.е. в 48 васике - команды принтера, а в 128 - системные переменные.
Отсюда вопрос к all: как на ваше имхо, но желательно аргументированно - это нормально будет, если в обоих васиках палитры не будет?
---------- Post added at 23:49 ---------- Previous post was at 23:42 ----------
:) увы, но их уже развили :) , так что придётся :)
БК-0010
как на ваше имхо, но желательно аргументированно - это нормально будет, если в обоих васиках палитры не будет?
А почему не будет ? Выставил бит, записал палитру, обнулил бит.
Теневая палитра-то будет.
Всем привет!
Меня уже некоторое время мучает вопрос: а не сделать ли нам такую ботву, как ipvc2 (см. рисунок) ?
Это скрещенные Speccy2010 и первый ipvc.
МК будет использоваться для загрузки в ОЗУ ipvc2, ОЗУСпека(снапшоты), заливки прошивки в ПЛИС и еще, что в голову придет. Перепрошивка будет происходить по команде со Спека, что дает возможность прикрутить к каждому уровню игры или демо свои аппаратные эффекты.
Плюсуйте-минусуйте.
Так можно будет делать кластеры из сп2010 :)
По сути навороченная нгс получится, только с видеовыхлопом.
конструкция представляет из себя видео и аудио контроллер, дополнительные к спеку.
рисунок - примерный макет платы
плис стоит 500-650 р.
контроллер 52 р.
память mt48lc4m16a2p 68 р. больший размер не нужен, имхо. 14*8=112 мгц cl3
резисторы < 100 р.
усилитель и цап < 160 р.
плата, cтабилизаторы, дроссели, кондеры, разъемы - еще сколько-то.
все вместе до 2000, возможно, 1500
в топку? делать совсем уж гетто-вариант нехоцца :(
Ну тут два варианта, либо дешёвый (гетто) и тогда есть некий шанс на распространение дэвайса.
Дешёвый, потому как спектрумисты, хотят всё либо нашару, либо по цене пивка.
Второй вариант, как хочется. Тут уж что хочу, то и ворочу.
(И тут даже при цене, сравнимой с НГС, дэвайс ИМХО будет лучше, потому как видео+аудио ускоритель.)
ИМХО, девайс будет лучше тогда, когда под него будут кодить:)
Давайте выясним причину отсутствия спроса на NeoGS и его прошивки:
1. Какая максимальная схема влезет в этот NeoGS (в смысле потянет ли оно хотябы минимальный RISC 32bit CPU)?
2. На сколько легко подключить NeoGS к типичному клону типа Робик\Ленинград1 и насколько эстетично это потом будет выглядеть?
1. Минимальный RISC 32bit CPU влезет. Инфа 100%. Более того, в отличие от прочих плат, всё остальное можно выкинуть - на работоспособность не влияет.
2. Типичный Робик/Ленинград1 уже сгнил и если и работает, то глючит от каждого чиха. Покупайте новое железо, оно уже давно не стоит как самолёт.
Ну тут просто всех пытаются дубиной загнать со старого железа на коммерческие новоделы. поэтому вопросом номер 2 никто вообще не задавался. 200 баксов за комплект NGS+ZXevo не порождают повальное творчество. а те кто сидит на основной массе машин и хоть чтото делает - не все имеют NGS. Поэтому топик как раз правильно поднят. A коммерческое EVO за 2 года продаж - так и не обзавелось банальным ФАПЧем на дисковод. При том что некоммерческие ( ну или бюджетные) вещи типа SPECCY2007 или Reverse обзавелись многими необходимыми фичами очень быстро( многими даже в первые месяцы после релиза).
Speccy2007 за 4 года существования не обзавёлся банальным режимом цвет на точку. Демы под Speccy2007 просто валом валят, как я погляжу. Что такое Reverse - не имею понятия. Speccy2010 по комплектующим стоит ровно столько же, сколько ZX Evolution, с той лишь разницей, что набор деталей для ZX Evolution можно купить у ЧРВ, а за комплектующими к Speccy2010 надо бегать по магазинам, и не факт, что найдёшь (см. соответствующий тред).
Далее. Никто не заставляет покупать ZX Evolution для втыкания NeoGS. Он свободно втыкается в любой комп с ZX-Bus. Перечислить?
alone, если ненравица девайс, зачем тогда пишеш? ну юзай недоЭву с её мегатормозным 16ц режимом и недоГС.
Девайс не существует, и лучше бы не существовал, ибо нефиг распыляться. Что, кодеры внезапно лишние появились? А в каком страшном сне тебе приснился "мегатормозной" 16ц режим в ZX Evo - знаешь только ты.
вот только не надо щас рассказывать о том, что 16c вдруг внезапно стал офигенно бфстрым и что там за фрейм картинку можно кинуть. спктрум на штатных частотах с трудом свой собственный экран ворочит. а про 16 цветный, с цветом на точку, который весит чуть больше 12кб (в два раза больше родного экрана)...дада..он то не мегатормозный...
ну да..точна..я на 4 поделил..дубина..тем более.Цитата:
256*192/2