Из журнала ZX Format #1, Санкт-Петербург, 11.1995 Рубрика "IS-DOS - начинающим". No 1 Елисеев В. А. "IS-DOS - первое знакомство" (журнальный вариант) (C) PENCRAFT 1995 (C) IskraSoft 1995 Что такое IS-DOS? В традиционной модели ZX Spectrum, не имевшей, как известно, дисководов, роль операционной системы выполнял встроенный интерпретатор языка BASIC. Но вот, нако- нец, появился Beta-disk interface, и мно- гочисленные владельцы Speccy получили возможность работать с флоппи-дисками. Нет нужды описывать преимущества ра- боты в дисковой системе, по сравнению с магнитофонной, однако, скоро было замече- но многими, что дисковая операционная система TR-DOS, зашитая в ПЗУ Beta-disk interface, организует работу с диском да- леко не лучшим образом. Среди главных не- достатков системы были отмечены такие, как невозможность создания файлов разме- ром более 255 блоков, невозможность соз- дать на диске более 128 файлов, отсут- ствие встроенной оболочки для организа- ции диалога с пользователем, а уж невоз- можность использования места, освободив- шегося при удалении файлов до тех пор, пока не будет выполнена команда MOVE, это было просто ужасно. Короче говоря, нас- тал момент, когда традиционная TR-DOS пе- рестала удовлетворять растущие потребнос- ти пользователей, она просто морально ус- тарела. Возникла острая необходимость в создании новой более совершенной DOS, свободной от всех недостатков традицион- ной. Такой новой альтернативной операцион- ной системой для ZX Spectrum стала систе- ма IS-DOS, созданная в 1992 году Сан- кт-Петербургской фирмой Iskra-Soft. При ее разработке использовалась привычная многим пользователям и неплохо себя заре- комендовавшая идеология системы MS-DOS, применяемая в компьютерах фирмы IBM. Внешнее оформление встроенной оболоч- ки системы строилось по образу и подобию широко известной IBM-овской оболочки Norton Commander. Такая преемственность, помимо всего, позволяла максимально приб- лизить работу на ZX Spectrum к работе на более мощных персональных компьютерах и обеспечить более легкий переход пользова- теля с домашнего ПК на профессиональный. Одним из главных преимуществ новой систе- мы явилось то, что она была загружаемой с дискеты и не требовала никаких аппарат- ных доработок в схеме компьютера. Это позволяло легко перейти на новый уровень, не потеряв совместимости с TR-DOS. Новая операционная система не сразу нашла свой путь к потребителю. Малое ко- личество прикладных программ, неустойчи- вость работы ранних версий, недостаточ- ная реклама и жесткая система защиты от копирования долгое время сдерживали рас- пространение IS-DOS, однако, в последнее время ситуация резко изменилась. Появи- лись интересные прикладные программы, система обросла большим количеством ути- лит и внешних команд, общими усилиями программистов и пользователей было вылов- лено подавляющее большинство ошибок, да и условия распространения системы стали бо- лее мягкими. Так что сейчас детище фирмы Iskra-Soft успешно завоевывает рынок и составляет серьезную конкуренцию системе TR-DOS. Цель этой статьи - прежде всего, по- мочь неподготовленному пользователю прео- долеть естественный психологический барьер и овладеть первыми навыками рабо- ты в операционной системе IS-DOS. Однако, информация, приведенная в этой статье, несомненно заинтересует и более опытных пользователей, давно работающих в среде IS-DOS, так как система эта, до сих пор слабо освещавшаяся в печати, имеет неко- торые свои секреты и тонкости, часто ус- кользающие от внимания и требующие спе- циальных пояснений. В этой статье описывается версия IS-DOS, выпущенная фирмой Iskra-Soft в мае 1994 года, однако многое будет спра- ведливо и для более pанних версий. В тех случаях, когда работа разных версий сис- темы будет иметь принципиальные отличия, это будет специально оговорено. Пpи этом в тексте будут пpиведены ссылка дату соз- дания системы, или номеp веpсии. Итак, мы начинаем! Начальная загpузка. Одной из замечательных особенностей системы IS-DOS, как уже было сказано, яв- ляется легкость ее установки на любой Spectrum-совместимый компьютеp. Для нача- ла работы в среде IS-DOS достаточно вста- вить дискету с системой, купленную обяза- тельно у представителя фирмы или офи- циального распространителя, в дисковод и запустить ее. Предупреждение, кстати, да- леко не случайное, так как несанкциониро- ванные копии системы действительно могут работать неустойчиво, а также преподно- сить некоторые весьма неприятные сюрпри- зы, впрочем об этом чуть позже, а пока напомню, что за плохую работу "пиратских" копий фирма Iskra-Soft ответственности не несет. Если у вас ZX Spectrum 48 с дисково- дом (не такая уж и редкость даже в наше время), достаточно нажать RESET, и систе- ма запустится, если Spectrum 128 или Scorpion - вставьте дискету и выйдите в TR-DOS, если же у Вас Spectrum PROFI 2+ - сначала выйдите в TR-DOS 128, а потом вставляйте дискету, иначе ваш компьютер попытается загрузить дискету IS-DOS как CP/M'овскую. Кстати, никогда не покупай- те пиратские платы и компьютеры сомни- тельного происхождения, лично мне встре- чались экземпляры, на которых IS-DOS вообще невозможно было запустить, хотя на машинах в авторском исполнении система работала прекрасно. Если Вы к моменту начала работы уже находитесь в TR-DOS и созерцаете на экра- не заставку Technology Research Ltd., или хотя бы курсор TR-DOS, дело обстоит еще проще: для запуска IS-DOS достаточно наб- рать ЛЮБУЮ команду обращения к диску, кpоме pазве что команды FORMAT, напpимеp: CAT, LIST, LOAD, RUN и тогда... впрочем, об этом стоит рассказать отдельно. Файловая оболочка. В момент начальной загрузки IS-DOS в памяти компьютера происходит масса инте- ресных событий. Пока нам достаточно знать, что системный загрузчик находит на диске специальный файл, в котором содер- жится тело системы и загружает его в старшие адреса ОЗУ. После этого управле- ние передается уже системе IS-DOS. Пер- вое, что делает IS-DOS после старта - это находит в корневом каталоге загрузочного диска файл с именем autoexec.bat (ну пря- мо как в IBM PC) и выполняет последова- тельность команд, заданную в этом файле. Файл autoexec.bat обычно пишется пользователем и содержит команды, кото- рые будут выполняться всегда при старте системы. Его можно использовать, напри- мер, для установки конфигурации системы, установки текущей даты, резидентных прог- рамм и т.п. По окончании отработки autoexec.bat, а также при его отсутствии, вы попадаете в файловую оболочку IS-DOS. Она обеспечи- вает основной режим работы системы - ра- боту с файлами. Внешне файловая оболочка IS-DOS очень напоминает Norton Commander - те же две панели с файлами, строчка меню вверху эк- рана, прямоугольный курсор. При ближай- шем рассмотрении сходство становится еще более полным. Вообще, если Вам приходи- лось когда-либо работать на IBM PC, то в течение всего сеанса работы в IS-DOS Вас не будет покидать это чувство знакомости. Если Вы никогда не видели Norton Commander, не огорчайтесь - файловая обо- лочка IS-DOS настолько проста и дружес- твенна, что Вы быстро освоитесь и запом- ните все, что сможет Вам пригодиться в будущем. Кроме того, если Вам придется впоследствии работать на IBM-совместимой машине, опыт работы в IS-DOS несомненно облегчит Вам ее освоение и даст Вам зна- чительное преимущество в работе по срав- нению с теми, кто ранее не работал в сре- де IS-DOS. Самая верхняя строка - меню систем- ных утилит. Они вызываются при нажатии соответствующих цифровых клавиш (от 1 до 9 и 0). Когда Вы нажимаете одну из вышеу- помянутых клавиш, соответствующая ей сис- темная утилита запускается на исполнение, пpи этом ее название в веpхней стpоке вы- деляется более яpким цветом. Список системных утилит. 1 HELP - подсказка, оперативная помощь 2 USER - вызов меню пользователя 3 VIEW - просмотр файла 4 EDIT - редактирование файла 5 COPY - копирование файлов 6 RENAME - переименование файла, каталога 7 crDIR - создание подкаталога 8 DELETE - удаление файлов 9 MENU - меню блочных устройств 0 MASK - установка маски для вывода фай- лов на панель На оставшемся пространстве экрана располагаются две файловые панели - ле- вая и правая. При этом одна из них, в ко- торой находится курсор, называется теку- щей, а другая - альтернативной. В верхней строке каждой панели указы- вается логическое имя устройства, (в дан- ном случае дисковода), имя диска или отображаемого в данный момент каталога. Имя диска выводится в том случае, если на панели отображается содержимое основного - корневого каталога диска. Имя диска состоит из 8 символов и от- деляется от логического имени устройства двоеточием. Если же на панели изображен один из подкаталогов, то после двоеточия печатается его имя, причем количество то- чек перед ним показывает уровень его вло- женности. Поясним на примере. Пусть каталог SHELL является подкаталогом корневого ка- талога устройства A с именем ISDOS, а ка- талог HELP является подкаталогом катало- га SHELL, тогда при отображении на пане- ли корневого каталога в верхней строке будет напечатано: A:ISDOS Если на панель вывести содержимое ка- талога A:SHELL, то надпись изменится на: A:.\SHELL Если же войти в каталог A:SHELL\HELP, то появится: A:..\HELP Количество точек в данном случае по- казывает то,что подкаталог HELP является "подкаталогом подкаталога" корневого ка- талога диска, т. е. имеет уровень вложен- ности 2. Всего в IS-DOS допустимы 6 уров- ней вложенности. Вообще-то систему подкаталогов IS-DOS удобно представлять в виде дерева, для этого даже имеются специальные программы (tree, treecat, treefile), но об этом - чуть позже. Теперь рассмотрим более подробно ин- формацию, располагающуюся внутри окон-па- нелей. Каждая строчка этого окна состоит из трех областей: области имени файла, области расширения имени файла и служеб- ной области. Имя файла, как и в TR-DOS, состоит из 8 символов, однако требования к составу символов более жесткие, соответствующие стандарту профессиональных компьютеров. Так в именах файлов в IS-DOS нельзя ис- пользовать следующие символы: ! @ % ' ( ) | \ { } ^ << >> [ ] ; " : ? / * . , а также символ с десятичным кодом 127 Некоторые из этих символов имеют спе- циальное назначение и будут рассмотрены позднее. В системе IS-DOS допускается ис- пользовать в именах файлов символы киpил- лицы, что очень удобно для pусскоязычных пользователей. Расширение (extent) имени файла сос- тоит из трех символов и содержит информа- цию о типе данного файла. В TR-DOS оно приблизительно соответствует символу ти- па файла. Расширение имени - вещь доста- точно произвольная, однако существуют не- которые стандартные расширения (например com, или res), используемые системой, а также некоторые традиционные расширения, которых следует придерживаться при созда- нии собственных файлов (например txt). Кроме вышеперечисленных пользователь может создавать файлы и со своими соб- ственными расширениями, описывая их при конфигурации системы однако во избежание путаницы и разночтений советую придержи- ваться общепринятого соглашения. Итак, основные рекомендуемые расшире- ния имен файлов для IS-DOS суть следующие: com - запускаемый файл, программа bat - командный текстовый файл res - резидентная программа key - драйвер клавиатуры typ - драйвер дисплея blk - драйвер дискового устpойства lpr - драйвер принтера txt - текстовый файл hlp - текстовый файл подсказки wet - рабочий файл текстового редактора as - текст программы на Ассемблере obj - объектный файл sys - системный файл scr - файл экрана cod - прочие файлы в кодах Кроме того, некоторые прикладные программы используют свои специфические расширения, что позволяет легко отличать созданные ими файлы от других. И, наконец, в служебной области стро- ки панели помещается специальная информа- ция, чаще всего - длина файла в блоках, напоминаю, что длина блока - минимально- го элемента логической структуры диска - в системе IS-DOS составляет 256 байт, в то время как размер сектора диска 1024 байта. Теперь необходимо сделать небольшое отступление и пояснить весьма существен- ную разницу между физической и логичес- кой структурой диска. В системе TR-DOS эти два понятия практически идентичны, и размер логического блока равен размеру физического сектора. В профессиональных операционных системах это не всегда так. В частности одна дорожка диска, отформа- тированного в системе IS-DOS состоит из 5 секторов, объемом по 1024 байта каждый, следовательно, каждый сектор вмещает в себя 4 блока. Увеличение размера блока до размера сектора приводит к неоправданно- му расходу дискового пространства, т. к. даже самый маленький файл не может зани- мать менее 1 сектора, а уменьшение разме- ров сектора до 256 байт при сохранении общего размера дорожки 5 Кбайт вообще не- возможно из-за резкого увеличения служеб- ной информации - представьте себе 20 сек- торов на одной дорожке! Поэтому был выб- ран оптимальный вариант, оказавшийся наи- более удобным во всех отношениях. Теперь, когда содержимое экрана Ваше- го компьютера наконец-то перестало произ- водить впечатление "китайской грамоты", мы можем приступить к практическим заня- тиям. Работа с панелями. Первым делом обратите внимание на то, что одна из строк на панелях отличается по цвету от остальных. Это - панельный курсор, его можно свободно передвигать по панелям при помощи управляющих клавиш. Управляется курсор следующими клавишами: Q или CS+7 - движение вверх A или CS+6 - движение вниз O или CS+5 - переход на левую панель P или CS+8 - переход на правую панель Файловая панель состоит из 19 строк. Если реальное количество файлов в катало- ге больше 19, содержимое панели сдвигает- ся при достижении курсором границы окна, открывая следующий файл. При переходе на альтернативную па- нель позиция курсора на старой панели сохраняется, т. о. при возврате Вы попа- дете именно на тот файл, с которого ушли. Для того, чтобы войти в подкаталог необходимо установить на него курсор и нажать ENTER. После этого файловая па- нель будет показывать файлы этого подка- талога, причем верхняя строка, состоящая из точек, число которых соответствует уровню вложенности подкаталога служит для возврата в предыдущий каталог. Если Вы давно блуждаете в дебрях подкаталогов и Вам лень выбираться обратно, можете вос- пользоваться специальными клавишами для быстрого возврата в корневой каталог CS+O - выход в корневой каталог левой па- нели CS+P - выход в корневой каталог правой панели CS+ENTER - то же в текущей панели Кpоме того, Вы можете воспользо- ваться комбинациями клавиш для быстpого пеpемещения внутpи каталога: CS+Q, SS+Q - пеpеход в начало каталога CS+A - пеpеход в конец каталога Ну а если Вы вдpуг захотите, чтобы на альтеpнативной панели было то же, что и на текущей - к Вашим услугам клавиша: SS+CS - дублиpование содеpжимого текущей панели на альтеpнативную с пеpеходом куpсоpа на нее Если Вам необходимо пеpечитать ката- лог диска, сменить диск или выбpать дpу- гой дисковод, воспользуйтесь клавишами: CS+1 - выбоp устpойства на левой панели CS+2 - выбоp устpойства на пpавой панели При нажатии любой из этих клавиш бу- дет выведено специальное меню (см. рис) в котором Вам будет предложено выбрать одно из доступных в данный момент устройств. +--------------------+ | |# | #А# B C D E F |# | |# +--------------------+# ##################### В системе IS-DOS роль этих устройств могут играть не только дисководы, но и другие накопители информации - жесткий диск, виртуальный диск, организуемый в ОЗУ компьютера и т. п. Причем все они, благодаря соответствующим драйверам, об- служиваются с точки зрения пользователя совершенно одинаково. Поэтому предпочти- тельнее и говорить о логических устрой- ствах, а не только о дисководах. Устройство можно выбрать при помощи курсорных клавиш (CS+5 или O - влево, CS+8 или P - вправо), нажатие ENTER фик- сирует выбор и возвращает в оболочку. Если же Вы почему-то раздумали менять ус- тройство - нажмите SS+A или SPACE, и Вы вернетесь в оболочку без изменений. Запуск программ производится клави- шей ENTER. При этом курсор должен быть установлен на имя необходимого файла. Не забывайте, что в системе IS-DOS запускае- мые файлы имеют расширение com. Однако, это не значит, что при нажатии ENTER на других файлах ничего не произойдет. Обо- лочка позволяет программировать реакцию на нажатие клавиши ENTER для файлов с различными расширениями. Для этого сущес- твует специальный текстовый файл extent.txt, который содержит список объявленных расширений и описание коман- ды, котоpая автоматически вызывается пpи нажатии ENTER. Команда отделяется от pас- шиpения двоеточием. Примерное содержание стандартного файла extent.txt приведено в табл. 1: Таблица 1. Состав файла extent.txt Содеpжимое extent.txt Реакция на ENTER com: запуск com-файла bat:Q:SHELL\exebat интеpпpетатоp bat-файлов scr:Q:SHELL\exescr /w пpосмотp экpанного файла txt:Q:SHELL\tv пpосмотp текстового файла hlp:Q:SHELL\tv пpосмотp текстового файла wet:Q:EDIT\edit pедактиpование файла lpr:Q:RES\set загpузка дpайвеpа пpинтеpа typ:Q:RES\set загpузка дpайвеpа дисплея res:Q:RES\set загpузка pезидент- ной пpогpаммы blk:Q:RES\set загpузка дpайвеpа bas:@bas интерпретатор BASIC mnu:Q:SHELL\menu вывод USER-меню pac:Q:SHELL\exepac pаспаковка кодового блока Кроме вышеперечисленных Вы можете за- давать любые реакции на другие расшире- ния, например для работы в Ассемблере: as :Q:ASSM\as /auto obj:Q:ASSM\link Для запуска редактора шрифтов: fnt:Q:FONT\f_e_unit Для запуска рекламного интерпретато- ра SHOW: shw:Q:SHOW\exeshow Для гpафического pедактоpа PICASSO: pic:Q:PICASSO\picasso.com Разумеется, все вызываемые программы должны присутствовать на диске в указан- ных каталогах, иначе будет выдано сообще- ние об ошибке No <имя файла>. И наконец, еще одна операция, доступ- ная в файловой оболочке IS-DOS - это от- метка файлов. Дело в том, что некоторые операции, например копирование или удале- ние файлов, удобнее проводить сразу с несколькими файлами. Для этого Вы можете отметить эти файлы на панели нажатием клавиши SPACE. После нажатия SPACE строка с именем отмеченного файла изменит свой цвет, а курсор сместится на одну позицию в том же направлении, в котором он двигалcя до сих пор. Таким образом можно отмечать неcколько файлов подряд, нажимая только на SPACE. При достижении конца или нача- ла каталога курсор изменит направление движения на противоположное. Повторное нажатие SPACE на уже отмеченном файле вы- зывает снятие отметки. Отметка файлов сохpаняется пpи пеpе- мещении панельного куpсоpа на альтеpна- тивную панель, но пpи входе в подкаталог и выходе из подкаталога все отметки сбpа- сываются. Также в панелях IS-DOS невозможно от- метить целый подкаталог, или гpуппу под- каталогов. Если Вам понадобится пpоизвес- ти какую-либо опеpацию над всеми файлами подкаталога - войдите в него и пометьте все файлы. Несколько забегая впеpед, мо- гу сказать, что для таких целей можно пользоваться утилитой mark.com, котоpая находится в каталоге UTIL\ и позволяет отметить гpуппу файлов по указанной маске. И в заключение позволю себе для обоб- щения всей вышеизложенной информации еще раз привести список управляющих клавиш файловых панелей: Основные упpавляющие клавиши. Q или CS+7 - движение вверх A или CS+6 - движение вниз O или CS+5 - переход на левую панель P или CS+8 - переход на правую панель ENTER - вход в подкаталог, запуск прог- рамм по extent.txt CS+ENTER - выход в корневой каталог теку- щей панели CS+O - выход в корневой каталог левой па- нели CS+P - выход в корневой каталог правой панели CS+Q, SS+Q - переход в начало каталога CS+A - переход в конец каталога CS+SS - пеpеход на альтернативную панель с дублиpованием CS+1 - выбор устройства на левой панели CS+2 - выбор устройства на правой панели SPACE - отметка файла Продолжение следует... В следующем номере журнала мы с Вами поговорим о системных утилитах IS-DOS, о тех самых, названия которых выписаны в верхней строке основного экрана файловой оболочки. Из журнала ZX Format #2, Санкт-Петербург, 12.1995 Pубрика "IS-DOS - начинающим" No 2 Елисеев В. А. "IS-DOS - первое знакомство" (журнальный вариант) (C) PENCRAFT 1995 (C) ISKRASOFT 1995 Продолжение, начало - в No 1. Системные утилиты. В предыдущей главе мы подробно рас- смотрели управляющие клавиши файловых па- нелей. Теперь, когда Вы освоили это, мож- но смело переходить к следующей достаточ- но обширной теме - системным утилитам, перечисленным в верхней строке экрана и вызываемым цифровыми клавишами. Всего этих утилит десять, рассмотрим подробно каждую из них. 1 - HELP Клавиша 1 вызывает утилиту help.com, находящуюся в каталоге SHELL\ (до 05.95 - UTIL\). Эта утилита позволяет вывести на дисплей текстовый файл-подсказку к файлу, на который указывает курсор. Для этого необходимо, чтобы в катало- ге, в котором находится интересующий Вас файл был подкаталог HELP\, в котором со- держатся текстовые файлы описаний-подска- зок к файлам этого каталога. Файлы описа- ний имеют расширение hlp. Кроме того, имя файла-подсказки должно совпадать с име- нем самого файла, например, если у Вас имеется файл copy.com в каталоге A:UTIL\, то help-файл к нему должен называться copy.hlp и находиться в каталоге A:UTIL\HELP\. В базовый комплект IS-DOS обычно вхо- дят help-файлы ко всем основным командам и файлам. Если же на Вашей дискете не оказалось соответствующего описания, на- жатие клавиши 1 вызовет справку по рабо- те с файловой оболочкой IS-DOS. Этот файл называется shelhelp.hlp и находится в подкаталоге HELP\ корневого каталога. Недостающие help-файлы, а также опи- сания Ваших собственных файлов Вы можете набрать самостоятельно в текстовом редак- торе и поместить в подкаталог HELP\ того каталога, в котором находится описывае- мый файл. 2 - USER Клавиша 2 запускает утилиту menu.com, находящуюся также в каталоге SHELL\ (до 05.95 - UTIL\). Эта утилита позволяет ра- ботать с так называемым "меню пользовате- ля" - User menu. Меню пользователя можно использовать для вызова часто используе- мых программ, запуска Ваших командных файлов, прикладных пакетов и т.п. Внешний вид основного USER-меню базо- вого комплекта IS-DOS показан на рисунке: +-----------------+ | USER MENU | |-----------------| | РАБОТА С ДИСКОМ | | РЕЗИДЕНТЫ | | РАБОТА С TR-DOS | | РАБОТА С MS-DOS | |ДЕРЕВО КАТАЛОГОВ | | СПРЯТАТЬ ФАЙЛЫ | | УВИДЕТЬ ФАЙЛЫ | | ВЫХОД В SHELL | +-----------------+ Утилита menu.com выводит на экран ок- но со списком выполняемых команд, коммен- тариями, текстовой информацией и т.п. Пе- ремещая курсор по строкам окна можно выб- рать нужную программу и запустить ее на- жатием ENTER. Выход из меню возможен по нажатию SS+A, или через специально пре- дусмотренную строку. User menu могут быть вложенными, т. е. каждая строка основного меню может со- держать команду для вызова другого меню. Именно так организована система User menu в базовом комплекте IS-DOS. Конфигурацию меню утилита menu.com считывает из текстового файла menu.txt (в веpсии от 10.06.95 - menu.mnu). В момент нажатия клавиши 2 она осуществляет поиск этого файла сначала в текущем каталоге, а затем, при его отсутствии, в каталоге SHELL\. Таким образом, в каждом каталоге диска можно создать свое меню, но основ- ным меню будет то, которое находится в каталоге SHELL\. Как уже было сказано выше, система IS-DOS поставляется с комплектом уже го- товых User menu для вызова наиболее важ- ных системных утилит, однако, основное назначение утилиты menu.com - использова- ние Ваших собственных менюшек. Для этого Вам необходимо создать Ваш собственный текстовый файл menu.txt, описав в нем конфигурацию меню. О том, как это сде- лать читайте в соответствующей главе этой брошюры. 3 - VIEW Клавиша 3 позволяет просмотреть на экране содержимое файлов. Естественно, что для просмотра текстовых файлов тре- буется программа, выводящая их в сим- вольном виде, для экранов - в графичес- ком, а для кодовых блоков - в виде 16-ричного дампа. Для этого в системе предусмотрен спе- циальный текстовый файл extview.txt, опи- сывающий реакцию системы на нажатие кла- виши 3. Не правда ли это что-то напоми- нает? Например extent.txt. Такой подход позволяет легко модернизировать систему и расширить ее возможности, так как файл extview.txt Вы также можете редактиро- вать по своему усмотрению. Чаще всего приходится просматривать текстовые файлы. Для этого вызывается утилита tv.com находящаяся в каталоге SHELL\. Кстати, это ее услугами пользует- ся вышеописанная команда help.com для вы- вода на экран файла-подсказки. Для прос- мотра экранных файлов вызывается утилита exescr.com из того же каталога, а для ко- довых блоков предпочтительнее 16-ричный монитор demon.com из каталога SERVICE\. Пример стандартного файла extview.txt приводится в табл. 2 Таблица 2. Пример файла extview.txt Содеpжимое extview.txt Реакция на клавишу 3 scr:Q:SHELL\exescr /w пpосмотp экpанного файла txt:Q:SHELL\tv пpосмотp текста mnu:Q:SHELL\tv пpосмотp текста bat:Q:SHELL\tv пpосмотp текста wetQ:SHELL\tv пpосмотp текста hlp:Q:SHELL\tv пpосмотp текста as :Q:SHELL\tv пpосмотp текста cod:Q:SERVICE\demon 16-pичный просмотр obj:Q:SERVICE\demon 16-pичный просмотр com:Q:SERVICE\demon 16-pичный просмотр Описание программ просмотра файлов будет опубликовано в одной из следующих статей нашей рубрики. 4 - EDIT Нажатие клавиши 4 запускает встроен- ный в IS-DOS текстовый редактор. Это до- вольно большая и сложная программа с поистине огромными возможностями для соз- дания и редактирования текстовых файлов. Описанию текстового редактора можно пос- вятить отдельную брошюру, что и будет сделано в ближайшее время. А пока могу дать некоторые элементарные пояснения, которые помогут Вам выполнить самые неот- ложные задачи, как-то: написание соб- ственных командных файлов, редактирова- ние файлов extent.txt, extkey.txt, extview.txt, создание User menu и т.п. Итак, нажатие клавиши 4 вызывает тек- стовый редактор. При этом редактируется тот файл, на котором стоял курсор в мо- мент вызова. Естественно, что редактиро- вать с его помощью можно только тексто- вые файлы. Список расширений файлов, счи- тающихся текстовыми содержится в тексто- вом файле ed_ext.txt. Содержимое этого файла Вы можете дополнять и редактиро- вать по своему усмотрению, однако, помни- те, что первые два байта первой строки должны быть зарезервированы для системы и их лучше не трогать, а следующие три обя- зательно должны содержать "wet" - стан- дартное расширение для рабочего файла ре- дактора. Остальные расширения описывают- ся в строках, начиная со второй, по одно- му в строке. Основные рекомендуемые рас- ширения для текстовых файлов приведены в табл. 3 Таблица 3. Расширения текстовых файлов. Расшиpение Назначение файла txt текстовый файл (общее) hlp help-файл doc документ bat командный файл as ассемблеpный текст bak pезервная копия текста mnu текст USER-menu Если в момент нажатия клавиши 4 кур- сор находился на имени файла с расшире- нием, описанным в файле ed_ext.txt, то на экран будет выведено входное меню pедак- тоpа (см. pисунок). +------+ | EDIT | +------+ +--------------------+ | | | EDIT treecat txt | | CREATE NEW FILE | | bak N | | CANCEL | | | +--------------------+ Первая строка означает переход к ре- дактированию файла, на котором стоял кур- сор (имя этого файла показывается в стро- ке после слова EDIT). Вторая строка - не трогать текущий файл, а создать новый (при выборе этой опции Вам предложат ввести имя вновь создаваемого файла и его расширение). Третья строка - указатель режима создания резервной копии редакти- руемого файла. Эта опция позволяет сохранить нетро- нутым исходный файл перед началом редак- тирования, чтобы потом можно было при необходимости вернуться к нему. Если в этой строке установить "Y", то исходный файл будет сохранен в файле с таким-же именем, но с расширением bak. Теперь, ес- ли результаты редактирования покажутся Вам неутешительными, Вы имеете возмож- ность стереть отредактированный файл и, заменив у резервной копии расширение bak на то, что было раньше, восстановить status quo. С четвертой строкой меню вообще все просто - это отказ от редакти- рования и выход в оболочку, т. е. то же, что и SS+A. Если при нажатии клавиши 4 расшире- ние файла под курсором не будет опознано редактором, то в меню будут только две строки: CREATE NEW FILE и CANCEL. Однако, это еще не все. Входное меню редактора имеет свой собственный настройщик пара- метров, вызываемый клавишами SS+SP, но описание его мы пока отложим до лучших времен. Итак, выбрав во входном меню EDIT, Вы приступаете к редактированию файла. Ре- дактор в системе IS-DOS обладает поисти- не огромными возможностями, описание ко- торых может занять достаточно много мес- та. Поэтому в этой брошюре Вы найдете только самое основное, а полное описание редактора , как уже было сказано выше Вы сможете найти в одном из следующих наших изданий. Для начала Вам достаточно знать лишь некоторые управляющие клавиши: CS+1 - Режимы Рус/Lat CS+2 - Режимы Заглавные/Строчные CS+3 - Режимы Вставка/Замена CS+4 - курсор в начало строки CS+5 - на символ влево CS+6 - на строку вниз CS+7 - на строку вверх CS+8 - на символ вправо CS+9 - в конец строки CS+0 - удалить символ слева от курсора SS+W - удалить символ справа от курсора SS+E - вставить пробел в текущую позицию SS+Q - на экран вверх SS+A - на экран вниз Кроме того доступны: CS+ENTER - табуляция SS+ENTER - выход в меню блочных операций SS+SPACE - выход в меню команд CS+SS - выход в режим МАКРО В заключение разговора о редакторе - несколько крайне необходимых команд из командного режима, вызываемого при помо- щи SS+SPACE: 9 - Режимы Текст/Псевдографика D - удалить строку U - восстановить удаленную строку E - Выход из редактора В меню выхода из редактора возможны три варианта: DRY EXIT - полное оконча- ние pедактирования и сохранение всех из- менений в файле, WET EXIT - выход с соз- данием рабочего файла с расширением wet, в котором сохраняются все основные пара- метры, как-то: позиция курсора, режимы, поля, отмеченные блоки и т. п., и LEAVE - выход с отказом от последних изменений. Опцией LEAVE злоупотреблять не рекомен- дуется, так как результат ее работы зави- сит от многих внешних причин (степени за- полненности кэш-памяти, например) и час- то трудно предсказуем. 5 - COPY Клавиша 5 в оболочке IS-DOS вызывает программу копирования - обычно это прог- рамма filecopy.com из каталога SHELL\ (до 05.95 - UTIL\). Внешний вид этой пpогpам- мы показан на pисунке: +------+ +--------------| COPY +-----------------+ | +------+ | | | |+=================+ +----------------+| || flush com | | extprint txt || |+=================+ +----------------+| | +-----+ +-----------------+ +-----+ | | | 4 | | DESTINATION | | 4 | | | +-----+ +-----------------+ +-----+ | | +-----------------------------------+ | | | A:UTIL | | | | | | | +-----------------------------------+ | | | | | | | +---------------------------------------+ В самых общих чертах, она копирует все отмеченные файлы на текущей панели в каталог, открытый на альтернативной пане- ли. При этом, если на обеих панелях от- крыто одно устройство (например "A" при работе с одним дисководом и двумя диске- тами), программа сама запрашивает какой из дисков должен быть вставлен в диско- вод. При отсутствии отмеченных файлов ко- пируется тот файл, на котором стоит кур- сор. Если вдpуг Вы обнаpужите, что забыли пеpед вызовом filecopy.com откpыть на альтеpнативной панели каталог назначения, - не беда, пpогpамма позволяет откоppек- тиpовать путь для копиpования файлов в специальном окне. Пpи копиpовании в левом окне отобpа- жается считываемый в данный момент файл, а в пpавом - последний записанный файл. Программа filecopy.com обладает це- лым рядом полезных возможностей, о кото- рых Вы сможете узнать из ее описания, а сейчас позволю себе только заметить, что программа эта достаточно "умная" - если Вы, например, попытаетесь скопировать файл на диск, на котором уже есть файл с таким именем, программа переспросит Вас надо ли это делать. 6 - RENAME Клавиша 6 вызывает программу переиме- нования файлов (обычно rename.com), кото- рая позволяет изменить имя файла, или ка- талога,на котором в данный момент стоит курсор. Программа rename.com кроме того поз- воляет редактировать и другую информацию, содержащуюся в описателе файла или ката- лога, например - дату создания, наличие защиты от записи и т. п. Включается редактирование этой инфор- мации клавишами SS+SPACE. Пpи нажатии этой клавиши на месте альтеpнативной па- нели появляется большое окно, в котоpом пеpечислены все доступные паpаметpы. Внешний вид окна pедактиpования этих паpаметpов, иначе называемых атpибутами файла показан на pисунке: +==================+ | Save | | Dec Ovr | | Name:UTIL | | Cat Contiguous | | Visible | | Unprotect | | Address: 3 | | Lenght: 1536 | | Fil_pos: 34 | | Cat_pos: 34 | | Byte_21: 45 | | Word_22: 44 | | Word_24: 0 | | Checksum: 0 | | Word_28: 0 | | Date: 1-Sep-95 | | Exit | +==================+ Более подробную информацию о работе программы rename.com и назначении атpибу- тов файла можно получить, ознакомившись с описанием этой программы, а у нас с Вами на очереди следующая системная утилита, котоpой Вы также будете пользоваться дос- таточно часто: 7 - crDIR Как Вы уже наверное догадались, crDIR - это не что иное, как создание каталога. Действительно, для того, чтобы создать каталог Вам достаточно нажать на клавишу 7 и ввести в появившемся окне имя созда- ваемого каталога (см. pисунок). Каталог, который Вы создаете будет являться подка- талогом того каталога, в котором Вы нахо- дились в момент нажатия клавиши 7. +============+ | Create | | Directory: | | WORK | +============+ Когда-то процедура создания каталога входила в ядро IS-DOS, однако, теперь для этих целей служит резидентная программа mkdir.res, которая и вызывается клавишей 7. Естественно, что если Вы в процессе работы сняли эту программу из памяти (для экономии места в ОЗУ, например), вызы- вать будет нечего, и система выдаст ошиб- ку: Error 37 - отсутствие резидентной программы. В этом случае верните mkdir.res на место командой Q:RES\set Q:RES\mkdir.res или воспользуйтесь анало- гичной программой mkdir.com из каталога SHELL\. 8 - DELETE Клавиша 8 - удаление файлов. Файлы удаляются при помощи утилиты delete.com. Как и filecopy.com, она работает с отме- ченными файлами, а при отсутствии отмет- ки - удаляет текущий файл. Первая строка меню - самая главная. Если Вы случайно нажали клавишу 8 - сме- ло выбирайте ее и Ваши файлы останутся целы. Аналогичного эффекта можно до- биться и нажимая клавиши SS+A. В послед- ней строке окна после слова Select выво- дится число файлов, подлежащих удалению, а в нижнем окне - имя первого из них. Если Вы окончательно решили уничтожить все выбранные файлы - используйте опцию Delete, а если еще сомневаетесь - ис- пользуйте Ask Delete, и программа перед удалением каждого файла выведет дополни- тельный запрос "Delete Y/N" и удалит его только в случае Вашего положительного от- вета на поставленный вопрос. Файлы, защищенные от записи програм- ма delete.com не удаляет (на то они и за- щищенные),а выдает сообщение "Protected file". Каталоги также можно уничтожать, но при условии, что в них нет ни одного файла. В противном случае Вы рискуете по- лучить сообщение "Catalog not empty". И в заключение напомню, что програм- ма delete.com, как ей и положено, не сти- рает с диска файл, а просто помечает его как удаленный. Поэтому большинство фай- лов после удаления можно восстановить, например утилитой qu.com, но только при условии, что на диск после удаления фай- лов ни разу не производилась запись. Внешний вид пpогpаммы delete.com изобpажен на pисунке: +------------+ | Quit | | Ask delete | | Delete | | Select: 7 | +------------+ 9 - MENU Клавиша 9, как и клавиша 7, вызывает резидентную программу (в данном случае - gmen.res), которая должна быть установле- на в системе. Если Вы получили вместо нее "Error 37" - установите резидентную прог- рамму командой Q:RES\set Q:RES\gmen.res, или воспользуйтесь com'овским аналогом. Программа gmen предназначена для опера- тивного назначения устройств в системе IS-DOS. Всего в системе IS-DOS можно ис- пользовать до 6 логических устройств; ими могут быть дисководы, виртуальный RAM-диск, винчестер и т. п. При этом все они, независимо от аппаратной реализации, воспринимаются системой одинаково, а ней- трализация физических различий между ни- ми остаются на совести драйверов. Некото- рые из используемых Вами устройств одна- ко можно наделить специальными полномо- чиями. Всего в IS-DOS возможны три спе- циальных устройства: SYSTEM - системное, QUICK - быстрое и CURRENT - текущее. При указании путей к файлам в командной стро- ке они обозначаются, соответственно, бук- вами S, Q, и T. Таким образом достигает- ся некоторая универсальность в указании путей к файлам. Поясню на примере. Допустим, у Вас два дисковода, а у Вашего приятеля - три (поверьте, такое бывает). Если он напи- шет в командном файле, например, так: A:UTIL\copy B:SHELL\*.com C:SHELL то вам это не подойдет ни в коем случае - ведь у Вас нет дисковода C. Если же Ваш знакомый назначит дисковод A как быстрый, B - как системный, а C - как текущий, то можно будет записать вышеприведенную ко- манду так: Q:UTIL\copy S:SHELL\*.com T:SHELL что позволит и Вам пользоваться этим ко- мандным файлом, достаточно только будет назначить один дисковод, как быстрый и системный одновременно, а второй диско- вод - как текущий. Кроме того эти три устройства имеют особое предназначение: При запуске любо- го файла, если не указан путь, система ищет его сначала на быстром диске, а ес- ли не находит, то на системном. Это поз- воляет, например, скопировать самые час- то требуемые файлы на RAM-диск, отличаю- щийся, как известно, высокой скоростью доступа, объявив его "быстрым", а все редко используемые утилиты оставить на дискете, объявив дисковод "системным". Это особенно актуально для Spectrum 128 с электронным диском всего 80К. Многие программы в системе IS-DOS, сами загру- жаясь с быстрого или системного дисков, рабочие файлы создают на текущем, что позволяет в частности хранить рабочие файлы отдельно от программ на других дис- кетах. Итак, при помощи клавиши 9 Вы можете объявить системным, быстрым или текущим любое из имеющихся у Вас устройств, при- чем одно устройство вполне может совме- щать две или все три функции, это уж как Вам будет угодно. Внешний вид утилиты gmen показан на pисунке: +---------+ |System B| |Quick A| |Current A| |Exit | +---------+ И наконец, последнее: 0 - MASK Клавиша 0 вызывает утилиту mask.com, в обязанности которой входит следить за форматом вывода информации в файловых па- нелях (см. рисунок). +------------+ |Panel state:| |*.* | |LENGHT | |Pattern | +------------+ С помощью этой утилиты можно задать маску для любой из файловых панелей, что позволяет отображать только файлы, соот- ветствующие определенному образцу, кроме того, она позволяет выбрать информацию, отображаемую в строках файловой панели справа от расширения имени файла. По умолчанию всегда отображается длина фай- ла в блоках, напоминаю, что размер блока в IS-DOS равен 256 байт. Если Вы нажмете ENTER на строке LENGTH, ситуация изменит- ся и в правой части панели будут отобра- жаться т. н. атрибуты файла - символ "p" если файл защищен от записи и символ "c" если файл непрерывный. В меню при этом на месте надписи LENGTH появится надпись STATUS. Повторное нажатие ENTER восстано- вит режим вывода длины файла в блоках. В верхней строке меню можно задать образец-маску, согласно которому оболоч- ка будет выводить на экран содержимое ка- талогов. Маска задается в виде имени фай- ла и расширения, причем можно применять т. н. неявные имена. Для этого сущес- твуют специальные обозначения: * - любое количество произвольных симво- лов в имени и/или расширении ? - один произвольный символ в имени и/и- ли расширении При этом возможны любые сочетания, например: *.* - показать все файлы (по умолчанию) *.com - показать все com-файлы a*.txt - все текстовые файлы, имена кото- рых начинаются с "а" ??ed*.a?m - показать файлы, в именах ко- торых второй и третий симво- лы "ed", а в расширении пер- вый - "a", а третий - "m" copy.com - показать только файл с именем copy и расширением com copy*.* - показать все файлы, имена кото- рых начинаются с copy Поэкспериментируйте самостоятельно с этой опцией, и Вы сразу все поймете. Нижняя строка меню позволяет выбрать режим работы с маской по отношению к ка- талогам. Возможны два варианта: показы- вать все подкаталоги, независимо от мас- ки, а маску отнести только к файлам (ре- жим Patern+CAT), или показывать только подкаталоги, подходящие по маске со все- ми файлами, подходящими по этой же маске (Pattern), что позволяет организовать поиск и вывод по маске подкаталогов. Однако, следует напомнить, что имена подкаталогов состоят из заглавных букв, а имена файлов - обычно из строчных, поэто- му в режиме Pattern с маской для подката- лога Вы, скорее всего, увидите одни только подкаталоги без файлов. Так что, или поиск каталогов, или поиск файлов, - одно из двух. Итак, теперь мы с Вами кpатко ознако- мились с основными системными утилитами, названия котоpых вынесены в веpхнюю стpо- ку основного экpана файловой оболочки IS-DOS. Однако, это не значит, что сеpвисные возможности системы огpаничи- ваются этими десятью командами. Количес- тво системных утилит, и внешних команд в IS-DOS чpезвычайно велико, и многие из них очень важны для пользователя. К сожалению, pамки этой статьи не позволяют pассмотpеть их все, однако, в последующих статьях в нашем журнале мы обязательно веpнемся к этому вопpосу и подpобно pассмотpим важнейшие команды, котоpые пpидают сpеде IS-DOS ту ком- фоpтность и удобство, за котоpые Вы ее так любите. Продолжение следует ... В следующем номере нашего журнала пойдет речь об основных упpавляющих кла- вишах оболочки IS-DOS. _________________________________________ Из журнала ZX Format #3, Санкт-Петербург, 03.1996 Рубрика "IS-DOS - начинающим" No 3 Елисеев В. А. "IS-DOS - первое знакомство" (журнальный вариант) (C) PENCRAFT 1995 (C) ISKRASOFT 1995 Продолжение, начало - в No 1, 2 _________________________________________ В предыдущем номере журнала уже шла речь об основных управляющих клавишах файловой оболочки IS-DOS. Однако, система упpавляющих клавиш IS-DOS, как Вы уже на- веpное догадались, этим не огpаничивает- ся. Концепции упpавляющих клавиш системы IS-DOS и посвящена следующая часть нашей статьи. Управляющие клавиши оболочки В системе IS-DOS при работе с файло- вой оболочкой принято различать два вида управляющих клавиш - клавиши, зарезерви- рованные для оболочки и клавиши, опреде- ляемые пользователем. К первому типу от- носятся клавиши: Q и CS+7 - движение вверх A и CS+6 - движение вниз O и CS+5 - переход на левую панель P и CS+8 - переход на правую панель ENTER - вход в подкаталог, запуск прог- рамм по extent.txt Cs+ENTER - выход в корневой каталог теку- щей панели CS+O - то же для левой панели CS+P - то же для правой панели CS+Q, SS+Q - переход в начало каталога CS+A - переход в конец каталога SS+CS - пеpеход на альтернативную с дуб- лиpованием CS+1 - выбор устройства на левой панели CS+2 - выбор устройства на правой панели SPACE - отметка файла Кроме того, для системных утилит за- резервированы и цифровые клавиши от 0 до 9, однако только три из них не подлежат переопределению, это: 3 VIEW - просмотр файлов 7 crDIR - создание подкаталога 9 MENU - меню блочных устройств Клавиши 7 и 9 всегда жестко привяза- ны к установленным в системе резидентным программам mkdir.res и gmen.res соответ- ственно, при этом сами программы можно модифицировать, но имена их должны оста- ваться стандартными. Клавиша 3 всегда бу- дет вызывать программы просмотра файлов согласно содержимому текстового файла extview.txt. Назначение остальных цифро- вых клавиш можно изменять по Вашему жела- нию, однако рекомендую придерживаться расположения, принятого в верхней строке экрана. Из оставшихся клавиш зарезервирована только клавиша h. Она предназначена для запуска процедур печати и действует ана- логично клавише 3. Список программ печа- ти применяемых для файлов с различными расширениями содержится в файле extprint.txt, который помещается также в каталоге SHELL. Принцип его построения такой же, как и у файла extview.txt. При- мерное содержание файла extprint.txt при- водится в табл. 4 Таблица 4. Пример файла extprint.txt Содеpжимое extprint.txt Реакция на клавишу h scr:Q:PRINT\PL\ps печать экpанного файла as :Q:PRINT\print печать текста bat:Q:PRINT\print печать текста doc:Q:PRINT\print печать текста txt:Q:PRINT\print печать текста hlp:Q:PRINT\print печать текста wet:Q:PRINT\print печать текста Все клавиши, кроме вышеперечисленных можно запрограммировать на вызов часто применяемых системных утилит и приклад- ных программ. Какую из программ закре- пить за той или иной клавишей оболоч- ки - решать Вам, однако за годы существо- вания IS-DOS сложился своего рода неофи- циальный стандарт, окончательно сформиро- вавшийся в версии 3.0. Этот стандарт наи- более универсален и потому я рекомендую придерживаться его в своей работе во из- бежание разночтений и т. п. неудобств. Как Вы уже наверное догадались, соот- ветствие клавиш вызываемым программам оп- ределяется содержимым текстового файла, который называется extkey.txt. Наличие этого файла является обязательным для системы, так как без него не будет рабо- тать большинство клавиш оболочки. Файл extkey.txt находится в каталоге SHELL\ и составляется следующим образом. Первый символ каждой строки - символ, получае- мый при нажатии определяемой клавиши. При использовании клавиш, при помощи которых ввод символа в редакторе затруднен (неко- торые комбинации с SS), можно использо- вать десятичный код клавиши, записав его после символа "'" (апостроф). Десятичный код клавиши можно определить при помощи специальной утилиты ktest.com, которую Вы сможете найти в базовом комплекте IS-DOS 3.0 и выше в каталоге Q:RES\KEY\. Рекомендуемое содержание файла extkey.txt [Все комментарии, заключенные в квадрат- ные скобки не являются составной частью файла extkey.txt и приводятся исключи- тельно в учебных целях.] [Системные утилиты - цифровые клавиши согласно веpхней стpоке экpана] 1 Q:SHELL\help 2 Q:SHELL\menu 4 Q:EDIT\editor 5 Q:SHELL\filecopy 6 Q:SHELL\rename 8 Q:SHELL\delete 0 Q:SHELL\mask [3-зарезервирована под просмотр файлов] [7-зарезервировано под mkdir.res] [9-зарезервировано под gmen.res] [SS+цифровые клавиши - рекомендуется для дополнительных функций, и функций, альтернативных системным утилитам] @ Q:SHELL\menu Q:SHELL\menu.mnu [SS+2 Вы- зов основного меню из любого каталога] & Q:UTIL\renam [SS+6 Быстрое переименова- ние файлов] '39 Q:SHELL\mkdir [SS+7 Вызов mkdir.com] ( Q:UTIL\qu [SS+8 Восстановление стертых файлов] ) Q:SHELL\gmen [SS+9 Вызов gmen.com] [SS+1, SS+3, SS+4, SS+5, SS+0 - пока сво- бодны] [Буквенные клавиши, кроме зарезервирован- ных для системы и их комбинации с CS и SS. Предпочтительнее использовать комби- нации основных клавиш с CS и SS для обра- ботки задач, близких по значению к дей- ствию основной клавиши] [клавиши a, и A - зарезервированы для системы] b Q:UTIL\sort /n [Упоpядочивание файлов по имени] B Q:UTIL\sort /e [Упоpядочивание файлов по pасшиpению] * Q:UTIL\sort /d [Упоpядочивание файлов по дате создания] c Q:UTIL\cd+ [Сравнение двух каталогов] C Q:UTIL\calcul [Программа-калькулятор] ? Q:UTIL\copytune [Настройка параметров копировщиков] d Q:UTIL\date [Установка текущей даты] D Q:SERVICE\demon [Просмотр файлов в 16-ричном формате] \ Q:SERVICE\dump [Программа для вывода 16-ричного дампа файлов] e Q:UTIL\eliminat [Удаление из памяти pе- зидентных пpогpамм и дpайвеpов в интеpак- тивном pежиме] E Q:UTIL\eliminat /r [Удаление из памяти всех резидентных программ] '20 [свободна (SS+e)] f Q:UTIL\from_trd [Чтение файлов с дис- ков в системе TR-DOS] F Q:MSDOS\from_msd [Чтение файлов с дис- ков в системе MS-DOS] { Q:UTIL\find [Поиск файла] g Q:UTIL\tree [Показать дерево каталогов диска] G [свободна] } [свободна] [h - зарезервирована для процедур печати] H [свободна] ^ [SS+h свободна] i Q:SERVICE\image [Копиpование обpаза диска из файла] I Q:SERVICE\sv_image [Копирование целого диска в файл] ' [SS+i свободна] j [свободна] J [свободна] - [SS+j свободна] k Q:SHELL\coca [Копирование каталога со всеми подкаталогами] K [свободна] + [SS+k свободна] l Q:UTIL\free [Вывод количества свобод- ных блоков на диске] L Q:UTIL\SPEED\freenew [Распечатка карты занятости блоков диска] = Q:UTIL\SPEED\freen Q:UTIL\SPEED\freenew [Зарезервировано под расширенную програм- му вывода карты занятости блоков диска (в базовый комплект не входит)] m @mon [Вызов pезидентного монитоpа ко- мандной стpоки] M Q:UTIL\mon [Монитор-интерпретатор ко- мандной строки] . Q:UTIL\mark [Программа поиска и отмет- ки файлов по маске] n Q:SHELL\pan /#4F [Поиск на другом ус- тройстве каталога, аналогичного текущему] N Q:SHELL\move [Перенос файлов из катало- га в каталог] , Q:UTIL\SPEED\speed [Зарезервировано под программу оптимизации дискового простран- ства (в базовый комплект не входит)] [o, O, p, P, q, Q и SS+q - клавиши заре- зервированы для системы] [SS+O и SS+P - свободны] r Q:SHELL\remote [Удаление каталога вмес- те со всем содержимым] R Q:UTIL\fdir [Поиск и считывание файлов из испорченных каталогов] << [SS+r свободна] s [свободна] S Q:UTIL\show [Пpогpамма вывода систем- ной инфоpмации на дисплей] | [свободна] t Q:UTIL\to_trdos [Запись файлов на дис- ки в системе TR-DOS T Q:MSDOS\to_msdos [Запись файлов на дис- ки в системе MS-DOS] > [свободна] u Q:UTIL\unicolor [Утилита для настройки цветов в программах] [U и SS+u свободны] v S:FONT\f_e_unit [Зарезервирована под редактор шрифтов (в базовый комплект не входит)] V S:LOTUS\s_f_tran [Заpезеpвиpована под конвеpтоp экpанных файлов пакета LOTUS (в базовый комплект не входит)] / [свободна] w Q:UTIL\abba [Копировщики для дублиpова- ния дисков с A на B] W Q:UTIL\copy_all [То же на одном диско- воде] '19 Q:UTIL\acca [То же с A на C] [x, X, SS+x, y, Y, SS+y, SS+z, свободны] z Q:UTIL\arzt [Программа коррекции бито- вой карты диска, рекомендуется всегда за- пускать после remote.com] Z Q:UTIL\exhumer [Программа для считыва- ния информации с испорченного диска] [Некоторые специальные комбинации клавиш, доступные для определения пользователем] '4 [свободна (CS+3)] '5 [свободна (CS+4)] '12 [свободна (CS+0)] '15 [свободна (CS+9)] '17 [свободна (SS+ENTER)] '18 [свободна (SS+SPACE)] '22 [свободна (CS+SPACE)] '16 [также свободна (SS+A), но поскольку в большинстве программ она используется как клавиша отказа, во избежание путани- цы использовать не рекомендуется.] Продолжение следует ... ________________ В следующем номере мы продолжим публи- кацию журнального варианта книги "IS-DOS - первое знакомство", речь пойдет о рабо- те с командной строкой, командными файла- ми и USER-меню. _________________________________________ Из журнала ZX Format #4, Санкт-Петербург, 15.06.1996 Рубрика "IS-DOS - начинающим" No 4 Елисеев В. А. "IS-DOS - первое знакомство" (журнальный вариант) (C) PENCRAFT 1995 (C) ISKRASOFT 1995 Продолжение, начало - в No 1, 2, 3 _________________________________________ Интерпретатор командной строки В предыдущей части мы с Вами изучили один из важнейших способов вызова наибо- лее часто используемых утилит и команд IS-DOS - вызов по специальным клавишам. Однако,далеко не всегда есть смысл опре- делять клавишу для той или иной команды, ведь некоторые команды бывают нужны до- вольно редко, а под все утилиты со всеми возможными комбинациями параметров кла- виш просто не хватит. Поэтому для органи- зации оперативного обращения к системе в ней предусмотрен т. н. интерпретатор ко- мандной строки, в обязанности которого входит считывание и передача системе ко- манд, вводимых пользователем в спе- циальную область памяти, называемую "бу- фером командной строки". Ввод команд в этот буфер осуществляется при помощи спе- циальной программы - монитора командной строки, которая называется mon.com и за- пускается обычно клавишей CS+m (в IS-DOS 2.0 и ниже - m). Существует также рези- дентный вариант монитора - mon.res, вызы- ваемый клавишей m и обладающий рядом до- полнительных возможностей, о которых пой- дет речь чуть позже. Монитор командной строки открывает специальную область экрана - окно монито- ра, занимающее три верхних строки. В ле- вом верхнем углу этой области находится мигающий курсор, такой же, как и в редак- торе текстов. Вообще, монитор командной строки представляет собой текстовый ре- дактор в миниатюре, только созданный текст не сохраняется в виде файла, а пе- редается в буфер командной строки, где и обрабатывается интерпретатором. Управляющие клавиши монитора: CS+5 - курсор влево CS+6 - курсор вниз CS+7 - курсор вверх CS+8 - курсор вправо CS+0 - удалить символ слева SS+W - удалить символ под курсором SS+E - вставить пробел CS+1 - режимы Рус/Lat CS+2 - режимы Заглавные/Строчные CS+3 - режимы Вставка/Замена ENTER - завершение ввода и выполнение строки CS+9, SS+ENTER, SS+CS, SS+A, SS+SPACE - выход из монитора без выполнения строки, содержимое буфера не сохраняется Как Вы уже поняли, Нажатие клавиши ENTER приводит к завершению ввода коман- ды и запускает интерпретатор командной строки. По окончании работы команды, как правило, Вы возвращаетесь обратно в мони- тор. При этом, если команда выполнена ус- пешно, окно редактирования очищается и курсор устанавливается в левый верхний угол. Если в командной строке допущена синтаксическая ошибка, например непра- вильно заданы параметры, командная стро- ка сохраняется на экране, а курсор уста- навливается в конец строки, после чего Вы получаете возможность исправить ошибку и вновь попытаться выполнить команду, на- жав ENTER, если у Вас и после этого ниче- го не получится - нажмите одну из клавиш выхода и внимательно прочтите help-файл к необходимой Вам программе. Если при выполнении Вашей команды произойдет системная ошибка - интерпрета- тор сообщит об этом в специальном окне в нижней половине экрана, (расшифровку но- меров системных ошибок см. в файле S:HELP\error.txt), после чего, нажав лю- бую клавишу, Вы сможете выйти в оболочку IS-DOS и поразмышлять о причинах такого печального результата. В случае, если система не может найти на диске нужный Вам файл, в окне ошибок появится надпись "No filename". Если Вы вдруг получите та- кое сообщение - помните, что оно не всег- да означает, что данного файла нет на диске вообще, просто укажите полный путь к нему, т. е. в каком подкаталоге его следует искать. При работе в мониторе командной стро- ки, в отличие от текстового редактора ос- новные режимы (Рус/Lat, Заглавные/Строч- ные, Вставка/Замена) не индицируются на экране,что создает некоторые трудности, однако проблема эта легко разрешается при помощи специальной резидентной программы indi.res. Установите и запустите ее ко- мандами Q:RES\set Q:RES\indi.res и @indi, и Вы увидите в правом нижнем углу окна редактирования стандартную индикацию ре- жимов: lat - латинские символы, рус - русские, ins - режим вставки, ovr - ре- жим замены, индикация режимов заглавными буквами сигнализирует о включении режима заглавных букв. Резидентный монитор командной строки mon.res, о котором уже упоминалось выше, выполняет те же функции, что и mon.com, однако обладает рядом дополнительных воз- можностей, значительно облегчающих рабо- ту с командной строкой. Внутри резиден- тного монитора имеется специальный буфер, размером 256 байт, в котором запоминают- ся команды, введенные нажатием ENTER. Это избавляет Вас от необходимости заново на- бирать текст команды, которую необходимо вызвать несколько раз. Кроме того, Вы мо- жете отредактировать текст команды даже в случае системной ошибки, или ошибки "No filename". В случае выхода по клавишам отказа, команда не запоминается и содер- жимое буфера остается неизменным. Коман- ды в буфере резидентного монитора распо- лагаются в порядке их ввода, образуя по- добие кольцевого стека. Для перемещения по нему в поисках нужной команды Вы може- те использовать следующие клавиши: SS+SPACE - перейти к предыдущей команде SS+CS, CS+9 - перейти к следующей команде Таким образом, для вызова последней введенной команды необходимо нажать SS+SPACE, а для вывода самой ранней из сохранившихся в буфере - SS+CS. По мере заполнения буфера, более старые команды стираются, содержимое стека смещается на одну строку и новая команда записывается на его вершину. Максимальное количество запоминаемых команд зависит от их длины и обычно составляет около 20. Резидентный монитор имеет еще одну полезную особенность - при нажатии клави- ши SS+ENTER в текущую позицию курсора пе- реносится имя файла или каталога, на ко- тором перед вызовом монитора находился курсор файловой панели. Выход из монито- ра с отказом от выполнения строки, ввиду занятости остальных клавиш осуществляет- ся только при помощи SS+A. Программа ин- дикации режимов indi.res работает с рези- дентным монитором так же, как и с com'ов- ским. Позволю себе напомнить, что при рабо- те с резидентным монитором категорически запрещается удалять резиденты и драйверы, установленные раньше, чем сам mon.res, это обязательно вызовет перемещение в па- мяти самого монитора и приведет к гаран- тированному сбою в работе. В таких слу- чаях пользуйтесь программой mon.com. Теперь поговорим более подробно о ко- мандах в системе IS-DOS. Команды бывают внутренние и внешние. Внутренними назы- ваются команды, расположенные в теле сис- темы. Таких команд всего пять: L_S /n - назначить устройство n системным, L_Q /n - назначить устройство n быстрым, L_T /n - назначить устройство n текущим, CAT s - сделать текущим подкаталог, опи- санный в строке s, @m - запустить резидентную программу m где n - символьное обозначение устрой- ства (как явные - A, B, C, D, E, F, так и условные - S, Q, T), s - полный путь к необходимому подкатало- гу (например: Q:RES\TRANS\HELP\), m - имя, под которым установлена резиден- тная программа. Примеры внутренних команд IS-DOS: L_S /A - назначить устройство A системным L_Q /S - назначить быстрым то же устрой- ство, которое назначено как системное CAT S:UTIL\HELP - открыть (сделать теку- щим) каталог S:UTIL\HELP @indi - запустить резидентную программу, установленную под именем indi Разумеется, перед вызовом команды @ необходимо, чтобы резидентная программа была установлена утилитой set.com. Внешними командами в IS-DOS называют- ся команды, подгружаемые с диска на вре- мя их исполнения. По сути любой com'ов- ский файл может считаться внешней коман- дой. Для того, чтобы вызвать любую внеш- нюю команду необходимо в командной стро- ке набрать имя этой команды со всеми необходимыми параметрами, не забыв ука- зать полный путь к ней. Если команда вы- зывается из текущего каталога, путь ука- зывать не обязательно. Примеры вызова внешних команд: Q:UTIL\diskname [вызов команды изменения имени диска] Q:SHELL\exebat T:SERVICE\BLK\ram128.bat [вызов интерпретатора bat-файлов и испол- нение файла ram128.bat] Q:RES\set Q:RES\mon.res /e [удаление ре- зидентной программы mon.res] set mon.res [то же, если на текущей пане- ли открыт каталог RES\] Q:UTIL\date [вызов программы установки текущей даты] date [то же, если на текущей панели от- кpыт каталог UTIL\] Командные bat-файлы Работать в мониторе командной строки, как уже говорилось выше, хорошо, если ко- манду нужно вызвать один - два раза. Если же Вам необходимо часто использовать ка- кую-либо последовательность команд, осо- бенно если она достаточно велика, то луч- ше создать т. н. командный файл, который позволит запускать эти команды неограни- ченное количество раз. Командные файлы в системе IS-DOS представляют собой специальные текстовые файлы с расширением bat. В этих файлах содержатся тексты команд, которые необхо- димо выполнить. Формат задания команд в файлах такой же, как и в мониторе коман- дной строки - по сути каждая строка bat-файла - это обычная командная строка. Интерпретацией bat-файлов в системе IS-DOS занимается специальная программа, которая называется exebat.com и распола- гается в каталоге SHELL. Она считывает из файла очередную строку и помещает ее в специально отведенную область памяти, где ей уже занимается интерпретатор коман- дной строки системы. Командные файлы могут быть вложенны- ми, т. е. один командный файл может вызы- вать другой командный файл. Максимальная глубина вложения составляет 120 файлов. По окончании отработки каждого из вложен- ных файлов управление передается вызвав- шему его файлу. Работу вложенных командных bat-фай- лов пpоще всего пpедставить на конкpет- ном пpимеpе, изобразив гpафически после- довательность исполнения команд. Например, если у нас в каталоге SHELL есть четыре вот таких bat-файла: [main.bat] Q:UTIL\eliminat /r Q:SHELL\exebat Q:SHELL\checksum.bat Q:SHELL\exebat Q:SHELL\restres.bat [checksum.bat] Q:RES\set Q:RES\univ.res Q:RES\set Q:RES\calc.res @univ calc *.* Q:RES\set Q:RES\univ.res /e Q:RES\set Q:RES\calc.res /e [restres.bat] CAT Q:RES set gmen.res set mkdir.res set date+3.res @date+3 Q:SHELL\exebat Q:SHELL\setmon.bat [setmon.bat] set mon.res set indi.res @indi то последовательность команд при их вы- полнении будет следующей: [начало работы main.bat] Q:UTIL\eliminat /r [начало работы checksum.bat] Q:RES\set Q:RES\univ.res Q:RES\set Q:RES\calc.res @univ calc *.* Q:RES\set Q:RES\univ.res /e Q:RES\set Q:RES\calc.res /e [конец работы checksum.bat] [начало работы restres.bat] CAT Q:RES set gmen.res set mkdir.res set date+3.res @date+3 [начало работы setmon.bat] set mon.res set indi.res @indi [конец работы setmon.bat] [конец работы restres.bat] [конец работы main.bat] В системе IS-DOS существует еще одна программа для работы с bat-файлами - bat.res. Это резидентная программа, кото- рую удобно использовать при работе с большим числом bat-файлов, чтобы не вызы- вать каждый раз exebat.com. Программа bat-res устанавливается в систему при по- мощи команды Q:RES\set Q:RES\bat.res, после чего для вызова bat-файла достаточ- но ввести команду @bat, или даже просто @, указав имя вызываемого файла. @HEAD_EXAMPL = Например: @ main.bat при этом обязательно имя файла должно от- деляться от символа "@" или команды "@bat" пробелом, иначе система воспримет его как имя резидентной программы. Также обязательно указывать расширение bat. Программа bat.res имеет три дополни- тельных команды, начинающиеся с символа "*": *L+ - выполняемые командные строки выво- дятся на дисплей в верхней части экрана. *L- - выполняемые строки не выводятся на дисплей. *E - специальная команда, которая служит для выхода из цепочки вложенных bat-фай- лов. Она ставится в начале командной строки, после исполнения которой происхо- дит выход в оболочку с восстановлением программного стека. Команды можно набирать как прописны- ми, так и строчными буквами. Используя программу bat-res, не забы- вайте о том, что во время ее работы опас- но перемещать резидентные программы, уда- лять резидентные программы и драйверы, так как это может вызвать сброс системы из-за перемещения самой программы bat.res. Если командами eliminat или set удалить резидентную программу, установ- ленную раньше, чем bat.res, то послед- ствия могут быть непредсказуемыми. В та- ких случаях лучше все-таки воспользо- ваться услугами exebat.com. Составление USER-меню. Система USER-меню IS-DOS позволяет заранее запрограммировать вызов каких-ли- бо часто используемых Вами утилит или программ, оформив для этого специальное окно со списком этих программ, курсором для выбора и краткими комментариями. В этой главе речь пойдет о том, как пра- вильно самому написать USER-меню и ис- пользовать его для своих целей. USER-меню представляет собой спе- циальное определяемое пользователем окно, состоящее из произвольного числа строк. Строки в USER-меню бывают двух видов - текстовые строки, содержащие заголовки меню, разделительные линии и другую по- лезную информацию и рабочие строки, по которым перемещается курсор меню - гори- зонтальная линия, отмечающая выбранную в данный момент строку. Курсор меню перемещается при помощи курсорных клавиш вверх и вниз, нажатие ENTER на одной из рабочих строк вызывает выполнение командной строки, закреплен- ной за этой рабочей строкой меню. Выход из USER-меню может быть осуществлен в лю- бой момент нажатием стандартной комбина- ции клавиш SS+A. Конфигурация, внешний вид и список вызываемых команд для USER-меню содержит- ся в текстовом файле в специальном форма- те, который будет описан чуть позже. Интерпретацией этого файла занимается программа menu.com, находящаяся обычно в каталоге SHELL (до 06.95 - UTIL). Программа menu.com при вызове из bat-файла или командной строки без пара- метров ищет в текущем каталоге файл с именем menu.mnu (до 06.95 - menu.txt), содержащий описание меню, а не найдя его в текущем каталоге, ищет файл с таким же именем в каталоге SHELL. Это позволяет создавать практически в любом каталоге свои локальные USER-меню, а общее, уни- версальное меню, вызываемое при отсут- ствии локального, держать в каталоге SHELL. Кроме того при вызове из bat-файла, или командной строки программе menu.com может быть задано конкретное имя файла, содержащего описание необходимого меню. Это позволяет, в частности, закрепить вы- зов конкретного USER-меню за какой-либо клавишей в файле extkey.txt, или органи- зовать вызов одного меню из другого. Вызов команды menu.com с параметром позволяет также держать в одном каталоге более одного файла меню. По неофициально- му стандарту, все файлы с описаниями USER-меню имеют расширение mnu. На базо- вой дискете IS-DOS все файлы USER-меню, за исключением локальных, собраны в спе- циальный каталог SHELL\MNU\. Содержание в одном каталоге файлов вложенных меню поз- воляет ускорить переход из одного меню в другое, так как при этом не надо будет переходить из каталога в каталог. Теперь рассмотрим более подробно структуру текстового файла, содержащего описание USER-меню. Как и любой другой текстовый файл, он должен состоять из текстовых строк, содержащих необходимую информацию. Первый символ каждой строки считается управляющим и информирует прог- рамму menu.com о том, какая именно инфор- мация содержится в данной строке. Управ- ляющие символы всегда набираются в латин- ском регистре, если же вместо латинского "P" вы наберете русское "Р", следующая за ним строка будет проигнорирована. Управляющие символы: K - строка, содержащая служебную информа- цию и параметры окна меню (описание фор- мата см. далее) P - строка для внутренних команд DOS, вы- зываемых при входе в меню T - командная строка, выполняемая при на- жатии клавиши SS+A (отказ) a - текстовые строки меню, не обрабаты- ваемые курсором A - рабочие строки меню, обрабатываемые курсором C - командные строки, содержащие команды, выполняемые при нажатии ENTER на соответ- ствующей рабочей строке меню c - командные строки, предназначенные для вызова больших программ с адресом загруз- ки ниже 25000 Z - строки для внутренних команд DOS, вы- зываемых при нажатии ENTER перед выполне- нием соответствующей командной строки H - строки текстов-подсказок, которые мо- гут выводиться на экран при установке курсора на соответствующую рабочую строку Если в командной строке после управ- ляющего символа C, c или T стоит символ "*", то имя файла, на котором находился панельный курсор в момент вызова USER-ме- ню, передается в качестве параметра вызы- ваемой команде. Поясним на примере: Допустим, что в момент вызова меню панельный курсор указывает на имя файла prise.txt, тогда командная строка вида С*Q:SHELL\delete вызовет выполнение команды Q:SHELL\delete prise.txt Строки K, P и T определяют параметры и команды для всего меню в целом, поэто- му в каждом меню не может быть более од- ной строки K, строки P и строки T. Стро- ки K, P, T, H и Z не являются обяза- тельными, при отсутствии строки K уста- навливаются параметры по умолчанию (см. далее). Положение строк K, P и T в тексте значения не имеет, в каком бы месте фай- ла Вы их ни поместили - система все рав- но их найдет. Строки A и a располагаются в том порядке, в котором они должны быть выведены в окне меню. Связанные с ними строки Z, H, C и c должны располагаться после соответствующей им строки A. Такая особенность позволяет использо- вать одну строку команд или подсказок для нескольких строк меню, но требует более внимательного отношения к тексту. Поясним на примере: Допустим, мы имеем файл menu.mnu сле- дующего содержания: a Работа с MS-DOS a A ВЫХОД В SHELL AПИСАТЬ НА MS-DOS ДИСКИ HЗапись отмеченных файлов CQ:MSDOS\to_msdos.com AЧИТАТЬ ИЗ MS-DOS ДИСКА HЧтение дисков MS-DOS CQ:MSDOS\from_msd.com Этот файл содержит две серьезных ошибки: 1. При установке курсора на строку "ВЫХОД В SHELL" система выведет подсказку, отно- сящуюся к следующей строке, так как соот- ветствующая этой строке подсказка отсут- ствует. 2. При нажатии ENTER на той же строке бу- дет исполнена командная строка, относя- щаяся к следующей строке меню, так как соответствующая командная строка отсут- ствует. Эту проблему можно решить как мини- мум двумя способами: Вариант 1 - задать для первой строки A пустые строки C и H, тогда текст меню бу- дет иметь вид: a Работа с MS-DOS a A ВЫХОД В SHELL H C AПИСАТЬ НА MS-DOS ДИСКИ HЗапись отмеченных файлов CQ:MSDOS\to_msdos.com AЧИТАТЬ ИЗ MS-DOS ДИСКА HЧтение дисков MS-DOS CQ:MSDOS\from_msd.com Пустые строки H, Z, C и c можно опус- тить, если в Вашем меню нет ни одной та- кой строки. Вариант 2 - перенести строку "ВЫХОД В SHELL" в конец файла и дописать строку подсказки для нее: a Работа с MS-DOS a AПИСАТЬ НА MS-DOS ДИСКИ HЗапись отмеченных файлов CQ:MSDOS\to_msdos.com AЧИТАТЬ ИЗ MS-DOS ДИСКА HЧтение дисков MS-DOS CQ:MSDOS\from_msd.com A ВЫХОД В SHELL H Выход в оболочку Поскольку строка "ВЫХОД В SHELL" ока- залась в конце текста, при ее выборе ни- чего не происходит и отработка меню за- вершается с выходом в оболочку. Формат строки ключей K: Строка K в описании USER-меню имеет вид: K/<символ> <число> / <символ> <число> ... Числа можно записывать в десятичном формате (по умолчанию), например, 255; в 16-ричном с префиксом #, например, #1F; в октальном с префиксом o, например, o12; а также в двоичном с префиксом %, например, %01100011. Разделять ключи пробелами не требует- ся, так как ключи и так отделены друг от друга символом "/". Строка K интерпрети- руется до тех пор, пока не будет встре- чен символ перевода строки, поэтому раз- бивать ее на несколько строк нельзя. Так- же в одном тексте меню не должно быть бо- лее одной строки K, в противном случае интерпретируется только первая из них. Ключи USER-меню: A - байт конфигурации меню. бит 1 - вид окна меню, "0" - без тени, "1" - с тенью. бит 2 - реакция на ENTER, "0" - интерпре- тируются строки c, C и Z, после отработ- ки осуществляется выход в оболочку, "1" - выполняются только строки внутренних ко- манд Z, после чего происходит возврат в меню. бит 3 - рамка окна, "0" - одинарная, "1" - двойная. бит 4 - отработка строки P при входе в меню, "0" - выполнить, "1" - игнорировать. биты 5 - 8 - не используются и могут со- держать любые значения. Все эти режимы удобно задавать деся- тичными числами 1, 2, 4 и 8 соответствен- но, при этом суммарные значения включают несколько режимов одновременно, например: /A5 - окно с тенью и двойной рамкой. B - второй байт конфигурации. биты 1 и 2 - не используются. бит 3 - вид курсора, "0" - курсор выво- дится на всю ширину окна, "1" - курсор выводится на внутреннюю область окна, не затрагивая область рамки. бит 4 - не используется. бит 5 - вид окна подсказки, "0" - с рам- кой, "1"- без рамки. биты 6 и 7 - не используются. Эти значения также удобно задавать десятичными числами (4 и 16 соответствен- но), также возможно суммирование значе- ний, например: /B20 - окно подсказки без рамки, курсор внутри рамки окна. E - X-координата окна меню в знакоместах 8*8 пикселей. D - Y-координата окна меню в строках. Размеры окна система устанавливает автоматически в соответствии с количес- твом строк в меню и максимальной длиной строки. H - X-координата окна подсказки в знако- местах 8*8 пикселей. G - Y-координата окна подсказки в строках. N - высота подсказки в строках. C - ширина окна подсказки в знакоместах 6*8 пикселей. F - номер строки, на которой располагает- ся курсор при вызове меню. K - цвета окна меню T - цвета тени окна меню J - цвета курсора меню O - цвета рабочего курсора меню I - цвета окна подсказки Цвета задаются в стандартном формате: биты 0 - 2 - цвет чернил биты 3 - 5 - цвет бумаги бит 6 - яркость бит 7 - мерцание Для байта цветов тени биты 6 и 7 игнорируются. Как уже было сказано выше, при отсут- ствии строки K параметры устанавливаются по умолчанию. Значения параметров по умолчанию приводятся в табл. 5. Таблица 5. Значения паpаметpов меню по умолчанию. Паpаметp Значение по умолчанию A 0 B 16 E Центpовка по X D Центpовка по Y H 0 G 0 N 1 C 32 K %00001111 T 0 J %00111001 O %00100000 I %00001111 Пример USER-меню: TCAT Q:SHELL\ PCAT Q: K/N3/B0/A5/G1/E0/D4/T%00000001/K%00101000/J%00001110/O%01001110/C38 a USER MENU a A РАБОТА С ДИСКОМ H Дисковые утилиты, работа с файлами CQ:SHELL\menu Q:SHELL\MNU\disk.mnu ZCAT Q:UTIL\ A РЕЗИДЕНТЫ CQ:SHELL\menu Q:SHELL\MNU\res.mnu H Установка драйверов и резидентов A РАБОТА С TR-DOS CQ:SHELL\menu Q:SHELL\MNU\tr_dos.mnu H Обмен файлами с системой TR-DOS A РАБОТА С MS-DOS CQ:SHELL\menu Q:SHELL\MNU\ms_dos.mnu H Обмен файлами с системой MS-DOS AДЕРЕВО КАТАЛОГОВ CQ:UTIL\tree H Вывод дерева каталогов текущего диска A СПРЯТАТЬ ФАЙЛЫ H Установка атрибутов "Скрытый файл" CQ:SHELL\exebat Q:RES\attrh.bat A УВИДЕТЬ ФАЙЛЫ H Снятие атрибута "Скрытый файл" CQ:SHELL\exebat Q:RES\attr.bat A ВЫХОД В SHELL H Выход в оболочку IS-DOS Итак, на этом мы завершаем первую статью рубрики "IS-DOS начинающим" и на- деемся, что Вы, уважаемые читатели проч- ли ее если не с удовольствием, то по крайней мере с интересом. Еще раз хотим напомнить, что эта статья ни в коей мере не претендует на всеохватность и содер- жит, в основном, первоначальные сведения, необходимые для успешного и быстрого ос- воения системы и приобретение практичес- ких навыков работы с программами в среде IS-DOS. В следующих номерах журнала мы плани- руем выпустить подробное описание тексто- вого редактора IS-EDIT, признанного са- мым мощным и удобным на сегодняшний день текстовым редактором для ZX-совместимых компьютеров, на очереди также подробное описание утилит IS-DOS, практическое по- собие по конфигурации и настройке систе- мы, описание программ печати и просмотра файлов и многое другое. Еще раз напоминаем, что все Ваши по- желания и замечания по этой статье и по другим материалам, касающимся IS-DOS мы всегда будем рады выслушать по телефону 245-00-91 (с 10.00 до 16.00 по рабочим дням, спросить Программный отдел), по этому же телефону Вы можете получить опе- ративную консультацию по всем вопросам, касающимся системы IS-DOS и прикладных программ, работающих в ее среде. Фирма "IskraSoft" _________________________________________