|
nedoPC.orgElectronics hobbyists community established in 2002 |
|
Текстовой редактор под CP/M-80 SED.COM
Author |
Message |
FizikS
Maniac
Joined: 11 Oct 2018 00:52 Posts: 201 Location: г. Клинцы, Брянская обл.
|
На "Орион-128" есть мощный текстовой редактор под CP/M-80 SED.COM. К сожалению без исходников. Работал в нем. Остались приятные впечатления.
|
10 May 2020 03:07 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
А вот этот В.Чистяков - он какое отношение имеет к редактору SED.COM? Как-то непонятно из текста... автор вроде не он. А он - рекламный агент SED.COM или распространял его за деньги?
_________________ iLavr
|
10 May 2020 11:11 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22821 Location: Silicon Valley
|
Так ведь он "составил текст"
|
10 May 2020 11:43 |
|
|
Lavr
Supreme God
Joined: 21 Oct 2009 08:08 Posts: 7777 Location: Россия
|
Я что-то не видел, чтобы ты составил какой-то текст к софту, что писал совсем не ты... Да еще давал рекомендации "хакерам" и пр. Вот этот момент и интригует, собственно!
_________________ iLavr
|
10 May 2020 12:06 |
|
|
askfind
Doomed
Joined: 04 Jan 2016 09:15 Posts: 662 Location: Russia, S.- Peterburg
|
У нас был редактор ME.COM. Удобный и простой. Смотри проекты для CP/M https://github.com/lindehaven/CP-MВизуальный текстовый редактор. Micro Editor (ue) Micro Editor (UE) enables easy editing of small source code files. Source code files are limited in size to fit into the transient program area (TPA) of CP/M. Скачал. Тестирую в эмуляторе под linux. Редактирование: Смотрим результат:
_________________ "Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)
|
12 May 2020 12:27 |
|
|
Error404
Maniac
Joined: 05 Oct 2006 04:45 Posts: 269 Location: Moscow
|
"Sed - отличный редактор. От других" главным образом тем, что при минимальном для такого функционала коде (да еще и написанного на ЯВУ) и удобном экранном функционале, он виртуализирует буфер и благодаря этому редактирует файлы размера больше чем ТРА (ОЗУ CP/M) чего не скажешь про te/ue и пр. Если у кого-то есть его исходники (или хотя бы грамотный дизасм), прошу поделиться - давно ищу что-то подобное для Uzix (для него редактор придется поправить т.к. в Юниксах конец строки принято обозначать одним байтом, а не двумя как в СРМ). Также принимаются ссылки на другие текстовые редакторы в исходниках, умеющие работать с файлами больше чем наличное ОЗУ.
_________________ Всем добра!
|
18 Jul 2020 12:57 |
|
|
barsik
Doomed
Joined: 19 Feb 2017 03:46 Posts: 583 Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
|
Дизассемблировать форт программу обычным дизассемблером бессмысленно, разобраться в логике будет сложнее, чем с нуля написать свой аналогичный редактор даже на ассемблере.
Написать аналог этого типового редактора на ассемблере отнимает менее месяца даже у программиста низкой квалификации. А на Турбо-Паскале пишется за 3 дня. Добавление в простой текстов редактор свопинга не сложно и доступно любому программисту. Объём кода занимаемый процедурами свопинга не превышает 0.75 кб. Размер такого редактора написанного на ассемблере для Z80 будет ~6.5 кб. Если на Турбо-Паскале, то (по моим представлениям) где-то 16 кб. На Паскале МТ+ (это для КР580) или Си (BDS, Aztec) ~20 кб.
|
18 Jul 2020 15:40 |
|
|
askfind
Doomed
Joined: 04 Jan 2016 09:15 Posts: 662 Location: Russia, S.- Peterburg
|
_________________ "Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)
|
20 Jul 2020 02:45 |
|
|
barsik
Doomed
Joined: 19 Feb 2017 03:46 Posts: 583 Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
|
Кто-нибудь может странслировать версию этого SED для РК86 и Специалиста (в версии для CP/M с низким BDOS и VT52 и для машины "без-DOS"). У меня никогда не получалось странслировать что-то взятое с github. Потому не люблю github и давно уже даже перестал ходить туда по ссылкам. Исходники надо выкладывать так, как это делаю я, чтобы был BAT-файл, запуская который, через секунду получаешь исходник (т.е все потребные для трансляции инструментальные средства должны входить в архив). Слово SED являющееся акронимом от Screen Editor (в противовес командным редакторам, используемым на заре цивилизации) использовалось много раз разными людьми и для разных платформ. Также, как и название SCREEN для таких же редакторов. Я например 5 лет пользовался редактором SCREEN (о нём есть статья в ж.МПСС) на ДВК и после 3 года на Специалисте и ещё пару лет на ОРИОНЕ. И сам написал на ассемблере редактор SCREEN (5 кб) для РК86. Но это всё абсолютно разные редакторы написанные разными людьми и не имеющие ничего общего. PS. Считается, что (в соответствии с устоявшимся ударением в слове) правильно писать тЕкстовый редактор, не текстовОй. Или как я пишу по-болгарски - "тЕкстов редактор", т.к так и читать и произносить приятнее.
|
20 Jul 2020 03:02 |
|
|
askfind
Doomed
Joined: 04 Jan 2016 09:15 Posts: 662 Location: Russia, S.- Peterburg
|
Рабочая станцияUbuntu Linux: В CP/M преобразуй SED80.hex в SED80.com. Испытай C>LOAD SED80.hex. Диски с CP/M 2.2 в проекте cpm8266-master.
_________________ "Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)
|
20 Jul 2020 05:34 |
|
|
barsik
Doomed
Joined: 19 Feb 2017 03:46 Posts: 583 Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
|
Это редкий случай, когда в архив, пусть и не COM-, а хотя бы HEX-файл, - уже приложен и транслировать никому неизвестным инструментарием не потребовалось. Насторожило, что нет даже минимального руководства по пользованию редактором (обычно так бывает, когда продукт сырой) и сразу возникли сомнения, что это оригинальный исторический материал из 80-тых годов. Потому, что все настоящие оригинальные исторические исходники из 70-тых и 80-тых годов, которые я видел (из Public Domain RCPM), написаны для трансляции средствами CP/M (а не кросс-ассемблерами для MSDOS/Windows) и прекрасно транслируются любым CP/M-инструментарием. Данный исходник нет. В CP/M-компиляторах не бывает длинных имён, для них в TPA 8-ми разрядки не хватило бы места. Предположительно это кто-то, используя IBM PC в середине 90-тых или чуть позднее учился программировать, хотя автор написал, что уже 30 лет не видел в глаза Z80-кода и потому всё забыл. Я потратил менее минуты, чтобы изучить исходник. Когда в исходнике видишь команды LD A,0, CP 0 и RET сразу после CALL, то это сразу наводит на грустные мысли. Вникать особо не стал, но могу сказать, что писал не профессионал, а любитель и даже не особо опытный. Профессионал сделал бы нормальную обработку дисковых ошибок. Естественно, это примитивный редактор без свопинга (сколько влезло в буфер в ОЗУ TPA, такой и максимальный размер файла). Но программист очень трудолюбивый и старательный, предположительно с большим опытом в ЯВУ, использовал говорящие имена и дал подробные комментарии. Исходник годится, как учебный материал. При запуске с указанием параметром имени нового ещё несуществующего файла, новый файл не создаётся, а выдаётся сообщение об ошибке. Если командой SAVE 0 PROBA.TXT создать новый пустой текстовый файл, то при запуске командой SED80 PROBA.TXT тоже зависает. Редактор судя по приложенному тексту рассчитан на терминал VT100, но у меня такого драйвера нет (т.к в 80-тые, начале 90-тых информации о VT100 у меня просто не было). Похоже на терминале VT52 не работает. По-крайней мере с одним из моих драйверов VT52 редактор зависает. Не разбирался, то ли TPA не хватает (хотя оно у меня более 55 кб, с таким TPA из отечественных машин только Корвет), то ли упр.коды VT100 приводят к завису моего драйвера (что маловероятно), то ли лезет в "железо" или просто версия глючная (там указано, что это ранняя версия, что это значит не ясно). Когда будет время и желание, возможно, попробую разобраться в исходнике. Похоже не станет проблемой сменить упр.коды на VT52 или можно просто выдрать из редактора редактирующую часть, если станет ясно, что она хороша (важно использует ли с пользой табуляции или нет). Вероятно других модификаций не потребуется, но совсем без модификаций никак не использовать. Да и формат экрана редактора шириной аж в 80 символов в строке неудобен для людей со слабым зрением и не подходит для самодельных отечественных 8-ми разрядок. Польза от этого исходника могла бы быть, если на его основе сделать редактор для машины без DOS или с мелким TPA. Но тут, к сожалению, нам не повезло с процессором, отчего редактор не годится для советских машин, а т.к широко использует IX IY, его не переделать для процессоров КР580 (ВМ80 и ВМ1) и 1821ВМ85. - - - Добавлено - - -От исходника свежего эмулятора CP/M для Windows никому нет пользы, - чтобы это странслировать, (как всегда с исходниками из github) надо быть профессионалом в конкретном ЯВУ и конкретном компиляторе (а в данном случае ещё и в Linux/Unix). Заинтересовало лишь описание отладчика DDT-Z для Z80. Похоже он даже лучше, чем ZSID и ZSID3 (но точно не лучше, чем ZBUG). Но самой программы как раз в архиве не нашёл, - только бесполезное без наличия программы описание. В PD-архивах встречается другой Z80-отладчик ZDT (он 7 кб против 10 кб у ZSID3), полученный доработкой DDT до Z80 (в спойлере текст про него). ZDT | | | | Quote: Documentation for ZDT Version 1.4.14 Software obtained in Seattle, April 1980. This is a version of DDT that can use TDL Z80 Mnemonics. This software will automatically determine which chip (8080 or Z80) it is running on and will work accordingly. This software will use TDL Z80 Mnemonics when in the Z80 mode. The commands to utilize this software are the same as for DDT with the addition of a few aditional commands: Since this has been obtained occasionally there is no documentation except for this. The above text was reconstructed by me from scratch. Please feel free to improve this documentation. . | | | | |
Last edited by barsik on 21 Jul 2020 00:25, edited 3 times in total.
|
20 Jul 2020 12:35 |
|
|
askfind
Doomed
Joined: 04 Jan 2016 09:15 Posts: 662 Location: Russia, S.- Peterburg
|
У меня вообще возникли сомнения о том, что для CP/M была реализация SED.COM от Digital Research, Inc. Исторически: "Потоковый редактор" и однозадачная CP/M. Развей сомнения... RetroProjects CP/M - https://freesoft.dev/program/55438422https://github.com/MiguelVis/te | | | | Quote: TE A small text editor for CP/M (highly configurable; there are ports for various machines, operating systems and CP/M emulators: Amstrad PCW, Amstrad CPC, Spectrum +3, Kaypro, VT-52, VT-100, WordStar-like key bindings, CP/M-80 program EXEcutor from K. Murakami, CP/M Player from Takeda Toshiya, etc.).
It supports basic editing commands plus: find string and find next string, go to a line number, execute macro from file, help screen, etc.
| | | | |
_________________ "Ученье свет, а неученье — тьма. Дело мастера боится, и коль крестьянин не умеет сохою владеть — хлеб не родится." (С)
|
21 Jul 2020 00:22 |
|
|
barsik
Doomed
Joined: 19 Feb 2017 03:46 Posts: 583 Location: Санкт-Петербург, Россия, третья планета от Солнца, галактика Млечный Путь
|
Что-то про SED в книге про Unix от Кернигана попадалось. SED для других DOS это просто популярное название, использованное разными людьми (даже не знающими о Unix) множество раз, а SED из Unix может даже и не экранный, а просто один из мелких инструментов, которых там много. Вообще-то консольные ввод и вывод в CP/M можно считать потоками, там даже примитивное переназначение для устройств ввода/вывода есть. Правда в Unix есть ещё поток для вывода ошибок. Открытый CP/M-файл тоже можно рассматривать как отдельный поток, лишь средствами CP/M переназначение его на STD вход не предусмотрен. Я ещё попробую запустить этот редактор в паре фирменных антикварных эмуляторов CP/M на PC, где поддержан терминал VT100, надо убедиться, что рабочее, - нет смысла разбираться в чужом, что не является законченным и отлаженым до конца полноценным исходником. Есть странслированная версия этого свежего эмулятора Z80-CP/M из 2016 года?
|
21 Jul 2020 00:39 |
|
|
VituZz
God
Joined: 13 Nov 2010 04:06 Posts: 1345
|
SED в UNIX - это скорее построчный редактор, его целесообразно использовать в сценариях и в конвейерах. На интерактивное взаимодействие с пользователем он не рассчитан. Кстати, о Sedtrisе знаете?
|
21 Jul 2020 10:23 |
|
|
Error404
Maniac
Joined: 05 Oct 2006 04:45 Posts: 269 Location: Moscow
|
терпимо там дизассемблируется, просто я в свое время поленился этим заняться. Мне всего надо то - в обработке CR-LF скорректировать анализ CR при чтении файла и исключить CR при записи файла. Ну то есть в среду уже можно ждать? Пускай будет хоть на Паскале, буфер то виртуализированный.
_________________ Всем добра!
Last edited by Error404 on 24 Jul 2020 09:22, edited 1 time in total.
|
24 Jul 2020 09:16 |
|
|
Who is online |
Users browsing this forum: No registered users and 2 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
|
|