Важная информация

User Tag List

Страница 20 из 23 ПерваяПервая ... 1617181920212223 ПоследняяПоследняя
Показано с 191 по 200 из 225

Тема: Специалист. Ваши мысли?

  1. #191
    Guru
    Регистрация
    16.12.2008
    Адрес
    Kharkov, Ukraina
    Сообщений
    2,221
    Спасибо Благодарностей отдано 
    4
    Спасибо Благодарностей получено 
    21
    Поблагодарили
    18 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну тут двумя проводами не обойтись. А так да. В Орионе такое было. С картой Z80. Включалось прерывание с порта, по сбросу было выключено.
    Электроника КР-02, MSX YIS-503IIR, Орион-128, Ленинград-2, Pentagon-128k, MSX2 YIS-503IIIR, MSX-EXT, ...

  2. #192
    Banned
    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Т.к тема флеймовая, вот некоторые соображения о клавиатуре СПЕЦИАЛИСТА.

    Если нет желания или возможности использовать родную матричную клавиатуру конфигурации 6*12, то можно использовать микро-контроллер с Atmega от vinxru эмулирующий клавиатуру СПЕЦИАЛИСТА в реальном времени. Но это не лампово и не всем подходит.

    Какие ещё есть варианты ?

    Удобнее всего, если бы, как в РК86 и ОРИОНЕ, можно было бы применить клавиатуру РК86 или MS7007. Тогда бы хватило одной клавиатуры сразу на три компьютера. В 80-тые слышал сплетню, что один знакомый знакомого переписал код ПЗУ СПЕЦИАЛИСТА, чтобы использовать клавиатуру от РК86. Подробностей не знаю, но битов ППА для клавиатуры 8+6+4=18 достаточно для матрицы 8*8.

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

    Напрямую к клавиатуре лезут, по видимому, в основном те игры, что используют сочетания клавиш. Для игр, которые реагируют только на одну клавишу, программе, особенно на СПЕЦИАЛИСТЕ, где опрос стандартной подпрограммой намного быстрее, чем на РК86, в принципе совершенно незачем использовать свою процедуру вместо вызова стандартной подпрограммы из ПЗУ. И даже, если программа сама лезет в ППА клавиатуры, но не использует сочетания клавиш, то несложно её переделать на вызовы подпрограмм ПЗУ.

    Впрочем, игр использующих сочетание клавиш скорее всего немного, хотя они видимо, самые лучшие. Но хорошие игры, обычно позволяют задать клавиши управления, т.к в СПЕЦИАЛИСТЕ с самодельной плёночной клавиатурой курсорные клавиши стоят неудобно. Это и даёт шансы для применения альтернативной клавиатуры. Имею ввиду то, что можно поставить любую клавиатуру на любом принципе, а для игр использовать джойстик.

    Тогда можно, например, применить клавиатуру от IBM PC с той же БИС для клавиатуры, что стоит в XT/AT (кажется, если МНИП, 8242 или типа того).

    Но легче всего использовать антикварную стандартную промышленную аппаратную клавиатуру типа 15ВВВ-97-006 (или совместимые), что применялась на всех отечественных машинах - микро ЭВМ Электроника-60, ДВК, мини ЭВМ СМ-1420 и ЭВМ серии ЕС (имеющих много внешних терминалов). Эта клавиатура по интерфейсу аналогична клавиатуре "Консул", клавиатуре Apple-II (ПРАВЕЦ-82/8А/8С, АГАТ) и клавиатуре от ИРИШИ.

    Если подключение PC-клавиатуры с её же обрамлением сравнительно сложно, то подключение антикварной аппаратной клавиатуры предельно просто и освобождает в ПЗУ море свободного места. Это потому, что аппаратная клавиатура практически не нуждается в программе обслуживания, т.к она выдаёт готовый 7-ми битовый ASCII-код сопровождаемый стробом (сигналом STB=1). Потому, если подключить эту клавиатуру через один порт ППА, подав ASCII-код на биты D0...D6, а сигнал STB на бит D7, то вся программа F81B это просто анализ бита D7 из порта ППА, а п/п-мма F803 это ожидание строба STB (бита D7=1), затем AND 7FH и возврат.

    У меня есть MS7007, клавиатура КОРВЕТА, вечная аппаратная клавиатура "Консул" (датчики на эффекте Холла), аппаратная клавиатура Apple-IIe и, конечно, куча PC-клавиатур. Есть и джойстик от ZX.

    Клавиатуру КОРВЕТА трудно подключить, - слишком большая матрица 8*16 (не хватает битов ППА). Конечно можно её разобрать и разрезав печать на плате клавиатуры, соединить в матрицу СПЕЦИАЛИСТА. Это сложно и опасно. Тогда уж легче добавить в СПЕЦИАЛИСТ в качестве доп.порта на вывод 555 ТМ9. MS7007 тем более не переделать.

    В любом случае самый простой вариант, это не нестандартная матрица или контроллер, а использование аппаратной клавиатуры. Дополнительным плюсом это даёт клавишу <Control>, что отсутствует как класс в СПЕЦИАЛИСТЕ, но нужна в CP/M.

    Но тогда проблема с играми лезущими в ППА. В 80-тые читал в болгарском журнале о способе включения джойстика в клавиатуру ПРАВЕЦ-8Д (клон ORIC). Т.к программа может использовать любую клавишу, то джойстик должен иметь возможность включаться параллельно любой клавише. Для этого ставится наборное поле (в виде мамы разъёма) куда втыкается штеккер с проводом от джойстика. Т.о джойстик может включиться параллельно любой клавише и тем самым использоваться в любой игре. Но вряд-ли такие сложности понадобятся, т.к хватит подключения джойстика вместо курсорных клавиш и пробела.

    Когда в конце 90-тых поимел дохлую плёночную PC-клавиатуру, то решил подключить её к ОРИОНУ. Замыкала контакты токопроводящая резина. Я отрезал линии матрицы от "паучины" на плате контроллера и подпаяв провода, подключил к ОРИОНУ. И ни хрена не работало. ВВ55 не чувствовал замыкания через токопроводящую резину.

    Возможно, если бы ППА был КМОП 82C55, у которого малые входные токи, результат был бы иной. Возможно помог бы промежуточный КМОП буфер 561 серии, но возиться с этим не стал, т.к матрица была неподходящей (не хватало битов ППА), да и переписать драйвер в ПЗУ было сложно, т.к в ОРИОНЕ ПЗУ всего 2 кб.

    А вот в СПЕЦИАЛИСТЕ, где ПЗУ 8 кб это можно сделать. У меня сейчас есть пара дохлых плёночных PC-клавиатур. Подумываю об их таком же использовании в виде матрицы, т.к теперь имею 82C55. Такой вариант даёт совместимость с играми и привлекательнее тем, что клавиатура PC имеет лучшую эргономику, но главное позволяет больший темп ввода, чем антикварная аппаратная клавиатура, т.к там борьба с дребезгом сделана за счёт пауз.
    Последний раз редактировалось barsik; 23.01.2018 в 12:18.

  3. #193
    zx_
    Гость

    По умолчанию

    здесь есть способ переделки писи клавки в матричную
    http://sblive.narod.ru/ZX-Spectrum/M...neKeyboard.htm

  4. #194
    Banned
    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию текстовый адаптер для СПЕЦИАЛИСТА и ОРИОНА на 6 микросхемах

    В качестве флейма хочу рассказать о простой возможности добавлять синхронные текстовые адаптеры в графические компьютеры.

    Эта идея особенно ценна для компьютеров в которых число экранных байтов в строке 64, а скорость процессора низка, отчего вывод текста и ролик медленные. Потому наиболее удобно это делается в ОРИОНЕ, т.к там пиксель-клок 10 МГЦ, отчего возможен текстовый режим в 64 символа в строке. В СПЕЦИАЛИСТЕ для этого требуется замена кварца на 10 МГЦ, иначе получится только 48 символов в строке.

    Сама идея текстового адаптера за счёт включения ПЗУ фонта перекодирующего экранный байт при его записи в сдвиговый регистр очевидна каждому. Можно получить или 8 строк с высотой знакоместа в 8 линий или 16 строк с высотой в 16 линий растра. Более удобен экран в 16 строк.

    Чтобы при всех 16-ти линиях знакоместа считывался один и тот же экранный байт, веса счетчиков V0...V3 подаваемые на ОЗУ во время обращения видеоадаптера обнуляются. При этом, чтобы не нарушилась регенерация ОЗУ требуется изменить веса счётчиков подаваемые на ОЗУ по фронту /RAS (подробности тут).

    Схемотехника такого текстового адаптера проста, требуется всего 4 микросхемы и один управляющий бит для включения текстового режима. Однако т.к текстовый экран образован из графического, то экранные адреса знакомест отстоят на 16 ячеек и весь экран размером в 1 кб в ОЗУ занимает целые 16 кб. Это и является главным недостатком в таком синхронном текстовом адаптере.

    И всё же оказалось можно эту идею усовершенствовать и небольшой ценой сократить размер экранной области до 1 кб. Чтобы размер текстового экрана сократить до 1 кб требуется перестановка большинства адресов на входе адресного мультиплексора. Это возможно, если навсегда отказаться от графики и перепаять десяток цепей на входе адресных мультиплексоров.

    Если же совместимость надо сохранить, то есть ещё 2 решения. Во-первых, можно поставить четыре КП11 и переключать все 14 адресов от счётчиков видеогенератора на входе адресных мультиплексоров. Однако при этом придётся делать разрезы печати и если текстов адаптер делать внешней платой, то это всё усложнит.

    Потому лучше использовать параллельное включение мультиплексоров КП12. Это возможно, т.к хотя в качестве мультиплексоров можно ставить КП2, но все грамотные аппаратчики применяют КП12, т.к они имеют более мощные выходы и, главное, переводятся в 3-е состояние. Потому можно без всяких разрезов печати поставить на внешней плате 4 адресных мультиплексора КП12 подав их выходы прямо на входы 565 РУ5. А чтобы КП12 стоящие на основной плате не мешали, в текстовом режиме они переводятся в 3-е состояние сигналом MODE=1.

    На плате ЭКСПРЕСС текстовый экран удобно включить на F400...F7FF (тогда в режиме с отключенным ПЗУ для образуются сплошные 61 кб ОЗУ доступные для программ). ПЗУ фонта включается в разрыв 8-ми проводников идущих от экранной защёлки ИР12 к выходному сдвиговому регистру на ИР16. Еще потребуется 4-х разрядная защёлка со сбросом ТМ9 (или ИЕ7 включённая в качестве регистра) для адресов ПЗУ, включаемая параллельно ИР12, в которой синхронно с ИР12 защёлкиваются веса счётчиков V0...V3, обеспечивая 16 линий в знакоместе. Эта ТМ9 формирует адреса A8...A11 для ПЗУ фонта.

    Чтобы с'экономить на коммутации видеовыхода в качестве ПЗУ фонта вместо 2732 применим 2764, но в его первую половину (что включается в графическом режиме) прошьём не фонт, а в ячейки 0...FF в каждый байт прошьём адрес этого байта. В обычном графическом режиме ТМ9 сброшена сигналом /MODE=0, на её выходе нули и адреса A8...A11 на ПЗУ нули. ПЗУ прошита так, что при входных адресах 0...0FF работает просто как повторитель сигналов на адресных входах (выглядит, как бы ПЗУ фонта вообще нет), отчего СПЕЦИАЛИСТ выводит свою графику как обычно. А в текстовом режиме на A12 ПЗУ фонта подаётся MODE=1 и работает старшая половина ПЗУ в которой прошит фонт от КОРВЕТА и происходит перекодирование экранного байта в графику текстового символа.

    Итого весь расход деталей - четыре КП12, ТМ9 (или ИЕ7) и ПЗУ фонта. Это совсем небольшая плата за то, чтобы получить в СПЕЦИАЛИСТЕ и ОРИОНЕ скоростной текстовый экран, что изначально было мечтой миллионов пользователей. Одновременно это освобождает в компьютере много ОЗУ, что и позволяет использовать CP/M.

    Конструктивно это делается в виде монтажа с краю платы ОРИОНА или СПЕЦИАЛИСТА разъёма, куда и втыкается внешняя платка синхронного текстового адаптера. На разъём выводятся адреса CPU, веса счётчиков видеогенератора, адреса A0...A7 ОЗУ и выходы экранной защёлки ИР12 и входы выходного сдвигового регистра ИР16. На основной плате придется сделать 8 разрезов (т.к ПЗУ перекодирующее экранный байт в графику символа включается в разрыв цепей соединяющих ИР12 с ИР16-ми).

    Платка текстового адаптера на пяти TTL-микросхемах будет очень маленькой, потому можно разместить на этой плате также расширение ОЗУ СПЕЦИАЛИСТА, включаемое как параллельная банка ОЗУ (также как это в ОРИОНЕ). Тут в качестве ОЗУ удобнее всего использовать w2427/w24512 извлечённые из маток 486-тых PC.

    Без замены кварца в СПЕЦИАЛИСТЕ и расширения экрана до 448 или 512 точек по горизонтали эта идея непривлекательна, т.к 48 символов в строке для текстообработки мало.

    Я уже нарисовал схему такого адаптера для СПЕЦИАЛИСТА. Теперь надо найти фонт ПЗУ текстового адаптера КОРВЕТА (оно у меня было и использовалось в текстовом адаптере, но не выдержало втыкания в панельку с развором на 180'). Т.е для себя я такой адаптер постараюсь сделать. т.к это одновременно наиболее простым способом даёт CP/M с высоким TPA и позволяет разрабатывать программы на самОй рэтро ЭВМ в редакторе SuperText.

    Цитата Сообщение от zx_ Посмотреть сообщение
    здесь есть способ переделки писи клавки в матричную
    Спасибо за ссылку, но это даже не вариант. Если, как сделать разрез на проводнике напылённом на плёнку ещё можно представить, то чем рисовать новые проводники на плёнке? Это просто первоапрельская шутка.

    Гораздо более реален мой вариант переделки клавиатуры PC в матричную, когда матрица PC-клавиатуры без переделки используется в оригинальном виде, а переделывается драйвер.

    Сейчас у меня есть несколько ненужных цельноплёночных PC-клавиатур. В них при замыкании сопротивление маленькое. Достаточно, отрезать матрицу от БИС контроллера, подпаять провода к матрице и переписать драйвер клавиатуры в ПЗУ. Хотя в СПЕЦИАЛИСТЕ при этом из-за нехватки числа свободных разрядов в имеющемся ППА клавиатуры (т.к матрица PC имеет больший размер) придётся поставить дополнительный регистр ввода/вывода на 589АП16.
    Последний раз редактировалось barsik; 16.02.2018 в 23:25.

  5. #195
    Master Аватар для alx32
    Регистрация
    18.07.2010
    Адрес
    Ульяновск
    Сообщений
    849
    Спасибо Благодарностей отдано 
    4
    Спасибо Благодарностей получено 
    11
    Поблагодарили
    9 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Насчёт клавиатуры.
    Был какой-то монитор для Специалиста использующий ascii клавиатуру. То есть коды символов передавались прямиком из клавиатуры на один из портов ВВ55. Упоминание о нём было в одном из МК, никто не видел его вживую?

  6. #196
    Banned
    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от alx32 Посмотреть сообщение
    Был какой-то монитор для Специалиста использующий ASCII клавиатуру.
    Под ASCII клавиатурой видимо понимается антикварная клавиатура от ЕС ЭВМ, ДВК и Электроники-60, т.е 15ВВВ-97-006 и КОНСУЛ. Эти клавиатуры по нажатию выдают готовый 7-ми битовый ASCII код сопровождаемый стробом.

    Драйвер такой клавиатуры прост и освобождается много места в ПЗУ. У меня много таких клавиатур, т.к они применяются в Apple-II и ИРИШЕ. Я ставил такую клавиатуру и в РК86. Но при этом перестала работать половина игр. Игры сами нагло лезут в ППА, думая, что считывают матрицу.

    Другой недостаток такой древней аппаратной клавиатуры в том, что она позволяет только одно нажатие. Т.е двойные нажатия не передать в компьютер. А программный опрос матрицы позволяет фиксировать одновременное нажатие двух клавиш. Потому, даже если если применить микроконтроллер, который принимает ASCII код, а затем эмулирует матрицу на выводах ППА, это всё равно не позволит двойные нажатия, т.к они просто не вводятся с самой клавиатуры.

    А вот если тот же микроконтроллер эмулирующий матрицу использует PC-клавиатуру, то если грамотно написана его программа, он может эмулировать двойные нажатия. Кстати вопрос из любопытства к тем, кто использует контроллер PS/2 клавиатуры на ОРИОНЕ, СПЕЦИАЛИСТЕ и РК86. Там обслуживаются двойные нажатия?

    А прямое подключение матрицы, пусть она совсем иная по расположению клавиш, если она подключена соответственно, позволяет использовать программы напрямую сканирующие матрицу через ППА.
    Последний раз редактировалось barsik; 16.02.2018 в 18:14.

  7. #196
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #197
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    Кстати вопрос из любопытства к тем, кто использует контроллер PS/2 клавиатуры на ОРИОНЕ, СПЕЦИАЛИСТЕ и РК86. Там обслуживаются двойные нажатия?
    В схеме Caro на ATMege48 обрабатываются и тройные одновременные нажатия в том числе. Когда я был бета-тестером этого контроллера, я этот момент специально тестировал на адаптациях игр от ZX, как сейчас помню как прекрасно катался в CrazyCars. Такое заработало не сразу, но в итоге Caro всё победил.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  9. #198
    Guru
    Регистрация
    16.12.2008
    Адрес
    Kharkov, Ukraina
    Сообщений
    2,221
    Спасибо Благодарностей отдано 
    4
    Спасибо Благодарностей получено 
    21
    Поблагодарили
    18 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    В схеме Caro на ATMege48 обрабатываются и тройные одновременные нажатия в том числе.
    Может и обрабатывает. А вот контроллеры в клавиатурах думаю по другому

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

    Диоды спасут всех. Но промышленность мировая боюсь не справится
    Электроника КР-02, MSX YIS-503IIR, Орион-128, Ленинград-2, Pentagon-128k, MSX2 YIS-503IIIR, MSX-EXT, ...

  10. #199
    Moderator
    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,577
    Спасибо Благодарностей отдано 
    61
    Спасибо Благодарностей получено 
    106
    Поблагодарили
    92 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    Итого весь расход деталей - четыре КП11, ТМ9 (или ИЕ7) и ПЗУ фонта. Это совсем небольшая плата за то, чтобы получить в СПЕЦИАЛИСТЕ и ОРИОНЕ скоростной текстовый экран, что изначально было мечтой миллионов пользователей. Одновременно это освобождает в компьютере много ОЗУ, что и позволяет использовать CP/M.
    В Орионе (который у большинства сейчас с 512кб ОЗУ) можно не ставить дополнительные КП12. Пёс с ними с этими 14кб, которые без пользы пропадут под текстовым экраном (пропадали же они под графическими, остального ОЗУ хватало). Главное что мне нравится - скорость вывода и меньшие объемы при буферизации "подоконного содержимого" в оконном интерфейсе.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  11. #200
    Guru
    Регистрация
    16.12.2008
    Адрес
    Kharkov, Ukraina
    Сообщений
    2,221
    Спасибо Благодарностей отдано 
    4
    Спасибо Благодарностей получено 
    21
    Поблагодарили
    18 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Да зачем сравнивать Специалист и Орион. В Орионе скопастили часть идей Специалиста. Я даже не знаю как такое было возможно 85г. (вроде). Какой нах ZX и т.д. Это за гранью понимания
    Электроника КР-02, MSX YIS-503IIR, Орион-128, Ленинград-2, Pentagon-128k, MSX2 YIS-503IIIR, MSX-EXT, ...

Страница 20 из 23 ПерваяПервая ... 1617181920212223 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Мысли о памяти
    от SfS в разделе Память
    Ответов: 28
    Последнее: 16.12.2006, 10:49
  2. мысли по написанию модуля эмуляции z80 на С
    от boo_boo в разделе Эмуляторы
    Ответов: 9
    Последнее: 24.01.2006, 19:28
  3. Странные мысли
    от acidrain в разделе Несортированное железо
    Ответов: 162
    Последнее: 18.08.2005, 09:21

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •