ГЛАВА 4. Начало работы
======================
Загрузка TLW
============
Включите Ваш Спектрум и загрузите программу с кассеты, набрав LOAD
"" и ENTER и включив магнитофон или с микродрайва, если Вы предварительно
переписали программу туда. Вставьте картридж в драйв 1, затем просто наж-
мите R и ENTER. Сначала загрузите БЕЙСИКовый раздел, затем раздел в ма-
шинных кодах. Когда загрузка закончится, мигающая строка LOADING CODE за-
менится вопросом INITIALISE PRINTER ? Y. Это исходное положение TLW, за-
писанное в БЕЙСИКовой строке 2030 применительно к ZX-LPRINT-III интер-
фейсу. Если Вы используете другой, то эту строку Вам надо переделать,
т.к. все они требуют разных подходов. Далее компьютер переходит не-
посредственно к операционной странице TLW и изображает данные по версии,
которой Вы пользуетесь. Дальнейшее нажатие клавиши очистит экран и Вы го-
товы к работе.
Разбивка текста
===============
Первоначально программа установлена на 40 знаков в строке. Правое
поле тоже установлено на этот размер. Может быть это не то, что Вы хоти-
те, но преимущество TLW в легкости переключения на другие размеры. Попро-
буйте набрать какую угодно строку текста и посмотрите, как она изобража-
ется на экране. Когда Вы дойдете до правого поля, продолжайте набор и
слова будут автоматически округлены (W.WRAPPED - имеется в виду
отсутствие переноса, прим. перев.) и иыполнены по правому полю - JUSTIFY.
Так будет на каждой строке. Теперь попробуйте изменить разбивку экрана.
- нажмите обе шифт. клавиши, в хэдере изменится мода WRITE на моду
COMMAND;
- нажав SS, нажмите " V " и в хэдере появится слово "VIDEO";
- теперь Вы можете набрать 48, 60 или 80 для установки количества
символов в строке вместо первоначальных 40;
- в конце нажмите ENTER и Ваш текст будет переписан в соответствии с
выбранным размером строки.
Вы видите, что чем мельче шрифт, тем важнее качество настройки Ваше-
го телевизора. 60 знаков в строке читаются без особых проблем, а на хоро-
шем экране можно работать и с 80 знаками. Однако в этом режиме буквы на-
бегают друг на друга, поэтому может быть Вам лучше работать на одном из
более низких режимов, а в моду 80 переходить только для окончательного
взгляда на законченную работу, перед выдачей текста на принтер. Переход
от одного размера к другому никак не влияет на содержание текстового фай-
ла, а только на то, как эта информация представлена на экране.
Клавиша ENTER
=============
Хотя большинство клавиш при нажатии вызывают вполне очевидные ре-
зультаты, ENTER имеет специальное значение и пользоваться ею надо акку-
ратно. Так, когда Вы набираете новый текст, курсор идет впереди набирае-
мой строки, нажатие клавиши ENTER в этот момент приводит к вводу байта
"возврат каретки", т.е. конец абзаца, а курсор перемещается к левому полю
следующие строки. Такой маркер "конец абзаца" очень важен для последующей
работы программы с файлом и не может быть устранен обычным путем с по-
мощью DELETE. Он будет там до тех пор, пока часть файла, содержащей его
не будет стерта более мощной командой, см. 6.2.3 и 6.2.4.
Если Вы находитесь "внутри" файла, то есть текст уже написан, то на-
жатие ENTER приведет к простому перемещению курсора на одну строку вниз,
но не изменит никакого текста, который там уже есть.
Функция "TAB"
=============
Заметьте, что команда "TAB" (CS 1) передвигает курсор сначала к ле-
вому полю, если оно меньше, чем величина "TAB", а затем вправо на величи-
ну "TAB". При вводе нового текста "TAB" образует пробелы, а в уже сущест-
вующем тексте "TAB" просто перемещает курсор на заданное число позиций
вправо.
Левое и правое поле
===================
Вы уже заметили, что то, что Вы вводите, формируется по 40 знаков в
строке от колонки 1 до колонки 40, это результат работы полей. Величина
их изначальной установки приведена в хэдере. Чтобы ее изменить, перейдите
в командную моду, как Вы это делали при изменении ширины видеостроки и
нажмите "M" для левого поля или CS "M" для правого. Правое поле можно
увеличить до 132 и уменьшить до величины, на единицу большей, чем размер
левого поля. Левое поле - от 1 до величины правого поля минус 1. На экра-
не ничего не изменится, кроме надписи в хэдере, но весь новый вводимый
текст будет подчиняться этим новым полям.
Маркеры конца строки и абзаца
=============================
Вы видите, что правое поле содержит специальные отметки в тех
местах, где кончается строка. Это или наклонная стрелка, или обращенная
буква "с". Это визуальное отображение того, как TLW делит Ваш текст для
того, чтобы вписать его в заданные поля. Они только служат для удобства
компоновки и при печати на бумаге, конечно не воспроизводятся.
Переоформление абзаца
=====================
С помощью движения курсора вверх (CS 7), перейдите к верхней строке
Вашей страницы, войдите еще раз в командную моду и нажмите SS R. Это мощ-
ная команда "REFORM". Она очистит экран от строки, в которой стоит курсор
до ближайшего "конца абзаца" и перепишет текст в соответствии с новыми
введенными значениями полей. Измените поля еще раз, добавьте несколько
пробелов и еще раз выполните команду "REFORM". Вы увидите, как аккуратно
запись будет переписана для новых условий.
Буфер клавиатуры
================
Если Вы умеете печатать достаточно быстро, то Вы скоро увидите, что
хотя программа поспевает за Вами в пределах одной строки, то после пере-
хода правого поля, программа отстает, т.к. ей нужно время для организации
строки в соответствии с введенными заданиями. В этот момент нужны специ-
альные меры, чтобы хранить то, что Вы в нее вводите. Все, что Вы вводите,
после каждого нажатия клавиши идет в буфер памяти компьютера, откуда изв-
лекается в удобное время. В тех случаях, когда в буфере находится более
чем один символ или команда, номер колонки в левом окне хэдера становится
ярче. Буфер может принимать до 21 символа, но только одну команду. Когда
Вы превосходите 21 знак, программа ничего не примет, пока содержимое не
опустится ниже 21.
Небольшой пример
================
Мы подготовили для Вас письмо. Оно записано на кассете под именем
"LETTER". После того, как Вы прочитаете очередную главу, посвященную за-
писи и загрузке, Вы сможете очистить текстовой файл (командная мода SS
"Z"), загрузить файл "LETTER" и попробовать разные режимы работы с
представленным на экране видеотекстом. Поэкспериментируйте с тем, что Вы
уже знаете. Чем больше Вы играете, тем большему Вы научитесь.
Первые итоги
============
В первую очередь поля определяют форму того текста, с которым Вы ра-
ботаете. Вторым по значению является задание "JUSTIFY" или "RAGGED", ко-
торое выполняется: командная мода "J". В зависимости от того, какой режим
Вы примете, текст по правому полю будет выравниваться (JUSTIFE) или оста-
нется необработанным, как на обычной пишущей машинке (RAGGED). Кроме это-
го, Вам еще многое предстоит освоить и только одно средство для этого
имеется - поставьте перед собой несложную задачу и приступайте. Не за-
ботьтесь пока о том, как она будет распечатана, просто поработайте с кла-
виатурой, добейтесь уверенности в работе. В свое время поэкспериментируй-
те с другими командами, чтобы посмотреть, как они влияют на результат.
"Персонализация" программы
==========================
Когда Вы вполне убедитесь в том, что TLW ведет себя на экране в
соответствии с Вашими ожиданиями, потратьте некоторое время на изучение
управляющих операторов в гл.8 и инструкции по интерфейсам принтеров в
приложении 3, аккуратно настройте программу, чтобы она работала так, как
Вам это нужно. Затем, следуя указаниям приложения 3, исполните для себя
личную копию программы.
ГЛАВА 5 Запись и считывание текста
====================================
Когда Вы уже набрали некоторый текст и дошли до той стадии, когда
Вам нужна постоянная копия или у Вас есть в хранении какой-то текст и Вы
хотите ввести его в компьютер, Вам необходим магнитофон или микродрайв
для ввода или вывода каких-либо байтов. Для этих целей в TLW имеется две
очень простых процедуры, каждая из которых применима к обоим типам уст-
ройств.
Запись текста
=============
Процедура вызывается: мода Е "S". Теперь перед Вами три выбора: за-
дать компьютеру номера первой и последней строк (включительно) того
куска, который Вы хотите записать; выбрать тип устройства - магнитофон
или микродрайв, и выбрать имя файла, под которым эта запись будет хра-
ниться.
1. Вы можете записать любую группу строк из текстового файла или
весь файл целиком. Если Вы делаете частичную запись, то Вам надо знать
номера начальной и конечной строк до того, как Вы дадите команду на за-
пись, т.к. эти данные вводятся раньше. Если номер последней строки целого
файла Вам неизвестен, то подойдет любой, заведомо больший, программа сама
поймет, что речь идет о верхнем байте и сработает соответственно. После
того, как Вы введете данные о первой и последней строке, TLW сообщит Вам
количество килобайт, подлежащих выводу для того, чтобы Вы могли спланиро-
вать свое место на внешнем носителе.
2. Выбор между микродрайвом и магнитофоном достаточно прост. Если Вы
имеете один или несколько микродрайвов, то это простой и удобный путь.
Программа запросит ввод от 0 до 8. Если 0, то это означает запись на маг-
нитофон, а от 1 до 8 соответствует номеру задействованного микродрайва.
3. Выбор имени файла - Ваше личное дело, любая комбинация длиной до
10 букв подходит, но первый символ - обязательно буква, а не пробел. На-
берите буквы, как обычно, если необходимо, пользуйтесь DELETE для устра-
нения ошибок. Если Вы введете более чем десять букв, текст сдвинется вле-
во и первая буква пропадет.
Когда Вы с этим покончили, нажатие ENTER для того, чтобы привести в
действие процедуру записи. Если Вы выбрали магнитофон, Вам предложат
включить и нажать любую клавишу и после этого на экране появятся обычные
красные и голубые полосы. TLW не делает паузы между хэдером и главной
частью, а ведет запись в обычном формате в кодах, которые могут быть
впоследствии загружены либо в TLW, либо в любую другую программу, воспри-
нимающую коды.
Если был выбран микродрайв, то выбранное устройство включится и нач-
нет поиск, является ли для него этот файл новым или такое имя уже есть
на картридже. Если оно уже есть, компьютер проинформирует Вас сообщением
FOUND! NEW?[Y] и даст Вам возможность выбора записать или отбить команду.
Выбор выполняется нажатием нажатием клавиши "Y". Нажатие ENTER просто от-
бивает команду и возвращает Вас к текстовому файлу. Выбор "стереть"
исполняется так: мода Е, затем клавиша "Е". Результат тот же самый, но
сам процесс длиннее, т.к. надо нажимать больше клавиш.
Запись текста на ленту ни в коей мере не уничтожает файл, а просто
копирует избранный кусок на указанное устройство.
Считывание текста
=================
Вызывается мода Е, затем "L". Процесс считывания текста очень похож
на процедуру записи, за исключением, конечно, того, что не надо указывать
количество материала. Необходимо только два ввода - указание на магнито-
фон или микродрайв и имя файла.
То, что Вы вводите в текстовый файл, добавляется к тому, что там уже
есть, то есть новый материал записывается в память, начиная с адреса на
единицу большего, чем верхний адрес содержимого. При этом системная пере-
менная TLW "конец файла" соответствующим образом изменяется. Это означа-
ет, что Вы можете сшивать любые записанные на внешнем носителе файлы
последовательной их загрузкой. Вы можете также вставить новый блок в се-
редину текстового файла. Это делается оператором INSERT, при этом верхняя
часть содержащегося файла "прячется" в компьютер, затем загружается сере-
динка, а затем возвращается верхний блок.
На ленте байты хранятся как коды, а на картридже микродрайва в фор-
мате данных.
1. Для выбора ленты вводится 0, а для выбора микродрайва - номер,
соответствующий номеру устройства от 1 до 8.
2. Вам необходимо точно знать имя файла, который Вы собираетесь
ввести и набирать его точно так, как оно было записано. Любые отклонения
не дадут результата. В конце нажмите ENTER - при этом для магнитофона по-
явится надпись TAPE-ON/key, а микродрайв включится для поиска указанного
имени.
Для ленты все названия, проходящие мимо головки будут изображаться
как FILENAME..., то, которое нужно, будет схвачено. Для микродрайва файл
будет загружен сразу после того, как будет найден. Если его нет в карт-
ридже, появится надпись ABSENT! Для ленты отсутствие имени на ленте ниче-
го не покажет.
Вполне возможно загружать в TLW текстовые файлы или файлы данных
природы иной чем TLW. Но они должны иметь ту же организацию маркеров кон-
ца строки и конца абзаца, что и в TLW. В противном случае они будут выг-
лядеть как бесконечный стринг, не разделяемый на строки как для экрана,
так и для принтера. Для переработки таких файлов на кассете TLW имеется
служебная программа TLW64BASIC - сведения по ее применению приведены в
Приложении.
Глава 6. Команды.
=================
Для ввода команд в TLW существуют два главных приема. Для первой
группы наиболее широко используемых команд применяется одно нажатие шифта
для того, чтобы не прерывать процесс печати. Для второй группы команд ха-
рактерна необходимость более глубокого осмысления желаемого результата,
здесь обычно потребно добавление каких-либо деталей к первоначально вве-
денной команде и для этой группы необходимо перевести хэдер в командную
моду.
В большинстве случаев длительное нажатие командной клавиши вызывает
многократное повторение команды до тех пор, пока клавиша не будет отпуще-
на.
Оба способа ввода команд будем называть далее прямым и непрямым вво-
дом.
Прямой ввод команды:
CS + клавиша или SS + клавиша.
Непрямой (требует перехода в командную моду - оба шифта вместе) за-
тем:
просто клавишу или CS + клавишу.
Команды разделены на пять главных групп:
1. Команды курсору.
2. Команды обработки текста.
3. Структурные и утилиты, они устанавливают каким образом построить
текстовый файл и экран.
4. Команды принтеру.
5. Команды ввода/вывода.
6.1 Перемещение курсора.
========================
6.1.1. Вправо на одну позицию - CS "8".
6.1.2. Влево на одну позицию - CS "5".
6.1.3. Вверх на одну строку - CS "7"
6.1.4. Вниз на одну строку - CS "6"
6.1.5. Табуляция вправо - CS "1"
Курсор перемещается вправо на величину значения TAB или до левого
поля, если оно ближе.
6.1.6. Вправо на одно слово - CS "4"
6.1.7. Влево на одно слово - CS "3"
6.1.8. Вправо на одно предложение - [E] "W"
Курсор двигается до первой точки и затем устанавливается около сле-
дующей позиции.
6.1.9. Вправо до конца строки - [E] "8"
6.1.10. Влево к началу строки - [E] "5"
6.1.11. К началу первой строки - [E] "7"
6.1.12. К началу последней строки - [E] "6"
6.1.13. Вниз к началу первой строки последней страницы - [E] "D".
Экран перепечатывается так, что последняя строка данной страницы устанав-
ливается первой строкой следующей.
6.1.14. Вверх к началу предыдущей страницы с одной строкой для связ-
ки - [E] "U"
6.1.15. К началу текстового файла - [E] "A"
6.1.16. К концу текстового файла - [E] "Z"
6.1.17. К заданной строке - [E] "N"
Запрашивается номер строки и вводится INPUTOM.
6.1.18. Передвинуть экран вверх на одну строку - [E] ss "3"
6.1.19. Передвинуть экран вниз на одну строку - [E] ss "4".
6.2. Обработка текста
=====================
6.2.1. Стирание символа - CS "0"
Стирается символ или оператор управления печатью.
6.2.2. Стереть текст до конца строки - CS "9"
Эта команда требует "Y" для подтверждения или ENTER для отбоя.
6.2.3. Стереть текст до конца файла - [E] ss "9"
6.2.4. Стереть весь текст - [E] ss "Z"
6.2.5. Перекл-ль INSERT/OVERWRITE - (вставить/Переписать) - [E] "I".
В режиме OVERWRITE, кода вводится новый текст, курсор находится на
верхней границе файла и файл постепенно расширяется. Если курсор нахо-
дится внутри файла, идет его "переписывание".
Если курсор находится внутри файла и включен режим INSERT, то весь
текст, находящийся между курсором и концом файла удаляется с экрана и
"прячется" в самую верхнюю часть свободного пространства памяти.
Курсор устанавливается в начале освободившегося пространства и можно
начать ввод нового текста или вернуть курсор назад в оставшуюся часть
файла для работы с ним.
Файл ведет себя так, как будто оставшийся кусок является цельным и
полным, т.е. все вводимые команды распространяются только на него и не
касаются "спрятанного" куска. Команды CLEAR и LOAD его не затрагивают.
Можно "спрятать" весь текст и работать с другим, введенным с клавиатуры,
ленты и т.п.
При повторном вызове этой команды включается режим O/WRITE и "спря-
танный" текст возвращается и добавляется к имеющемуся на экране. Курсор
может быть где угодно и полученный текст можно, конечно, перерабатывать.
Можно выполнить команду REFORM для изменения нестандартных строк, полу-
ченных в результате вставки.
6.2.6. Сдвинуть весь текст влево - ss "Q"
Текст между началом строки и курсором сдвигается влево за счет
уменьшения ширины пробелов.
6.2.7. Сдвинуть текст вправо - ss "E"
Текст между курсором и концом строки смещается вправо за счет умень-
шения пробелов. Эта команда не срабатывает, если промежутки между словами
имеют минимальный зазор, равный единичному пробелу или, если будет
достигнут конец файла до того, как обнаружится пробел.
6.2.8. Централизовать текст в строке - [E] ss "H"
6.2.9. Выровнять (JUSTIFY) строку - [E] ss "J"
Если справа нет маркера "конец строки", т.е. файл закончен, то эта
команда не срабатывает.
6.2.10. Ограничить пробелы в строке - [E] ss "L"
Пробелы уменьшаются до единичных. Если справа нет маркера "конец
строки", эта команда не срабатывает, как и выше.
6.2.11. Переоформить (REFORM) текст от курсора до "конца абзаца" -
[E] ss "R"
Эта мощная команда обычно применяется для корректировки блоков
текста после его набора. Текст переоформляется, т.е. выравнивается, сжи-
мается или наоборот в соответствии с тем, что установлено в правом окне
"хэдера". "Переоформление" выполняется в пределах текущего значения лево-
го и правого поля. Если команда не проходит, т.е. встретилось слово такой
длины, что не вмещается в рассматриваемую строку полностью, работа коман-
ды прекращается, а курсор устанавливается на этом слове.
6.2.12. Вставить оператор управления печатью - ss "I"
По этой команде от Вас запрашивается INPUT для определения требуемо-
го оператора. В результате байт, представляющий этот оператор, вставля-
ется в текст слева от позиции курсора, а метка, определяющая его, отобра-
жается в хэдере. Этот INPUT может быть одним из:
1. Число от 1 до 24, связанное с соответствующим кодом принтера,
предназначенное для управления принтером во время печати.
2. Число от 90 до 99, указывающее на строку в БЕЙСИКе, которую нужно
напечатать (строка определяется как 100, умноженное на это число, т.е. от
9000 до 9900).
3. Буква от A до Z со знаком $, когда требуется напечатать избранный
БЕЙСИКовский стринг.
При этом переключатель РСТ должен быть включен и, конечно, операторы
управления принтером на печать не выводятся.
6.2.13. Ввод символа копирайт - [E] ss "K"
Синклеровский знак "копирайт", CHR 127, вводится по этой команде в
файл. Имейте ввиду, что этот символ не стандартизирован и на принтере его
может не быть.
6.2.14. Повтор куска текста - [E] "R"
Запрашивается ввод для введения первой и последней строки потребного
куска.
6.2.15. Ликвидация куска текста - [E] "K"
Вводятся номера первой и последней строк.
6.2.16. Поиск или изменение некоторого куска текста - [E] "X"
Вводятся номера первой и последней строк, внутри которых
производится поиск. Затем вводится стринг, подлежащий замене, а затем ли-
бо заменяющий стринг, либо просто ENTER, если замена не нужна. Программа
ищет и изображает номера строк и колонок для найденных позиций. Каждый
раз Вы можете произвести замену клавишей "S", а ENTER - оставит без заме-
ны, продолжить поиск - "F". Прекратить поиск - "Q" (см.п.6.3.17).
Данная процедура может быть полезна, если Вам надо найти строку, но-
мера которой Вы не знаете, но знаете что-либо, что в ней находится.
6.3. Структурные команды и утилиты
==================================
6.3.1. Переключатель "JUSTIFY/RAGGED" - [E] "J"
Команда переключает два режима. В первом - концы строк по правому
полю автоматически выравниваются по окончании текущей строки, когда появ-
ляется "полосатый" курсор, а также, конечно, после команды REFORM.
При установке на "RAGGED", текст уплотняется, правый край остается
неровным.
6.3.2. Переключатель W.WRAP/W.SPLIT (округление слов/перенос слов) -
[E] "W"
Действие этой команды похоже на действие предыдущей.
Работает при создании текста или при выполнении команды REFORM. Ког-
да включен режим WRAP, слова не делятся и не переносятся в конце строки.
В режиме SPLIT текст режется на куски заданными значениями полей. Этот
процесс НЕОБРАТИМ. Когда включен режим SPLIT, в окне JUSTIFY/RAGGED заго-
рается, указывающая на то, что ни один из этих режимов не может быть за-
действован, но они будут работать нормально после команды REFORM.
6.3.3. Установка регистра букв на одну строку - [E] "2"
Вся строка будет печататься печатными или строчными буквами.
6.3.4. Включение в текст БЕЙСИКовского стринга - [E] ss "I"
Запрашивается INPUT для задания стринга из области БЕЙСИКа, т.е. имя
от A$ до Z$. Изображаются первые восемь символов стринга с последующим
знаком $# и указанием длины стринга.
Стринги должны быть "простыми" и должны браться целиком. В программу
можно вводить все байты между 22 и 151, т.е. весь спектр ASCII плюс 24
оператора управления принтером, но не стринги, вызываемые процедурой вво-
да операторов управления печатью РСТ от A$ до Z$ и не строки от 9000 до
9900. Результат можно включить в файл - "U", сбросить и повторить команду
- "N", отбить команду и выйти из нее - "Q".
6.3.5. Вкл./выкл. контурной линии - [E] "O"
6.3.6. Вкл./выкл. видеомаркеров - [E] "V"
Когда режим включен, то в хэдере, рядом со значением ширины страницы
"VIDEO" изображается маркер "конец абзаца".
6.3.7. Переключатель регистра верхний/нижний - CS "2"
6.3.8. Пересмотр величины левого поля - [E] "M"
Запрашивается ввод числа, которое может быть от 1 до величины
правого поля минус 1.
6.3.9. Пересмотр величины правого поля - [E] "M"
Запрашивается ввод числа, которое может быть между величиной левого
поля плюс один и 132.
6.3.10. Пересмотр разбивки экрана - [E] "V"
Вводится 40, 48, 60 и 80 знаков в строке. Экран перестраивается.
6.3.11. Пересмотр величины табуляции - [E] ss "T"
TAB может меняться от 1 до значения правого поля минус 1, но не бо-
лее 80.
6.3.12. Пересмотр цвета бордюра - [E] ss "B"
Цвет бордюра может быть одним из Спектрумовских цветов от 1 до 7,
независимо от цвета страниц и хэдера. Если принять 0, то будут белые сим-
волы на черном фоне.
6.3.13. Изменение цвета хэдера (от 1 до 7) - [E] ss "H"
6.3.14. Счетчик слов - [E] ss "W"
По этой команде пересчитываются все группы символов, разделенные
пробелами, независимо от того, являются ли они словами. Результат изобра-
жается вместе с видимой длиной файла в байтах.
6.3.15. Работа калькулятора - [E] ss "C"
Страница текста убирается вниз, чтобы Вы могли записать выражения
длиной до 40 символов, после чего самый левый символ исчезает. Выражения
должны быть законченными математически, хотя знак "=" не требуется, так
выражение "3х128" является законченным входом. Пробелы не требуются.
Стринговые выражения могут быть "урезанными", т.е. если $ равен
"12345678", то выражение VALA$ (2 ТО 5) будет расценено как 2345 и т.д.
После нажатия ENTER автоматически будет выполнен расчет до получения
числового ответа, а если это не возможно, то загорится вопрос What? и
неправильное выражение будет на экране до определения ошибки до тех пор,
пока не будет нажата любая клавиша, после чего произойдет очистка.
После этого предоставляется выбор сохранить этот результат в одном
из десяти регистров памяти нажатием клавиш от M0 до M9. Он сохраняется
как обычная БЕЙСИКовская переменная и доступен для калькулятора, когда
это необходимо. Нажатие любой другой клавиши приводит Вас к следующей
стадии, когда Вы можете использовать полученный результат - "U" (т.е.
включить его в тестовый файл), отбросить его и повторить команду - "N"
или вернуться в режим ввода текста - "Q".
При написании математических выражений клавиатура модифицируется та-
ким образом, чтобы иметь возможность использовать большинство Синкле-
ровских логических и математических функций.
Функция Клавиша Шифр Функция Клавиша Шифр
------------------------------ ------------------------------
+ K ss LN Z cs
- J ss VAL J cs
H B ss SGN F cs
/ V ss ABS G cs
^ H ss PI M cs
SIN Q cs < R ss
COS W cs = L ss
TAN E cs < > W ss
ASN S cs > T ss
ASC C cs > = E ss
ATN T cs OR U cs
EXP X cs AND Y cs
SQR H cs NOT S cs
INT R cs
6.3.16. Установка времени - [E] ss "X".
В TLW имеются часы со встроенным таймером (будильником). Таймер мо-
жет быть установлен на время от 0 до 250 минут (изначально 30 минут).
Если на 0, то таймер выключен. Таймер предназначен для регулярности
сброса введенного текста на ленту. Отключается звуковой сигнал - "T".
Возврат к вводу текста - "Q".
6.3.17. Отбой введенной команды - ss "Q".
6.3.18. Возврат к БЕЙСИКу - [E] "B"
6.4. Печать
===========
6.4.1. Управление печатью - [E] "G".
Это не столько команда, сколько программа для управления процессом
печати. Загорается меню, изображающее состояние канала принтера. Если
требуется пересмотреть какие-либо исходные данные, нажмите "R". В каждой
позиции нажатие ENTER приводит к перемещению курсора без внесения измене-
ний.
1. LINE PRINTER - переключается на ZX PRINTER при нажатии "R". когда
стоит "LINE PRINTER", запрашивается ввод адреса возврата. Введите 0, если
используется интерфейс без обратного возвращения после инициализации или
обычный адрес для интерфейса, который имеет блок памяти и которому нужно
обычно также обращение RANDOMISE USR из БЕЙСИКа для задействования.
ZX - PRINTER всегда использует резидентный генератор из TLW для пе-
чати 40, 48, 60 и 80 символов в строке в соответствии с тем, какой режим
выбран.
2. Байт, который использует LINE PRINTER для возврата каретки. Обыч-
но - 13, но надо уточнить по руководству к принтеру.
3. Байт, необходимый для перевода строки. Он может быть необходим
отдельно от "возврата каретки". Если не нужен - введите 0.
4. Все четыре байта каждого оператора управления принтером. Они вво-
дятся автоматически вводом специального числа - "префикса". Он сообщает
интерфейсу принтера, что сейчас должна пойти группа управляющих байтов.
Отсюда можно перейти прямо к меню печати - "P", или к пересмотру -
"R" или к тексту - "Q".
6.4.2. Печать некоторого текста - [E] "P".
Загорается меню, на котором изображены:
- номера первой и последней строк файла;
- установленное количество копий и ширина интервала;
- состояние РСТ (операторов управления печатью).
Для изменения чего-либо - "R", для выполнения печати - "P", для
возврата к тексту - "Q".
За вводом "P" каждая копия печатается по команде ENTER. Хотя нажатие
"Q" позволяет выйти из этого меню и перейти к тексту, нажатие "Q" во вре-
мя работы принтера прерывает печать и переводит к началу новой копии.
Оператор BREAK переводит в БЕЙСИК.
6.4.3. Файл РСТ (файл операторов управления принтером) - [E] "T".
Все 24 оператора управления принтером полностью дисассемблированы
вместе со своими метками и копией стандартного префикса. Вы можете ввести
любое число от 1 до 24 для движения курсора по меткам и байтам
или вернуться к текстовому файлу - "Q". Когда курсор стоит на месте, ее
можно переопределить, записав новую в хэдер и нажав ENTER. Все рабочие
файлы РСТ изменяются аналогично на значение от 0 до 254. Ввод 255 при пе-
чати игнорируется и означает пробел.
6.5. Хранение файлов и вызов
============================
6.5.1. Запись текста на внешний носитель - [E] "S".
Запрашиваются номера первой и последней строк текста, а также число:
0 для ленты или от 1 до 8 для микродрайвера. Ввод завышенного значе-
ния номера последней строки всегда приводит к установлению значения
действительного конца файла. Так, ввод "1" и "9999" приводит к записи
большинства файлов полностью. Если необходимо знать точное значение номе-
ра последней строки файла, то можно воспользоваться первой частью команды
вывода на печать.
Если файл данного имени уже есть на картридже микродрайва, то поя-
вится сообщение FOUND: NEW? [Y]. Ответ [Y] - произойдет стирание старого
файла и запись нового. Просто ENTER - возврат к текстовому файлу.
Запись в микродрайв идет в формате данных, а на ленту - в кодах.
6.5.2. Загрузить текст - [E] "L".
Текст, загружаемый в TLW, не переписывает то, что уже содержится
там, а добавляется, начиная с "конца файла". В пустой файл, соответствен-
но, загрузка идет в самую нижнюю часть памяти.
Если используется команда вставки INSERT и имеется некоторый "спря-
танный" текст, весь материал, вводимый в файл, добавляется к концу види-
мой части файла, что позволяет вставлять любой материал внутрь уже су-
ществующего файла. Это позволяет выполнять большинство требуемых "сшива-
ний" текстов. Команда включения БЕЙСИКовского стринга выполняет аналогич-
ную функцию.
После команды LOAD вводится номер носителя - 0 для ленты и
от 1 до 8 для микродрайва и имя, которое надо разыскать. При работе с
магнитофона имена читаются и записываются на экране, пока не найдется
искомое, тогда начинается загрузка.
При работе с микродрайва, если искомое имя отсутствует, то выдается
сообщение ABSENT. Если файл испорчен, то появится обычное БЕЙСИКовское
выражение "FILE NOT FOUND", но при этом все "хорошие" 512-байтные сектора
до "испорченного" загрузятся в TLW. Если файл на картридже, который Вы
хотите загрузить, слишком велик, загрузится сколько возможно, а потом по-
явится сообщение SPACE:, т.е. от дальнейшего ввода программа отказыва-
ется.
С ленты воспринимаются байты в форматах кодов, а с микродрайва - в
формате данных. Если Ваш текст записан в кодах на микродрайве, то лучший
способ, по-видимому, предварительно переписать его на ленту обычным по-
рядком и загружать его оттуда (см. Приложение 4 и "TLW64 BASIC").
6.5.3. Раскаталогизировать картридж [E] "C".
6.5.4. Стереть файл на картридже [E] "E".
6.5.5. Выполнить форматирование картриджа [E] "F".