Просмотр полной версии : Редактор текстов для РК86 и световое перо
Это правда, что на РК дефицит хороших редакторов текстов?
В 1988 году меня категорически не устроил редактор МИКРОН, и, правильно, я написал свой.
Он поддерживает блоки и 2 независимых окна для одного текста.
Конечно же, вывод текстов через МОНИТОР нещадно тормозил, поэтому вывод текста делался напрямую в видеопамять.
Это нарушает совместимость, но у меня же есть исходный текст, я всегда могу странслировать редактор для нужных адресов экрана и периферии.
Из-за убогости ввода символа в МОНИТОРЕ, тоже встроил свою версию - она позволяет отслеживать нажатие нескольких кнопок, когда это допустимо по матрице, для нескольких нажатых клавиш работает автоповтор, да и в целом поприятнее в работе.
Размер редактора - 6к, правда нашел только версию для CP/M, тексты редактора с вводом/выводом на магнитофон остались на кассетах. Но даже не раскапывая кассеты, заменить ввод/вывод на МОНИТОРНЫЕ подпрограммы - дело часа, не более.
Так что вот - https://github.com/tchv71/ED_SC80
Запуск в эмуляторе:
https://rk86.ru/index.html?file=https://raw.githubusercontent.com/tchv71/ED_SC80/OriginalRK/bin/ESC80.RK
О, вот он где! Спасибо большое!
Но очень был бы благодарен за готовую для РК-шки редакцию, которую можно, например, зашить сразу в ROM-диск (ну, или любой другой носитель -- МЛ, дискета). Сам я, к сожалению, не осилю портировать... не силен... :(
Ещё вопрос: а не ваш ли редактор поддерживал световое перо и двойной знакогенератор (строчные-прописные)?
Дело в том, что в 1988 году я купил кассету на рынке, на ней было несколько игр, не помню, каких, но главное -- софт! Там был текстовый редактор (ED88_RK86) и огромный текстовый документ, очень красиво оформленный -- "Схемы и программы для РАДИО-86РК". В документе было все суперинтересное:
- схема подключения светового пера;
- схема замены знакогенератора на РФ5 и дамп двойной прошивки;
- Схема автоматического переключения банков ПЗУ ЗГ.
- схема параллельного интерфейса подключения принтера;
- описание редактора.
К этой "простыне" было несколько программ, в том числе "программа печати" -- выводила код из памяти на матричный принтер, называлась "PRN_PK86", програмка "LPEN" для светового пера (кубики носить на весах, вроде игры), PROG87 -- программатор... Ну, это, что запомнил, там много было. Так вот: я в этом редакторе набирал доки (большими и маленькими буквами!!!!), выделял блоки текста и слова Световым пером (потом копировал, вырезал и вставлял, вроде клавиатурой), рисовал рамки пером (любые символы), потом печатал -- на D100 и каком-то Epson.
Но кассета пропала, нифига не сохранилось, а теперь ищу -- безрезультатно... Грустно, ппц, ибо сейчас занимаюсь восстановлением РК в музейно-познавательном виде, но кроме "Микрона" -- никаких редакторов, и те, с кем я говорил, начисто не помнят ничего подобного. Ни редактора, ни пера, ни принтера. Так что очень надеюсь на вашу помощь!!!
Я не программировал для РК уже лет 25, но думаю, что получится. Нужна же версия для стандартных портов РК с 16 или 32 кбайт памяти, оттранслированная с адреса 0? Попробую сделать, благо эмуляторы сейчас доступны, можно проверить, а там и на железке запустится.
Насчет этой кассеты, это не моё, хотя все кроме светового пера у меня было, и подключение принтера, и программатор и все остальное. Видимо, идеи носились в воздухе и многие реализовывали. Большие и маленькие буквы, в том числе обоих алфавитов в редакторе возможны, но требуют аппаратной доработки (расширенный ЗГ, переключаемый атрибутами ВГ75) и всё-таки имеются ограничения - не более 16 "смен алфавита" на строку. В реальности все тексты, какие ни были, смотрелись нормально. Схемка одной из таких доработок есть у меня на гитхабе - https://github.com/tchv71/RK_CPM30/blob/main/RK%20Enhancements/Symbol%20Gen%20RF2-tchv.jpg
Особенность той схемы, что знакогенератор ставился 2К, в соответствии с кодировкой КОИ-8, но предоставлял 4 набора символов в кодах 0-127 - оригинальную РК, английские буквы большие и маленькие, русские большие и маленькие, и, кажется, псевдографику.
Разумеется, получится! Если делать, то под 32кб, других нетю. Ну, и порты лучше полностью стандарт. Вывод на экран - прямо в память, чтобы быстро.
На выходных обещаю заняться, а то призраки прошлого вытеснят работу :)
Оно не к спеху! [emoji16]
Ещё платы не готовы...
Главное, чтобы получилось!
Тогда РК-86 можно будет полноценно демонстрировать...
Error404
01.04.2021, 00:34
Подскажите, редактор поддерживает текст более размера буфера в ОЗУ? Т.е. со своп-файлом.
Неспешно подыскиваю редактор в исходника для CP/M с таким вот свойствами.
Нет, не поддерживает, да и потребности такой не было - романы я не писал, а тексты программ с учетом разбиения на модули и так влезали. Может, на пенсии...
Редактор "задышал" на оригинальной РКшке (в эмуляторе), но местами еще работает некорректно - то ли на дискетах откопался промежуточной вариант при переносе в CP/M, то ли еще что...
Архив с текстами редактора был неполный, но, по счастью был найден старый вариант еще до разделения на модули. Он тоже был "битый", но нужные куски в нем были.
Как бы то ни было, буду добиваться полной работоспособности и заменю запись/чтение с диска на ленточные.
В 1988 году меня категорически не устроил редактор МИКРОН, и, правильно, я написал свой.
Респект за исходники! :)
Это правда, что на РК дефицит хороших редакторов текстов?
Кому как, я всегда пользовалась редактором WEL 2.0. Офигенный редактор.
Он использует для редактирования всю стандартную область экрана, а свои данные выводит чуть выше, в видеопамять.
https://rk86.ru/catalog/WEL.RKR/WEL.RKR-1.png
А можно этот редактор где-нибудь взять в виде бинарника (про исходные коды и молчу)? Гугл выдает только мусор
Радио-86РК
05.04.2021, 16:51
А можно этот редактор где-нибудь взять в виде бинарника
https://rk86.ru/catalog/WEL.RKR/WEL.RKR-1.png
Доступeн же онлайн (https://rk86.ru/index.html?file=WEL.RKR)!
Я ничего не хочу сказать, наверное WEL - хороший редактор, но вот попробовал, и... "ощущения не те". Он же через монитор текст выводит - отсюда тормоза при выводе и скроллинге, на реальной РК курсор будет "мельтешить".
Онлайн эмулятор "мельтешение" курсора скрывает, что не всегда хорошо, на реальной РК аппаратный курсор виден всегда, если его специально не скрыли.
Недаром большинство игр "лезут" в экран напрямую. Я вот не только вывод, но и ввод символа использовал свой, на эмуляторе работает. В стандартном вводе символа тормозит автоповтор, несколько нажатых клавиш отрабатываются плохо, в том числе в автоповторе.
p.s.
А где для WEL можно посмотреть раскладку команд, не дизассемблировать же?
p.p.s
На форуме наблюдал отголоски почти религиозного культа насчет совместимости и аутентичности РК. Прошу понять меня правильно - для нас в конце 80-х, начале 90-х это была обычная железяка, если могли "выжать" из нее что-то большее, выжимали.
Радио-86РК
06.04.2021, 14:11
Он же через монитор текст выводит - отсюда тормоза при выводе и скроллинге, на реальной РК курсор будет "мельтешить".
Тогдa, типа такого (https://rk86.ru/index.html?file=https://gist.githubusercontent.com/Paguo-86PK/3dba608a62fb5c2fb8ed5f5325e93700/raw/on_screen_edit.json)?
(здесь F2 выполняет функцию DEL)
Да, вот тут "ощущения те"!
Подумалось, что вообще-то функция автоповтора должна учитывать интервал между вызовами получения символа и ждать только оставшийся промежуток, но у РК нет прерываний и вообще какого-либо времени, так что это не реализуемо "по аппаратным причинам".
Радио-86РК
06.04.2021, 14:48
Да, вот тут "ощущения те"!A Вы с Бейсиком Atari-XE знакомы?
Там директивы «EDIT <строка>» нету, однако, можно вывести «LIST <строка>,<строка>» и курсорными клавишами перемещаться по всему экрану, редактируя листинг прямо на экране: Очень удобно!
Впрочем, в «GW-Basic» примерно то же самое…
Вот всегда хотел доделать на РАДИО-86РК его Бейсики так, чтобы вместо буфера ввода при редактировании строк использовался экран…
А мой пример выше - лишь оценка объёма кода под подобный редактор: Влезет ли он в Бейсик-Микрон?
На MSX-бейсике точно так же. Но я на бейсике не писал с 1987-88 года примерно
- - - Добавлено - - -
Выложил скомпиленный бинарник для "канонического" РК86 32К, но пойдет и на 16К (при перетрансляции с другими адресами видеопамяти, естественно)
https://github.com/tchv71/ED_SC80/blob/OriginalRK/bin/ESC80.RK
Там ввод/вывод еще остался дисковый для сипиэм, но в остальном вроде работает
Запуск в эмуляторе: https://rk86.ru/index.html?file=https://raw.githubusercontent.com/tchv71/ED_SC80/OriginalRK/bin/ESC80.RK
P.S. Редактор полностью независим от Монитора, кроме получения верхней границы ОЗУ по 0F830h
А где для WEL можно посмотреть раскладку команд
http://archive.radio.ru/web/1992/09/024/
http://archive.radio.ru/web/1992/09/025/
http://archive.radio.ru/web/1992/09/026/
http://archive.radio.ru/web/1992/08/019/
http://archive.radio.ru/web/1992/08/020/
http://archive.radio.ru/web/1992/08/021/
http://archive.radio.ru/web/1992/08/022/
http://archive.radio.ru/web/1992/08/023/
http://archive.radio.ru/web/1992/08/024/
http://archive.radio.ru/web/1992/08/025/
Да, я уже позже заметил, что он оказывается в "Радио" был опубликован
На MSX-бейсике точно так же. Но я на бейсике не писал с 1987-88 года примерно
- - - Добавлено - - -
Выложил скомпиленный бинарник для "канонического" РК86 32К, но пойдет и на 16К (при перетрансляции с другими адресами видеопамяти, естественно)
https://github.com/tchv71/ED_SC80/blob/OriginalRK/bin/ESC80.RK
Там ввод/вывод еще остался дисковый для сипиэм, но в остальном вроде работает
Запуск в эмуляторе: https://rk86.ru/index.html?file=https://raw.githubusercontent.com/tchv71/ED_SC80/OriginalRK/bin/ESC80.RK
P.S. Редактор полностью независим от Монитора, кроме получения верхней границы ОЗУ по 0F830hОчень большое спасибо! С нетерпением жду, когда смогу опробовать на "железе". А что с записью? Хотя бы на дискету, магнитофон бы тоже очень хотелось, но и дисковод сойдёт.
И ещё, в силу природной тупрсти, не могу найти файл со списком команд... [emoji22]
Подскажите, плз!
На магнитофон - сделаю, запись на диск хоть и есть сейчас, но не работает - для этого надо CP/M грузить
Список команд вот: https://github.com/tchv71/ED_SC80/blob/OriginalRK/sc80_utf8.txt
На магнитофон - сделаю, запись на диск хоть и есть сейчас, но не работает - для этого надо CP/M грузить
Список команд вот: https://github.com/tchv71/ED_SC80/blob/OriginalRK/sc80_utf8.txtСпасибо! А переделать сложно, да? СР/М на РК-86 не быть... [emoji22] А НГМД обязательно будет.
И вот ещё, на счет поддержи принтера. Как она реализована? На какое схемное решение опирается?
Как не быть, если она у меня была? Правда на РК с 60к доступного ОЗУ, но запустить можно и на 32к, другое дело, что сама CP/М отъест не помню сколько, но 6-10 килобайт ОЗУ, и не все программы пойдут с таким количеством памяти.
Насчет принтера - он подключался по параллельному 8-битному протоколу Centronix к дополнительному ППА D20 только за счет распайки проводов. В редакторе поддержки принтера нет, поскольку у меня тогда и принтера не было, но программы печати есть, в исходниках, там всё просто. А позже в CP/M можно было просто печатать файлы. Схемка подключения принтера лично к моему РК есть, только сфотографировать. Разумеется, подключить эти провода к ППА можно огромным количеством вариантов, имеет смысл только схема распайки проводов в комплекте с программой печати. В журнале Радио варианты подключения тоже печатались. РАДИО-86РК - печать и терминал передачи данных. №5, 1989г., стр. 44. / №11, 1989г., стр. 41.
Как не быть, если она у меня была? Правда на РК с 60к доступного ОЗУ, но запустить можно и на 32к, другое дело, что сама CP/М отъест не помню сколько, но 6-10 килобайт ОЗУ, и не все программы пойдут с таким количеством памяти.
Насчет принтера - он подключался по параллельному 8-битному протоколу Centronix к дополнительному ППА D20 только за счет распайки проводов. В редакторе поддержки принтера нет, поскольку у меня тогда и принтера не было, но программы печати есть, в исходниках, там всё просто. А позже в CP/M можно было просто печатать файлы. Схемка подключения принтера лично к моему РК есть, только сфотографировать. Разумеется, подключить эти провода к ППА можно огромным количеством вариантов, имеет смысл только схема распайки проводов в комплекте с программой печати. В журнале Радио варианты подключения тоже печатались. РАДИО-86РК - печать и терминал передачи данных. №5, 1989г., стр. 44. / №11, 1989г., стр. 41.Я о том, что в моей версии ср|м не будет. А так-то, конечно, запустить можно. Но не нужно, считаю. Для этого есть "Орион" [emoji16].
Вот принтер... Это кошерно, схема была в журнале "Радио".
Хотя, если честно, мне гораздо более интересна схема задействования знакогенератора на большие и маленькие буквы. И световое перо, но это, похоже, утопия. [emoji22]
Знакогенератор на большие и маленькие буквы - это реально, переключается атрибутами ВГ75, мой вариант тут - https://github.com/tchv71/RK_CPM30/blob/main/RK%20Enhancements/Symbol%20Gen%20RF2-tchv.jpg. В Апогее, кроме цвета, ЗГ, насколько я знаю, тоже можно выбирать.
Световое перо будет работать только на старых ЭЛТ телевизорах с жесткой привязкой таймингов луча к видеосигналу, на новых LCD - скорее всего, нет.
Прикрутил ввод-вывод на магнитофон вместо записи на диск. Бинарник на гитхабе там же.
Радио-86РК
14.04.2021, 15:07
Световое перо будет работать только на старых ЭЛТ телевизорах с жесткой привязкой таймингов луча к видеосигналу, на новых LCD - скорее всего, нет.Вoт тут я не согласен и даже тему создал (https://zx-pk.ru/threads/33020-svetovoe-pero-tach-skrin-dlya-rk.html).
Если товарищ alexcp, как он сам обещал, добьётся каких-то результатов, то формально «световое перо» стилусом можно будет и в РК на сенсорных LCD обеспечить…
Знакогенератор на большие и маленькие буквы - это реально, переключается атрибутами ВГ75, мой вариант тут - https://github.com/tchv71/RK_CPM30/blob/main/RK%20Enhancements/Symbol%20Gen%20RF2-tchv.jpg. В Апогее, кроме цвета, ЗГ, насколько я знаю, тоже можно выбирать.
Благодарю, скачал, буду разбираться. Перерисую схему в каком-нить CADе, потому как сразу не сообразил, что куда. А прошивка ПЗУ есть такой?
Световое перо будет работать только на старых ЭЛТ телевизорах с жесткой привязкой таймингов луча к видеосигналу, на новых LCD - скорее всего, нет.
Это как раз не проблема -- телевизор, скорее всего, будет или "Юность-40х", или монитор ч/б "Электроника 6105" (в крайнем случае).
Но ни документации, ни схемы, ни готового решения нету, есть только коротенькое описание в спецвыпуске МРБ, мне кажется, что на его основе что-то создать могли только авторы 86РК, которые понимали, "как оно все работает"...
Вoт тут я не согласен и даже тему создал (https://zx-pk.ru/threads/33020-svetovoe-pero-tach-skrin-dlya-rk.html).
Если товарищ alexcp, как он сам обещал, добьётся каких-то результатов, то формально «световое перо» стилусом можно будет и в РК на сенсорных LCD обеспечить…
Там другая тема - перевод координат касания в тайминги импульса на входе светового пера. Я всего лишь сказал, что на современных телевизорах с LCD экраном, скорее всего, видеосигнал буферизуется, и не факт, что время физического зажигания пикселов синхронизировано с видеосигналом. А ВГ75 на это рассчитывает (он просто запоминает строку и столбец, когда пришел импульс (или фронт, или спад, неважно) от светового пера).
Радио-86РК
14.04.2021, 20:15
Я всего лишь сказал, что на современных телевизорах с LCD экраном, скорее всего, видеосигнал буферизуется…Нынчe системы реального времени - роскошь!
Задержки - везде и всюду…
А ВГ75 на это рассчитываетПотому и приходится разные уловки придумывать и ухищрения.
Я просто хотел сказать, что не хорошо отпугивать потенциальных пользователей РК от светового пера.
И хорошо было бы новеньких информировать, что световое перо будет работать лишь на классических ЭЛТ-системах, либо на сенсорных с дополнительным промежуточным контроллером…
P.S.: Просто прочиталось так, будто «если нету ЭЛТ - забудьте про перо»… :)
А нужно бы, напротив, пора уж начать наращивать программное обеспечение с этой фишкой.
Онлайн эмулятор (http://rk86.ru/) уже поддерживает (тут (https://zx-pk.ru/threads/33020-svetovoe-pero-tach-skrin-dlya-rk.html?p=1109689&viewfull=1#post1109689) игру я адаптировал. но я - один).
Благодарю, скачал, буду разбираться. Перерисую схему в каком-нить CADе, потому как сразу не сообразил, что куда. А прошивка ПЗУ есть такой?
ПЗУ знакогенератора есть в физическом воплощении, уже запрограммированное, но как считать его? Программатор есть на РК, но пока не запускал в настоящем времени, только в прошлом. А на PC у меня программатора нет. Это надо будет зашить новое ПЗУ со стандартным ЗГ, считать старый ЗГ и передать на PC. Да еще стереть ПЗУ ультрафиолетом, а лампочки у меня нет. Целое дело. Можно воссоздать ЗГ на основе ЗГ Апогея или других клонов, у которых 2к ЗГ. Попытайте завсегдатаев - они точно знают, как это сделать.
P.S.
Прямо сейчас передо мной стоит работающая РК-шка, на которой все эти переделки ЗГ реализованы.
как раз не проблема -- телевизор, скорее всего, будет или "Юность-40х", или монитор ч/б "Электроника 6105" (в крайнем случае).
Но ни документации, ни схемы, ни готового решения нету, есть только коротенькое описание в спецвыпуске МРБ, мне кажется, что на его основе что-то создать могли только авторы 86РК, которые понимали, "как оно все работает"...
Схемка светового пера где-то была, попытаюсь найти. Меня всегда интересовало - а световое перо реагирует только на светящиеся символы или на пробелы тоже? По идее, на ЭЛТ есть фоновый серый, его тоже можно уловить и передать на ВГ75. Но достаточно ли чувствительная схема, которая у меня была, я не знаю. Принцип простой - усилить сигнал от фотодиода и передать на специальный вход LPEN ВГ75 в TTL уровнях. Ничего там сложного или мистического нет. И не идеализируйте авторов - они знали не больше, а даже и меньше, чем знаем мы сейчас. Многое, конечно, забылось, но интернет помнит всё, а сообщество - тем более.
- - - Добавлено - - -
P.S.: Просто прочиталось так, будто «если нету ЭЛТ - забудьте про перо»… :)
А нужно бы, напротив, пора уж начать наращивать программное обеспечение с этой фишкой.
Онлайн эмулятор (http://rk86.ru/) уже поддерживает (тут (https://zx-pk.ru/threads/33020-svetovoe-pero-tach-skrin-dlya-rk.html?p=1109689&viewfull=1#post1109689) игру я адаптировал. но я - один).
Я только ЗА поддержку, тем более она почти ничего не стоит - просто прочитать готовые координаты из ВГ75, ну и скорректировать смещение.
В рамках хобби, попробую реализовать выделение блока в своём редакторе дополнительно с помощью светового пера.
Радио-86РК
14.04.2021, 20:40
Меня всегда интересовало - а световое перо реагирует только на светящиеся символы или на пробелы тоже?Нa сколько я помню, у РК растр не полностью чёрный. То есть, в полной темноте кинескоп всё равно весь светится. Луч поддерживает фоновое чёрное свечение.
Вот схема светового пера срабатывает именно на любую незначительную вспышку даже в очищенном экране. Главное, порог яркости не свести к полному чёрному.
прочитать готовые координаты из ВГ75, ну и скорректировать смещение.Думаю, смещение тоже можно откорректировать, чтобы сигнал от пера приходил на 3 знакоместа раньше, чем луч дойдёт до него.
Как? «Машиной времени» - линией задержки. Ведь в PAL/SECAM линии задерживают сигнал на несколько строк. А так как у РК знакоместо - 10 строк растра, то задержав сигнал от светового пера на (78-3)×6 пикселей (нам же не важно точное попадание прямо в линию знакоместа), можно сымитировать приход сигнала до.
Нынчe системы реального времени - роскошь!
Задержки - везде и всюду…Потому и приходится разные уловки придумывать и ухищрения.
Причина отсутствия задержек в рестросистемах проста - память была дорогая, и использовать сложно, особенно в аналоговых системах. Смешно, но ретро-ПК обеспечивает меньшую задержку, чем супернавороченные современные системы. Слоёв абстракции было куда меньше, ну и быдлокодеров как-то не наблюдалось.
Радио-86РК
14.04.2021, 22:05
B общем, вот, нарисовал…
75229
Здесь:
Красное - сигнал от светового пера
Жёлтое - интервал линии задержки
Зелёное - задержанный сигнал, проходящий на вход LPEN ВГ75
Оранжевое - разница между знакоместами
Таким образом, программно координаты позиция светового пера будет считываться верно и без смещения. А если смещение и будет, то аппаратно легко откалибровать.
То есть, сигнал от светового пера поступает на одновибратор.
Одновибратор же выдаст ответный сигнал для ВГ75 спустя определённый жёлтой линией интервал.
Вуаля!
И программно всё без костылей аппаратных ограничений прошлого.:)
Но ни документации, ни схемы, ни готового решения нету, есть только коротенькое описание в спецвыпуске МРБ, мне кажется, что на его основе что-то создать могли только авторы 86РК, которые понимали, "как оно все работает"...
Держите ретро-схему светового пера: https://github.com/tchv71/RK_CPM30/blob/main/RK%20Enhancements/Lpen.jpeg
Источник идентифицировать не удалось, как и номинал конденсатора С3. Upd: номинал С3 есть, невнимательно посмотрел - 0.1 (мкф). А вот типа фотодиода, кажись, нет
Держите ретро-схему светового пера: https://github.com/tchv71/RK_CPM30/blob/main/RK%20Enhancements/Lpen.jpeg
Источник идентифицировать не удалось, как и номинал конденсатора С3.
Оуууууу!!!!!
Точно, точно она!!! Ну, транзисторы помню, и полевик!
У меня она еще не влазила в корпус фломастера -- пришлось точить из гетинакса! Кстати, остаток от "прутка" до сих пор передо мной лежит...
А сейчас легко можно всунуть куда угодно, если SMD задействовать!
Завтра же начну перерисовывать.
- - - Добавлено - - -
B общем, вот, нарисовал…
75229
Здесь:
Красное - сигнал от светового пера
Жёлтое - интервал линии задержки
Зелёное - задержанный сигнал, проходящий на вход LPEN ВГ75
Оранжевое - разница между знакоместами
Таким образом, программно координаты позиция светового пера будет считываться верно и без смещения. А если смещение и будет, то аппаратно легко откалибровать.
То есть, сигнал от светового пера поступает на одновибратор.
Одновибратор же выдаст ответный сигнал для ВГ75 спустя определённый жёлтой линией интервал.
Вуаля!
И программно всё без костылей аппаратных ограничений прошлого.:)
Мало что понял, кроме того, что идея реализуема даже на ЖК.
Продолжайте, благородные доны! Продолжайте! Это же прямо праздник какой-то!
- - - Добавлено - - -
ПЗУ знакогенератора есть в физическом воплощении, уже запрограммированное, но как считать его?
Прямо сейчас передо мной стоит работающая РК-шка, на которой все эти переделки ЗГ реализованы.
Есть человек, который все это может. И оборудование имеет. И РК86 хворает.
Попробую вас связать.
Он очень толковый! И имеет интересные наработки для РКшки
- - - Добавлено - - -
Я только ЗА поддержку, тем более она почти ничего не стоит - просто прочитать готовые координаты из ВГ75, ну и скорректировать смещение.
В рамках хобби, попробую реализовать выделение блока в своём редакторе дополнительно с помощью светового пера.
Суперски! Тем более, что там ничего-то и не было особенного -- перо выделяло блок (нажал кнопку, выделил, отпустил). Потом уже клавиатурой: скопировать, вырезать. Вроде был не один буфер, потому, что помню -- менял блоки местами. Наверное, было два, потому, что что-то всплывает в памяти со словом "merge"...
Радио-86РК
15.04.2021, 00:54
Мало что понял, кроме того, что идея реализуема даже на ЭЛТ.
https://zx-pk.ru/threads/33020-svetovoe-pero-tach-skrin-dlya-rk.html?p=1113450&viewfull=1#post1113450
Ага, ну, теперь понятно. А что тогда за смысл в той схеме на транзисторах? На просто усилитель не похоже.
по мне так проще вводить программную корректировку. приведенные примеры аппаратных задержек зависят от конденсатора, а значит будут плавать в зависимости от температуры. а что касается "когда молодые энтузиасты будут ковырять код, чтобы никто не ломал уже голову" -- комментарии в коде никто не отменял.
Ага, ну, теперь понятно. А что тогда за смысл в той схеме на транзисторах? На просто усилитель не похоже.
Я совсем дуб в аналоговой схемотехнике, но похоже на одновибратор небольшой длительности - чтобы импульсы были стабильные по параметрам. Нынче эту схему можно запросто замоделировать, и играйся с моделью. Но я этим кун-фу не владею, к сожалению. Никаких регулировочных элементов нет, а значит она точно не для компенсации задержки.
Радио-86РК
15.04.2021, 03:17
по мне так проще вводить программную корректировку.Тaк было проще именно 50 лет назад, когда дизайнили архитектуры, типа 6502. И в x86 имеем кучу хлама (типа ENTER/LEAVE/STOS/LODS/LOOP), который рекомендуется не использовать, в целях оптимизации работы конвейера ядра.
приведенные примеры аппаратных задержек зависят от конденсатора, а значит будут плавать в зависимости от температуры.Не зря давно изобрели TCXO (https://www.chipdip.ru/catalog-show/92521-temperature-compensated-tcxo-oscillators), чтобы облегчить жизнь радиолюбителям. Зависимость от температуры - особенность радиодеталей наших дней. Всё может измениться в ближайшие годы.
ЕВПОЧЯ: Любым AtTiny можно на булавочном пространстве собрать цифровую линию задержки на любой интервал, работающую с самой высокой точностью…
(А ссылки на схемы те я вставил то, что гугл первым выдал, не вдумываясь. Просто, найти можно и качественные примеры, если гуглить глубже…)
К тому же, я написал, что…
Тем более, запасы тех же ВГ75 не бесконечны, а благодаря реверсинженерингу в FPGA/ПЛИС легко можно сделать нормальный аналог ВГ75, но со входом от сенсорного экрана, где позиция нажатия будет 1 к 1 - без смещения.И кинескопы доживают свой век, так как добыть ЭЛТ-монитор скоро будет, разве что, у маргинальных китайских производителей.
У многих сейчас ЖК телевизоры, что дешевле и проще. А значит, без имитаторов светового пера в лице переходника-адаптера от сенсорной тач-панели - не обойтись.
А саму ВГ75 скоро самому на 3D-принтере напечатать можно будет.
Просто я смотрю лет на 10 вперёд и против уродования алгоритмов из-за каких-то технических издержек местного региона глухой тайги.
комментарии в коде никто не отменял.Пожалуйста, дайте мне исходный код «Бейсика-Микрон» с комменариями, а то достало уже вникать в его дизассемблинг и комментировать куски самому.
А ещё мне нужны комментарии к коду «Музыкальная система».
Единственное, что хорошо прокомментировано - игра «Питон».
P.S.: Всё, конечно, ИМХО.
Просто, не хотелось бы, чтобы, наконец-то, подключив к РК световое перо, начали писать код именно в реалиях спартанских условий 70-х, когда не было даже качественных деталей, чтобы добиться точности задания интервалов.
Мир и так расхлёбывает косяки архитектуры Intel. Излишне будет ещё прогибаться под косяки ВГ75, которую любой школьник сейчас в ПЛИС может исполнить более умнее и с USB-портом под стилус…
Ой, вот просто задокументирую 2 байта, в которых будет лежать смещение по X и Y к координатам от ВГ75. По идее, это функция драйвера, неотделимая от железной реализации, драйвер уже должен выдавать правильные символьные координаты. Но поскольку у нас полный минимализм и РК, то вот так.
- - - Добавлено - - -
Пожалуйста, дайте мне исходный код «Бейсика-Микрон» с комменариями, а то достало уже вникать в его дизассемблинг и комментировать куски самому.
Вот что мне нравится в ретроплатформах, так это то, что они свободны от налёта "коммерческой ценности", уже нет смысла "зажимать исходники" как ПО, так и железа. Пожалуйста, не ленитесь выкладывать исходный код, и писать доку.
Alex.Ismagilov
16.04.2021, 11:25
ПЗУ знакогенератора есть в физическом воплощении, уже запрограммированное, но как считать его? Программатор есть на РК, но пока не запускал в настоящем времени, только в прошлом. А на PC у меня программатора нет. Это надо будет зашить новое ПЗУ со стандартным ЗГ, считать старый ЗГ и передать на PC. Да еще стереть ПЗУ ультрафиолетом, а лампочки у меня нет. Целое дело. Можно воссоздать ЗГ на основе ЗГ Апогея или других клонов, у которых 2к ЗГ. Попытайте завсегдатаев - они точно знают, как это сделать.
У меня и программатор всеядный (для РС вот этот www.triton-prog.ru) есть и лампочка стирающая и ПЗУ для тестов.
aahzma просил помочь с железной частью :)
Территориально я тут: Москва (м.Фили или м.Семеновская)
У меня и программатор всеядный (для РС вот этот www.triton-prog.ru) есть и лампочка стирающая и ПЗУ для тестов.
aahzma просил помочь с железной частью :)
Территориально я тут: Москва (м.Фили или м.Семеновская)Забыл сказать, что и с архитектурой рк-шки знаком не шапочно и не понаслышке! [emoji16]
У меня и программатор всеядный (для РС вот этот www.triton-prog.ru) есть и лампочка стирающая и ПЗУ для тестов.
aahzma просил помочь с железной частью :)
Территориально я тут: Москва (м.Фили или м.Семеновская)
Приятно познакомиться. Я территориально: Москва, м.Сокольники и м.Электрозаводская - работа, но туда почти не езжу в связи с карантином. Пересечься на Семеновской было бы очень здорово. ПЗУ-шки есть и у меня, вот только стирать нечем.
Вообще, запустив РК, я оказался как в каменном веке, точнее в 1988 году, с той разницей, что магнитофона тоже уже нет. Контроллер дисковода затерялся, связи с PC никакой. Соединю по звуковому каналу, что ж, буду как по старинке, но вместо магнитофона - PC. А ПЗУ-шку ЗГ предоставить считать - это пожалуйста.
P.S.
В планах поставить вместо ВВ55 и ПЗУ контроллер на STM32 BluePill и обмениваться как белые люди, через USB. К тому же, в свободную часть флеша контроллера можно много РК софта зашить.
Для уменьшения проблем совместимости с клонами решил ввести стандарт на пролог для программы под РК:
вместо
;************ Controller's mapping **************
PPI equ 08000h; 8255 fist *
PPI2 equ 0A000h; 8255 second *
DISP equ 0C000h; 8275 display adapter *
DMA equ 0E000h; 8257 DMA chip *
;************************************************
программа будет начинаться следующей последовательностью:
JMP Entry
DW VRAM ; Адрес начала буфера экрана - 76d0h
DW PPI ; Адрес ВВ55 контроллера клавиатуры - 8000h
DW PPI2 ; Адрес дополнительного ВВ55 - 0A000h
DW DISP ; Адрес ВГ75 - 0C000h
DW DMA ; Адрес ВТ57 - 0E000h
DW 0,0,0,0 ; Reserved for future use
Entry: ; Program code
Обязуюсь переделать свой редактор на такой пролог и использовать только косвенную адресацию.
Для переноса на Апогей или RK-16к или RK-60к и другие, которые совместимы, но отличаются адресами портов, нужно будет поменять лишь несколько ячеек, которые не меняют своё положение относительно стартового адреса программы, поддерживающий данный стандарт на пролог. Это можно сделать даже автоматически в загрузчике, поскольку число сигнатур пролога без учета первых 3-х байт конечно и весьма невелико, а загрузчик знает конфигурацию РК, на котором работает.
А текст хранится в памяти в сжатом виде?
В сжатом только в том смысле, что хранится только столько символов, сколько в строке (без пробелов до края экрана) плюс перевод строки - 0Dh, ну и табуляции лучше использовать вместо пробелов. Никакого сжатия типа RLE и тем более Хафмана нет.
А сколько текста может влезть в память, интересно?
Примерно 7600h-2000h-30h = 22 тыс. символов, включая переводы строк, остальное - код редактора, экран, стек редактора, но он маленький - 48 байт
Да, и правда, сжатие не нужно. 100 000 текста в один документ никто пихать не станет...
Тут еще такой момент - всё это использовалось в паре с загруженным ассемблером "Микрон", как бы он стал понимать сжатый текст? Даже токенизировать ассемблерные команды нельзя было...
Для уменьшения проблем совместимости с клонами решил ввести стандарт на пролог для программы под РК:
вместо
;************ Controller's mapping **************
PPI equ 08000h; 8255 fist *
PPI2 equ 0A000h; 8255 second *
DISP equ 0C000h; 8275 display adapter *
DMA equ 0E000h; 8257 DMA chip *
;************************************************
программа будет начинаться следующей последовательностью:
JMP Entry
DW VRAM ; Адрес начала буфера экрана - 76d0h
DW PPI ; Адрес ВВ55 контроллера клавиатуры - 8000h
DW PPI2 ; Адрес дополнительного ВВ55 - 0A000h
DW DISP ; Адрес ВГ75 - 0C000h
DW DMA ; Адрес ВТ57 - 0E000h
DW 0,0,0,0 ; Reserved for future use
Entry: ; Program code
Обязуюсь переделать свой редактор на такой пролог и использовать только косвенную адресацию.
Для переноса на Апогей или RK-16к или RK-60к и другие, которые совместимы, но отличаются адресами портов, нужно будет поменять лишь несколько ячеек, которые не меняют своё положение относительно стартового адреса программы, поддерживающий данный стандарт на пролог. Это можно сделать даже автоматически в загрузчике, поскольку число сигнатур пролога без учета первых 3-х байт конечно и весьма невелико, а загрузчик знает конфигурацию РК, на котором работает.
Как и обещал, переделал редактор на косвенную адресацию портов. Теперь на других компах с ВГ надо будет только изменить несколько начальных ячеек.
Ссылка на редактор в эмуляторе - в начале темы.
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot