ZX/IBM EDITOR v1.0 (1.5D)
══════════════════════════════════════════
Вам когда-нибудь приходилось использовать
компьютер в качестве пищущей машинки ? НЕТ
?! Немедленно выключите компьютер !!! Все
ниже написанное не для вас !
.......!!!! ......!!! .......!! .......!
Ну вот. Теперь нас читают только те, кто
сталкивался с проблемой ввода текста в
компьютер. Если вы еще новичок в нашем де-
ле, то вам будет наверное, не безынтересно
узнать, что для ЭТОЙ цели создано великое
множество программ - редакторов. До пос-
леднего времени у нас (авторов этого
текста) был популярен редактор, входящий в
базовый пакет Is-DOS. У него есть масса
достоинств, но один серьезный недостаток -
он работает только в среде Is-DOS т.е.
чтобы начать с ним работать, нужно сначала
запустить саму Is-DOS. Но сейчас разговор
не о нем.
Мы предлагаем вашему вниманию новый (он
написан в конце 1993 года, но появился на
рынке ПО совсем недавно) редактор, облада-
ющий почти всеми достоинствами Is-DOS-ов-
ского,кроме одного -он не может форматиро-
вать текст. Но если вы не занимаетесь из-
данием газет, журналов, ..., ну в общем,
если вам не надо очень красиво оформлять
текст, то вам нет необходимости его форма-
тировать, а значит для вас этот редактор
вообще не имеет недостатков.
Хотя, владельцы нескольких дисководов
будут слегка разочарованы - редактор рабо-
тает только с ТЕКУЩИМ диском. Спасибо ав-
тору и за это - некоторые "железно" привя-
зывают свои программы к диску "A", забыв
что количество дисководов у пользователя
его личное дело, а не автора.
Да, забыли, он запускается прямо из
TRDOS, имеет полную ASCII кодировку (как у
IBM и у Is-DOS), оформлен по лучшим стан-
дартам редакторов-оболочек СИ, ПАСКАЛь для
IBM.
Кто он ? Его зовут "ZX/IBM Text Editor".
Написан он Хохловым Олегом.
А мы - группа "STARS OF KELADAN" сейчас
поведаем вам о том, как с ним работать.
Итак.
Весь экран можно разделить по вертикали
на три зоны: строка меню, информационная
строка, зона редактируемого текста.
C чего начнем ? Хорошо, хорошо, пусть
первым будет меню.
Работа с меню.
Работать с меню (даже если вы никогда не
делали этого раньше) очень просто: клави-
шами "вверх", "вниз", "влево", "вправо" вы
передвигаете курсор (прямоугольник ин-
версного цвета), а клавишей "ENTER" выби-
раете понравившийся вам пункт. Можно пос-
тупить еще проще: в названии каждого
пункта есть хотя бы одна заглавная буква -
это буква-ключ, если вы нажмете клавишу с
такой буквой, то сразу выберете этот
пункт. Например, пункт "File" - если вы
нажмете клавишу "F", то это будет все рав-
но что подвести к нему курсор и нажать
"ENTER". Ну, а теперь о самом меню. В нем
вы найдете пять пунктов:
- File - работа с файлами:
- Edit - переход в режим редактора:
- Pribt - работа с принтером:
- SetUp - настройки:
- Ibfo - информация.
Теперь по порядку:
1. File - работа с файлами.
Это, по сути, ворота в "иной мир" для
текстов. C его помощью вы можете проделы-
вать головокружительные трюки с вашими
текстами.
Всего таких трюков восемь:
- Save - запись текущего текста в
файл с нужным именем, если
такой файл уже существовал,
то он автоматически переза-
писывается:
- Load - чтение текста с диска,те-
кущий текст УНИЧТОЖАЕТСЯ:
- Catalogue - просмотр каталога диска:
- New - создание нового текста,
с УНИЧТОЖЕНИЕМ текущего:
- save Block - запись отмеченного блока
в файл с нужным именем:
- Merge - слияние текущего текста
с текстом из файла:
- Erase file - удаление нужного вам фай-
ла на диске:
- Quit - выход из редактора,у нас,
правда,этот пункт "глючит",
так что лучше пользуйтесь
кнопкой "RESET".
2. Edit - режим редактирования.
Если вы выберете этот пункт или просто
нажмете "SPACE" (для знатоков IBM - здесь
эта чудесная клавиша играет роль "ESC",
т.е. это клавиша "ВЫХОД, ОТМЕНА"), то пе-
рейдете в режим редактирования текста. О
нем мы вам расскажем немного позже.
3. Pribt - работа с принтером.
- Pribt text - печать всего текста:
- pribt Block - печать выделенного блока:
- page Size - задание размера страницы,
т.е. сколько строк помеща-
ется на странице.
4. SetUp - настройки.
Сей пункт предлагает вам выбрать режим
работы редактора:
- EOLN code - выбор разделителя строк:
- Compress - включение (ON) и выключе-
ние (OFF) компрессии текста:
- Driver - выбор типа драйвера печати,
внутренний (Ibside) или поль-
зовательский (User's).
А вы знаете, что такое разделитель
строк, и какой он бывает ? Обьясняем. Раз-
делитель строки - это один или два байта,
которые показывают, что текущая строка
кончилась и следующий за ним символ при-
надлежит другой. Разделитель в "ZX/IBM
Editore" бывает двух типов: "CR" - возврат
каретки, один байт #D (также как и в
Is-DOS): "CR/LF" - возврат каретки + пере-
вод строки, два байта #D,#A (а это как в
IBM, именно поэтому он "ZX/IBM"). Если вы
пишете свой текст ислючительно на (и для)
ZX-SPECTRUM, то лучше ставьте "CR" - он
займет меньше места. А если же ориентируе-
тесь на IBM, то "CR/LF". Хотя, если вам
надо поменять разделитель в уже готовом
тексте, то поменяйте его в "SetUp", а за-
тем "пробегите" курсором по всем строкам
текста (снизу-вверх или сверху-вниз, но не
по длине строки) - разделитель будет заме-
нен.
Если вы включите (ON) компрессию текста,
то редактор "схлопывает" повторяющиеся
пробелы, в результате чего текст становит-
ся меньше в обьеме, при этом текст внешне
выглядит вполне нормально (редактор выво-
дит вам компрессированные строки в "удобо-
варимом" виде).
Но, горе вам, если вы потом отключите
(OFF) компрессию - обратно декомпрессиро-
вать ранее скомпрессированный тескт этот
редактор пока не может, а внутреннее пре-
образование "компрессия-декомпрессия" вы
только что отключили, в результате на эк-
ране окажется смесь вашего текста и слу-
жебных байтов. И вообще, зачем нужна эта
компрессия ? Мы ею никогда не пользуемся,
и вам не советуем.
Немного о драйвере принтера. 3а не име-
нием последнего (принтера) мы не можем га-
рантировать, что все ниже следующее чистая
ИСТИНА. Но как хаккеры, мы можем дать вам
несколько наших соображений по этому пово-
ду (мы досконально исследовали процедуру
печати).
Во-первых. Пользовательский (User's)
драйвер должен находиться с адреса #5B03
(23299) и занимать не более 252 байт (что
вполне достаточно). Если его там не будет,
то при печати: вас ждет сюрприз - или пол-
ные "висячки" компьютера, или всякая "бя-
ка".
Во-вторых. Внутренний (Ibside) драйвер.
Он зачем-то сначала вызывает процедуру
#5B01 (23297),последствия те же (сюрприз),
и только после этого начинает саму печать.
Еще раз просим извинения за нашу неосве-
домленность, но все же кто-то может и пой-
мет, с каким принтером работает внутренний
драйвер, а мы сообщим лишь то, что поняли:
- информация для печати (очередной сим-
вол) "кидается" в порт #3F (63):
- порт #5F (95) является двунаправленным
портом управления/контроля. При чтении
4-й бит - 1-занято, идет печать,
0-принтер готов,
5-й бит - 0-ошибка печати (нет бумаги)
или принтер не подключен,
1-соответственно - "порядок".
Запись. Совершенно не понятно - сразу же
после печати символа в этот порт "заки-
дывается" ноль, затем единица.
[ Во время подготовки номера мы наконец-то
узнали, что это за интерфейс принтера. Это
интерфейс CENTRONICS (параллельный порт),
построенный на базе микросхемы KPS8OBB55.
При этом поочередная запись нуля и единицы
в порт #5F генерирут импульс строба печати
Порт #7F - активизация принтера. ]
5. Ibfo - информация. Здесь вам покажут
название программы - "ZX/IBM Editor", ее
версию (у нас 1.0), автора, и ... "Text
Lebgth" - текущую длину текста (включая
байты-разделители), и "Free Space" - коли-
чество свободного места для текста.
Ну вот, с меню вроде бы разобрались.
Информационная строка.
Здесь совсем все просто. Если смотреть
слева на право, то вы увидите:
- текущий алфавит, "Rus"-русский, "Lat" -
латинский (и английский в том числе):
- размер символов,"Lock" -строчные,"Caps"-
заглавные.
Если вы включили режим псевдо-графики,то
вместо двух предыдущих надписей будет
просто "Graphics".
- режим редактирования, "Ibsert" - встав-
ка нового символа с раздвижкой строки,
"<пустота>" - наложение нового символа
на старый, с уничтожением последнего:
- десятичный код символа, на котором "сто-
ит" курсор (для владельцев цветных мо-
ниторов: код - красные цифры):
- "Libe xxx" - номер текущей строки:
- "Col xx" - номер позиции курсора в стро-
ке.
Ну вот, и с этим все.
Зона редактируемого текста.
К сожалению, не зная всего выше изложен-
ного, вам было бы очень трудно (если вооб-
ще возможно) нормально редактировать
текст, именно поэтому описание самого
процесса редактирования мы начинаем только
сейчас.
Итак. Если вы загрузили текст, или выб-
рали "New" и попали в режим редактирова-
ния, то первое, что вы увидите на экране
какую-то мигающую "сикильду" - это курсор,
ваш незаменимый помощник и партнер. Он
указывает, в какое место будет вставлен
нужный вам символ. Двигать его можно кла-
вишами "влево", "вправо", "вверх", "вниз".
И раз уж речь зашла о клавишах, поз-
вольте рассказать вам о них:
- "EDIT" - переключает алафавиты:русский/
латинский:
- "CAPS LOCK" - переключает строчные/заг-
лавные буквы:
- "DELETE" - уничтожает один символ СЛЕВА
от курсора:
- "GRAPH" - уничтожает один символ СПРАВА
от курсора, с помощью этой клавиши вы
можете также сдвигать строки (попракти-
куйтесь в этом, пригодится):
- "TRUE VIDEO" - страница вперед, к концу
текста:
- "INV.VIDEO" - страница назад, к началу
текста:
- "EXT.MODE" - вход в режим команд, в ин-
формационной строке появляется надпись
"Commabd:", о клавишах в этом режиме мы
скажем чуть ниже:
- "ENTER" - раздвижка строк (появляется
новая строка под текущей) и перенос
всех символов правее курсора (если та-
кие есть) на новую строку,если выключен
режим Ibsert, то раздвижки не будет:
- "SS/Q" - в начало строки:
- "SS/W" - включение/отключение режима
вставки (Ibsert):
- "SS/E" - в конец строки:
- "SS/Space" - выход в меню,чтобы попасть
обратно в редактор, нужно выбрать соот-
ветствующий пункт (см. выше) или нажать
клавишу "Space":
- "CS/Space" - к началу следующего слова,
находящегося строчкой выше (!),довольно
запутанное действие, означающее, что
курсор в текущей строке устанавливается
в позицию, с которой начинается следую-
щее слово на предыдущей строке: теперь
понятно ? Если нет, то поэксперименти-
руйте - поймете. Похоже, это ошибка ав-
тора, все действия должны производиться
в текущей строке.
Теперь клавиши режима команд:
- цифры 0..9 - ввод кода символа,т.е. это
ввод символа не через нажатие соответ-
ствующей ему клавиши, а через ввод его
кода:
- стрелка "вверх" -переход к началу всего
текста:
- стрелка "вниз" -переход к концу текста:
- "L" - УДАЛЕНИЕ текущей строки:
- "J" - перейти к строке с нужным вам но-
мером, "Libe Number" - номер строки:
- "G" - включение/выключение режима псев-
до-графики, к слову,псевдо-графика IBM,
а не SPECTRUM (помните: рожицы,рамочки,
уголки, ....: а не помните, так узнаете
сами):
- "S" - поиск (Search) последовательности
символов, "Not Foubd" - такой фрагмент
не найден:
- "R" - замена (Replace) одного фрагмента
другим:
- "B" - отметить начало блока:
- "E" - отметить конец блока:
- "Q" - разотметить блок, снять отметку:
- "C" - скопировать блок в позицию кур-
сора:
- "M" - перенести блок в позицию курсора,
т.е. скопировать и уничтожить старое:
- "D" - удалить блок:
- любая другая клавиша - вывод помощи
(HELP) по вышеописанным клавишам на
английском языке.
Теперь немного о русском алфавите. Так
как в русском языке букв несколько больше,
чем в английском, то некоторые буквы можно
получить нажав "SYMB.SHIFT" + какая-то
клавиша. А в общем, русские буквы располо-
жены по стандарту "QWERTY", ох, простите,
"ЯВЕРТЫ", и если вы работали в Is-DOS, то
без труда освоите их, кроме того вас ждет
сюрприз - цифры можно вводить, не переклю-
чаясь на латинский алфавит. Для остальных
приведем соответствие клавиш и русских
букв (строчных, заглавные - тоже самое, но
в режиме "CAPS" или с клавишей
"CAPS.SHIFT") :
а - A и - I р - R ш - SS/F
б - B й - J с - S щ - SS/G
в - W к - K т - T ъ - SS/D
г - G л - L у - U ы - Y
д - D м - M ф - F ь - X
е - E н - N х - H э - SS/S
ж - V о - O ц - C ю - SS/X
з - Z п - P ч - SS/A я - Q
[SS - клавиша "SYMBOL SHIFT"]
Если вы вводите текст с далеко идущими
планами (использовать его в своей програм-
ме, или что то в этом роде), то вам полез-
но будет знать, что русские символы зани-
мают область национальных шрифтов в табли-
це ASCII (ACKUU, а не АCЦ-2 !!) т.е. имеют
код больший, чем десятичное 127.
Вот в общем-то и все. Приятной работы и
хороших и грамотных (очень актуально)
текстов.
P.S. Во время подготовки номера, нас все-
таки "пробрал" (мы же тоже люди !) много-
дисководный шовинизм - мы начали адаптацию
редактора к нескольким дисководам. Ре-
зультат трудов наших мы вам и представляем
(уважаемые владельцы N дисководов, не "за-
рывайтесь") как версию 1.5D.
А теперь немного "чернухи". Оказывается
v1.0 (та, которую мы хотели включить в наш
номер, и которую мы описали выше) совсем
не версия программы, это одна из СТАДИЙ
РАЗРАБОТКИ первой версии !!! Мы нашли, что
оказывается в программе есть процедура
собственной печати каталога диска (!!), но
из-за поставленной автором отладочной заг-
лушки вывод каталога происходит стан-
дартной процедурой TR-DOS. Кроме того,
"безалаберно" выполняется обработка "Quit"
(помните, чуть выше мы писали, что выход
не срабатывает), вернее обработка вообще
не выполняется никак. И самое главное -
редактор рассчитан также на работу с MS-
DOS-дисками, но сделано это настолько при-
митивно (нет возможности работы с поддире-
кториями), что совершенно непонятно, как
работать с этими дисками. По нашему мнению
с MS-DOS-дисками лучше работать через IS-
DOS.
Немного подумав, мы сделали версию 1.5D,
которую и представляем вам. Теперь вместо
пункта "Quit" (в подменю "File") стоит
пункт "mOre" (буква "O" - буква-ключ), он
позволит вам попасть во вторую часть под-
меню "File". Там вы сможете выйти в Бейсик
(опция "Basic", "починенный" нами "Quit")
или выбрать другой дисковод (опция "Chabge
disk", чисто наш прибамбас), где в свою
очередь можно будет выбрать диск.
Кроме того, мы убрали несколько заглушек
и теперь вывод каталога диска будет прак-
тически таким, каким он был для MS-DOS
(хотя,каемся,мы его немного изменили, нап-
ример, добавили выход по клавише "Space"
между страницами каталога): поставили
"заглушки" драйвера принтера на тот слу-
чай, если драйвер принтера не загружен (а
загружать его следует выйдя в Бейсик из
редактора).
Теперь у владельцев 128К-машин не будет
практически никаких проблем с редактором -
он автоматически переводит компьютер в
псевдо 48К-режим ("натуральный" 48К, но с
сохранением 128К-памяти). И теперь вы мо-
жете спокойно выходить в Бейсик и заходить
обратно в редактор,текст сохраняется, и
компьютер не "глючит".
P.P.S. Чур, по ушам не бить. По голове то-
же. Счастливой охоты за меткими словами.
══════════════════════════════════════════
* * * * *
Other articles: