Deja Vu #0A
30 сентября 2000

__________________________________________

(C) 2000 KAPsoft
__________________________________________

            BOOTING

   В своей статье я хочу обсудить  некото-
рые  вопросы создания файловых оболочек на
SPECCY, и рассмотреть  SPECTRUM'овские DO-
S'ы, вообще.
   Итак, начнем...

             PART I

  КАТАЛОГОВАЯ СИСТЕМА В TR-DOS

   Все знают удобства каталоговых  систем.
Все  знают, что TR-DOS  -  не  каталоговая
система. Многие программисты ( да и, вооб-
ще, все, кто серьезно работает  на  SPECT-
RUM'е ) знают, какое это мучение...
   Выход есть !!!
   Я предлагаю создать каталоговую систему
не  на уровне DOS ( это невозможно ), а на
уровне файловых оболочек.
   Объясняю подробнее. На диске содержится
файл, в  котором записана информация о ка-
талогах  этого  диска. Файловый  коммандер
читает этот  файл, и  выдает  пользователю
каталоговую структуру  файлов этого диска.
   Таким образом, структура диска нисколь-
ко  не меняется - те же 128 файлов в одном
каталоге. Но  для  пользователя  они будут
распиханы по небольшим каталогам-папкам.
   Далее я предлагаю стандарт файла-описа-
теля каталогов.

  - Максимальное кол-во файлов       128
  - Максимальное кол-во каталогов     32
  - Длина имени каталога               6
  - Кол-во файлов в каталоге      до 128
  - Подкаталоги                     есть

  Длина файла-описателя - 2 сектора.
  Имя файла-описателя   - director.C

  1 сектор :
              32 записи по 8 байт :

                  0-5   имя каталога
                    6   начало информации
                        о файлах  и  под-
                        каталогах во 2-ом
                        секторе.
                    7   кол-во  файлов и
                        подкаталогов в
                        этом каталоге.
  2 сектор :
              N записей по M байт ( N -
                   число существующих ка-
                   талогов ; M - кол-во
                   файлов в каждом ката-
                   логе. ) :

                  0-М1  номера файлов в
                        1-ом сущ. катало-
                        ге.
                  0-М2  номера файлов во
                        2-ом сущ. катало-
                        ге.
                  и т. д.

  Номера файлов:   0-127 - файлы из TR-
                           DOS'овского
                           каталога.
                 128-159 - подкаталоги.
         128  -  первый
         129  -  второй
              . . .
         159  -  тридцать второй

   Надеюсь, что кто-нибудь понял мою идею.

   В принципе, на этом можно было бы и за-
кончить  описание идеи, но я хочу привести
один алгоритм по  работе с файлом-описате-
лем.

     * ЗАПИХИВАНИЕ ФАЙЛА В КАТАЛОГ *

  Вход: А-номер файла (подкаталога)
        В-в какой каталог (0-31)

  1.Смотрим 1 сектор: байт (а*8)=0 ?
        Да - выход (ошибка - каталог не
                      существует)
  2.Пусть С=(а*8+6)
┌─3.Цикл  I=0 до 31
│ 4.Если  (I*8+6)>С ,то (I*8+7)=(I*8+7)+1
└─5.Следующий I
  6.Смотрим 2 сектор: сдвигаем байты на-
        чиная с С по 254 на один.
        Т.е. (С)  =(С+1)
             (С+1)=(С+2)
                . . .
             (254)=(255)
  7.Пусть (С)=А
  8.Отгрузить новый каталог:
                  SAVE "director" CODE

   И еще один момент. Как  определить, ка-
кие файлы (каталоги) находятся  в  главном
каталоге? Очень  просто - все  файлы и ка-
талоги, номера  которых отсутствуют  во  2
секторе, находятся в главном каталоге. Имя
главного каталога - имя диска.

   Еще хочу сказать, что подобная  система
нужна  не для игровых дисков, а для  рабо-
чих. Желательно также, чтобы  она применя-
лась в мощных файловых  оболочках, которые
имеют возможность работы с оверлеями.

   Считайте эту  статью, как  установление
стандарта на подобного рода системы. Я хо-
чу, чтобы создатели  ...-COMMANDER'ов вос-
пользовались моей идей  и  создали удобную
файловую оболочку для рабочих людей.
   В крайнем случае, я  сам, когда  дойдут
руки, сделаю такой COMMANDER (надеюсь, что
это произойдет где-то в  середине 2001 го-
да).


            PART II

  DOS'ы на ZX - O-O-H MY GOD...

   Итак, чем же мы пользуемся...

   TR-DOS (старая добрая сказка)...

   Достоинства:

   1. Пожалуй, самым главным  достоинством
этой системы  является то, что она вшита в
ПЗУ компьютера. Никаких  проблем с загруз-
кой системы - что бы не случилось, она ни-
куда не изчезнет из ПЗУ.
   2. Вторым и  последним ее  достоинством
является ОГРОМНАЯ  программная  поддержка.
Все системки и игры пишутся только под DR-
-DOS.

   Недостатки:

   1. Отсутствие каталоговой структуры.
   2. Все файлы  последовательные, пишутся
подряд даже на сбойные участки.
   3. Нет поддержки  дополнительной памяти
и RAM-диска.
   4. Неграмотно написана.
   5. Нет возможности изменить DOS(вот ми-
нусы того, что она в ПЗУ).
   6. ...

   Таким образом, как хорошо кто-то  напи-
сал в Ревю'шке, TR-DOS - убыстренный вари-
ант магнитофона.

   IS-DOS

   Достоинсатва:

   1. Это была удачная попытка написать на
SPECTRUM'е настоящую операционку.
   2. Каталоговая структура, поддержка до-
полнительной  памяти и все то, чего не бы-
ло у TR-DOS.
   3. Довольно много программного  обеспе-
чения.

   Недостатки:

   1. Система ориентировалась  на популяр-
ный в то время  NORTON  COMMANDER  и  была
попросту списана с него. Но ведь коммандер
он  на то и коммандер, что его можно выки-
нуть  и поставить другой, более  современ-
ный. Попробуйте  отделить IS-DOS oт SHELL.
Ни за что не получится.
   2. Отсутствие многооконности. Это,в об-
щем-то, и не большой недостаток, но я час-
то попадал в такую  ситуацию, когда  нужно
было посмотреть  кое-что, не отрываясь  от
EDIT'а. Помню, я сильно ругался :).
   3. Система более совместима  с  MS-DOS,
чем с TR-DOS, что, конечно, не радует.
   4. С самого начала IS-DOS  ориентирова-
лась на делового человека, но зарабатывать
деньги на SPECTRUM'е могут лишь единицы:(.

   По этим и некоторым другим  причинам, в
общем-то, неплохая DOS  не стала  стандар-
том. В настоящее время  в IS-DOS'е  только
пишут документы (EDIT - самая лучшая прога
для IS-DOS)...

   Ну, вот и все на сегодня. Итак уже  на-
писал более двухсот строк.

   Кто со мной не согласен - с  удовольст-
вием побеседую.
   Кого заинтересовала первая часть   моей
статьи - пишите.
  Отвечу всем.

 612831  Кировская обл.
         В-Камский р-н.
         пос. Рудничный,
         ул. Орджоникидзе,
         д.33, кв.48,
   Киселев Александр Петрович
------------------------------------------



Other articles:


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

Similar articles:
CC'000 - The story Random'a (!) On CC'000.
Beech - VIHHI-Pooh and all, all, ending.
News - local news.
Application - Mega Apocalipse.

В этот день...   2 May