Абзац
:: Поиск
:: ПоддерЖка ПрОекта
Webmoney:
  • Z610389805629
  • R427996570517
  • E023541002978
  • :: №11 (17.04.2002) ПрОсмотрОв: 3385

    Автор: Валерий Селев.

    Рубрика: Читатель читателю.

    Номер: №11 (17.04.2002).



    Размышления об идеальном коммандере #2

    На написание этого опуса меня натолкнула одноименная статья Сергея Колесникова в пятом номере «Абзаца». Некоторые мысли, связанные с этой темой, были у меня еще до прочтения той статьи, но окончательное решение их выразить возникло лишь после того, как у меня появился Real Commander v2.0. Возможно, кое-где я буду излагать простые истины, возможно, в чем-то повторю сказанное SKL-Keeper’ом, но именно таким я вижу последовательное изложение своего мнения.

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

    Итак, давайте разберемся.

    Коммандер в первую очередь должен уметь запускать BASIC и «MAGIC»-файлы (как в 128К, так и в 48К режиме), уметь переименовывать, копировать, перемещать, удалять файлы, а также переименовывать имя диска. С этим (за исключением, возможно, операции перемещения файлов, которая есть не во всех коммандерах), как-никак, но справляются все существующие коммандеры. Для тех, у кого есть только один дисковод, будет важен такой параметр, как размер буфера для копирования файлов. Здесь несомненным лидером является Consul Commander, в котором этот буфер вмещает 491 сектор при 128-ми кб ОЗУ. Только вот поддержка большей памяти в этом коммандере не реализована (проверялось на портах расширения памяти Pentagon 512 и Профи 1024), его интерфейс оставляет желать лучшего, а при запуске в турбо-режиме Consul почему-то подвисает.

    А вот дальше начинается самое интересное: прогресс не стоит на месте, к Спектруму подключаются все новые и новые устройства, и рядовому пользователю этих, по сути элементарных, функций стало недостаточно. Мне, например, как своперу и сетевику очень часто требуется просмотреть экранные файлы и тексты. В плане просмотра картинок справляются почти все виденные мною коммандеры, а вот в плане текста - тут диапазон рассматриваемых нами программ заметно сужается. Возьмем для примера Quick Commander 2.6. Вроде бы и картинки смотрит, и текстовые файлы можно почитать в трех кодировках... Но ответьте-ка мне на один вопрос, может ли текстовый файл быть длиной 27 секторов? Конечно! А данная программа все файлы длиной 27 секторов расматривает как экранные. В Real Commander’е с этим дело обстоит лучше, да и вообще, - не устраивает viewer, - пиши свой и подключай в виде модуля (версии 2.0 и выше). Отсюда вывод - функции просмотра текста и экранов вешать на отдельные клавиши. Еще советую вставлять во viewer возможность подключения пользовательских шрифтов (мне, например, может понадобиться просмотреть текст на украинском языке) и кодировок символов.

    Возможность прослушивания музыки достаточно хорошо реализована, например, в Real Commander’е и в Quick’е, поэтому этот вопрос я затрагивать не буду, тем более, что наличие такой возможности не так уж и важно.

    А вот такие функции, как форматирование и проверка диска, а также Disk Doctor, следует размещать в отдельном модуле, а не интегрировать в оболочку, поскольку пользователь должен иметь возможность заменять их по своему усмотрению. В отдельных модулях также следует размещать text viewer/editor, music player, screen saver... Т.е., идеальный коммандер должен иметь открытую модульную архитектуру.

    Не лишней будет возможность копирования TR-DOS <-> MS-DOS, а также MS-DOS <-> MS-DOS (поверьте, такое тоже может понадобиться).

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

    Теперь пару слов о проблеме коммандеров и «железа». Начнем со столь популярных сейчас турбодрайверов дисковых операций. Турбодрайвер, конечно, - вещь неплохая, но для «счастливых» обладателей 5,25" дисководов «Robotron» или ему подобных в коммандере следует предумотреть возможность записи информации через #3d13, поскольку в противном случае ваша дискета, записанная на таком дисководе, может просто не прочитаться: при записи нужна задержка. Поэтому я сразу же отбрасываю, например, Global Commander из-за осутствия в нем такой возможнoсти, хотя в целом он сделан неплохо. Обязательными в коммандере я считаю поддержку CMOS-часов и памяти выше 128 кб (до 1024 кб, хотя, говорят, есть Спектрумы и с объемом ОЗУ 4Мб, такой объем памяи также следует поддержать), наличие ram disk’а (по стандарту Real Commander, как наиболее надежному), и возможность инсталлирования коммандера в cache. И вообще, коммандер должен быть универсальным в плане железа, благодаря возможности подключения различных драйверов.

    О дизайне и о пользовательском интерфейсе идеального коммандера можно говорить очень долго, но я постараюсь выделить ключевые моменты. Очевидно, для удобства на экране одновременно должно быть видно как минимум 30 файлов, желательно с трехсимвольным расширением, хотя можно и с односимвольным. Необходим вывод файлов по маске. Если коммандер позволяет копирование на MS-DOS диски, то его, несомненно, следует делать двух- или, например, трехпанельным :).

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

    В управлении клавиатурой тоже есть свои нюансы. Кому-то удобнее выбирать дисководы через EDIT, а кому-то - клавишами «1», «2», «3», «4», («5») или «A», «B», «C», «D», («E»); кто-то привык, что копирование файлов «подвешено» на клавишу «5», а кому-то удобнее нажимать «C» и т.д. Вполне логичной будет выборочная поддержка всех вариантов управления через setup (здесь нужно особенно внимательно прислушаться ко мнениям не одного, а нескольких пользователей).

    Возможно, теперь вам будет интересно узнать, каким коммандером в повседневной работе с файлами пользуюсь я, какая программа более всего удовлетворяет моим потребностям. Ответ - демо-версия Turbo Commander’а (скриншот которого вы видите), выпущенная кодером нашей группы. Хотя бы то, что эта демо-версия создавалась на протяжении четырех (!) лет, уже свидетельствует о том, что автор стремился создать что-то необыкновенное и приближенное к идеальному, оттачивая до совершенства каждую часть. Исходный текст коммандера полностью переписывался с нуля несколько раз, и даже несмотря на то, что это демо-версия, в коммандере помимо оверлея text viewer и всех стандартных функций есть несколько прямо-таки уникальных. Например, возможность полного редактирования информации о диске (количество свободных секторов, первые свободные дорожка/сектор, количество файлов, в т.ч. удаленных) и файле (имя, расширение, стартовый адрес, длина в байтах/секторах, дорожка/сектор, с которых он начинается). Эти возможности могут показаться кому-то ненужными, лишними , но мне приходится использовать их довольно часто.

    Turbo Commander также позволяет просматривать пакованные экраны. В программе есть посекторный копировщик, причем копировать блоки секторов можно и на ram disk. А чего только стоит встроенный Magic Service! Вкратце об этой штуковине: пользователи, имеющие cache, могут в произвольный момент приостановить работу любой программы, «выдрать» скриншот, выгрузить на дискету или ram disk все банки 128 кб, 256 кб и 512 кб памяти в специальном формате и вернуться к выполнению прерванной програмы. Естественно, позже можно вернуться к сохраненной таким образом программе, т.е. имеем реальную непараллельную (иногда ее еще называют кооперативной) многозадачность!!! В коммандере, правда, отсутствуют команды склейки файлов, форматирования и проверки дисков, но только потому, что все это хозяйство планировалось запихать в один оверлей. Перед началом работы программа автоматически копирует оверлеи на ram disk, откуда они впоследствии вызываются. На экране отображается список из 64-х файлов (с односимвольным расширением правда, но строчка под списком отображает полную информацию о файле под курсором), размер шрифта 6x8 пикселей - очень удобно и глаза не устают.

    Одиними из основных недостатков демоверсии коммандера являются отсутствие music player’а и поддержки мыши.

    Сейчас, к сожалению, кодер перешел на платформу pc, а проект заморожен... Исходники последней версии, а также предпоследнюю скомпилированную версию (без Magic Service) с оверлеями можно достать у меня (адрес см. в разделе «Как купить «Абзац») или скачать с сайта нашей группы: http://cobrasoft.narod.ru. Может кто возьмется доделать? Проект-то стоящий...

    http://abzac.retropc.ru/images/i11_commander.gif


    Ссылки по теме:

    Размышления об идеальном коммандере [№5]


    © 2004-2013 Perspective group