nedoPC.org

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



Reply to topic  [ 137 posts ]  Go to page Previous  1 ... 5, 6, 7, 8, 9, 10  Next
Расширяя горизонты возможностей ВГ75 
Author Message
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
barsik wrote:
Вопрос был насчёт можно ли избавиться от ПДП, а не от ВГ75.

В качестве заменителя БИС CRT в конце 1970-тых годов для видеовывода сэр Клайв Синклер мог бы использовать БИС ПДП типа ВТ57 или ВТ37. Они тратят на засылку одного байта в порт 4 маш.такта и легко синхронизируются импульсом ССИ. Если в РК86 ПДП пишет байты в ВГ75, то что мешает ему сразу писать экранный байт в выходной сдвиговый регистр.
A я и говорю, чтобы дополнительным каналом ПДП графику выводить.
Либо через специальные символы (знакогенератор же 6×8 и 2 бита опционально можно использовать как флаг-переключатель на ПДП-графику), либо вообще прямо в ОЗУ программно сформировать матрац и одним лишь ПДП его выгонять…
Второй вариант привлекателен тем, что можно изучать технологию развёртки. А также, используя LM1881 формировать логотипы и бегущую строку на композитном сигнале внешнего источника. Думаю, если ПДП настроить на запись памяти, то биты с LM1881 можно загрузить в память и изучить синхронизацию источника…


17 Dec 2019 22:52
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Не все тут правильно понимают вопросы, от чего избавиться и каким способом.

Я тоже сначала удивился ссылке на ZX81, но потом сообразил, что если у процессора
в этом режиме, когда он способен без особой натуги, исполняя искуственные NOP,
работать в качестве счетчика для регистра сдвига видеосигнала, то уж в качестве
счетчика ПДП для ВГ75 - он и точно будет способен работать, тем более эти запросы
и поступают реже.

Другое дело, что схемы такой никто, действительно, не видел, поэтому я и попросил
уточнить. А всякие патенты синклера здесь и вовсе не при делах, как и программный
вывод в ВГ75 разогнанными процессорами.
Конечно я понимаю, что схемотехнически не всё просто, но и не я намекнул здесь на
этот самый ZX81. :wink:

_________________
iLavr


18 Dec 2019 07:24
Profile
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
Наконeц-то переборол свою лень и написал вновь быстрый симулятор ВТ57+ВГ75 на JavaScript.
(Лет 15 тому назад писал подобное на LCC-Win32).

Особенность симуляции в том, что при сбое ПДП экран начинает плыть прямо как на настоящем РК.
Только вот скорость максимальная достигается тем, что символ, записываемый в ОЗУ, записывается в графический буфер четырежды, а на экран выводится лишь скользящий регион

Правда, симулятор только начал писать и он поддерживает лишь ситуацию с недостатком ПДП-потока. А переизбыток ПДП-потока пока не реализован… :roll:
JS-Fiddle версия
Прокручивайте спиннер с количеством символов в ПДП-цикле и наблюдайте за эффектом…
(Судя по перемещению красного прямоугольника-клиппера, где-то в вычислениях закралась грубая ошибка! Надо будет потом на досуге продумать алгоритм с бо́льшим энтузиазмом…)

P.S.: Естественно, всё пока симулируется
Никакой эмуляции атрибутов и прочих настроек пока нет…
Главное, чтобы идею поняли! :roll:


20 Dec 2019 14:58
Profile WWW
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
Вo многих схематических решениях по расширению знакогенератора РАДИО-86РК радиолюбители прибегали к разным способам его переключения…
  1. Кто-то использовал механический тумблер и переключал его при использовании нужной программы
  2. Кто-то использовал свободные биты ППА D14
  3. Кто-то задействовал встроенные ресурсы ВГ75 с использованием атрибутов и выводов GPA₀/GPA₁
Как Вы уже догадались, сейчас я кратко опишу ещё несколько своих конспиративных вариантов

Но, сначала обсудим недостатки перечисленных способов…
  1. Компьютер - не бормашина! Если уже в 80-е годы существовали сенсорные выключатели света с плавной регулировкой яркости. Сегодня я могу управлять тостером, светом и кипятильником удалённо. А для некоторых моделей компьютера даже кнопка Сброса в самом доступном месте - позор дизайнеров! (показать)
  2. Сама ППА D14 на плате по-дефолту - неплохо. Но, если вместо ППА установлен таймер? Или ППА чем-то занята (джойстиками, программатором)? В конце-концов, если рассматривать и дизайн «РАДИО-86РК LITE» без D14, то использовать её не по назначению (это моя позиция) - совсем нехорошо! Тем более, ВГ75 и ВВ55 друг с другом - как «дельфин и русалка» по принципиальным мотивам
  3. Атрибуты через сигналы GPA/RVV/HLGT - неплохо. Но эти 4 бита лучше использовать в перспективе для инверсии, цвета или расширения KOI-7 таблицы. Здесь следует отметить, с какой целью будет использоваться РК и механически переключать профиль интерпретации атрибутов

Сейчас речь пойдёт о том, чтобы разбить знакогенератор на Страницы, которые разбиваются на Параграфы.
В рамках одного кадра с помощью битов GG и H атрибутов переключать Параграф текущей «Тематической Страницы» кадра, которая просто так атрибутами не переключается.
  • В режиме редактирования текста мы можем с помощью битов GPA и HLGT выбирать из восьми Параграфов стиля текста: Заглавные/Строчные (бит HLGT), а также Жир и Курсив (биты GPA)¹
  • В режиме разводки печатной платы или редактирования электрической схемы требуется большое разнообразие текста вперемешку с УГО
  • Желательно иметь ещё страницы для комбинированной псевдографики смешанной с текстом. Чтобы и 3×2 была графика (вариант Barsik'а), и под DOS для рамок окон, и под гистограммы с акцентом заливки столбиков разными узорами
  • Можно закодировать цвет прямо в знакогенератор, чтобы те же эмодзи кодировать, как в NES - по два бита на цвет. Тогда и без атрибутов и человечка (код 09) можно цветным Марио изображать, и яблочко (код 1E) цветом окрасить
Тем самым, если делать ПЗУ знакогенератора на все случаи жизни, никаких атрибутов ВГ75 не хватит.
(¹Какой курсив в РК, возразите мне! Тут и без курсива текст прочитать удалось бы! Однако, кто мешает доделать знакогенератор до дизайна 12×8 или 12×12 в нашем тихом XXI веке‽)

Надоело читать заговор на воду? :roll:

В публикациях журнала Радиолюбитель предлагалась схема с перегружаемым знакогенератором на ОЗУ. Особенность была в том, чтобы избежать конфликтов совместного доступа процессора и ВГ75, используя бит статуса ВГ75 с флагом IR, когда начинается период КСИ перезаписать ОЗУ знакогенератора.

Здесь я просто предложу несколько оригинальный способ:
  1. Навешиваем на сигналы LC₂ и LC₃ диоды
  2. Вешаем на LC₀ и LC₁ входы ИР1
  3. Стробируем ИР1 сигналом CCLK ВГ75
  4. Подключаем выход ИР1 к ПЗУ знакогенератора
 Вариант 1К/4К
Attachment:
File comment: Вариант схемы на 1024 разных символа в кадре из 4096 возможных и до 12 линий на знакоместо…
Paged_75.jpg
Paged_75.jpg [ 164.54 KiB | Viewed 9864 times ]
Как уже понятно из схемы, три бита атрибутов позволяет выбрать один Параграф из восьми в нескольких местах одной строки. А с помощью трюковой перенастройки ВГ75 можно выбрать уже Тематику Страницы / кадра в целом…

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

Чтобы переключить ИР1 в нужный режим, нужно на один кадр ВГ75 запрограммировать на нестандартный режим, где на знакоместо выделяется 13, 14, 15 или 16 линий растра. Затем ВГ75 программируется уже на стандартный режим.

Достоинства: Ни одна из существующих на РК программ случайно не переключит знакогенератор. И тематика знакогенератора переключается самой ВГ75 - всё в тематической куче.
Недостатки: Требует элементарного навыка программирования ВГ75.

Бит HLGT вообще можно пропустить через триггер со сбросом в следующем знакоместе.
Если HLGT осуществляет переключение «Заглавные/строчные» и включён режим «непрозрачных атрибутов», то HLGT атрибут выведет строку, где после пробела слова начинается заглавной буквой.
Но, лучше было бы обеспечить режим KOI-8R таким образом, что решит множество проблем (в частности, с теми же Си-листингами).

P.S.: Схемотехника публикаций РАДИО меня научила и плохому, и хорошему…
Хорошее: Каждую микросхему нужно использовать на 100%. Например, если это ЛА3, то три элемента можно использовать в начале схемы под задающий генератор с кварцем, а четвёртый элемент задействовать уже в конце схемы на выходе…
Плохое: Серьёзные (военные) схемы так не планируются, так как нельзя из-за замыкания на выходном элементе допускать выхода из строя всей схемы в начале. Каждый элемент должен использоваться там, где стоит. И не провоцировать паразитных искажений и наводок на других сигналы. Так, в РК D9 ЛН1 и ТМ2 сбрасывает, и на динамик идёт, и с ВГ75 связан, и участвует в выборке ОЗУ, и индикатором клавиатуры управляет. На редкость широкого профиля элемент! :mrgreen:


Last edited by Paguo-86PK on 27 Mar 2020 23:08, edited 1 time in total.



26 Mar 2020 10:45
Profile WWW
Doomed
User avatar

Joined: 19 Feb 2017 03:46
Posts: 584
Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
Reply with quote
Post 
 
Quote:
Я болею, в состоянии глубокой апатии. Но даже в таком состоянии меня удивляет ваша апологетика текстового экрана в XXI веке [Апологетика - защита, оправдание, заступничество; речь, сказанная или написанная в защиту кого-либо].

Текстовый экран - это неинтересно тому, кто уже увидел графический экран. До середины 80-тых годов XX века это было бы уместно. Но затем появился БК-010, первый советский бытовой компьютер.

Я увидел XONIX, TETRIS на ДВК и они меня не впечатлили. Спустя несколько месяцев я узнал, что открылся компьютерный клуб и сразу туда поехал. Оказалась это большая комната на втором этаже торгового центра (недалеко от метро Купчино). Там стояло 5 штук больших телевизоров, перед которыми лежали БК-010 и толпилось человек 20 школьников.

Оказалось, что это выдаваемое за клуб коммерческое предприятие, т.е игровой салон. Платишь ежемесячный взнос 25 рублей, после чего будешь посещать уроки пользования БК-010 и фокала и сможешь играть в игры. Игры БК-010 были графическими и даже цветными. Тогда-то я и понял, что такое компьютер. А когда я наконец настроил свой РК86, то обнаружил на кассете с программами убогие РК-игры и был разочарован.

А теперь 35 лет спустя Вы зовёте людей в такое же кошмарное чисто текстовое "светлое будущее". К тому же на уродливом РК86. Он уродливый потому, что учитывая отсутствие инверсии знакомест и неудачную архитектуру, нельзя было сделать хуже.

Paguo-86PK wrote:
3×2 графика (вариант Barsik-а)
2x3, не 3x2. Сначала указывают ширину потом высоту (пишут, что в ZX экран 256*192, а не 192*256). Я использовал режим с знакоместом высотой в 6 линий и 43 строки. Что давало форматы 128*86 и 128*129. Для них имею драйвер вывода текста фонтом 6*8.
Paguo-86PK wrote:
и 3×3
Это Вы погорячились. При матрице знакоместа 3x3 надо иметь 512 графических символов, а доступно только 128.
Paguo-86PK wrote:
кто мешает доделать знакогенератор до дизайна 12×8 или 12×12
Неплохой фонт при знакоместе 9*11 (9-я колонка повторяет 8-ю), пиксель-клок 11 МГЦ. 24 строки, а на TFT телевизоре и 25 строк.
Paguo-86PK wrote:
предложу несколько оригинальный способ:
  1. Навешиваем на сигналы LC2 и LC3 диоды
  2. Вешаем на LC0 и LC1 входы ИР1
  3. Стробируем ИР1 сигналом CCLK ВГ75
  4. Подключаем выход ИР1 к ПЗУ знакогенератора
Мало кто что-то понял о чём тут речь. Схема была бы намного понятнее, чем косноязычное описание.

Какой смысл извращаться по разному лишь ради того, чтобы переключить фонт? Я уже упоминал, что есть свободные PC1 и PC2, т.е возможность 4 фонта переключать бесплатно. Но зачем даже это, если целых 4 атрибута в РК никто не использовал и уже не использует (т.к фанатов текстового экрана, кроме Вас, в мире уже не осталось).

Вообще шанс, что это используется, есть только у доработок в виде внешних прибамбасов, т.е что-то типа внешней платки с минимумом коррекций на основной плате. Для РК видимо наиболее актуальна платка загрузки фонта, но не в шине как сделали, а как я хотел, через ППА D14 с минимальным вторжением в плату РК. Ну и, естественно, актуальная для всех бытовых ЭВМ на КР580, платка переходник для DIP-40 c Z80. Идеально при замене CPU на Z80 было бы сделать акселератор, типа тех, что применялись в Apple-II (гуглится), но людям было бы счастье, если бы им хотя бы сам Z80 поиметь.


27 Mar 2020 20:26
Profile
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
barsik wrote:
Мало кто что-то понял о чём тут речь. Схема была бы намного понятнее, чем косноязычное описание.
A набросок спойлера «Вариант 1К/4К» - не схема? :o
barsik wrote:
Это Вы погорячились.
Хм… :esurprised:
Да… Что-то я переусердствовал. Надо исправить…
(Это из-за DOS, где один бит атрибута можно использовать под переключение знакогенератора…)
barsik wrote:
2x3, не 3x2.
У меня есть оба варианта. 3×2 привлекателен тем, что перенастройкой ВГ75 на знакоместа в 6 линий и 64 строки можно получить графику 234×128 (в полном формате ОЗУ).
barsik wrote:
Неплохой фонт при знакоместе 9*11 (9-я колонка повторяет 8-ю)
Так как в ПК «Поиск» текстовый режим эмулируется программно, старший бит (графики) выбирает цвет. Из-за чего псевдографика на экране имеет вертикальные просветы (после РК с горизонтальными просветами это мною почти не замечалось), которые никакими способами не устранить (в отличии от РК), кроме как переходом в монохром…
barsik wrote:
Какой смысл извращаться по разному лишь ради того, чтобы переключить фонт? Я уже упоминал, что есть свободные PC1 и PC2, т.е возможность 4 фонта переключать бесплатно. Но зачем даже это, если целых 4 атрибута в РК никто не использовал и уже не использует (т.к фанатов текстового экрана, кроме Вас, в мире уже не осталось).
Я в начале и перечислил все эти способы и указал на их недостатки…

Так, если РК сделать модульным и видеоузел оформить отдельным модулем, странновато будет выглядеть шлейф, протянутый откуда-то там с какого-то ВВ55. Я намекаю, что если есть «ZX-Spectrum NEXT», то «РАДИО-86РК XXI» тоже хорошо было бы разработать почти с нуля.
Во-первых, я бы переделал срабатывание кнопки «СБРОС» и выбросил бы аналоговщину - R1, C1, C2. Вместо этого СБРОС бы связал с сигналом VRTC ВГ75, чтобы в случае жёсткого программного сбоя срыв синхронизации видео автоматически сбрасывал систему, а сама кнопка срабатывала либо по сигналу IRQ вывода 31 ВГ75, либо по VRTC.
Во-вторых, остальное - выходит за рамки данной темы про ВГ75…


27 Mar 2020 23:06
Profile WWW
Doomed
User avatar

Joined: 19 Feb 2017 03:46
Posts: 584
Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
Reply with quote
Post 
А чего Вы продолжаете обсуждать левые идеи по центровке растра в теме на другом форуме? Ведь Вы же уже нашли решение в виде вставки RC-цепочки в разрыв цепи с выхода 589ИР13, что смещает ССИ к началу сигнала программного гашения. А изменение параметров ВГ75 - это решение только для бейсика и игр, что не лезут в ВГ75. Т.е это сокращает объём доступного ПО, которого и так не много, лишая возможности использовать псевдографические игры без их переделок.
Paguo-86PK wrote:
barsik wrote:
Схема была бы намного понятнее
«Вариант 1К/4К» - не схема?
Была вставлена в пост после того, как я начал писать ответ на него.
Paguo-86PK wrote:
Я в начале и перечислил все эти способы и указал на их недостатки…
Про свободные биты порта клавиатуры Вы забыли в своём списке вариантов.
Paguo-86PK wrote:
Во-первых, я бы переделал срабатывание кнопки «СБРОС» и выбросил бы аналоговщину
Вам и кнопка СБРОС не угодила? Считаете, что лучше стартовать компьютер по входу INT (это возможно), а клавиатуру заменить на татч-пад на базе мобильного телефона с татч-скрином (не вижу технических препятствий при написании для Андроида приложения, что будет обслуживать татч-скрин и выдавать на разъём телефона посылки с кодом клавиш, подобно работе ASCII-клавиатуры)?
Paguo-86PK wrote:
чтобы в случае жёсткого программного сбоя срыв синхронизации видео автоматически сбрасывал систему
А что при работе с магнитофоном нет сбоя видео? И как тогда прогонять ПЗУ-шный тест ОЗУ?
Paguo-86PK wrote:
если есть «ZX-Spectrum NEXT», то «Радио-86РК XXI» тоже хорошо было бы
Почему невозможен "РК86 NEXT"? Да, потому что у ZX-Spectrum сохранилось тысячи фанатов по всему миру и есть ПО которое оправдывает сохранение платформы, а в случае РК86 программ, совместимость с которыми стоило бы сохранить - нет. А даже те немногие люди, кто РК86 собирают, хотят только попаять, чтобы лишь увидеть буквы на экране. РК-программы мало кого сейчас волнуют. Как новая платформа есть шансы только у совместимого изделия с выдающимися параметрами.

А если уж так надо сохранить совместимость с бесславным ПО РК86, то на ОРИОНЕ, Специалисте большую их часть можно прогонять с помощью визуализатора (достаточно добавить в них лишь апп.прерывания). Запаса скорости достаточно, чтобы несколько раз в секунду визуализировать экран РК. И хотя на ОРИОНЕ та же клавиатура, зато Специалист приятнее и даёт возможность лучших доработок архитектуры.


28 Mar 2020 04:38
Profile
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
K сожалению, Proteus-модель ВГ75 не полная и атрибуты не отрабатывает. Тем самым, приходится полагаться на свою интуицию.
Тем более, отсутствуют средства симуляции реального монитора и возможный срыв синхронизации на экране в реальных условиях никак не смоделировать…
barsik wrote:
А чего Вы продолжаете обсуждать левые идеи в теме на другом форуме?
Это вопрос или осуждение? :mrgreen:
(Как я уже понял, без внешней стимуляции лень что-то писать. Потому ненавязчиво развиваю там дискуссию, чтобы какие-то идеи пришли в голову…)
barsik wrote:
Про свободные биты порта клавиатуры Вы забыли в своём списке вариантов.
Отдать их на выбор страниц ROM-диска - уже обсуждалось…
(С меня хватит опыта с «ZX-Spectrum Ленинград 48», где игры трещали/моргали бордюром, думая, что проигрывают музыку через AY…)

А почему, собственно, не нравится предлагаемая схема с ИР1?
И чем лучше смена знакогенератора выводами 15 и 16 D20? Чтобы вводом «M8002 06» переключить его?
Кроме эффекта «вау, как всё просто!» я здесь не вижу. :lol:
Это ход для ленивой демонстрации… :roll:
А вот переключение страницы средствами самой ВГ75 и с трюками её программирования может вызвать и интригу, и сохранить концептуальную целостность - знакогенератор на 100% управляется самой ВГ75! :idea:
Ведь тянуть куски проволоки через пол платы - просто, но не эстетично.
А два диода с резистором у ИР1 около ВГ75 - компактно и концептуальнее!
(Будет видно, что у автора имеется своя концепция и сделано это с идеей, а не наотмашь на раз-два!)
Ведь сейчас не «те самые времена», когда важно было, чтобы хоть как-то работало‽
Сейчас можно удобными средствами симуляции всё перепроверить и с графиками сверить…
Зачем же предлагать вдаваться в электрику, где только кусками проволоки всё решается? :mrgreen:
Электроника, в отличии от электрики, этим и увлекательна! :idea:

Частенько встречаются различные статьи, где автор нашёл решение своей задачи в гугле, но из-за использования в готовом кем-то варианте некоторых специфических решений, оно несовместимо с задачей искателя и приходится всё переделывать.
Мой вариант на диодах и ИР1 совместим с любыми конфигурациями, будь то программатор на D14 или ВИ53 на месте ППА, так как не зависит от имеющейся периферии вообще. И программно никакая из существующих программ на РК случайно не переключит страницу знакогенератора.
Получается самодостаточный узел в виде законченного модуля, как в этой теме.
Почему Вам это не нравится? Закончились ИР1? :lol:

Ведь я не только воздух сотрясаю, но и в принципиальной схеме это показываю…
Что, ещё и код написать с демонстрацией переключения страниц? :mrgreen:
Verilog-модель?
barsik wrote:
А что при работе с магнитофоном нет сбоя видео?
Это уже концептуальный вопрос…
Просто, на досуге надо прикинуть, по каким признакам мы субъективно воспринимаем поведение РК как необратимый сбой, чтобы собрать аппаратную реализацию оценки адекватности программы.
(У меня при крахе программы экран не просто гас, я появлялась целая сетка/решётка на экране. Видно, стек полз вниз и пожирал программу, а потом проходил через все верхние адреса, сбивая ВГ75 настройку (ВТ57, как Вы подметили, тяжело сбить просто так) и формируя экстраординарные параметры развёртки. Что, кстати, крайне любопытно на предмет для изучения!)
Кстати, если директивой «I» попытаться грузить программы с Бейсика, то на экране верхняя часть растра сбивается подобно расстроенному ВМ-12, когда видеокассета слишком пиратская была или головки запылились/перекосились. Верхняя часть кадра как бы двоилась и была иллюзия, будто лошадь скачет и копыта её отображаются.
(Чёрный сигнал ССИ налезал на кадр…)
 Напоминание эффекта
(При обмене кассетами мы так и предупреждали друга друга, типа там в нескольких местах целый ипподром/табун! :lol: )

Вот видимо Бейсик-файлы в заголовках отправляли драйвер загрузки файла в область регистров ВГ75 и возникал нешуточный конфликт между самой подпрограммой считывания байта, которая, как Вы подметили, постоянно отключает ПДП и восстанавливает вновь.
(Жаль, что на современных мониторах это не воспроизводимо в принципе…)
barsik wrote:
А почему не "РК86 NEXT"?
Об этом тоже думал. Но для суффикса NEXT следует, по-хорошему, подключить самых авторов РК и иметь высокий уровень владения программированием и моделированием…
Потому, «РАДИО-21РК» выглядит просто как очередной вариант продвинутого дилетанта… :lol:

P.S.: Так как тема не моя, интересна позиция самого автора (в частности)…


28 Mar 2020 05:20
Profile WWW
Doomed
User avatar

Joined: 19 Feb 2017 03:46
Posts: 584
Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
Reply with quote
Post 
Естественно, в предыдущем посте я опечатался, - имел в виду 155 ИР13, а 589 ИР13 не существует.

С интересом просмотрел эту тему (раньше не читал). С удивлением узнал вот здесь, что в РК86, оказывается, есть возможность подчёркивания символов, а я и не знал об этом, т.к не встречал программ с подчёркиванием. Кто-нибудь может подсказать как вывести на экран РК86 подчёркнутые символы (неважно если пунктирно)?
Paguo-86PK wrote:
У меня есть оба варианта. 3×2 и 2×3
Так как каждый из наборов символов для знакомест с такими матрицами занимает всего 64 символа, то в один фонт в 128 символов умещаются оба эти набора символов. При знакоместах высотой в 6 линий сочетая символы из обоих наборов, получается графика сделанная как бы символами с матрицей 3×3, т.е в режиме 43 строки разрешение экрана как бы 192*129. А для режима от vinxru с 51-й видимой строкой это не работает, т.к там используется высота знакомест в 8 линий, а 8, как известно тем, кто хорошо знает арифметику, не делится на 3. Потому при знакоместах высотой в 8 линий три пикселя по вертикали в знакоместе невозможны.
Paguo-86PK wrote:
[при матрице] 3×2 и перенастройкой ВГ75 на... 64 строки можно получить графику 234×128 (в полном формате ОЗУ).
Не, не можно !

64 строки это максимум задаваемый в ВГ75. Луч в телевизоре не может мгновенно перемещаться, ему на обратный ход требуется отводить, как минимум, 20% кадрового периода (который 20 мс). Потому максимум строк, что можно выжать из ВГ75, - это 51 видимая строка (что и позволило vinxru изобрести графический формат РК-экрана в 192*102). А 64 видимые строки в аппаратах на ВГ75 бывают только в мечтах или в плохих эмуляторах. Также и по горизонтали, - без замены кварца, Вы никак не сделаете видимыми на экране более ~65 колонок. Т.о Вы напрасно всё время пытаетесь запутать людей упоминая мифические форматы экрана, которые возможны лишь в плохих эмуляторах, но невозможны в реале.

Хотя теоретически, есть всё же шанс поиметь экран c 64-мя видимыми строками. Но для этого придётся изобрести "крутую химию". А именно, - формировать сигнал кадрового гашения не программно за счёт вывода заполненных пробелом строк (как это сделано в оригинале РК86), а аппаратно с помощью хитроумной "химии". Чтобы на экране были видны все 64 строки, придётся дополнительной аппаратурой формировать кадровый бордюр останавливая ВГ75 на 4...5 мс путём отключения её входного CLK.
Paguo-86PK wrote:
С меня хватит опыта с «ZX-Spectrum Ленинград 48», где игры трещали/моргали бордюром, думая, что проигрывают музыку через AY…
Это не довод против совмещения функций. Кто мешает совмещать умно, избегая конфликтов? Для борьбы с этим делали простейшую коррекцию с двумя диодами и подобные проблемы исчезали.
Paguo-86PK wrote:
А почему, собственно, не нравится предлагаемая схема с ИР1? ... вариант на диодах и ИР1 совместим с любыми конфигурациями... никакая из существующих программ на РК случайно не переключит страницу знакогенератора
Когда речь идёт о единственном экземпляре доработанного РК, где всё можно менять по пять раз в день, нет смысла извращаться и изобретать подобные хитроумности лишь ради того, чтобы избежать конфликтов. И как могут возникнуть конфликты по адресации, если для управления режимами Вы примените I/O-порт (например на регистре) с адресом заведомо незадействованным имеющимися РК-программами? Всё равно, в связи с отсутствием свободных чип-селектов, при любом серъёзном использовании РК86 надо добавлять дешифратор типа ИД7. Т.о по всем параметрам нормальное управление лучше.

Да и не важно как именно будет переключаться фиксированный фонт. Как это сделает автор "Принца Персии" для РК86, это и станет стандартом. Придумайте как угодно, но пока Вы не дадите кучу программ, даже обсуждать это бессмысленно. К тому же, чтобы изменить в программе метод переключения фонта достаточно нескольких минут.

Какой смысл изобретать хитроумные методы, если есть готовые, бесплатные и к тому же оперативные по экрану (т.е позволяющие совмещать фонты) атрибуты? Напомню, что для текстообработки фонт стандартно переключать символами 0E/0F (как и делали в 7-ми битовых консолях), а вот для тайловых игр (по принципу Денди) нужно переключать фонт именно атрибутами. Сделайте как угодно, хоть с отдельной платкой со своим микропроцессором, но уговорите авторов эмуляторов это повторить.

А когда Вы поимеете 2048 символов, то ничто не помешает Вам наредактировать тайлов и спрайтов для игры (лучше всего "Принц Персии", он работал на Apple-II с тактом 1 МГЦ и на БК-010, который ещё тормознее) и сделать её. Этим Вы станете легендарным программистом, докажете на деле Вашу идею-бзик, что текстовый режим это не полное фуфло, и поднимете этим РК86 на недосягаемую высоту.
Paguo-86PK wrote:
Ведь сейчас не «те самые времена», когда важно было, чтобы хоть как-то работало?
Времена уже не «те самые», а плохие для текстовых компьютеров. Перспективы для текстовых компьютеров в ретро хобби сократились. В «те времена» даже чисто текстовые разработки были актуальны для сотен тысяч людей. А сейчас доступны графические 8-ми разрядки, потому интерес к текстовым машинам угас. Сейчас, если и делают текстовые самоделки, то или лишь точные реплики исторических моделей или под конкретную задачу, где графика не нужна. Единственным оправданием для творчества на ниве текстового компьютера может быть лишь изучение ЯВУ, т.к для этого текстовый режим удобнее.
Paguo-86PK wrote:
на досуге надо прикинуть, по каким признакам мы субъективно воспринимаем поведение РК как необратимый сбой
Зачем тратить детали на автоматический сброс? Если у пользователя нет рук, чтобы дотянуться до кнопки СБРОС, зачем безрукому компьютер?

Можно вот так сделать автоматический сброс при зависе. Все независшие программы (в т.числе и при МГ-обмене) непрерывно обращаются в порт клавиатуры. /CS порта клавиатуры D20 (когда он =0) через германиевый диод, будет обнулять напряжение на ёмкости заряжаемой через резистор от +5В. Если в течение нескольких секунд не произойдёт выборки ППА клавиатуры, то ёмкость зарядится до +2.5 вольт, отчего КМОП вентиль переключится и сделает сброс процессора.

- - - Добавлено - - -

Paguo-86PK wrote:
Как я уже понял, без внешней стимуляции лень что-то писать.
Эту мысль надо в рамку. Когда видишь, что остались одни равнодушные, предел мечтаний которых настроить плату и положить на полку, а программ для советских самоделок уже никто не пишет, то энтузиазм тает. Участники форумов не сознают, как важно морально поддерживать тех, кто сохранил остатки энтузиазма и желания творчества. Вместо этого они получают "поддержку" от злобных троллей, которые сами ничего сделать не могут в силу отсутствия ума или энтузиазма.

Кстати, даже ошибочные посты и малореальные мечтания в стиле Манилова (а что, если построить каменный мост через пруд) в ходе флейма часто наводят на ценные идеи. Это ещё в XIX веке заметили: "Нам не дано предугадать, Как слово наше отзовется", (c) Ф.Тютчев.

А ещё неправильно, что энтузиасты в ретро хобби изолированы и варятся в собственном соку. А ведь и 30 лет назад успехи в любительском программировании и железе достигали лишь там, где была моральная поддержка от группы единомышленников, а изолированные сельские жители, которых было на порядки больше, ничего не смогли. Нет ассоциации программистов по написанию игры "Принц Персии" на РК86. Для чего достаточно несколько программистов среднего уровня и помощь от непрограммирующих в заимствовании или рисовании спрайтов.

А в вашем случае, возможно, если Вы возъмётесь сделать что-то востребованное, очень полезное и всем интересное, то и реакция людей может оказаться чуть получше. Попробуйте. Оставьте на время вашу отработку идей по оконному ROM-BIOS с большим ПЗУ без припайки проводов. И займитесь написанием РК-игр (и лучше на Паскале МТ+ или на BDS-С). То, что эмуляторы не поддерживают альтернативный фонт на этапе отладки преодолимо заменой в фонте символов 01...1F и 60...7E на тайлы для графики. Когда будет что-то можно посмотреть, то может и авторов эмуляторов удастся убедить, что наличие фонтов переключаемых атрибутами это полезно.


28 Mar 2020 14:47
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Оригинал этой картинки в общем-то есть на старте топика, но в своё время я подробно разбирался, как
настраивают 580ВГ75 в "Радио-86РК" и "Микроше", поэтому на картинке все параметры обозначил.

И порой я сам долго эту картинку ищу на своих дисках и флешках, чтобы кое-что по ней напомнить себе...

Думаю, здесь она будет всегда под рукой, и в плане этого топика она довольно-таки полезна.
Attachment:
DISP-screen1.png
DISP-screen1.png [ 746.69 KiB | Viewed 8335 times ]

_________________
iLavr


18 Feb 2021 06:54
Profile
Maniac
User avatar

Joined: 12 Apr 2011 20:43
Posts: 267
Location: Tashkent
Reply with quote
B прошлом году написал одну утилиту в помощь собирающим РК и испытывающих проблемы синхронизации на современных телевизорах.
Однако, собственного топика эта поделка до сих пор не имела.
Quote:
  • «ВК» - проверка параметров
  • «АР2» - выход в МОНИТОР с активными параметрами ВГ75/ВТ57 и подсказкой, откуда из ОЗУ прошивать в ПЗУ
  • Стрелки - настройка параметра (кликабельны «световым пером»¹)
  • «0»…«9» - активация конкретного параметра (кликабельно «световым пером»¹)
  • «F1»…«F5» - экспериментальные предустановки, название указывается в <скобках>
Любая другая клавиша просто восстанавливает синхронизацию
Параметр «0» управляет командами «Стоп ПДП». Младшие 4 бита - код F3 в конце кадра, старшие 4 бита - в начале кадра. Нужно быть аккуратным, так как можно сильно нарушить ПДП-циклы.
Параметры «1»…«4» - описаны здесь.

Прoграмму чуть подкорректировал и добавил опрос регистров «светового пера»¹.
(Запуск Онлайн)

Больше ничего не изменилось…


Attachments:
File comment: Тонкая Настройка ВГ75/ВТ57
adjust75v3.zip [1.21 KiB]
Downloaded 494 times
18 Mar 2021 12:02
Profile WWW
Maniac
User avatar

Joined: 14 Oct 2019 18:10
Posts: 260
Location: Tashkent
Reply with quote
Программами служебные коды F4-FF никак нигде не используются, что строго рекомендуется руководством по i8275/ВГ75.
Можно, в принципе, аппаратно, в цикле чтения ПДП эти коды перехватывать и регистрировать, скажем, в ИЕ7, чтобы сделать отступ слева - аппаратным.
Что позволит сберечь несколько ячеек в буфере кадра.
В буфере строки будут представляться примерно так:
Code:
     .0 .1 .2 .3 .4 .5 .6 .7 .8 .9 .A .B .C .D .E .F
76D0 F2 00 -- -- -- -- -- -- -- -- -- -- -- -- -- -- <-- Первая строка
76D2 -- -- F2 00 -- -- -- -- -- -- -- -- -- -- -- -- <-- Вторая строка
76D4 -- -- -- -- F2 -- -- -- -- -- -- -- -- -- -- -- <-- Третья строка
76D5 -- -- -- -- -- F9 -- -- -- -- -- -- -- -- -- -- <-- Код "аппаратной табуляции"
76D6 -- -- -- -- -- -- ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? <-- Позиция 8,3 - как 77C2
76E0 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
76F0 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
7700 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
7710 ?? ?? ?? ?? ?? ?? -- -- -- -- -- -- -- -- -- -- <-- Все 64 символа
7716 -- -- -- -- -- -- F2 -- -- -- -- -- -- -- -- -- <-- Пятая строка
7717 -- -- -- -- -- -- -- F9 -- -- -- -- -- -- -- -- <-- Код "аппаратной табуляции"
7718 -- -- -- -- -- -- -- -- ?? ?? ?? ?? ?? ?? ?? ?? <-- Позиция 8,4 - как 781E
7720 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
7730 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
7740 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
7750 ?? ?? ?? ?? ?? ?? ?? ?? -- -- -- -- -- -- -- -- <-- Все 64 символа
7756 -- -- -- -- -- -- -- -- F2 -- -- -- -- -- -- -- <-- Шестая строка
7757 -- -- -- -- -- -- -- -- -- F9 -- -- -- -- -- -- <-- Код "аппаратной табуляции"


23 Feb 2024 02:28
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22379
Location: Silicon Valley
Reply with quote
А как ты это сделаешь, если ВТ57 по конкретным адресам идёт засылая порции байтов в ВГ75?

_________________
:dj: https://mastodon.social/@Shaos


23 Feb 2024 09:48
Profile WWW
Maniac
User avatar

Joined: 14 Oct 2019 18:10
Posts: 260
Location: Tashkent
Reply with quote
Shaos wrote:
А как ты это сделаешь, если ВТ57 по конкретным адресам идёт засылая порции байтов в ВГ75?
Для начала.
По сигналу DAC2 вывода 14 от ПДП D2 логическим вентилем проверять биты D3-D7 Шины Данных: Если они - в "11111", значит код из диапазона F8…FF.
В таком случае в ИЕ7 необходимо загрузить биты D0-D3 Шины Данных, но при этом саму ВГ75 отключить от Шины Данных (мультиплексором или вентилями), подставляя код 00.

Затем.
Подавлять вентилем прохождение каждого DRQ-запроса вывода 5 от ВГ75 D8 к выводу 17 DRQ2 ПДП, если в ИЕ7 - не НОЛЬ. При этом, совершать декремент ИЕ7 до полного его обнуления, попутно подставляя код 00 для ВГ75 и генерируя ложные DACK-ответы на вывод 6 ВГ75, чтобы грузились в него пустые символы.

Схему пока даже наброском не делал, но она не так уж страшна, при этом появится аппаратная табуляция от восьми до 15 символов.
(Можно и от четырёх, но это чуточку усложнит вентиль.)


23 Feb 2024 10:07
Profile WWW
Maniac
User avatar

Joined: 14 Oct 2019 18:10
Posts: 260
Location: Tashkent
Reply with quote
Ниже - эскиз схемы (также и в LogiSim).
  • DB0…DB7 - общая шина данных
  • DB0…DB7 (i8275) - выход к шине данных ВГ75
  • DRQ2 - сигнал запроса ПДП для ВТ57
  • DACK2 - сигнал подтверждения ПДП от ВТ57
  • DRQ (i8275) - сигнал запроса ПДП от ВГ75
Хоть и выглядит страшно непонятно, но вроде бы работает: Коды F4…FF перехватывает, позволяя в одной строке делать отступы по 4…15 знакомест в любом месте знакоряда.

Правда, необходимо переделать под ИЕ7 или ИЕ17.


Attachments:
File comment: Набросок схемы в LogiSim
I8275-TABS.png
I8275-TABS.png [ 20.86 KiB | Viewed 3629 times ]
File comment: Архив с наброском в LogiSim
RK86-I8275_TABS.circ.zip [1.82 KiB]
Downloaded 11 times
23 Feb 2024 11:42
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 137 posts ]  Go to page Previous  1 ... 5, 6, 7, 8, 9, 10  Next

Who is online

Users browsing this forum: No registered users and 12 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.