Последние темы
» Вити больше нет!автор bug19 Пн Фев 20 2023, 19:54
» Собираем оригинальный Орион 128
автор bug19 Пн Фев 20 2023, 19:47
» Проблема плющеного экрана ОРИОНА
автор kanzler Пн Ноя 28 2022, 12:05
» Орион 128 и его клоны возрождение 2019-2022 год
автор kanzler Пн Ноя 28 2022, 12:03
» Электроника КР-04. Информация, документы, фото.
автор kanzler Пн Ноя 28 2022, 12:02
» Новости форума
автор kanzler Пн Ноя 28 2022, 11:52
» Орион-128 НГМД запуск 2021 года
автор matrixplus Сб Сен 10 2022, 17:36
» ПЗУ F800 для РК86
автор ведущий_специалист Сб Сен 10 2022, 10:37
» Микропроцессорная лаборатория "Микролаб К580ИК80", УМК-80, УМПК-80 и др.
автор Электротехник Вт Июл 26 2022, 19:33
» Орион-128 SD карта в Орионе
автор matrixplus Чт Июн 02 2022, 09:00
» 7 Мая. День Радио!
автор Viktor2312 Чт Май 12 2022, 10:58
» Серия: Массовая радио библиотека. МРБ
автор Viktor2312 Ср Май 11 2022, 12:17
» Полезные книги
автор Viktor2312 Пн Май 09 2022, 15:07
» Орион 128 Стандарты портов и системной шины Х2
автор matrixplus Вс Май 08 2022, 23:08
» Орион-128 и Орион ПРО еще раз про блоки питания
автор matrixplus Вс Май 08 2022, 19:09
» Орион-128 Программаторы
автор matrixplus Вс Май 08 2022, 19:02
» Орион ПРО история сборки 2021 до 2022
автор matrixplus Вс Май 08 2022, 18:47
» Анонсы монет (New coin).
автор Viktor2312 Сб Май 07 2022, 23:11
» Хочу свой усилок для квартиры собрать не спеша
автор Viktor2312 Сб Май 07 2022, 19:33
» Амфитон 25у-002С
автор Viktor2312 Сб Май 07 2022, 09:38
» Майнер: T-Rex
автор Viktor2312 Вс Май 01 2022, 09:12
» GoWin. Изучение документации. SUG100-2.6E_Gowin Software User Guide. Среда разработки EDA.
автор Viktor2312 Пн Апр 25 2022, 01:01
» GoWin. Изучение документации. UG286-1.9.1E Gowin Clock User Guide.
автор Viktor2312 Сб Апр 23 2022, 18:22
» GoWin. Documentation Database. Device. GW2A.
автор Viktor2312 Ср Апр 20 2022, 14:08
» GOWIN AEC IP
автор Viktor2312 Ср Апр 20 2022, 12:08
Самые активные пользователи за месяц
Нет пользователей |
Поиск
Улучшение цвета Специалиста
Страница 1 из 1 • Поделиться
Улучшение цвета Специалиста
1
В этой теме хочу рассмотреть варианты простого и по возможности совместимого улучшения цвета. Т.к изобилия новых цветных программ ни для базового цвета, ни для улучшенного, - не предвидится, актуален цвет под конкретные задачи (цвет в пиктограммах для GUI-интерфейса и цвет удобный для эмуляции ZX-игр).
Считается, что у Специалиста есть на выбор: 5 или 8 цветов (5-ти цветный адаптер иногда называют 4-х цветным). В первые 3.5 года после публикации у Специалиста было 5 цветов, но потом предельно глупейшим способом (за счёт уничтожения возможности аппаратных прерываний и введения улёта цветных программ на базовом монохромном Специалисте) добавили ещё один бит в регистр цвета и "их стало восемь". Мне пока симпатичнее 5-ти цветный режим, т.к более экономичный по деталям и на одном моём Специалисте сделан именно он.
8-ми цветная схема из журнала МК 08.1990 неудачна также избыточностью по чёрному цвету. Цвет с кодом 000 можно было бы сделать 9-м цветом. Так как каждый из 3-х битов непосредственно управляет цветовой составляющей (R, G или B), то коду 000 в такой схеме соответствует чёрный цвет. Получается, что код 000 тратится впустую, т.к чёрный уже и так есть, ведь чёрным отображаются точки соответствующие нулевым битам экранного байта. [варианты видеовыхода могут отличаться инверсией, т.е 000 это м.быть белый, а 111 наоборот чёрный, хотя для человека логично 0 считать отсутствием сигнала].
К сожалению, когда дело доходит до разработки игры, выясняется, что минималистический волковский цвет не так уж и хорош, а точнее является почти таким же ущербным, как цвет в РК86. Отличие лишь в том, что цветовое разрешение не на 8 линий знакоместа, а на один экранный байт из 8-ми пикселей. Но суть та же - можно задать цвет пикселей соответствующих единичным битам экранного байта, а пиксели соответствующие нулевым битам экранного байта - всегда чёрные. Т.е задаётся цвет только INK, а цвет PAPER не меняется. А для качественных графических картинок нужна возможность закрашивать каждый пиксель в любой цвет из имеющегося набора цветов.
С другой стороны волковский цвет имеет достоинством то, что адаптер цвета выполняется в виде внешнего прибамбаса без разрезов печатных проводников на основной плате Специалиста и большим преимуществом самой идеи цвета с автозаписью из регистра цвета является скорость вывода цветных объектов, которая вдвое быстрее, чем в "Орионе" или "Векторе" (т.к на цвет не расходуется ресурс процессора). И конечно, неидеальный цвет лучше, чем совсем без цвета, хотя и обрекает на игры в которых по чёрному фону бегают одноцветные фигурки, а в системных программах можно лишь выделять цветом фона текст из чёрных букв или рисовать цветную раму в нортоне. Ещё одним достоинством волковского цвета является то, что программу можно исходно писать в монохроме, а добавка цвета не требует существенного изменения алгоритма программы (достаточно добавить две маш.команды загрузки кода цвета в регистр цвета перед выводом на экран).
В начале 90-тых было всего несколько игр с 5-ю цветами, а системных цветных программ я не встречал вообще (цвет использован лишь в системных программах для Специалист-MX, но это совсем другой и несовместимый вариант Специалиста). Но похоже и спустя 30 лет мало старых монохромных игр было оцвечено или написано с нуля новых 8-ми цветных. Похоже лишь vinxru написал в XXI веке несколько цветных игр для Специалиста, а недавно ivagor оцветил JET SET WILLY и адаптировал в цвете ZX-игру EXOLON. Тем не менее при доработках совместимость с 5-ти или с 8-ми цветным режимом всё же желательна.
Какие варианты улучшения имеющего цветового адаптера очевидны и что ещё можно придумать?
Тупой лобовой вариант удвоения числа битов в регистре цвета позволяет задавать цвет не только INK, но и PAPER, т.е в пределах 8-ми точек будут доступны два произвольных цвета. Дополнительный двухбитовый регистр цвета PAPER можно включить в шину процессора. Хотя это увеличит нагрузку шины. А вот запись в регистр цвета сквозь ППА не грузит шину.
Для расширения регистра цвета без загрузки шины сразу напрашивается вариант до которого изобретатели В.Медведков и В.Иванов, делая "разработку" цвета из ж.МК 07.1990, не додумались (зато они додумались занять выход INTE, убив этим прерывания и РК-звуки, и, заняв бит НП, обеспечили улёт цветных программ на моно версиях Специалиста, что вообще идиотизм).
Два доп.цветовых бита не нагружая шину можно получить добавив 155 ТМ2 в качестве регистра-защёлки на те же выходы PC6, PC7 порта клавиатуры. Тогда выдав на PC6, PC7 цвет PAPER и защёлкнув эти биты в двухбитовом регистре-защёлке, без добавки доп.входов на шину и занятия разрядов ППА, образуется четырёхбитовый регистр цвета вместо двухбитового (2 бита из ТМ2 и 2 бита, как и ранее, из разрядов PC6, PC7 ППА). В качестве строба защелки годится любой чип-селект на запись (например тот же C000 или любой дополнительный). Если не особо ценны прерывания или сигнал НП, то в качестве строба можно использовать даже PC5 или выход INTE процессора.
Если эти 4 цветовые бита использовать для задания цветов на весь экранный байт - 2 бита на цвет символа (INK) и 2 бита на цвет фона (PAPER), то получаем 4 цвета, хотя и с ограничением, что в пределах 8 соседних точек цветов только два. Т.е такой же групповой цвет, как в 16-ти цветном режиме ОРИОНА, но с меньшим числом цветов. Число цветов можно увеличить до 5, если для INK какому-нибудь цветовому коду будет соответствовать другой цвет, чем для PAPER.
Для этого при таком четырёхбитовом цвете достаточно одного корпуса логики, чтобы цвет 00 для INK был белым, а не чёрным, как для PAPER. Это позволит выводить и чёрные и белые буквы на цветном фоне. Таким образом к схеме двухбитового цвета из ж.МК 07.1988 добавляется 2 корпуса 565 РУ6, триггер ТМ2 и мультиплексор КП2, который в зависимости от того равен текущий бит выводимого экранного байта 1 или 0, выдаёт на RGB код INK или PAPER. При этом плата цвета останется тем же внешним прибамбасом, на шину не прибавляется нагрузка и сохраняются те же 5 цветов. Но теперь задаётся цвет не только на INK, но и на PAPER.
Увеличить вдвое число цветов при 4-х битах можно, если сообразить, что на цвет фона (PAPER) можно выделить другие цвета, чем на цвет символов (INK). Тогда общее число цветов станет 8. Это потребует применения РПЗУ 155 РЕ3 (хотя в простейшем случае можно обойтись без этого, сделав цвета INK теми же, лишь более яркими).
Вот такие 8 цветов на INK & PAPER - это, похоже, самый оптимальный вариант использующий исходную идеологию цвета через биты PC6, PC7. В таком варианте цвет задаётся и для битов 1 и для битов 0 в экранном байте, хотя это и не улучшает цветовое разрешение. Оно остаётся низким, т.к при групповом цвете возможны лишь два цвета на 8 соседних точек. Такая доработка с добавлением двух доп.битов для PAPER самоочевидна и именно так стоило в 1990 году улучшить схему цветного адаптера Специалиста, т.к такой цвет лучше цвета из МК 08.1990.
Но и у такого варианта есть недостатки. Большим неудобством при изготовлении является применение кодопреобразователя логического цвета в физический на 155 РЕ3. Если цвета доступные для фона (PAPER) и цвета доступные для цвета символов (INK) полностью разные, то возможно 8 цветов, но число их сочетаний ограничено. Причём, если надо брать графику из игр ZX-Spectrum, то совместимость по цветам не сделать, т.к в ZX набор цветов для INK и PAPER одинаков. Если же цвета INK-PAPER одинаковы, то число цветов на экране падает до всего 4.
При рассмотрении схем альтернативных цветовых адаптеров разумно также рассмотреть вопрос мерцаний в играх Специалиста. Некоторые люди считают, что перерисовка спрайтов на медленной машине вызывает мерцания. С этим столкнулись разработчики "Принца Персии" для БК-011. Впрочем, быстродействие процессора в БК-0011 ниже. Кардинально проблему решает только наличие второго экрана. В случае платы ЭКСПРЕСС, которая на 565 РУ5, второй экран вводится просто, - кусок провода подаёт на вход адресного мультиплексора КП2 сигнал управляющий номером отображаемого экрана.
- цветной адаптер:
Считается, что у Специалиста есть на выбор: 5 или 8 цветов (5-ти цветный адаптер иногда называют 4-х цветным). В первые 3.5 года после публикации у Специалиста было 5 цветов, но потом предельно глупейшим способом (за счёт уничтожения возможности аппаратных прерываний и введения улёта цветных программ на базовом монохромном Специалисте) добавили ещё один бит в регистр цвета и "их стало восемь". Мне пока симпатичнее 5-ти цветный режим, т.к более экономичный по деталям и на одном моём Специалисте сделан именно он.
8-ми цветная схема из журнала МК 08.1990 неудачна также избыточностью по чёрному цвету. Цвет с кодом 000 можно было бы сделать 9-м цветом. Так как каждый из 3-х битов непосредственно управляет цветовой составляющей (R, G или B), то коду 000 в такой схеме соответствует чёрный цвет. Получается, что код 000 тратится впустую, т.к чёрный уже и так есть, ведь чёрным отображаются точки соответствующие нулевым битам экранного байта. [варианты видеовыхода могут отличаться инверсией, т.е 000 это м.быть белый, а 111 наоборот чёрный, хотя для человека логично 0 считать отсутствием сигнала].
К сожалению, когда дело доходит до разработки игры, выясняется, что минималистический волковский цвет не так уж и хорош, а точнее является почти таким же ущербным, как цвет в РК86. Отличие лишь в том, что цветовое разрешение не на 8 линий знакоместа, а на один экранный байт из 8-ми пикселей. Но суть та же - можно задать цвет пикселей соответствующих единичным битам экранного байта, а пиксели соответствующие нулевым битам экранного байта - всегда чёрные. Т.е задаётся цвет только INK, а цвет PAPER не меняется. А для качественных графических картинок нужна возможность закрашивать каждый пиксель в любой цвет из имеющегося набора цветов.
С другой стороны волковский цвет имеет достоинством то, что адаптер цвета выполняется в виде внешнего прибамбаса без разрезов печатных проводников на основной плате Специалиста и большим преимуществом самой идеи цвета с автозаписью из регистра цвета является скорость вывода цветных объектов, которая вдвое быстрее, чем в "Орионе" или "Векторе" (т.к на цвет не расходуется ресурс процессора). И конечно, неидеальный цвет лучше, чем совсем без цвета, хотя и обрекает на игры в которых по чёрному фону бегают одноцветные фигурки, а в системных программах можно лишь выделять цветом фона текст из чёрных букв или рисовать цветную раму в нортоне. Ещё одним достоинством волковского цвета является то, что программу можно исходно писать в монохроме, а добавка цвета не требует существенного изменения алгоритма программы (достаточно добавить две маш.команды загрузки кода цвета в регистр цвета перед выводом на экран).
В начале 90-тых было всего несколько игр с 5-ю цветами, а системных цветных программ я не встречал вообще (цвет использован лишь в системных программах для Специалист-MX, но это совсем другой и несовместимый вариант Специалиста). Но похоже и спустя 30 лет мало старых монохромных игр было оцвечено или написано с нуля новых 8-ми цветных. Похоже лишь vinxru написал в XXI веке несколько цветных игр для Специалиста, а недавно ivagor оцветил JET SET WILLY и адаптировал в цвете ZX-игру EXOLON. Тем не менее при доработках совместимость с 5-ти или с 8-ми цветным режимом всё же желательна.
Какие варианты улучшения имеющего цветового адаптера очевидны и что ещё можно придумать?
Тупой лобовой вариант удвоения числа битов в регистре цвета позволяет задавать цвет не только INK, но и PAPER, т.е в пределах 8-ми точек будут доступны два произвольных цвета. Дополнительный двухбитовый регистр цвета PAPER можно включить в шину процессора. Хотя это увеличит нагрузку шины. А вот запись в регистр цвета сквозь ППА не грузит шину.
Для расширения регистра цвета без загрузки шины сразу напрашивается вариант до которого изобретатели В.Медведков и В.Иванов, делая "разработку" цвета из ж.МК 07.1990, не додумались (зато они додумались занять выход INTE, убив этим прерывания и РК-звуки, и, заняв бит НП, обеспечили улёт цветных программ на моно версиях Специалиста, что вообще идиотизм).
Два доп.цветовых бита не нагружая шину можно получить добавив 155 ТМ2 в качестве регистра-защёлки на те же выходы PC6, PC7 порта клавиатуры. Тогда выдав на PC6, PC7 цвет PAPER и защёлкнув эти биты в двухбитовом регистре-защёлке, без добавки доп.входов на шину и занятия разрядов ППА, образуется четырёхбитовый регистр цвета вместо двухбитового (2 бита из ТМ2 и 2 бита, как и ранее, из разрядов PC6, PC7 ППА). В качестве строба защелки годится любой чип-селект на запись (например тот же C000 или любой дополнительный). Если не особо ценны прерывания или сигнал НП, то в качестве строба можно использовать даже PC5 или выход INTE процессора.
Если эти 4 цветовые бита использовать для задания цветов на весь экранный байт - 2 бита на цвет символа (INK) и 2 бита на цвет фона (PAPER), то получаем 4 цвета, хотя и с ограничением, что в пределах 8 соседних точек цветов только два. Т.е такой же групповой цвет, как в 16-ти цветном режиме ОРИОНА, но с меньшим числом цветов. Число цветов можно увеличить до 5, если для INK какому-нибудь цветовому коду будет соответствовать другой цвет, чем для PAPER.
Для этого при таком четырёхбитовом цвете достаточно одного корпуса логики, чтобы цвет 00 для INK был белым, а не чёрным, как для PAPER. Это позволит выводить и чёрные и белые буквы на цветном фоне. Таким образом к схеме двухбитового цвета из ж.МК 07.1988 добавляется 2 корпуса 565 РУ6, триггер ТМ2 и мультиплексор КП2, который в зависимости от того равен текущий бит выводимого экранного байта 1 или 0, выдаёт на RGB код INK или PAPER. При этом плата цвета останется тем же внешним прибамбасом, на шину не прибавляется нагрузка и сохраняются те же 5 цветов. Но теперь задаётся цвет не только на INK, но и на PAPER.
Увеличить вдвое число цветов при 4-х битах можно, если сообразить, что на цвет фона (PAPER) можно выделить другие цвета, чем на цвет символов (INK). Тогда общее число цветов станет 8. Это потребует применения РПЗУ 155 РЕ3 (хотя в простейшем случае можно обойтись без этого, сделав цвета INK теми же, лишь более яркими).
Вот такие 8 цветов на INK & PAPER - это, похоже, самый оптимальный вариант использующий исходную идеологию цвета через биты PC6, PC7. В таком варианте цвет задаётся и для битов 1 и для битов 0 в экранном байте, хотя это и не улучшает цветовое разрешение. Оно остаётся низким, т.к при групповом цвете возможны лишь два цвета на 8 соседних точек. Такая доработка с добавлением двух доп.битов для PAPER самоочевидна и именно так стоило в 1990 году улучшить схему цветного адаптера Специалиста, т.к такой цвет лучше цвета из МК 08.1990.
Но и у такого варианта есть недостатки. Большим неудобством при изготовлении является применение кодопреобразователя логического цвета в физический на 155 РЕ3. Если цвета доступные для фона (PAPER) и цвета доступные для цвета символов (INK) полностью разные, то возможно 8 цветов, но число их сочетаний ограничено. Причём, если надо брать графику из игр ZX-Spectrum, то совместимость по цветам не сделать, т.к в ZX набор цветов для INK и PAPER одинаков. Если же цвета INK-PAPER одинаковы, то число цветов на экране падает до всего 4.
- знакоместный цвет:
Для написания новых игр базирующихся на заимствованной от ZX-Spectrum графике (а других источников графики я не вижу: в коллектив разработчиков игры должен входить не только программист, но и художник, а этого нет) можно обдумать и идею знакоместного цвета.
Написание новых игр или даже адаптация игр от ZX в связи с малым числом программистов для Специалиста это сейчас совсем не веский довод. А вот раскраска знакоместами дающая 16 цветов для символов и для фона удобная для аппаратно-программного эмулятора игр ZX-16K - гораздо полезнее. Для этого распределение битов в регистре цвета (чтобы избежать перекодирования цветов) должно совпадать с назначением битов в поле атрибутов ZX (в том числе и бит мерцание). Отличие структуры экрана не важно, хотя это и тормозит визуализацию.
Чтобы ввести знакоместный цвет, параллельно экранному ОЗУ включаем статическое ОЗУ 2 (или 8 ) кб, причём адреса подключаются так, что на адрес A0 ОЗУ в 2 кб подаётся адрес А3 от схемы видеогенератора и процессора. Тогда (учитывая линейную и вертикальную организацию экранных байтов) при считывании последовательных 8-ми байтов экранного ОЗУ из доп.ОЗУ в 2 кб будет считываться один и тот же байт. Запись этого байта раскрашивает сразу квадратик 8*8 и на экране формируются 48*32 цветовых знакомест, что удобно для цветного текста, а экран из цветовых знакомест ZX-Spectrum с форматом 32*24 точно таких же цветных знакомест умещается в такой экран Специалиста.
В принципе эта идея является идеей второй параллельной банки для нужд цвета для бедных, т.е с сокращённым размером экранного ОЗУ для цвета. Для 80-тых годов это имело смысл. Сейчас нет, т.к доступны 6264, 62256 (и даже w24257), а размер ОЗУ для цвета в волковской идее цвета вообще не важен, т.к запись в него производит не процессор, а это делается автоматически.
А с применением экранного ОЗУ цвета того же размера на 62256 получается то же самое, что и с полной банкой 565РУ6 для цвета напаянной вторым этажом на ОЗУ на основной плате, хотя и внешний вид такой доработанной платы будет лучше (т.к со стороны деталей не будет видно проводов идущих на 2, 14 и 3 ноги РУ6-тых напаянных вторым этажом).
Прикинем требуемый объём деталей. Т.к адрес на ОЗУ выдаётся по половинкам и защелкивается по RAS/CAS, то для восстановления полного адреса придётся применить регистр, например 555 ИР23, защёлкивая в нём первую половину адреса по фронту /RAS. Вторая половина экранного адреса готова после фронта /CAS. Сигнал выборки ОЗУ цвета /CS - это объединённые на ЛЛ1 /RAS и /CAS. Длительность такого сигнала равна пол периода частоты 2 МГЦ, т.е 250 НСЕК. Большинство 6264 рассчитаны на работу с циклом доступа в 200 НСЕК, а более современные w24257 имеют быстродействие на порядок выше.
В качестве выходной защёлки понадобятся ещё два 8-ми разрядных регистра (две 555 ИР23 удобнее вместо 589 ИР12 и 155 ИР1) и выходной мультиплексор 1533 КП11. Или можно применить мультиплексор с триггерами внутри. Если же нужен ещё и ZX-FLASH, то понадобится ещё один вентиль из 1533 ЛП5 и 561 ИЕ10. По деталям это почти столько же, что и в схеме волковского цвета (в котором 6 микросхем). Чтобы с'экономить на пайке 16 проводов можно использовать идею конструктива Language Card из Apple-II, используя разъём DIP-16 с косой втыкаемый в панельку 565 РУ5.
При рассмотрении схем альтернативных цветовых адаптеров разумно также рассмотреть вопрос мерцаний в играх Специалиста. Некоторые люди считают, что перерисовка спрайтов на медленной машине вызывает мерцания. С этим столкнулись разработчики "Принца Персии" для БК-011. Впрочем, быстродействие процессора в БК-0011 ниже. Кардинально проблему решает только наличие второго экрана. В случае платы ЭКСПРЕСС, которая на 565 РУ5, второй экран вводится просто, - кусок провода подаёт на вход адресного мультиплексора КП2 сигнал управляющий номером отображаемого экрана.
barsik- Ветеран
- Сообщения : 1032
Дата регистрации : 2016-11-10
Откуда : Россия, СПб
.
2
В Специалисте с цветным адаптером из МК 08.1990 цвет считывается из внешнего поля цвета с организацией 12К*3 недоступного процессору. Запись в это недоступное процессору трехразрядное ОЗУ цвета производится автоматически при записи байтов в поле графики (9000...BFFF) путём переписывания битов из так называемого регистра цвета. В качестве которого ради экономии деталей используются неиспользуемые биты ППА клавиатуры. Т.к этих битов всего 3, то и получается возможность задавать цвет только "чернил" при неизменно чёрном фоне (цвете "бумаги"). Хотя сама концепция группового цвета (общий цвет на экранный байт) ничуть не препятствует заданию кроме цвета символов также и цвета фона (так сделано в ОРИОНЕ и других машинах с групповым цветом).
Чёрный цвет фона в Специалисте сделан лишь из экономии, т.к в ППА клавиатуры больше нет свободных битов и при добавке доп.аппаратурой дополнительных (ещё до пяти) битов в регистр цвета утратится не только простота адаптера, но и тот факт, что волковский адаптер цвета конструктивно представляет собой внешний прибамбас, т.е приставку, которая паяется на отдельной платке и подключается без изменений на основной плате компьютера (без разрезов печати, бросаний проводов между цепями и напайки второэтажных микросхем).
Было бы конечно лучше, если бы А.Волков не считал радиолюбителей тупыми неумейками, способными лишь на простейшие доработки такого плана, и применил бы полноценный регистр цвета, для чего у него было два варианта. Или использовать 8 битовый порт дополнительной ППА (что в принципе лучший вариант, т.к деталей меньше и попутно вводит, точнее стандартизует, доп.ППА, которого нет в базовой схеме) или добавить в схему отдельный регистр цвета в шину процессора.
Если вводить регистр цвета "по науке", то это потребовало бы кроме установки самого регистра цвета (например, на 555 ТМ9) также введения и доп.дешифратора ИД7 на область портов (т.к в базовой схеме Специалиста нет свободных чип-селектов) и формирования с его помощью строба записи в регистр цвета. Получить чип-селект на запись можно установив на основной плате вторым этажом 555 ИД7, а чтобы чип-селект был на запись понадобится ещё один корпус логики (например 555 ЛЛ1). Но можно применить вместо логики два диода + резистор (чтобы на "монтажном-ИЛИ" логически сложить сигнал /CS обращения в порт и /WR процессора).
В базовой схеме Специалиста нет системных портов и свободных чип-селектов на запись. Однако, если немного напрячь мозг, то можно сообразить, что в Специалисте есть занятые чип-селекты, которые использованы только на чтение. Это чип-селекты для ПЗУ 573 РФ2 по адресам C000, C800, D000... F000. Тогда затратив всего-лишь два диода + резистор (с помощью которых схемой "монтажного-ИЛИ" объединяются сигналы /CS C000 и /WR процессора) мы получаем необходимый для цветового адаптера чип-селект на запись с минимальным расходом труда и денег.
С учётом этой идеи и изложенного в предыдущем посте вот какой оптимальный и совместимый вариант цвета должен был изобрести Л.Афанасьев в 1992 году для Специалиста-MX:
Здесь цвет символов задаётся так же как и в схеме МК 08.1990 из битов PC4, PC6, PC7 ППА. Регистр цвета для фона, также 3-х битовый (т.к нет смысла больше, если цвет символов 3-х битовый) добавляется отдельно на 555 ИР16 (можно любой другой подходящий регистр с записью как по фронту так и по уровню). Но включается этот доп.регистр не в шину компьютера (хотя и это не проблема при желании), а через тот-же ППА-клавиатуры. При этом надёжность компьютера не меняется, т.к шина не грузится доп.нагрузкой.
Данные в регистр цвета фона на ИР16 перезащёлкиваются с PA0...PA2 ППА командой записи в адрес C000. По этому адресу C000 в Специалисте стоит ПЗУ, потому конфликта на шине не возникает и доп.адрес на системный регистр не затрачивается. /CAS на 565 РУ6 формируется в двух случаях: во-первых, если происходит обращение процессора и адрес попадает в окно 8000...BFFF, и во-вторых, не важно при каком адресе, если обращается видеосхема. В схеме Специалиста есть сигнал названный здесь VIDEO (DD12/8), который =1, если происходит обращение видеосхемы и =0, если к ОЗУ обращается процессор. Для 565 РУ5, как в схеме MX выделять окно не требуется (и два вентиля отпадают), но 565 РУ6 стоят дешевле (а мне они предпочтительнее потому, что у меня осталось 70 штук 565 РУ6 купленных ещё в 1989 при изготовлении Apple-II, тогда как РУ5 лишних давно нет).
Такая схема даёт совместимость с официально стандартным 8-ми цветным адаптером. Перед запуском цветной программы рассчитанной на цветной адаптер по схеме МК 08.1990 достаточно в регистр ИР16 записать цвет 000 (соответствующий чёрному фону). Дополнительным плюсом этой концепции является то, что для цвета символов и цвета фона использованы отдельные регистры, что упрощает закраску фона (например при мерцании окна) - для этого программе не требуется знать цвет символов в окне.
В такой схеме занесение цвета символов в регистр цвета занимает две команды процессора, а задание цвета фона занимает пять команд процессора (при включении регистра в шину также было бы две команды процессора). Добавление всего трёх команд процессора несущественно уменьшает скорость работы с цветом, гораздо важнее, что шина не грузится. Экономить нагрузку шин желательно потому, что в Специалисте с добавленной второй банкой и пользовательским портом и без того добавляется достаточно микросхем нагружающих шину.
Эта схема местами недостаточно резкая и контрастная, т.к получена путём перечерчивания нижеприведённой оцифрованной антикварной схемы цвета Специалиста MX (кстати похоже, что эта схема была в в 1992 году начерчена граф.редактором PENX$ ОРИОНА или чем-то подобным на 8-ми разрядке, т.к схемы из под PENX-а весьма похожи). Предлагаемая схема и сама проще и не требует монтажа на основной плате доп.дешифратора 555 ИД7 для доп.портов, причём обеспечивает совместимость, что самое главное при доработках подобного рода.
Чёрный цвет фона в Специалисте сделан лишь из экономии, т.к в ППА клавиатуры больше нет свободных битов и при добавке доп.аппаратурой дополнительных (ещё до пяти) битов в регистр цвета утратится не только простота адаптера, но и тот факт, что волковский адаптер цвета конструктивно представляет собой внешний прибамбас, т.е приставку, которая паяется на отдельной платке и подключается без изменений на основной плате компьютера (без разрезов печати, бросаний проводов между цепями и напайки второэтажных микросхем).
Было бы конечно лучше, если бы А.Волков не считал радиолюбителей тупыми неумейками, способными лишь на простейшие доработки такого плана, и применил бы полноценный регистр цвета, для чего у него было два варианта. Или использовать 8 битовый порт дополнительной ППА (что в принципе лучший вариант, т.к деталей меньше и попутно вводит, точнее стандартизует, доп.ППА, которого нет в базовой схеме) или добавить в схему отдельный регистр цвета в шину процессора.
Если вводить регистр цвета "по науке", то это потребовало бы кроме установки самого регистра цвета (например, на 555 ТМ9) также введения и доп.дешифратора ИД7 на область портов (т.к в базовой схеме Специалиста нет свободных чип-селектов) и формирования с его помощью строба записи в регистр цвета. Получить чип-селект на запись можно установив на основной плате вторым этажом 555 ИД7, а чтобы чип-селект был на запись понадобится ещё один корпус логики (например 555 ЛЛ1). Но можно применить вместо логики два диода + резистор (чтобы на "монтажном-ИЛИ" логически сложить сигнал /CS обращения в порт и /WR процессора).
В базовой схеме Специалиста нет системных портов и свободных чип-селектов на запись. Однако, если немного напрячь мозг, то можно сообразить, что в Специалисте есть занятые чип-селекты, которые использованы только на чтение. Это чип-селекты для ПЗУ 573 РФ2 по адресам C000, C800, D000... F000. Тогда затратив всего-лишь два диода + резистор (с помощью которых схемой "монтажного-ИЛИ" объединяются сигналы /CS C000 и /WR процессора) мы получаем необходимый для цветового адаптера чип-селект на запись с минимальным расходом труда и денег.
С учётом этой идеи и изложенного в предыдущем посте вот какой оптимальный и совместимый вариант цвета должен был изобрести Л.Афанасьев в 1992 году для Специалиста-MX:
Здесь цвет символов задаётся так же как и в схеме МК 08.1990 из битов PC4, PC6, PC7 ППА. Регистр цвета для фона, также 3-х битовый (т.к нет смысла больше, если цвет символов 3-х битовый) добавляется отдельно на 555 ИР16 (можно любой другой подходящий регистр с записью как по фронту так и по уровню). Но включается этот доп.регистр не в шину компьютера (хотя и это не проблема при желании), а через тот-же ППА-клавиатуры. При этом надёжность компьютера не меняется, т.к шина не грузится доп.нагрузкой.
Данные в регистр цвета фона на ИР16 перезащёлкиваются с PA0...PA2 ППА командой записи в адрес C000. По этому адресу C000 в Специалисте стоит ПЗУ, потому конфликта на шине не возникает и доп.адрес на системный регистр не затрачивается. /CAS на 565 РУ6 формируется в двух случаях: во-первых, если происходит обращение процессора и адрес попадает в окно 8000...BFFF, и во-вторых, не важно при каком адресе, если обращается видеосхема. В схеме Специалиста есть сигнал названный здесь VIDEO (DD12/8), который =1, если происходит обращение видеосхемы и =0, если к ОЗУ обращается процессор. Для 565 РУ5, как в схеме MX выделять окно не требуется (и два вентиля отпадают), но 565 РУ6 стоят дешевле (а мне они предпочтительнее потому, что у меня осталось 70 штук 565 РУ6 купленных ещё в 1989 при изготовлении Apple-II, тогда как РУ5 лишних давно нет).
Такая схема даёт совместимость с официально стандартным 8-ми цветным адаптером. Перед запуском цветной программы рассчитанной на цветной адаптер по схеме МК 08.1990 достаточно в регистр ИР16 записать цвет 000 (соответствующий чёрному фону). Дополнительным плюсом этой концепции является то, что для цвета символов и цвета фона использованы отдельные регистры, что упрощает закраску фона (например при мерцании окна) - для этого программе не требуется знать цвет символов в окне.
В такой схеме занесение цвета символов в регистр цвета занимает две команды процессора, а задание цвета фона занимает пять команд процессора (при включении регистра в шину также было бы две команды процессора). Добавление всего трёх команд процессора несущественно уменьшает скорость работы с цветом, гораздо важнее, что шина не грузится. Экономить нагрузку шин желательно потому, что в Специалисте с добавленной второй банкой и пользовательским портом и без того добавляется достаточно микросхем нагружающих шину.
Эта схема местами недостаточно резкая и контрастная, т.к получена путём перечерчивания нижеприведённой оцифрованной антикварной схемы цвета Специалиста MX (кстати похоже, что эта схема была в в 1992 году начерчена граф.редактором PENX$ ОРИОНА или чем-то подобным на 8-ми разрядке, т.к схемы из под PENX-а весьма похожи). Предлагаемая схема и сама проще и не требует монтажа на основной плате доп.дешифратора 555 ИД7 для доп.портов, причём обеспечивает совместимость, что самое главное при доработках подобного рода.
Последний раз редактировалось: barsik (Пт Окт 02 2020, 11:23), всего редактировалось 3 раз(а) (Обоснование : немного изменил схему)
barsik- Ветеран
- Сообщения : 1032
Дата регистрации : 2016-11-10
Откуда : Россия, СПб
Re: Улучшение цвета Специалиста
3
На первой схеме я вижу три микросхемы К555ЛА3, К555ЛЕ1 и К555ЛЛ1. Если это используются свободные элементы из самого компьютера, то понятно вопросов нет, но если ставятся три микросхемы и во второй и третьей используются только по одному логическому элементу, то это не рационально. Достаточно одной ЛЕ1. А для получения элемента ИЛИ просто соединить два логических элемента ИЛИ-НЕ из микросхемы К555ЛЕ1 последовательно, у первого элемента оба входа используются по назначению, а у второго, один вывод соединяется с выходом первого, а второй оставляется висеть в воздухе или соединить с общим проводом. И даже останется свободный один логический элемент ИЛИ-НЕ.
Viktor2312- RIP
- Сообщения : 15492
Дата регистрации : 2012-08-10
Возраст : 45
Откуда : Пятигорск
.
4
Свободные вентили из основной платы можно использовать, если цветной адаптер монтируется вторым этажом на самой плате компьютера. Если же адаптер на отдельной платке, то элементы на основной плате компьютера можно использовать только для инверсии сигнала поступающего на плату цветного адаптера (в частности А14). А вся схема цветного адаптера должна быть на внешней платке, т.к в этом тогда и заключается сюжет - получить цвет с помощью внешней платки, которая может, например, подключаться через разъём и при необходимости может быть мгновенно снята без потери работы компьютера в базовом монохромном варианте.Viktor2312 пишет:Если это используются свободные элементы из самого компьютера
На плате Специалист-Экспресс нет свободных вентилей, но возникают два свободных вентиля из добавленной 155 ЛА3 служащей для освобождения разряда PC4 ППА. Эта доработка в любом случае делается на основной плате. Из этой добавленной ЛА3 (монтируемой вторым этажом над DD14) делается RS-триггер формирователь сигнала НП, (этот RS-триггер сбрасывается по сигналу /RESET, а взводится по сигналу /WR процессора).
Представленная схема получена из схемы цветного адаптера Специалист MX, потому детали и схема на 80% оттуда. Какие микросхемы были там, те и остались. Эта схема не та, по которой, например я расширю цвет в своём Специалисте, - эта схема конечно рабочая, но я и не ставил задачи нарисовать окончательную оптимизированную схему.Viktor2312 пишет:это не рационально
Эта схема была предназначена лишь проиллюстрировать концепцию и потому отличается от схемы цветного адаптера Специалиста MX лишь тем, что там регистр цвета на двух ИР16, а здесь на одной ИР16 и уже ранее задействованных для цвета битах порта. Схема конечно оптимизируется. Например, просто глупо было бы ставить две 1533 ТМ8 (используемых на 6 разрядов), если они заменяются одной 1533 ТМ9 (у которой как раз 6 разрядов и тоже есть вход R). Вентиль 555 ЛЕ1 используемый для объёдинения /WR и /CS по ИЛИ может быть и ЛЛ1 и даже заменяется двумя диодами, а узел формирующий /CAS при доработке архитектуры также изменяется.
Это потому, что тогда следует учесть не только размещение экранной области с 8000, но ещё и наличие второй банки ОЗУ или разворот на 8000 ОЗУ выше C000 (чтобы при включении в окне 8000...BFFF другого {неэкранного} участка ОЗУ - /CAS для записи в 565 РУ6 не формировался). Кстати, если платка адаптера отдельная, то глупо ставить 589ИР12, - она заменяется на 555 ИР22 (у меня на нескольких платах такая замена была сделана). Ставить 589ИР12 на цветном адаптере имеет смысл только, если её припаивают вторым этажом на 589ИР12 стоящую на основной плате.
У меня уже сделана схема цвета А.Волкова (5-ти цветная из 1988 года). Это сделано без платки, вторым этажом. Схема А.Волкова лучше для ручного монтажа тем, что там микросхемы 565 РУ5, 589 ИР12 и две 155 ИР1 напаиваются на одноимённые микросхемы стоящие на основной плате. При этом у этих ИМС почти все ноги в параллель. Этим мы экономим два метра дорогого провода МГТФ-0.03 и полтора часа труда. Потому при ручном монтаже цветного адаптера и не имеет смысла делать цветной адаптер на отдельной платке (как предлагал А.Волков). Иное дело, если делается промышленная печатная плата.
Ещё есть такое соображение, что делая доработку проводками, монтируя детали в два этажа, иногда выгоднее применить две отдельные микросхемы, тогда как теоретически достаточно и одной. Если применение двух микросхем избавляет от длинных проводов, то это предпочтительнее.
- - - Добавлено - - -
Перерисовал схему чуть иначе, чтобы осталось всего два корпуса логики и подозрений о тупости автора не возникало.
Никто не подскажет программу, которая из PNG или BPM (или других многоцветных форматов) делает чёрно-белый рисунок ? Т.е все цвета, кроме белого должны конвертироваться в чёрный. Это позволит на порядок сократить размер файлов оцифрованных чёрно-белых схем. Лет 20 назад я получал похожий результат используя программу Foto Angelo. С её помощью я увеличивал до предела контрастность, а потом в PAINT-е сохранял графику в формате BMP 16 цветов, а если оцифровка резкая, то и в монохроме. При этом потери контуров линий становились минимальными, а размер файла (выгруженного потом в формате PNG или JPG) становился минимальным.
barsik- Ветеран
- Сообщения : 1032
Дата регистрации : 2016-11-10
Откуда : Россия, СПб
Re: Улучшение цвета Специалиста
5
barsik пишет:Никто не подскажет программу, которая из PNG или BPM (или других многоцветных форматов) делает чёрно-белый рисунок ? Т.е все цвета, кроме белого должны конвертироваться в чёрный. Это позволит на порядок сократить размер файлов оцифрованных чёрно-белых схем. Лет 20 назад я получал похожий результат используя программу Foto Angelo. С её помощью я увеличивал до предела контрастность, а потом в PAINT-е сохранял графику в формате BMP 16 цветов, а если оцифровка резкая, то и в монохроме. При этом потери контуров линий становились минимальными, а размер файла (выгруженного потом в формате PNG или JPG) становился минимальным.
Я вот уже много лет пользуюсь Microsoft Office Picture Manager который входит в Microsoft Office 2007. Она позволяет плавно в обе стороны изменять яркость, контрастность, насыщенность и ещё много чего, а также изменять разрешение на любое с шагом в 1 пиксель, обрезать изображение, поворачивать на любой угол с шагом 1 градус, очень удобно при сканах, когда они как раз бывают повёрнуты на 1...10 градусов. В общим мне её возможностей достаточно и пользуюсь ею, ну если ни каждый день, то через день точно. Вашу схему выше, например, если никакие настройки не трогать, а только ползунок "Яркость средних тонов" пододвинуть влево до -50%, то она будет вот так выглядеть:
А вообще, я не люблю когда картинка обрезана по самые яйца, слева, справа, сверху и снизу. Предпочитаю когда имеется отступ, просто белый, примерно 5 мм хотя бы. Поэтому я беру Paint XP которым уже тоже давно пользуюсь, с момента установки у себя Windows 7, а в нём как известно уже нет Paint -а старого, доброго и привычного, а какая-то хрень, на мой взгляд. Поэтому просто пользуюсь старым добрым Paint -ом, но в виде отдельной программы Paint XP.
Запускаем его, открываем картинку, и в атрибутах добавляем энное количество пикселей по вертикали и по горизонтали, а потом выделив картинку, располагаем её по центру. У вас картинка имеет разрешение 800 х 339 пикселей, я сейчас добавлю 50 пикселей по ширине и по высоте:
И вот что имеем, но разрешение увеличилось на 50 пикселей до 850 х 389:
А если изображение всё же нужно 800 пикселей по ширине, ну мало ли у кого какие заскоки, привычки, потребности или требования, то во всё том же Microsoft Office Picture Manager в пару кликов, мы возвращаем изображение к размеру 800 пикселей по ширине, но естественно оконтовка в виде белых полей уже будет и никуда не денется:
Я же, например, когда выкладываю на форум хочу чтобы у меня картинка помещалась на экране и не была справа обрезана, а для этого она должна иметь разрешение по ширине не более 720 пикселей, и опять же в пару кликов, я делаю её по ширине 720 пикселей и это будет так, как ниже. А если картинка большая всё же нужна, чтобы качество не упало, то всегда можно выложить кликабельную превьюшку...
При этом всегда можно побаловаться с яркостью, контрастностью и т. д., чтобы изображение было более чётким и детальным или более читабельным.
Или по-извращаться:
Вот как-то так...
Ладно, пойду разрабатывать печатную плату, и думать насчёт RS-триггеров...
Viktor2312- RIP
- Сообщения : 15492
Дата регистрации : 2012-08-10
Возраст : 45
Откуда : Пятигорск
Похожие темы
» Улучшение архитектуры Специалиста
» Турбирование Специалиста
» Винчестер для СПЕЦИАЛИСТА
» Программирование для CP/M Специалиста
» Low TPA CP/M для Специалиста
» Турбирование Специалиста
» Винчестер для СПЕЦИАЛИСТА
» Программирование для CP/M Специалиста
» Low TPA CP/M для Специалиста
Страница 1 из 1
Права доступа к этому форуму:
Вы не можете отвечать на сообщения