|
KrNews
#11
31 декабря 1999 |
|
IS-DOS - Операционные системы для Спектрума.

─
OS: is-dos & etc.
─
(c) VTS'99
Приветствую всех на наших разборках
осей. Итак, по поводу статей в KrNews,
пришло мне письмо аж с Украины от Loo-
ker/DigiTech, который сейчас трудится в
области ОСестроения. Цитировать письмо я
не буду, но по ходу статьи постарачсь
ответить на поднятые вопросы. Я буду ос-
новываться и на других материалах, вроде
статей "CP/M rulez" в Voyager#3, и др.
Итак, для начала пройдусь я по из-
вестным мне осям.
TR-DOS must die -это знают все, од-
нако так и продолжают писать под нее
софт, юзать его и остаются, в той или
иной степени, довольными, за неимением
лучшего (с таким количеством софта).
Единственный ее минус, который ну просто
никак не обойти (хотя, если подумать,
обойти можно, но это не рационально) -
траблы с совместимостью. Т.е. из самого
факта живучести TR-DOS уже следует то,
что всякие там характеристики ОС имеют
не первостепенное значение, главное -
чтобы она была стандартом, т.е. была бы
у всех, работала на всех компах, и было
много софта.
Так вот, далее по количеству пользо-
вателей следуют IS-DOS и CP/M (именно в
таком порядке). Само по себе это наводит
на мысли в пользу is-dos.
Но посмотрим на CP/M. Во-первых, за-
мечу, что никаких плюсов в плане тех са-
мых характеристик CP/M не имеет (перед
IS-DOS), а в Voyager'е местами видно
просто откровенное незнание автора пред-
мета, либо это просто поливание IS-DOS
грязью. Я бы поставил по своим характе-
ристикам обе ОСи примерно на один и тот
же уровень, дабы не ударяться во флейм.
Но у CP/M есть одно маленькое "но". Дело
в том, что ее юзают только владельцы
Profi. Из других компов можно назвать
разные там ATM, и кучу мелких неизвест-
ных клонов. Причем я подозреваю, что
часть софта CP/M под Profi уже не всегда
пойдет на левых цп/м, и уж тем более не
пойдет на базовой цп/м_8080... Но я отв-
лекся, проблема же в том, что на других
Спектрум-клонах CP/M в глаза не видели.
Однако для Скорпов и Каев есть некая
CP/M v2.2 (c) MOA (естественно, не
80-символьная...). Тем не менее, массо-
вых случаев ее использования науке не
известно. Называть же систему, работаю-
щую только на части Спектрум-клонов, ОС-
НОВНОЙ для Спектрума, НЕВОЗМОЖНО !!!
Лично мне цп/м кажется неплохим, и ко-
му-то полезным, довеском софта к Profi.
Теперь возьмем Pink Floyd aka Domen
OS. Лично мне система показалась доста-
точно интересной. Хотя у нее нету базы в
виде пользователей, однако была продела-
на большая работа, и в ее концепцию были
положены достаточно интересные вещи. И
вот все это отправилось кому-то под
хвост, потому что у автора не хватило
сил завершить начатое. И это не удиви-
тельно, т.к. для реализации заявленного
нужно затратить гигантские усилия, чем
занимался всего один человек... Причем
не было представлено никакой документа-
ции по системе, что не дало развиться
инициативе извне. В общем, на данный мо-
мент я считаю PF неплохой нереализован-
ной задумкой (ее особенности multitask'а
и GUI, например).
Micro Windows. GUI-оболочка с элемен-
тами системы рестартов и даже с их опи-
санием. Будущего она не имеет, однако
адресок автора следует взять на заметку.
Примерно то же самое можно сказать
еще о нескольких вещах типа X-OS, etc.
NeOS. Вокруг нее подняли большую шу-
миху, посему многим кажется ее неплохое
положение в сравнении с перечисленными.
Не спорю, есть в ней здоровые идеи, од-
нако прошивка в ПЗУ перечеркивает ВСЕ !
Есть и другие моменты, но они уже не
важны после этой привязки к ПЗУ.
Да, а еще где-то мне встретилось
просто гениальное предложение положить в
основу ОСи эмуляцию магнитофона. Вот уж
до чего не додумались буржуи в TR Ltd
для Beta Disk'а. Только вот немцы уже
сделали такую фичу -MB-02...
Но чтоб такое придумать в России,
нужно обладать нездоровым воображением.
Попробуйте для начала представить себе
процесс адаптации TR-DOS -> tape. А
дальше я и продолжать не хочу, и так яс-
на абсурдность этой идеи.
А вот эмуляция TR-DOS на уровне #3D13
уже существует. Это тот же SMUC Зонова,
KAY-1024 Немо, прошивки DOS 5.04em
(Скорп и Кай 256), DOS 5.12 (Пентагон
512/1024). Причем эта эмуляция - не
часть ОСи, а лишь средство адаптации
TR-DOS программ.
Теперь я процитирую все-таки кусочек
письма Looker/DigiTech:
"Как я уже сказал, я задумал сделать
ОС. Располагаться она будет в кэше: 8к -
оболочка, 8к -BIOS (?) и DOS. Как опыт-
ный системщик, посоветуй что-нибудь,
особенно про то, что там должно быть
(BIOS, DOS, etc). Надеюсь на дальнейшее
сотрудничество...
p.s. Называться это будет XZ-SYS"
Примерно также думают и остальные на-
чинатели ОСестроения.
Кстати, я вовсе не ОПЫТНЫЙ СИСТЕМЩИК,
я не написал ни одной реальной системной
проги. Более того -я не кодер, а коди-
рую лишь для своих нужд. Я -железячник.
Промах первый налицо -располагаться
будет в кэше... А у кого этот кэш есть ?
Хотя у Скорпов/Каев можно впечатать 0/8
банку под ПЗУ (и это юзает is-dos chic),
но это еще не означает "все Спектрумы".
А натурального кэша, например, в Красно-
даре, нету вроде ни у кого. И, скажем, в
Питере или Москве он есть лишь у немно-
гих сумасшедших железячников...
Далее по тексту видно, что XZ-SYS по-
нимается ее автором просто как оболочка,
с довеском BIOS/DOS от ОС'и, а не наобо-
рот. Т.е. все на самом деле намного
сложнее. Но об этом позже.
И, наконец, "надеюсь на сотрудничест-
во" принимается как желание работать в
области ОСестроения.
Итак, теперь рассмотрим isdos, а по-
том поразмышляем о будущем.
Всем ужасно не нравятся тормоза,
текстовые квадратные менюшки и отсутс-
твие "даже мыши"...
Ну что ж, начнем со сравнения.
TR-DOS - быстрая загрузка с магнито-
фона. О чем вообще здесь можно говорить?
Т.е. просто загрузка отдельных изолиро-
ванных задач - игрушек в большинстве
случаев. В этом свете даже #3D13 можно
представить как некий побочный эффект,
технологически являвшийся элементом свя-
зи программистов железа и программистов
логики. Что ниже #3D13 -драйвер ВГ93,
что выше - загрузчик. (Можно, однако,
предположить, что в T.R. Ltd были и
светлые головы(а)...).
Ну что, хуже некуда? Тем не менее
никто никого не ругал, не возмущался, а
просто начали писать софт...
Далее возьмем MS-DOS, одной весовой
категории с IS-DOS.
Угу, командная строка, экран как лист
бумаги... Посмотрим рестарты. Ничего
примечательного. Нету вам ни звуковых
карт, ни поддержки графики (кроме печати
пикселов), и тем более мыши в Нортоне.
М-да... а зачем, например, разделили по-
нятия FDD и HDD ? Хотя это уже вопрос к
BIOS, в которой к тому же жестко пропи-
саны адреса стандартных драйвов. Да и
вся MS-DOS, по сути, надстройка над BI-
OS. В общем, для того времени прости-
тельно.
И что же получилось ? А все, чего не
было, было хитрыми программерами долеп-
лено, и до сих пор держиться неплохо, и
многим продвинутым людям нравится по-
больше, чем W9x...
О тормознутости отдельно. Кто-нибудь
пытался поработать в MS-DOS с дисководом
(ради бога, только не одним!) на 286/386
или XT ? Попробуйте, а потом скажете -
кто тормознее ;)
Про Windows я вообще молчу, которая
умудряется тормозить на сверхзвуковых
винчестерах.
Мораль сей басни такова - пора бы
прекратить отпираться и попробавать сде-
лать что-то самому, например, исправить
то, что не нравиться. Лично по моему
мнению, практически весь внешний вид и
вообще весь базовый комплект можно пере-
писать заново, на новом качественном
уровне, оставив ядро нетронутым. Не го-
воря уже о двух свободных уровнях, где
можно поэксперементировать с GUI... И
все это можно делать постепенно, в рабо-
тоспособной системе, а не мучаться днями
и ночами со своей осью.
Т.е. девизом недовольных должна стать
фраза "Если мне что-то не нравится в is-
dos, в этом виноват лишь я". Ведь именно
так поступали, когда не было какой-то
проги в дыр-досе, почему же isdos валят
на плечи Леонтьева, которому, может,
весь этот ваш лейм/флейм осточертел ?
Если б вы что-то делали под isdos, он бы
уж наверняка пошел навстречу. А на наез-
ды отвечают соответственно.
И еще один существенный момент -про-
изводство компов. На них нужно ставить
какую-нидь ОСь. Ну, допустим, стандарт-
ная конфигурация уживается еще в tr-dos,
а вот винт требует себе ОСь. Так вот,
винт на сегодняшний день гарантировано
ведет лишь is-dos. Ждать нам некогда,
нужно именно здесь и сейчас. Представьте
себя в ситуации, когда вам продают кусок
железа, и говорят, мол, софт еще пишет-
ся. Короче, покупая эту железку, вы пла-
тите еще и за софт, и это нужно пони-
мать, софт быть обязан !
Вот так и получается -нет ОСи, нет
развития железа... А плохо ОСь выглядит
исключительно по вине тех, кто ничего
под нее не написал. Задачу-минимум авто-
ры is-dos выполнили: есть отлаженное яд-
ро и минимум рабочих программ. Кроме то-
го, есть поддержка производителей железа
и известность в кругу пользователей.
Что же еще нужно ? Ведь куда проще и
реальнее дорабатывать работающую ОСь на
ходу, чем мучаться со своей очередной
оболочкой, непременно с аббревиатурой ОС
в названии...
И напоследок -документация по isdos.
Первое - это диск IS-ASM с исходниками
книги "Программирование в среде IS-DOS",
и сама эта книга. Мало, но кой-чего по-
лезного опытный программер выудит. Вто-
рое -серия статей в ZX-Format'е. Может,
и не столь полно, как хотелось бы, но в
дополнении к первому не помешает. Третье
- disasm... Первые проги системы писа-
лись безо всяких крутых извратов, и их
изучение может пролить свет на некоторые
темные места...
Решением проблемы информационного го-
лода могут стать сборы, скажем, прямо
здесь, на страницах KrNews, заинтересо-
вавшихся программеров. Если мы начнем
что-то делать под is-dos, я уверен, что
будут и консультации со стороны Леонтье-
ва, и вообще, вместе легче. (Место
встречи меня не волнует в принципе. Это
может быть и другой журнал/газета. Но
место в KrNews я гарантирую).
Ну вот, по исдосу вроде бы все.
Теперь пару слов о том, что я заик-
нулся в прошлый раз по поводу новой оси.
Знаете, это мне напомнило реакцию на
статью Немо о Transformer'е ;) . На са-
мом деле я считаю новую ось необходимой
лет через пять минимум. Вот такие дела.
И я буду против реализации такой оси
сейчас. Причин тому несколько.
Во-первых, есть is-dos. Плохая, или
хорошая, но есть ось и база (имеется
ввиду не столько софт, сколько пользова-
тели, поддержка производителей железа,
возраст и т.д.). На ней можно минималь-
ными усилиями и малой кровью отработать
все основные положения концепции ОСей,
выяснить неясные моменты, что нужно на
Спектруме (!), а что нет. И главное -
она позволит ввести стандарты, необходи-
мые для дальнейшего развития.
Т.к. до is-dos на Спектруме фактичес-
ки не было ОСи, то НИКТО не знает, какой
она должна быть. Т.о., is-dos может
стать своеобразным полигоном для испыта-
ния новых идей, эдаким переходным звеном
между тьмой и светлым будущим с _просто_
_идеальной_ОСью_ ;)
Во-вторых, никто в одиночку закончить
такой проект не сможет. И дело не только
в коде, нужно проделать массу не связан-
ных с кодингом вещей.
Вообще-то я хотел еще побредить по
поводу новых ОСей, но представляя воз-
можный флейм, не буду этого делать, по-
тому как основная задача этой статьи -
убедить людей писать под исдос. А все
остальное не столь важно. Обсуждать но-
вое можно будет лишь тогда, когда нау-
чимся работать с тем, что есть.
А пока что лично я не вижу горячего
желания делать что-то реально работающее
в области ОСей практически ни у кого.
Все только кивают: мол, ось нужна, да.
Но никто ничего не делает. Некоторые со-
бирают какую-нидь оболочку, и вот начи-
нает развиваться снежный ком флейма в
эхах, газетах и т.д. Через некоторое
время все стихает, а за комом остается
след разрушенных надежд на то, что ка-
кой-то дядя напишет нам винды, чтобы их
потом фачить (и опять же ничего не де-
лать). Это подход пц'шных хакеров-псев-
додемомейкеров и иже с ними. У них есть
такой дядя, и за это он с них регулярно
имеет деньги. Мы же должны иметь свою
голову на плечах. И первое, что нужно
понять - движение вперед может быть
только результатом трудовой деятельности
всей платформы. Сидение на месте либо
разрозненные попытки к развитию не при-
ведут. А объеденить нас может только
здравый смысл.
И напоследок, коммерческая сторона
is-dos'a. Некоторым кажется, что ОСь
должна быть бесплатной. Однако авторы
хотят получать деньги за свой труд. Так
вот, при увеличении количества пользова-
телей эта проблема снимается автомати-
чески. Т.к. цена софта уменьшается про-
порционально количеству пользователей,
то в определенный момент она становится
сопоставима с ценой freeware продуктов.
Следует также понять, что довольно су-
щественную роль в этой цене играет соп-
ровождение is-dos, т.е. непосредственно
работа с пользователями, консультации
и т.д. Создание подобных структур на
местах (имеющее смысл лишь при распрост-
ранении is-dos) тоже будет способство-
вать снижению цен, а также их дифферен-
циации по регионам.
_
ТMr.Linker
Приветствую вас дорогие друзья.Сегод-
ня я выступлю в несколько другой роли,
а именно в роли программера, хотя прав-
да мои программерские способности в ос-
новном лежат в таких небольших процеду-
рах.
Так вот примерно два года назад я при-
обрел у VTS плату KAY-256, собрал,
настроил, запустил и всебы хорошо, но
кроме IS-DOS'а ничто не хотело печатать
по стандарту KAY т.е. через AY-3-8910.
А так как печатать нужно было я решил
написать драйвер. В виду того что выше
означенный VTS вынашивает планы по ши-
рокомасштабному распространению KAY'ев
на территории Краснодара и его ближай-
ших окрестностей, то я решил поделиться
с вами своими изысканиями. Прошу строго
не судить если обнаружаться какие-либо
недочеты, и если что не так то просто
поправьте.
Итак:
;Драйвер принтера для AY3-8910
;в стандарте KAY-256, KAY-1024
;для ZX-WORD,MicroEditor
;
BEGIN JR INIT ;инициализация
NOP ;
PRINT JR PRINTCH ;печать
INIT LD A,#07 ;настройка AY
LD BC,#FFFD;A-вывод
OUT (C),A ;В-ввод
LD A,#40 ;
LD BC,#BFFD;
OUT (C),A ;
RET ;
PRINTCH LD BC,#FFFD;
LD D,A ;сохраняем А в D
LD A,#0E ;выбор порта #Е
OUT (C),A ;
LD A,D ;
CP #0A ;проверка на
JR Z,TRANSL;LF да TRANSL
JR OUTPRN ;нет OUTPRN
TRANSL LD A,#0A ;заменяем #0A на
CALL OUTPRN ;#0A+#0D(LF+CR)
LD A,#0D ;
OUTPRN LD BC,#BFFD;вывод на
OUT (C),A ;принтер
LD A,#0F ;
LD BC,#FFFD;
OUT (C),A ;
BUSY CALL #1F54 ;проверка BREAK
JR NC,ERROR;нажали на ERROR
LD BC,#FFFD;проверка BUSY
IN A,(C) ;
BIT 2,A ;
JR NZ,BUSY ;повтор
DI ;запрет прер.
LD B,#1F ;в #1FFD
LD A,#20 ;STROBE
OUT (C),A ;0
NOP ;
XOR A ;1
OUT (C),A ;
EI ;разрешаем прер.
CALL PRINT ;
SCF ;выставляем
CCF ;флаги на ОК
RET ;выход
ERROR SCF ;выход по
RET ;ошибке
Ну вот такой драйвер, он помещается в
буффер принтера в любом из вышеназван-
ных редакторов.
На этом я с вами прощаюсь, и в ближай-
шие два года мы с вами не увидимся, го-
сударство решило, что я засиделся на
гражданке и необходимо немного этому
государству послужить. Предположи-
тельное время моего возвращения ноябрь
2001 года. Такие вот дела. Пока.
13.10.1999
IS-DOS EDITOR
Другие статьи номера:
Похожие статьи:
В этот день... 13 ноября