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

User Tag List

Страница 3 из 30 ПерваяПервая 1234567 ... ПоследняяПоследняя
Показано с 21 по 30 из 292

Тема: Компьютер для CP/M. Формулировка ТЗ.

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

    По умолчанию

    Большое спасибо. Punto-Switcher решает проблему с переключением РУС-ЛАТ. Жалко только, что в режиме SVGA, что использует Windows, нет бордюра, который в UNIVGA очень удобно индицирует включённый регистр клавиатуры.

    Без проблем сделал, чтобы левый Shift включал латинский регистр, а правый Shift - русский, триггерное переключение и использование CapsLock в качестве РУС-ЛАТ запретил (зачем? - у CapsLock своё предназначение, которое тоже нужно). То есть сделал переключение РУС-ЛАТ регистра, так же как это в Слово и Дело А.Гутникова. К сожалению, в Punto-Switcher нет команды 'Ctrl+Забой', что переводит последнее введённое слово в другой регистр, что очень полезно, когда ошибся в регистре при наборе слова или строки. Только надо сразу забыть о переключении РУС-ЛАТ, что использует сама Windows, иначе, если нажать Alt+Shift, то переключение регистра заданное в установках Punto-Switcher перестаёт работать до тех пор, пока снова не нажмешь Alt+Shift.

    В Punto-Switcher полно других возможностей. Например, можно сделать так, чтобы твоя кличка использованная на сайтах и пароль для входа всегда вводились в правильном регистре, что избавит от хлопот. Возможно также, что распознавание слов для автоматического переключения регистра РУС-ЛАТ тоже окажется полезным. Да и проверка грамматики не повредит. Кстати, оказывается YandexPuntoSwitcher автоматически грузится при закачке YandexDisk браузера и он оказывается у меня давно был (но я сдуру его не инсталлировал, т.к не понял что это, и не хотел тратить винт и память на что-то неизвестное).

    Цитата Сообщение от rw6hrm
    Рекомендую альтернативную кодировку, СР866, чтобы была совместимость с РС по текстовым файлам
    Это не есть здравая мысль. Этот вопрос обсуждался в 1991 году, когда на многие отечественные 8-ми разрядки ставили CP/M. КОИ-8 на порядок удобнее для программирования, чем альтернативная кодировка.

    Альтернативная кодировка - это была временная вынужденная мера, чтобы импортные MSDOS программы использующие псевдографику можно было использовать на русифицированных PC. Но в CP/M нет ни одной программы, что использовала бы псевдографику IBM PC. И наоборот, полно программ, что используют КОИ-8 и чертят рамки псевдографикой КОИ-8, которая имеет те же граф.символы, что и альтернативная кодировка (коды другие, смотри в книге Фигурнова "IBM PC для пользователя", 1991). Правда редкие программы от бытовых 8-ми разрядок можно заимствовать для "железо-независимой" CP/M, т.к программы глупых любителей обычно привязаны к железу конкретного компьютера. А для использования тех программ в КОИ-8, что сделаны корректно, Вам придётся иметь драйвер консоли совместимый с использованным автором (обычно это не 100% VT52).

    Но главные доводы в пользу КОИ-8 не это и даже не то, что в LINUX, в которой кодировку выбирали русские люди для русских людей, а не враги, чтобы сделать нам гадость (как было с кодировками для Windows и MAC), естественно, тоже используется кодировка КОИ-8. Главное в том, что есть соответствие между латинскими буквами и русскими. Можно просматривать текст в дампе отладчиками, которые не знают, что бывают 8-ми битовые символы. А смена регистра символа состоит в изменении одного бита. Не требуется табличная конверсия символов, чтобы пользователь мог вводить ответ как в верхнем регистре (маленькими буковками), так и в нижнем (заглавными буквами). Достаточно команды AND 5F. В фирменных текстовых редакторах команды управления это клавиша с Control. При КОИ-8 это работает, а при альтернативной нет, нужна табличная перекодировка. Потому при альтернативке команды управления работают только в латинском регистре.

    Если не загружен драйвер 8-ми битового шрифта, то CP/M сбрасывает старший бит и при альтернативной кодировке текст на экране выглядит "мусором", а текст в КОИ-8 читается. Кроме того, драйвер опроса матричной клавиатуры выдаёт коды в ASCII (0...127), и расположение ЙЦУКЕН, как на руской пишущей машинке. Русские буквы там же, где английские. Потому драйвер клавиатуры априори вводит текст в КОИ-8. Для АЛЬТ-кодировки изначально полученный код в КОИ-8 надо таблично конвертировать в АЛЬТ-кодировку, что бесполезно увеличивает размер драйвера на 300 байтов (2 таблицы). Замечу, что некоторые мои драйверы ОРИОНА и СПЕЦИАЛИСТА поддерживают работу в АЛЬТ, КОИ-8 и КОИ-7 (^L - АЛЬТ/КОИ8/КОИ7, ^G - ввод псевдографики).

    Никаких неудобств от отличий кодировок на PC и в CP/M не возникает. Для переноса файла с текстом достаточно перетащить мышью файл на пиктограмму TO_CPM, отчего запустится BAT-файл, который автоматически сделает конверсию, если файл имеет расширение TXT или ASM и перебросит результат в каталог в котором работает программа обмена с CP/M (это или дисководный CHANGER работающий с дискетой, или программа трансфера по проводной линии, или просто каталог, в котором Ваш эмулятор, которым Вы прогоняете программы 8-ми разрядки, хранит файлы дискеты).

    При трансляции программ то же самое. Тексты набираем в АЛЬТ-кодировке (дурацкая Windows кодировка не годится, т.к в ней нет псевдографики и получить рамки в программах невозможно), а при старте BAT-файла для трансляции, исходники автоматически перекодируются конвертором в КОИ-8 и только затем транслируются с помощью М80. Естественно, нужен редактор, который может работать в любых кодировках, лучше всего UltraEdit (т.к в нём много других полезных программисту свойств).
    Последний раз редактировалось barsik; 14.04.2017 в 17:52.

  2. #22
    Veteran Аватар для rw6hrm
    Регистрация
    10.07.2005
    Адрес
    Ставрополь
    Сообщений
    1,151
    Спасибо Благодарностей отдано 
    35
    Спасибо Благодарностей получено 
    57
    Поблагодарили
    31 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    По кодировке. Да, я враг , я выразил чисто собственное мнение, ибо считаю, что писюков сейчас много и лучше подстроиться к ним, нежели вспоминать бойни 90-х. Ссылки на отладчики и драйвера неинтересны, поскольку самодельный комп под СР/М сейчас нужен в большинстве случаев не для программирования и отладки (для них есть более удобные системы на более мощных машинах), а для обычной работы - тексты, базы, управление чем-нить, максимум Бейсик. Всё. Остается только выбрать подходящий софт, дабы не скакать с бубном и AND'ами в попытках "говорить по-русски" и совместимости.
    Если мы сейчас, в текущее время, говорим о старых машинах, то вспоминать о совместимости между ними (старыми) смысла уже нет, таких машин мало, и каждый делает их под свои вкусы, лишь бы быть совместимыми с современным железом и софтом. Чисто ИМХО.

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

    По умолчанию

    Цитата Сообщение от rw6hrm
    Цитата Сообщение от barsik
    В LINUX, в которой кодировку выбирали русские люди для русских людей, а не враги, чтобы сделать нам гадость (как было с кодировками для Windows и MAC), используется кодировка КОИ-8
    Да, я враг
    Вы не враг. Разве Вы придумали Windows-кодировку CP1251? Это сделали до Вас настоящие враги народа, которые тогда работали на фирме Microsoft. Это было в 1987, когда вышла Windows 2.0, которая поддерживала кирилицу.

    Цитата Сообщение от rw6hrm
    Остаётся только выбрать подходящий софт, дабы не скакать с бубном и AND'ами в попытках "говорить по-русски" и совместимости
    Вот именно. Я говорил об удобстве программиста и избавлении его от ненужной головной боли связанной с кодировкой. Хорошо, допустим плевать на интересы программиста. Поговорим об интересах пользователя. В фирменных программах CP/M, управление сделано сочетанием клавиш с клавишей Control (это почти все программы). Если не для текстовых редакторов это не важно, то для текстового редактора это важно.

    Если использовать АЛЬТ-кодировку, то одноимённые символы (например A и А) оказываются на разных клавишах, поэтому Вам придётся делать второй HELP для русского регистра и запоминать его для работы. При КОИ-8, например, для удаления строки, в любом регистре надо удерживая <Control> нажать клавишу, где написано 'Y'. При АЛЬТ-кодировке, в латинском регистре то же самое, но при включённом русском регистре надо жать уже не на 'Y', а на что-то совсем другое. Таким образом, с АЛЬТ кодировкой Вам понадобится собственный текстовый редактор (можно адаптировать текстовый редактор от СПЕЦИАЛИСТА, где клавиша <Control> отсутствует как класс, тем самым соответствие клавиш в русском и латинском регистрах не волнует).

    Кстати Super Text стоит того, чтобы им пользоваться. Когда я стал набирать тексты на 386-той, то жалел о нём. Даже написал драйвер консоли для фирменного эмулятора, чтобы получить доступ на PC, однако выяснилось, что фирменные CP/M эмуляторы (22NICE, Z80MU и др) неполноценны.

    Но допустим плевать и на редактор. А что же тогда остаётся? Из того, для чего нужна 8-ми битовая кодировка. А вообще ничего. Потому, что если откинуть те программы, что кракнуты для 8-ми битовой кодировки (а это как указано выше лишь несколько компиляторов и ассемблер), то остаются чисто 7-ми битовые CP/M-программы, где без разницы какая у Вас кодировка, хоть марсианская. Потому что в этих программах 8-ми битовые символы на экране отсутствуют.

    Если не писать программы в CP/M и не пользоваться текстовым редактором CP/M, то остаётся только одна вещь для чего нужна 8-ми битовая кодировка. Это чтобы смотреть HELP-ы для программ. Но Help-ы фирменных программ написаны на латинице, на иностранном языке и АЛЬТ-кодировка здесь не нужна. Остаётся смотреть только HELP-ы тех программ для CP/M, что пользователь такой чисто CP/M-машины сам себе напишет и снабдит их HELP-ом на русском языке в АЛЬТ-кодировке. Но если он сам написал, то HELP ему и даром не нужен (а встроенный краткий HELP в программы выгоднее писать на английском, т.к получается короче, меньше текста, больше информации влезает в окно HELP-а).

    Получается, что если текстообработка в CP/M не нужна, то вообще 8-ми битовая кодировка ни за чем не нужна. Чтобы делать краткие заметки можно переключать фонт на КОИ-7, который семи-битовый.
    Последний раз редактировалось barsik; 14.04.2017 в 17:46.

  4. #24
    Veteran Аватар для rw6hrm
    Регистрация
    10.07.2005
    Адрес
    Ставрополь
    Сообщений
    1,151
    Спасибо Благодарностей отдано 
    35
    Спасибо Благодарностей получено 
    57
    Поблагодарили
    31 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от barsik Посмотреть сообщение
    При АЛЬТ-кодировке, в латинском регистре то же самое, но при включённом русском регистре надо жать уже не на 'Y', а на что-то совсем другое.
    Вот поэтому в прошивке своей Расширенной ASCII-клавиатуры я предусмотрел такой финт - если надо нажать <Ctrl>-/что-то_на_латинице/, то можно так и нажимать вне того, в каком режиме стоит клава - латинице или кириллице, прописной или строчной. Результат будет ожидаем.
    Цитата Сообщение от barsik Посмотреть сообщение
    Потому что в этих программах 8-ми битовые символы на экране отсутствуют.
    Не на экране, а в самой обрабатывающей их программе. На экране может быть всё, что угодно, на что прошито отображающее устройство/терминал.
    Цитата Сообщение от barsik Посмотреть сообщение
    если текстообработка в CP/M не нужна
    Это единственное, что действительно нужно на любом компе. Игры не считаем. Иначе нафиг этот комп нужен. А пишут не только программы. Стихи, к примеру, те же хелпы...

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

    По умолчанию

    Цитата Сообщение от rw6hrm
    Вот поэтому в прошивке своей 'Расширенной ASCII-клавиатуры' я предусмотрел такой финт - если надо нажать <Ctrl>-/что-то_на_латинице/, то можно так и нажимать вне того, в каком режиме стоит клава - латинице или кириллице, прописной или строчной.
    Значит при использовании АЛЬТ-кодировки сразу отпадают все известные реализации клавиатур. Как все промышленные типа 15ВВВ-97, так и эмуляции матричной клавиатуры с матрицами РК86, КОРВЕТ, СПЕЦИАЛИСТ на ПЛИС, что сделаны на этом сайте. Придётся сделать собственную реализацию контроллера клавиатуры IBM PC (или другой клавиатуры, какую будет использовать ТС). Стоит ли столько хлопот лишь только для того чтобы не писать BAT-файл (из 2-х строк) запускаемый для переноса текстовых файлов из IBM PC на реал?

    Впрочем, все типы клавиатур можно использовать, если они позволяют вывести сигнал <Control> на выход адаптера клавиатуры. Всё остальное можно сделать программно, отчего в фирменных текстовых редакторах не будет проблем. Кстати поэтому, замену прошивки для конверсии кодов от русских букв нажатых одновременно с <Control>, в кoды однозвучных латинских букв за вычетом 40H, в Вашей клавиатуре можно было и не делать.

    Достаточно было бы вывести из адаптера клавиатуры бит состояния линии <Control>. Тогда всё остальное делает драйвер кравиатуры в CP/M. Т.е если код получен без помощи <Control>, то драйвер клавиатуры выдаёт CP/M-BIOS-у код без модификации. А если драйвер узнал, что код от адаптера клавиатуры получен с участием клавиши <Control> и этот код русский, то делается табличное преобразование кода.

    Вообще зачем клавиатуре выдавать 8-ми битовый код? Клавиш всего 64. Обычно аппаратные клавиатуры выдают 7-ми битовый код ASCII. А фпаг 8-го бита поддерживает драйвер, в КОИ-8 этот бит и называется РУС-ЛАТ. При КОИ-8 удобно этот бит иметь 0 или 80H и делать OR с этим флагом полученного кода. Т.е при КОИ-8 весь расход на поддержку КОИ-8 это одна команда ассемблера, а при альтернативке это или аппаратное преобразование кодов на ПЗУ (что Вы и делаете) или программное табличное преобразование, что грамотнее, т.к программное решение всегда умнее и проще, чем аппаратное

    Кстати Ваша клавиатура сложнее, чем более дешёвый вариант того же, что впервые был описан в журнале 'Funkamateur 04.1984', где для экономии логики применены уровни сигналов (подпитка эмиттеров на -0.7 вольта). Согласен, что Ваша клавиатура намного проще, чем обе клавиатуры от ИРИШИ и другие варианты аппаратных клавиатур опубликованных в МПСС в 80-тые.

    Я собирал простую, но качественная клавиатуру из книги "Microelectronik in der Amateurpraxis 3" Berlin, Militarverlag DDR,1987 страница 84 (имеет клавиши Caps Lock, Shift Lock, Ctrl, Shift и даёт автоповтор). В этой же книге описана схема чтобы передавать код не параллельно, а последовательно по 3-м проводам. Другие комп.книги 80-тых из ГДР.

    Зря никто не ходит на немецкие сайты и не читает немецкие книги для любителей микропроцессоров. Интересно, что в 80-е годы в крошечной ГДР было больше самодельных компьютеров и их качество было выше, чем у нас, где в те же годы кроме РК86 ничего не было. http://www.robotron-net.de/eigenbau.html
    Последний раз редактировалось barsik; 01.07.2017 в 18:01.

  6. #26
    Master
    Регистрация
    24.05.2005
    Адрес
    г. Запорожье, Украина
    Сообщений
    992
    Спасибо Благодарностей отдано 
    571
    Спасибо Благодарностей получено 
    364
    Поблагодарили
    239 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот какие формы может принять "заболевание" (только в хорошем смысле) если нет финансовых и временнЫх ограничений ) -


  7. #27
    Master
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    904
    Спасибо Благодарностей отдано 
    200
    Спасибо Благодарностей получено 
    144
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Во-первых поздравляю всех с праздником. Во вторых благодарю за ваши ответы, которые дали мне богатую пищу для размышлений. Вот некоторые предварительные выводы.
    По аппаратной реализации видеоадаптера. Один из вариантов его я вижу как терминал, только доступ просто через i/o порт. При этом не занимается системная память и не приходится процессору простаивать во время ПДП либо гасить экран, когда простой недопустим. Но тут и свои недостатки. Придется как-то управлять терминалом. Может с этим справится, например, i8051? Он с ВТ57 подружится? Это если на ВГ75 делать адаптер. С другой стороны, мне сложно придумать, зачем процессору может понадобится запрет прерываний. Разве что при работе с внешними устройствами? Но это тоже не процессорное дело. Для того и нужен ПДП и прерывания. Вот такие пока мысли. Жду вашей оценки.
    Подумав насчет кодировки, уже почти согласен ка КОИ-7 с переключением наборов. Если все равно большинство старого софта поддерживает только 7-бит кодировки. Да, переключение разных наборов решило бы большинство проблем, кроме одновременного отображения русских и латинских символов.
    Последний раз редактировалось Xrust; 16.04.2017 в 17:23.

  8. #28
    Member
    Регистрация
    26.04.2016
    Адрес
    г. Полоцк, Беларусь
    Сообщений
    48
    Записей в дневнике
    4
    Спасибо Благодарностей отдано 
    18
    Спасибо Благодарностей получено 
    7
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    По идее, 8051 не имеет входа приостановки. Поэтому наверное, напрямую не подружится с ВТ57. Нашел старый документ, который видел лет 15 назад - AP-223 8051 Based CRT Terminal Controller. http://www.diakom.ru/el/elfirms/appn...NTEL/ap223.pdf
    Там используется i8276, увы. Его нигде не купить. Но сам документ весьма интересен и познавателен. Как вариант - пытаться на 8051 эмулировать ПДП, как это сделано в соседней теме http://zx-pk.ru/threads/26455-chto-m...l=1#post907867, или просто взять ту конструкцию за базу.
    Я развожу плату вышеописанной версии.

    P.S. P8276 нашелся на EBAY, т.е. купить его в принципе возможно.

    PP.S. Стоит только поискать - такое находится 8085 и 8275 без ПДП, по идее, должно смасшабироваться на 8051 - http://www.nedopc.org/forum/viewtopic.php?t=10597
    Последний раз редактировалось A_AVL; 16.04.2017 в 22:25.

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

    По умолчанию

    Цитата Сообщение от Xrust Посмотреть сообщение
    Во-первых поздравляю всех с праздником. Во вторых благодарю за ваши ответы, которые дали мне богатую пищу для размышлений. Вот некоторые предварительные выводы.
    По аппаратной реализации видеоадаптера. Один из вариантов его я вижу как терминал, только доступ просто через i/o порт. При этом ...
    Xrust, тоже с праздником. А CP/M – видит только стандартный терминал VT52 и т.п. КОИ7 и терминал -это уже дело второстепенное (от терминала зависит) и тем более не от ВГ75. О Компьютере для CP/M интересуетесь?)
    Последний раз редактировалось OrionExt; 16.04.2017 в 22:46.
    Электроника КР-02, MSX YIS-503IIR, Орион-128, Ленинград-2, Pentagon-128k, MSX2 YIS-503IIIR, MSX-EXT, ...

  10. #30
    Master
    Регистрация
    12.04.2017
    Адрес
    г. Тольятти
    Сообщений
    904
    Спасибо Благодарностей отдано 
    200
    Спасибо Благодарностей получено 
    144
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    OrionExt, собственно задача и сводится к созданию компьютера и терминала. Вот только вопрос в реализации. Можно просто к com порту PC подключиться, можно видеокарту сделать. Наверное, идеальным решением будет предусмотреть все варианты. Если будет установлена видеокарта, то из ее пзу загрузится драйвер. Главное заранее предусмотреть совместимость с существующими стандартами cp/m.

Страница 3 из 30 ПерваяПервая 1234567 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Посоветуйте компьютер для сборки!
    от Demige в разделе Для начинающих
    Ответов: 16
    Последнее: 17.02.2012, 18:07
  2. Куплю FDD для Atari XL/XE или в комплекте компьютер+дисковод
    от Нrundel в разделе Барахолка (архив)
    Ответов: 0
    Последнее: 22.01.2007, 13:06
  3. Лучший компьютер.
    от Shiru в разделе Зарубежные компьютеры
    Ответов: 12
    Последнее: 22.05.2005, 14:01

Ваши права

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