Profi+ Concurrent BIOS 1993 г.

TR-DOS - особенности файловой системы.


Теперь немного об особенностях файловой системы:

- MS/DOS поддерживает длину файлов с точностью до байта и дату и время
создания файлов, не поддерживаемые другими системами. Это означает,
что при копировании файла из IBM в СР/М, дата и время будут потеряны,
а длина будет немного увеличена так, чтобы она стала кратна 128. В
текстовых файлах это может привести к появлению в конце текста пары
строк мусора. Интересно то, что совершенно тот же эффект возникает и
при обратном копировании, но уже немного по другой причине: в СР/М-
редакторах текста признаком конца текста является специальный символ с
кодом 26 (1АН, ~Z), на IBM многие программы его не понимают, доверяя
лишь длйне файла, и все символы от до физического конца файла
становятся тем самым мусором. Впрочем, особых неприятностей все это не
доставляет;

для MS/DOS характерна древовидная структура организации диска, в
связи с чем СоруК поддерживает работу с подкаталогами. Перемещение по
ним аналогично перемещению по USER в СР/М. Особенность в том, что в
корректно сформированном подкаталоге присутствует два псевдофайла
(вернее, псевдоподкаталога) с именами . и .. ; выбор первого никакого
действия не производит, т.к. этот псевдоподкаталог совпадает с самим
каталогом, а псевдоподкаталог .. совпадает с подкаталогом более высокого
уровня, и выбирая его последовательно несколько раз, можно добраться до
корневого каталога. Для быстрого перемещения в корень дерева служит
еще один псевдоподкаталог, формируемый уже самим СоруК - ROOT.

Особенности работы с дисками различных дисковых систем

TR-DOS

По-моему, наиболее редко используемая возможность СоруК: я смог
применить ее только для переноса картинок из игрушек под TR/DOS: при
использовании MAGIC формируется файл, первые 27 блоков которого
являются картинкой в чистом виде. Тем не менее оверлей с соответствующим
драйвером существует. У него есть свои особенности. Кстати, о том, что с этим
драйвером работают редко, говорит и то,что за полтора года эксплуатации в
оверлее не изменилось ни байта и не было обнаружено ни одной ошибки. Хотя,
может быть, виной тому, исключительная простота файловой структуры
TR/DOS:

- TR/DOS поддерживает длину файла с точностью до 256 байт, и
прикопировании из других систем возникают те же особенности, о которых
говорилось в описании MS/DOS: файл может удлинняться.

- TR/DOS не поддерживает ни каких спецфайлов типа подкаталогов.

- поддерживаемый TR/DOS стартовый адрес программы безразличен другим
системам, и поэтому при копировании он теряется. Точно также, TR/DOS
имеет самый свободный формат имени, которое может содержать любые
символы, даже пробелы внутри имени, а также различает большие и
маленькие буквы, что категорически запрещается другими дисковыми
системами. Поэтому имя файла при копировании преобразуется к
стандарту: все запрещенные символы заменяются восклицательным знаком,
а буквы приводятся к одному регистру; кроме того, однобуквенное
расширение файла в TR/DOS расширяется до 3 букв добавлением букв "tr"
Все это приводит к тому, что даже при копировании файлов из TR/DOS в
TR/DOS программы перестают запускаться, хотя сама информация в
файлах скопирована правильно. Поэтому используйте СоруК только для
переноса данных, таких, как текст или картинки.

Таймер

В первых версиях СоруК был встроенный таймер, но под CBIOS этим делом
занимается собственный драйвер, который можно и отключить.

Командные пакеты

Последующая информация, пожалуй, будет наиболее интересной, т.к. ранее
нигде не приводилась.

Командный пакет - набор команд ДОС, выполняемых подряд. Пакет
формируется оболочкой при нажатии в оконном режиме клавиши F2 (или
просто 2). На экране появляется список возможный: дальнейших действий: Вы
можете нажать либо одну из выделенных букв, либо ESC для выхода из
режима. Например, список может выглядеть так:

Соответственно, можно нажать одну из заглавных букв: Т, Е, F и т.д.
Напомню, что комбинация F2+@ аналогична нажатию СН на файле, отличном
от каталогов и псевдокаталогов, F2+E - аналогична F4. Регистр нажатой буквы
значения не имеет.

Формируемый командный пакет может видоизменяться в зависимости не
только от нажатой буквы, но и от имени и расширения текущего файла,
дисковода, связанного с текущим окном, текущего диска ДОС (последний не
обязан совпадать с предыдущим, как это есть в MS/DOS).

Шаблоны командных пакетов хранятся в файле CK.CMD, но т.к. при
инициализации системы он загружается в ОЗУ вместе с кодами оболочки,
изменение этого файла не меняет сразу и шаблоны: нужно перегрузить СоруК,
повторно дав команду СК1 .CMD-файл - обычный текстовой файл, который
может быть создан или отредактирован любым текстовым редактором. Далее
будет описана его структура.

Файл состоит из записей. Одна запись соответствует одной букве в том меню,
которое появляется после нажатия F2. Признаком конца файла является точка,
стоящая после последней записи (иначе Вы можете даже провиснуть). Точки,
встречающиеся внутри записи, но между ограничивающими шаблон
квадратными скобками, считаются частью шаблона, а не признаком конца
файла. Перевод строки почти везде игнорируется (но целые слова лучше не
разрывать на части, а помещать в одной строке).

Запись имеет следующую структуру:
1 байт двоеточие.

1 байт соответствующая записи буква (@ .. Z, обязательно @ или

латинская буква верхнего регистра).-
до 7
байт пояснение к пакету, которое выдается в меню. Пояснение

ограничивается первым встретившимся пробелом или
преводом строки. Если в пояснение нужно вставить пробел,
на его место ставится подчеркивание. Обычно пояснение
пишется маленькими английскими буквами, большой
выделяется только та буква, с которой запись связана. Если
пояснение не содержит такой буквы, она пишется в качестве
первой буквы пояснения и отделяется от остальных пробелом
(т.е. подчеркиванием).

список расширений.

соответствующий шаблон, заключенный в квадратные}
скобки.

Две иоследние позиции могут повторяться несколько раз.

Список расширений состоит из записанных друг за другом расширений
файлов, каждому из которых предшествует восклицательный знак.
Разделители между расширениями не обязательны, и могут состоять из любого
числа пробелов или переводов строки. Расширение записывается заглавными
латинскими буква* .и, можно использовать символы-джокеры * и ?. Если
расширение имеет длину менее 3 символов, за ним должны следовать
необходимое количество пробелов (1 - для двухбуквенного, 2 - однобуквенного,
3 - пустого). Поэтому укороченное расширение не может стоять вконце строки,
после него обязательно должно стоять хотя бы еще одно, иначе перевод строки
будет восприрят как часть расширения. В крайнем случае поставьте вместо
недостающих букв джокеры. Признаком конца списка является начало
соответствующего ему шаблона (а именно, открывающая квадратная скобка).

Пустой список расширений равносилен списку /*.

Шаблон командного пакета заключается в квадратные скобки. Переводы
строки заменяются пробелами. Содержимое шаблона - это те клавиши, которые
Вы нажимали бы, если бы работали вручную. Для указания того места, где Вы
должны были бы нажать CR, используется точка с запятой. Таким образом, в
шаблоне нельзя напрямую использовать точку с запятой и закрывающую
квадратную скобку, но это можно сделать с помощью специального символа -
префикса команд шаблона "$". Следующий за ним символ рассматривается как
команда:

$D имя дисковода, связанного с текущим окном

(одна буква, без двоеточия).
$N имя текущего файла (без расширения и конечных пробелов).
расширение текущего файла (без конечных пробелов).
имя текущего дисковода ДОС (одна буква, без двоеточия).
в случае, если в ходе выполнения пакета нужно на время передать
управление клавиатуре, ставится эта команда. Управление будет
возвращено пакету при выходе из команды в ДОС.
$Q обычно в конец пакета автоматически добавляется последний CR,
команда 1 и еще один CR для возврата из пакета в СоруК. При
необходимости подавления этого действия и используется данная
команда.
$$ вставить символ $.
$; вставить символ ;.

Пример файла шаблонов командных файлов:

:@@Lrun

!СОМ !SPR

[$D:$N]

!МАС «ASM

[М80+ =$D:$N4E;L80 $D:$N^D^N/N/E ]

!REL [L80 $D:$N.$E,$D:$N/N/E ]

! !SUB !BAT

[$Q<$D:$N.$E]

!BAZ [A:;DBASE $D:$N;$K$T: ]

ГГХТ !DOC !H !BAK !XXX
!FOR !BAS !PAS !HLP !##? !#?
(TYPE $D:$N.$E ]

!CTR [KVIEW $D:$N.$E ]

!FNT [LOADF $D:$N.$E ]

!CAL [SC2;;;;;;;;;;;;;;;;;;;;;;;;;;;:;;;;;;;;;;;;;;;;;/L$N;A$KJ

!INF [A:INFOK $D:$N.INF ]

!PCX [PCX $D:$N.$E ]

:TType {TYPE $D:$N.$E ]

:EEdit

[KBDCODE S D E X;TURCOLOR;TURBO;NE$D:$N^E;$KKBDCODEl
:NeditNew

[KBDCODE AS~DAE~X;TURCOLOR;TURBO;N$KKBDCODE]

.CConcurr [O $D:0 ]
:001ddisk [O $D:4 ]

:RRename [PW REN $D:$N.$E ]

:MMe [ME $D:$N^E;$K|

:FFavor [FAVOR44F J

:KKfor [KFOR ]

:XprintXt [PT $D:$N.$EJ

:Wpt/W [PT $D:$N.$E /T26/FC/WJ

:GGrafpr !CTR [ZXPRINT $D:$N.$E DT]

:YtYpealt [SET ALT;TYPE $D:$N.$E;$KSET]

:Ialt-koI [COPRX $D:$N.$E $N.XXX$K]

В случае использования такого файла по нажатию F2 появляться меню:

По нажатию CR или F2+@ на файле с расширением:

.СОМ он будет запущен на исполнение.

.DOC и .ТХТ он будет редактироваться.

..ASM и .MAC он будет ассемблироваться и линковаться.

.PAS будет осуществлен переход на диск А:, экран будет иметь

белые буквы на черном фоне, запущен Турбо-Паскаль, на его вопрос о том,
загружать ли спецфайл будет отвечено N (нет), после чего будет дана команда
Б (Edit), на запрос о имени рабочего файла указывается текущий, после чего
управление передается клавиатуре. После выхода из Паскаля управление
вернется в пакет, что вызовет удаление всех .ВАК-файлов, возврат на тот
диск, который был текущим перед запуском пакета, и возврат в СоруК.

По нажатию F4 или F2+E текущий файл будет редактироваться редактором
TURBO.

Обратите особое внимание на последнюю точку.

Вы можете заметить, что работа с командными пакетами значительно
перекрывает по возможностям аналогичные функции Norton Commander (меню
пользователя и файл расширений).




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Игры - TWINZ!, TETRIS 2.
И вновь party 2 - обзор работ с Ростовского демопати Paradox'2002.
Новинка - схема железного мультиколора.
Фидо - Дятел.
Реклама - реклама и обьявления.

В этот день...   26 апреля