ZX screen
ZXNet echo conference «real.speccy»
From Aleksey Tarasow → To All 27 July 2003
Как то в эхе zx.spectrum я поднимал вопрос, о том какие есть на спекки
расширенные экраны.
Получил несколько ответов, вот результат:
* Стандарт 256х192 - 8 цветов на знакоместо.
* Profi 512х240 - монохромный, аппаратно можно установить любой цвет
инк/папер из 8 цветов (на старых версиях).
* Profi 512х240 - атрибут на байт 8 цветов.
* Profi 512х240 - атрибут на байт 16 цветов (начиная с версии 3.х).
* Profi 512х240 - атрибут на байт 16 из 256 цветов (версии 5.х, 4.х(???)).
* ATM 1 640х200 - атрибут на байт (аппаратный мультиколор).
* ATM 1 320х200 - каждая точка своим цветом, 16 цветов.
* ATM 2 80x25 - аппаратная консоль (текстовый режим).
* 512х192 - черно-белый, можно установить на любую машину.
* 384x304 - AloneCoder'овский вроде (???).
* 256x192 - мyльтиколеp (???).
* 256x192 - программный мyльтиколеp, 4 цвета на точку.
* 128x192 - программный мyльтиколеp, 16 цвета на точку.
* 256x192 - аппаратный мультиколор (???).
* 256x192 - без бордюра (???).
* Sprinter 320х256 - 256 цветов на точку.
* Sprinter 640х256 - 16 цветов на точку.
* Sprinter ??х?? - аппаратная консоль (текстовый режим).
* GMX 640х200 - больше данных нет (???).
* GMX ??x?? - аппаратная консоль (текстовый режим) (???????).
* ZXNEXT 640х240 - монохромный цвет инк/папер могут быть любые.
* Кворум ???х??? - ??????
Прошу дополнить, исправить. Если у кого есть любая схемы установки
расширенного графического экрана на компьютер, прошу поделиться со мной. Так же
нужна информация о строении и размещение всех экранов (кроме Profi и
стандартого :).
From Nikolaj Amosov → To All 28 July 2003
Aleksey Tarasow в своем письме к All писал:
AT> Как то в эхе zx.spectrum я поднимал вопрос, о том какие
AT> есть на спекки расширенные экраны. Получил несколько
AT> ответов, вот результат:
[...skipped...]
AT> * GMX 640х200 - больше данных нет (???).
[...skipped...]
AT> Прошу дополнить, исправить. Если у кого есть любая
AT> схемы установки расширенного графического экрана на
AT> компьютер, прошу поделиться со мной. Так же нужна
AT> информация о строении и размещение всех экранов (кроме
AT> Profi и стандартого :).
Вот тебе про GMX поподробнее:
Количество цветов как и в обычном ZX Spectrum, но в отли-
чии от ZX каждому байту графики соответствует байт атрибутов.
Для того чтобы изображение было цветное, необходимо обязательно
наличие 2-х SIMM-ов, т.е. как минимум 512К. Адресация графичес-
кого экрана начинается с С000h, при этом полностью линейна, т.е.
первые 80 байт - первая строка экрана, следующие 80 байт - вто-
рая, и т.д. Сам графический экран расположен в банке #39(SCR=0)
или #3A(SCR=1). Всего экран имеет 200 графических строк и зани-
мает 16000 байт памяти под графику и столько же под атрибуты.
Атрибуты экрана хранятся в аналогичной странице раширенной памя-
ти (SM2=1, D2- порта DFFD), т.е. #79 или #7A. Адресация байтов
атрибутов такая же как и байтов графики, структура байта атрибу-
тов стандартная.
Основное назначение расширенной графики - стандартный
текстовый экран 80*25 символов (символ 8*8 пикселей), необходи-
мый для работы с текстовыми редакторами и терминальными програм-
мами.
Для ускорения работы в текстовом режиме используется ап-
паратный скроллинг вверх-вниз. Для сдвига изображения по верти-
кали на любое количество строк необходимо лишь выполнить запись
двух байт в порты "скроллера", которые задают начальный адрес в
области видео-ОЗУ для вывода изображения. Порты #7AFD (мл.байт)
и #7CFD (ст.байт) представляют из себя как бы единый 14-ти раз-
рядный регистр. Таким образом, чтобы сдвинуть изображение на од-
ну графическую строку вниз необходимо запиать в этот регистр
число 80d, на одну текстовую строку - 640d, на N текстовых строк
- 640*N(N<=25). Отметим, что минимальный шаг скроллинга равен
одной графической строке, поскольку младшие четыре бита аппарат-
но сбрасываются.
From Vassili Klimov → To All 28 July 2003
AT> * Profi 512х240 - монохромный, аппаратно можно установить любой цвет
AT> инк/папер из 8 цветов (на старых версиях).
AT> * Profi 512х240 - атрибут на байт 8 цветов.
AT> * Profi 512х240 - атрибут на байт 16 цветов (начиная с версии 3.х).
1. все версии 3.х были монохромные (другое дело, что была доработка для этих
плат, делающая цветным цпм экран)
2. кто-нибудь видел профи с платами версии меньше 3.xx??
AT> * Profi 512х240 - атрибут на байт 16 из 256 цветов (версии 5.х,
AT> 4.х(???)).
^^^^^^^^^^^^^^ на этих палитры не было никогда
AT> * 384x304 - AloneCoder'овский вроде (???).
да, ужасно кривой :]
AT> * GMX ??x?? - аппаратная консоль (текстовый режим) (???????).
нет такого, по крайней мере нигде не упонинается
есть еще flashcolor
покедова Aleksey
jtn\\4d
From Aleksey Tarasow → To All 29 July 2003
AT>> Прошу дополнить, исправить. Если у кого есть любая
AT>> схемы установки расширенного графического экрана на
AT>> компьютер, прошу поделиться со мной. Так же нужна
AT>> информация о строении и размещение всех экранов (кроме
AT>> Profi и стандартого :).
From Aleksey Tarasow → To All 29 July 2003
AT>> цвет инк/папер из 8 цветов (на старых
AT>> версиях). * Profi 512х240 - атрибут на байт 8 цветов. * Profi
AT>> 512х240 - атрибут на байт 16 цветов (начиная с версии 3.х).
VK> 1. все версии 3.х были монохромные (другое дело, что была доработка
VK> для этих плат, делающая цветным цпм экран)
Hе со всем. В начале, как только они появились, да. Hо последние шли уже с
доработкой (если не ошибаюсь было три версии третей платы). У одного моего
друга, Профи 3.2 сразу с цветным экраном.
VK> 2. кто-нибудь видел профи с платами версии меньше 3.xx??
Я не видел.
From Vassili Klimov → To All 31 July 2003
AT>
AT> Расширеной палитры не было? Я весьма слобо представляю чем 4 версия
AT> отличается от остальных.
ну вот а говоришь знаешь все о профи, итак
1. отличия плат версий 3 и 4:
a) цветной cpm, по идее 16 цветов инк и 16цветов папер независимо друг от
друга! (на некоторых платах 4.х есть глюк, bright так и остался общий как в
оригинальном спектрумовском режиме)
б) идиотский синхрогенератор на версии 4.х (устраняется его даунгрейдом до
подобного 3й версии)
в) cmos часы, и полный rs232 (с контроллером прерываний), плюс микрухи 556рт4
питаются динамически (как на скорпе, но нахер это нужно? на след. версии этого
нет).
2.теперь отличия версий 4 и 5 (микрсхемы теперь стоят горизонтально)
а) полностью новый синхрогенератор, один из лучших из всех клонов zx
б) палитра 256 цветов, реально на экране по прежнему максимум 16 цветов (на
статических картинках), на динамических можно увидеть хоть все 256
в) поле под 32 микросхемы ру5/ру7
г) контроллер IDE
AT>
From Aleksey Tarasow → To All 1 August 2003
VK> надо в zx-gude старых смотреть (номер 2 или 3й)
Буду искать.
VK> или спроси автора, он здесь постоянно обитает :]
Автор АУ-У-У!!! :) Hужна инфа по твоему творению!!
VK>> есть еще flashcolor
AT>> Есть данные по нему?
VK> это вообще не доп. режим а альтернативное использование сигнала flash,
VK> т.е. он используется не по прямому назначению, а для квеличения
VK> отображаемой палитры (если в знакоместе включен flash, то в нем папер
VK> всегда=0, а цвет инка определяется смесью реальных значений в этом
VK> атрибуте инка и папера)
Hе важно, все равно это расширение граф.возможностей.
VK> все это раз 5 уже писалось в разных газетах/журналах, недавно в
VK> последнем krnews была подобная схема
Буду искать.
VK> а еще есть гигаскрин, но это тоже не особый режим, а просто
VK> аппаратное переключение экранов через строчку изображения
А про этот забыл. :) Схема есть, и даже установку себе заказал.
From Dima Bystrov → To All 3 August 2003
01 Aug 03 23:53, Aleksey Tarasow wrote to Vassili Klimov:
/=== Begin Windows Clipboard ===/
Цели, которые я преследовал,были следу-
ющие: позволить использовать всю площадь
экрана, включая бордюр,не добавляя к схеме
компьютера ни одной микросхемы; освободить
процессор от изнурительных трудов по пере-
ключению/перемещению экранных буферов; ис-
пользовать при всем этом серийный сдвоен-
ный переключатель для включения/отключения
полученного рулеза.
о что мы должны сделать в первую оче-
редь? Естественно, отыскать сигнал бордюра
(вот характерный участок схемы)...
║ │ D10 ║
─┐ ║ │ D9 +5v 13┌─┬─┬─┐ ║
1├B3Є │ 4┌───┐ ___<┬──oR│T│ │ ║
2├B4Є ├────┤ & │6 BOR │12├─┤ │Q│ ║
4├B5Є │ 5│ ├───x──┼──┤D│ │ │ ║
8├──Ґ─┘ ┌──┤ 1 │ ┌┼──/C│ │_│ C5║
│ ║ │ └───┘ ││11├─┤ │Q├───────Є
>├┐ ║B1 │ │└──oS│ │ │ ║
─┘│ ╟───┼────────────┘ 10└─┴─┴─┘ C6║
──┘ ║ └──────────────────────────────Є
...и перерезать его (где поставлен крест).
Естественно, делать это надо при выключен-
ном компьютере :).Первый рулез будет виден
при включении компьютера: нет,не характер-
ный дымок, а то, что бордюр исчезнет, и на
его месте появятся следующие вещи:
┌───┬───┬───┬───┬───┬───┐
│ │ │ │ │ │ │
│ d │ a │ b │ c │ d │ b │
│___╔═══╪═══╪═══╪═══╗___│
│ ║ │ │ │ ║ │
│ d ║ A │ B │ C │ D ║ b │
│___║___│___│___│___║___│
│ ║ │ │ │ ║ │
│ h ║ E │ F │ G │ H ║ f │
│___║___│___│___│___║___│
│ ║ │ │ │ ║ │
│ l ║ I │ J │ K │ L ║ j │
│___║ │ │ │ ║___│
│ ╚═══╪═══╪═══╪═══ў │
│ │ грязь всякая │ │
└───┴───┴───┴───┴───┴───┘
В основном это повторение уже существу-
ющего изображения. ижняя часть читается с
адреса #5800,а атрибуты для неё - с адреса
#5B00.(Из этого вытекает,что пока её испо-
льзовать нельзя.)
Для начала и это неплохо. Я даже писал
бегущую строку через весь экран,переключая
с сумасшедшей скоростью (и ювелирной точ-
ностью) экранные буфера.
Можно, конечно,доверить это автоматике,
подав,например,бывший сигнал бордюра вмес-
то номера экрана на 13/D17. о, поверьте
мне, это путь тупиковый.
Давайте лучше выясним,из чего же состо-
ит сигнал бордюра:
000000
111111
111111 D9
111111 4┌───┐ ___ 000000
000000 ─────┤ & │6 BOR 011110
5│ ├───── 011110
011110 ─────┤ │ 011110
011110 └───┘ 000000
011110 ЛИ1
011110
011110
Так вот,сигнал с четвёртой ножки мы по-
дадим...э-э-э... на какой же адрес его по-
дать?
Давайте введём названия для всех адре-
сов (не адресов процессора,а адресных вхо-
дов устройства управления памятью - УУП):
A0,A1,A2,A3,A4,A5,A6,A7,
A8,A9,A10,A11,A12,A13,
P0,P1,P2.
Сигналы P0-P2 - это в обычном понимании
биты номера странички,к которой мы обраща-
емся. Сигналы A0-A12 уже использованы. а
странички пока зариться не будем. Остаётся
A13. А точнее - A13V, т.е.тот A13, который
подаётся на УУП видеоконтроллера(D16-D17),
в отличие от УУП процессора(D18-D19).В но-
рме на A13V висит земля. А наш сигнал в
поле основного экрана - единица. Придётся
поставить рубильник:
___
BOR in ___
───────── \ BOR out
+5v ║\──────────────
( <───)║
║
┌── \ A13V (11/D17)
4/D9 ┴ \──────────────
─────────
Теперь центральная часть экрана будет
читаться с адреса #6000,а то,что по краям,
останется по старому адресу #4000.
Думаете,уже всё? А вот и нет! Ведь вер-
хняя треть по-прежнему дублируется,а в ни-
жней - атрибуты и маска читаются из одного
и того же места.Посмотрим ещё раз на схему
пентагона и найдём сигнал P0V (14/D17), на
который подано +5v.ашли? Так вот,эти пять
вольт мы перережем(кроя матом тех,кто про-
вёл эту дорожку под микросхемой) и заместо
них кинем сигнал 5/D9. Что мы получили:
│ │
4-я стр. #C018│ #E000 │#C008 4-я стр.
____╔════════╗____
║ ║
#4018║ #6000 ║#4008
║ ║
────╚════════ў────
4-я стр. #D818│ #F800 │#D808 4-я стр.
│ │
Остаётся сделать финальный рывок: отвя-
зать адреса атрибутов и маски друг от дру-
га таким образом, чтобы нижнюю треть стало
можно использовать не только для атрибут-
ных скроллов. айдите на схеме мультиплек-
сор, который коммутирует эти адреса:
D14 ║
┌──┬──┬──┐ ║
─B12──────2┤A0│ │ │ ║
─B13──────5┤A1│ │Y0├4───B14─Є (A8V)
+5v ├──11┤A2│ │ │ ║
<──────14┤A3│ │Y1├7───B15─Є (A9V)
─B6───────3┤B0│ │ │ ║
─B7───────6┤B1│ │Y2├9───B16─Є (A10V)
─B8──────10┤B2│ │ │ ║
─B12─────13┤B3│ │Y3├12──B17─Є (A11V)
├──КП11 │ ║
─C30──────1┤V │ │ │ ║
├──┤ │ │ ║
├──15┤W │ │ │ ║
└──┴──┴──┘ ║
Отрежьте +5v от 14/D14 (будьте осторож-
ны,не отрежьте питание у самой микросхемы)
и подайте вместо него всё тот же сигнал
5/D9. Всё! Теперь атрибуты в самой верхней
и самой нижней третях берутся не из расчё-
та "все атрибуты хранятся по адресам 4-й
трети",а из расчёта "все атрибуты хранятся
по адресам 2-й трети", то есть,для верхней
трети по адресам #D000 и #F000, а для ниж-
ней - #D300 и #F300.Разумеется,в 4-й стра-
ничке ОЗУ.
Второй экран тоже можно использовать -
он разбросан по 7-й и 6-й страничкам.
/=== End Windows Clipboard ===/
- Alone Coder [ZX-Guide] [Inferno4] [AlCoNews] [ACE0.74lt] [PT3.65] [Chip1.3]
[STS5.6rus] [ANSI0.3G] [8col0.04] [ZXRARdem07] [ZXUNRAR0.49c7]
From Vassili Klimov → To All 4 August 2003
VK> хоть все 256
AT>
AT> Тут подробнее, плз. Hужна _любая_ инфа по расширеной палитре.
в мануале вроде есть какая никакая инфа, можешь попробовать крякнуть пзу (там
палитра сразу после ресета программиоуется), я бы мог написать да боюсь
ошибится - там нюансов разных гора
VK> г) контроллер IDE
AT>
AT> Есть информацию по винту? Если есть кидай в меня.
тлько порты и их программирование, инфы по использованию cpmа винтов, структур
данных и прочего нет
From Aleksey Tarasow → To All 5 August 2003
04 Авг 03 00:01, Dima Bystrov -> Aleksey Tarasow:
DB> /=== Begin Windows Clipboard ===/
DB> /=== End Windows Clipboard ===/
Спасибо. Уже нужно готовить исправленый список.
From Aleksey Tarasow → To All 5 August 2003
AT>> на 1 стандартном экране + полно пустого места. Что там не помню,
AT>> но рискну соврать, что там чут ли не два конденсатора вешается и
AT>> нужно порезать две дорожки.
VK> вот именно "соврать", доработка это несколько штук мелкосхем и
VK> регистров, паяется вторым этажом и при этом все опутано кучей мгтфа
Под рукой этих схем нет, так что пока отложим этот разговор.