nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 14:46



Reply to topic  [ 8 posts ] 
Электроника КР-04 
Author Message
Doomed
User avatar

Joined: 19 Feb 2017 03:46
Posts: 584
Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
Reply with quote
.
Собственно Электроника КР-04 с большой натяжкой может относиться к РК-подобным. Всё что его роднит с РК86, это общность стандартных входов в ПЗУ и использование БИС ВГ75, хотя неоспорима производность от РК86 самой мысли о применении ВГ75 в компьютере. Но т.к заводить новый раздел для машины у которой нет программ (и даже владельцев) бессмысленно, и раз тема об Электронике КР-03 в этом разделе, то и место темы о КР-04 тут же.

Про компьютер Электроника КР-04 в Интернете мало информации, даже Владимир Трушкин не упоминает в своём обзоре этот компьютер. Модель была довольно редкая и сейчас таких машин остались единицы. Популярности не способствовало также практически полное отсутствие программ для этого компьютера, хотя потенциал у машины был огромный. К сожалению, и эмуляторы этого компьютера отсутствуют как класс. Прогрессивные идеи "живут и побеждают" и могут сподвигнуть даже сейчас кого-нибудь из имеющих электро-паяльник на творчество на, уже казалось бы полностью перепаханной, ниве ВГ75 (например, придумать простую добавку в РК86 полноценной графики).

Наличие схем и прошивок Электроники КР-04 позволило разобраться в этой конструкции. В этом уникальном компьютере фонт располагается в основном ОЗУ (потому процессор легко может его менять). Чтобы этого достичь, ОЗУ работает при частоте /RAS /CAS 2.5 МГЦ. КР580 также тактируется клоком 2.5 МГЦ, причём вместо 580 ГФ24 применён формирователь Ф1 и Ф2 на мелкой логике делящий частоту кварца не на 9, а на 8, а вся схема компьютера стала синхронной. Из двух соседних периодов частоты 2.5 МГЦ в одном из этих периодов может обратиться процессор, а во втором читается фонт кода символа заданный на выходе ВГ75. Т.е принцип синхронизации доступов к ОЗУ между CPU КР580 и ВГ75 для доступа к фонту почти как в Специалисте/Орионе.

В данном компьютере реализован гораздо более грамотный и по деталям более экономный способ для воплощения идеи загружаемого фонта, чем другие два способа придуманные для РК86 уже в XXI веке и представленные несколько лет назад на одном популярном форуме посвященном ретро-ЭВМ. Но данная концепция для смены фонта не только проще аппаратно, но и одновремнно с возможностью грузить фонт и использовать компьютер как чисто текстовый, обеспечивает вывод полноценной попиксельной графики.

Принцип использования ВГ75 для вывода полноценной графики основан на том, что для вывода на экран двух текстовых строк по 64 символа, содержащей лишь неповторяющиеся коды, как раз достаточно 128-ми кодов символов, что поддерживает ВГ75. Для реализации идеи оказалось удачно, что ВГ75 обслуживает 4 в произвольном месте располагаемые атрибута. Как известно, из 4-х битов можно сформировать 16 разных кодов (от 0 до 15). Код символа выдаваемый из ВГ75 в каждом знакоместе строки используется как адрес графики текущей линии знакоместа в пределах двух строк. Весь экран состоит из 14 групп по две текстовые строки, где каждая из строк имеет высоту 8 линий растра (что и даёт 14*2*8= 224 линии отображения по вертикали), а 4-х битовым атрибутом каждой группе приписывается 4 адреса (задающее адрес начала в ОЗУ данной группы).

Чтобы коды символов размещённые в текстовом экранном ОЗУ работали в качестве графической развёртки, в это экранное ОЗУ в позиции соответствующие горизонтальным позициям 0...63 в строке заносятся те же числа 0...63 (а в позиции второй строки каждой группы из двух строк заносятся коды 64...127). Благодаря этому фрагмент ОЗУ размером 64*8 будет отображаться в строке в графическом виде в виде матрицы пикселей 480*8 (а вся группа из двух строк отображается участком 480*16).

Сигналы вертикальной развёртки знакоместа LC0...LC2 и 7 битов кода символа (он же является номером знакоместа) формируют 10-ти битовый адрес в ОЗУ графики в пределах группы (т.е двух строк, занимающих 1 кб). А удачно оказавшиеся в наличии в ВГ75 четыре атрибута ВГ75 используются для переключения нач.адресов в ОЗУ групп по 2 строки. Что теоретически позволяет вывести 16 групп, т.е 32 строки (что при высоте знакоряда в 8 линий отображает матрицу пикселей формата 480*256). Причём каждый пиксель может быть индивидуально зажжён или погашен. Таким образом 14-ти разрядный адрес для каждого экранного байта образуется из номера линии в знакоряду (3 бита), кода символа в текстовом экране (7 бит) и 4 битового атрибута, что установлен для каждой строки (ещё 4 бита).

В графическом режиме работают два экрана - один текстовый, который выполняет роль развёртки, и второй чисто графический отображающий в формате 480*224. Объём памяти графического экрана равен 64*2*8*14= 14 336 байт. А текстовый экран в режиме графики работающий как развёртка занимает ~2 кб. Для того, чтобы разворачивался весь экран, состоящий из 14 групп по 2 строки в каждой, в позицию перед началом каждой строки записывается атрибут. Для строк группы 0 этот код из 4-х атрибутов равен 0000, для строк группы 1 - 0001, группы 2 - 0010... и для последней группы N 13 код из битов атрибутов равен 1101.

Таким образом КР-04 это вовсе не текстовый компьютер, а графический. Точнее он как и Корвет содержит и текстовый адаптер и графический (используя при этом деталей в 4 раза меньше, чем Корвет). Текст в формате 64 символа может выдаваться, как в текстовом режиме, так и графикой. А текст в формате 80 символов в строке выдаётся только графикой. Подобная идея использования ВГ75 для вывода графики реализована также в компьютерах Арго ФВ-6511 и Юниор ФВ-6506, что наводит на мысль, что и КР-04 разработали в том же киевском НИИ. И вероятно КР-04 является стартовой моделью, т.к Юниор, а уж тем более Арго намного круче. 25 лет спустя ту же концепцию использовал freddy, чтобы разработать платку текстового адаптера.

ВГ75 в данной концепции работает вместо группы счётчиков и не делает ничего полезного кроме выдачи извращённым способом очередного экранного адреса. Кстати идея формирования видео из двух экр.буферов - из первого буфера читается адрес подлежащего отображению байта из графич.ОЗУ, а затем этот байт читается из графического ОЗУ и отображается, была применена ещё за 5 лет до КР-04 в западных компьютерах. Это позволяет быстро перемещать по экрану спрайты, а также программно эмулировать формат экрана любого граф.компьютера (кстати в Арго ФВ-6511 таким способом эмулируется перекорёженный экран ZX-Spectrum).

Для звуков стоит таймер ВИ53, но звук лишь одноголосный по идеям И.Крыловой (один из каналов задаёт длительность ноты, другой высоту тона). Также в отличие от РК в этом компьютере используются апп.прерывания КР580 - на его вход INT (программно отключаемо) заведён выход одного из каналов таймера делящий входную частоту 15.6 КГЦ, что позволяет иметь период прерываний от 128 мс до часа.

В общем это совсем не РК86, общность только по стандартным входам в ПЗУ и использованию той же связки БИС ВТ57-ВГ75, что доказывает, что и в СССР в конце 80-тых уже были выращены достаточно грамотные инженеры обладающие фантазией.

Это (наряду с Орионом и Корветом) один из компьютеров, где КР580 тактируется максимальным по РТМ клоком в 2.5 МГЦ. Но увы и в этом компе дурацкий ПДП обслуживающий ВГ75 заметно тормозит. Правда это торможение не аж на 27%, как это в РК86, а (благодаря более высокому CLK ВТ57) лишь на 18%. Так что расчётная эффективная скорость должна составлять ~2.04 МГЦ.  Т.о по скорости этот комп в ~1.6 раза скоростнее, чем РК86 (так что не так уж важно, что игры от РК86 не совместимы, т.к на увеличенной скорости в них было бы тяжело играть). 2 МГЦ для текстовой машины вполне достаточно, а для графической этого чересчур мало. Однако уникальная концепция позволяет в играх манипулируя не графикой, а развёрткой (т.е байтами в текстовом экране) перемещать и изменять спрайты на экране мгновенно.

Одновременно это второй советский комп, где текстообработка в режиме 64 символов в строке достаточно быстрая (первый, естественно, Корвет, в котором имеется ещё более скоростной текстов адаптер формата 64*16). А вот в режиме 80-ти символов в строке вывод текста тормозной, т.к для вывода символа в экран записывается не один экранный байт, а 8 или 16, причём с маскированием (что также медленно, как в типовой графической машине с небайтовым шрифтом). Также шрифт 8*8 гораздо симпатичнее, чем уродливый шрифт 6*8 применённый в РК86, Орионе и Специалисте.

Этот компьютер, как и все наборы "Электроника КР" продавался якобы в виде набора для сборки. Но на самом деле это вовсе не набор, а полуфабрикат, т.к платы были уже спаяны, настроены и даже смонтированы на раме. Всё, что оставалось сделать любителю это найти подходящий блок питания и изготовить подходящий корпус. В виде настоящих радиолюбительских наборов в США продавались микрокомпьютеры первой волны (Altair-8800/680, IMSAI-8080 и SWTPC-680), в которых в набор входили только голые печ.платы и весь требуемый для сборки набор комплектующих.

Отсутствие корпуса неудобно потребителю, т.к сделать корпус компьютера (тем более со встроенной клавиатурой) в домашних условиях, не имея оборудования для сварки аллюминия или электропечи для отлива из пластмассы под давлением, весьма непросто. На кухонном столе можно сделать только корпус из папье-маше (т.е из клейстера и бумаги). Очевидно эта мысль в итоге дошла до изготовителей, т.к в набор "Электроника КР-03М"  (! с буквой М) уже стали включать и корпус. Есть мнение, что эти наборы выпускали под названием "Радиоконструктор" отчасти для того, чтобы у изготовителя был законный способ не давать покупателю гарантии.

Вероятно из-за работы МП-ядра на более высокой (относительно РК86) частоте 2.5 МГЦ, в схеме этого компьютера буквально каждая БИС буферизована. Хотя исходя из схем других подобных компьютеров можно предположить, что схема будет работать даже если исключить часть буферов. Для владельцев РК86 желающих его усовершенствовать схема этого компьютера интересна также тем, что здесь можно посмотреть схему включения контроллера 580 ВК28, хотя ещё не факт, что она годится и для РК86.

PS. Кстати, любопытно, что почти во всех иностранных бытовых компьютерах появившиеся после 1977 года (Apple-I/II по сути из 1976) видео почему-то строили не на низкоинтегральных ИМС TTL-серий, а на БИС видеоконтроллеров. Увы, в СССР зачем-то клонировали малополезные для бытовых ЭВМ видеоконтроллеры 8275, 6845 и 7220, тогда как наличие отечественного аналога видеоконтроллера 6847 или 9345 позволило бы построить (или сплагиировать) дешёвые, но качественные бытовые компьютеры. В отсутствие этого талантливым советским инженерам, чтобы получить хоть что-то приемлемое пришлось извращаться над убогой БИС ВГ75.


26 Jun 2020 18:49
Profile
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
A ведь отец КР-04 чуть не купил мне через год после КР-03… :roll:


27 Jun 2020 08:40
Profile WWW
Doomed
User avatar

Joined: 19 Feb 2017 03:46
Posts: 584
Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
Reply with quote
Post 
Несколько лет назад я искал схему, после того как в одном форуме увидел вот это фото Электроники КР-04 и прочитал, что якобы это клон РК86. Но схемы не нашёл. Меня заинтересовало то, что там применён 580 ВК28, а я как раз в своё время нуждался в турбировании РК86 и сделал платку переходник втыкаемую в DIP-40 панельку процессора. На этой платке было всего две ИМС - КР580 ВМ80А и КР580 ВК28. Казалось бы всё сделал "по учебнику", но резко обломился, - так и не работало (причём платка переходник исправна, поставленная в Специалист позволяла разогнать его выше 3 МГЦ). Сколько ни бился, ума так и не хватило решить проблему.

 
.
Можно было бы думать, что виновата команда OUT, но нет таких команд в родном ПЗУ РК86. Там есть, правда, один явный идиотизм - экономия всего лишь одного байта убила совместимость с Z80. Хотя нужды в экономии байтов не было, - любой программист чуть выше начального уровня, поимев исходник, за час оптимизирует код, выиграв, в зависимости от квалификации от 50 до 100 яччек (что несложно в программе, где флаги проверяют командой CP 0). Я в своё время за час ковыряния исходника с'экономил сотню байтов, а в прошлом году довёл число свободных ячеек до 280.
.

Недавно я собрался максимально турбировать свой РК (до 3.5 МГЦ реального такта на КР580, что в 2.67 раза быстрее оригинала) и сделать из него инструментальный компьютер. Потому вновь попытался найти схему КР-04 с целью узнать, как ставить ВК28, и на этот раз схему нашёл. И из неё и узнал, что КР-04 графический, и его концепция меня заинтересовала. Зная теперь эту любопытную концепцию, можно подумать о разработке платки втыкаемой в системный разъём ГРПМ-61 и вводящей в РК монохромную или цветную графику 320*192.

480 пикселей по горизонтали для тормозной машины многовато, да и для 8-ми разрядных игр считается оптимумом 320. 320 пикселей означает, что в строке должно выводиться 40 байтов. 128 кодов позволяют вывести 3 строки по 40 знакомест. Это позволяет с'экономить один атрибут даже при высоте знакоряда в 8 линий. Выводим 8 групп по 3 строки, получаем 24 текстовые строки высотой в 8 линий каждая, а в графике 8*3*8= 192 линии растра по вертикали. А если использовать знакоряд высотой в 16 линий, то выигрываем ещё один атрибут 16*3*4= те же 192 линии.

В итоге при двух свободных атрибутах получаем полноценную графику 320*192, а двумя атрибутами при желании можем эту графику раскрасить в 4 цвета. Нормально раскрасить с цветовым разрешением в знакоместо, а не цвет сразу на весь экран. Кстати, встречал упоминание, что часть наборов КР-04 выпускалась с блоками цветности, остальные - монохром. Хотя цветность там за исключением режима в 240 точек чисто символическая - просто раскраска монохрома в два цвета (т.е можно выбрать цвет букв и фона сразу на весь экран, т.к цвет записывается в 3 порта ППА, а не хранится в экранном ОЗУ для каждого экранного байта).

Теоретически возможно разработать внешнюю платку подключаемую в разъём ГРПМ-61. Которая вводит режим цветной или монохромной графики в экране 320*192. Такой модуль с ОЗУ на статике аппаратно будет не сложнее, чем МЦПГ от Партнёра (схему которого энтузиасты много лет тщетно пытаются восстановить и понять его работу).

Но совместить такую доработку с программами РК86 не удастся. Более того, без существенного усложнения, скорость такой машины получится всего ~1 МГЦ. Не буду утомлять расчётами, но так получается из-за того, что для 40 байтов в строке потребуется поставить кварц 6 МГЦ вместо 10 МГЦ. Клок в 1 МГЦ даже для монохромной машины с экраном размером в 40*192= 7 680 кб - слишком мало. Да и без совместимости с РК86 делать переделку вообще не имеет смысла (т.к тот же Специалист быстрее, проще и уже имеет какие-то программы), даже если бы это было сделать просто. Зачем нужна новая 8-ми разрядная платформа (лишённая программ) с быстродействием в 1 МГЦ?

Теоретически, если поставить Z80 на клоке 4 МГЦ и программно перекорёжить экран "по-спектрумовски", то адаптация ZX-игр для ранней версии ZX-Spectrum с 16К упростится (в монохроме) до переделки клавиатурных процедур.


Last edited by barsik on 28 Jun 2020 14:12, edited 3 times in total.



27 Jun 2020 14:12
Profile
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
barsik wrote:
Несколько лет назад я искал схему, после того как в одном форуме увидел вот это фото Электроники КР-04 и прочитал, что якобы это клон РК86. Но схемы не нашёл.
Oчень любопытно то, что с виду заметно сильное сходство с КР-03, да ещё и микросхем не так много - в полсотни…

P.S.: Ещё найти бы качественные фото, чтобы попытаться восстановить схему хотя бы частично…


27 Jun 2020 14:36
Profile WWW
Doomed
User avatar

Joined: 19 Feb 2017 03:46
Posts: 584
Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
Reply with quote
Post 
Paguo-86PK wrote:
Ещё найти бы качественные фото, чтобы попытаться восстановить схему хотя бы частично…
Речь о восстановлении по печ.плате схемы какого компьютера? Вроде бы схема КР-03 совпадает 100% с оригинальной схемой РК86, а схемы КР-04 теперь доступны.


27 Jun 2020 15:03
Profile
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
barsik wrote:
Paguo-86PK wrote:
Ещё найти бы качественные фото, чтобы попытаться восстановить схему хотя бы частично…
а схемы КР-04 теперь доступны.
Действительнo, сейчас погуглил и сослался на доступные архивы:mrgreen:
(Когда-то гуглил, но было всё протухшее…)


27 Jun 2020 15:23
Profile WWW
Doomed
User avatar

Joined: 19 Feb 2017 03:46
Posts: 584
Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
Reply with quote
Post 
В схеме этого компьютера подключение УКНЦ-шной клавиатуры МС7007 сделано несовместимо с клавиатурой РК86. Пока не проверял, но скорее всего клавиатура МС7007 точно также подключена и в Электрониках КР-02 и КР-03 (но не в КР-01, там скорее всего матрица эр-кашная, т.к она из отдельных кнопок, а в этом случае нет разумных причин менять матрицу).

Любопытно, что автор ОРИОНА не заимствовал эту схему установки МС7007, а применил свою схему подключения (опубликованную в ж.Радио 02.1991), которая тоже была несовместимой с программами рассчитанными на клавиатуру по схеме РК86. Совместимая схема подключения МС7007 была изобретена позднее (опубликована в ж.Радио 12.1991).

Теоретически несовместимость "Электроники КР-04" с играми для РК86 могла быть вызвана несовместимостью по клавиатуре, потому что при применении совместимой схемы клавиатуры и если ROM-BIOS (в текстовом режиме) в данной машине совместим с РК86 по адресу экрана и по использованию служебных ячеек, то (не считая разницу в скорости, которую легко компенсировать заменой констант торможения в играх и разницу в адресах В/У) теоретически компьютер должен оказаться большей частью совместимым с программами РК86 (а для несовместимых из-за смены игрой режима ВГ75 и прямого доступа к клавишам переделка несложна). Т.о учитывая одинаковость адреса размещения и формата экрана это всё-же частичный клон РК86, но по принципу действия это уже не РК-подобный.

Кстати на данной идее можно разработать даже специалисто совместимый компьютер. Но делать Специалист на этой идее вообще не имеет смысла - по скорости на треть проигрыш, деталей больше, а прогон программы станет рваным. Падение скорости потому, что в Специалисте визуализируется 48 байтов в строке. Значит пиксель клок придётся опустить с 10 до 8 МГЦ, а это значит, что скорость CPU упадёт до эр-кашной (~1.3 МГЦ).


28 Jun 2020 14:22
Profile
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
barsik wrote:
В схеме этого компьютера подключение УКНЦ-шной клавиатуры МС7007 сделано несовместимо с клавиатурой РК86. Пока не проверял, но скорее всего клавиатура МС7007 точно также подключена и в Электрониках КР-02 и КР-03 (но не в КР-01, там скорее всего матрица эр-кашная, т.к она из отдельных кнопок, а в этом случае нет разумных причин менять матрицу).
Мoгу сказать, что много сил пришлось вложить именно в MAZE, так как помимо коррекции всех экранных ссылок с 32 Кб на мои 16 Кб, пришлось, как выяснилось сразу, перебивать ещё и маски для опроса клавиатуры.


28 Jun 2020 15:10
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 8 posts ] 

Who is online

Users browsing this forum: vital72 and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.