╔════────
║
│ Стандарты: Rest in Peace?.. │
║
────════╝
(C) Максим Исаев
──══ Предисловие ══──
Толчком к написанию этой статьи был ма-
териал от Andy Nelson (по паспорту
Смольский Андрей) в 14-м номере "Оптрона".
Первое мое впечатление от статьи Андрея
было: "Круто!.. Где мой паяльник?!" Но,
слегка поостыв, я призадумался: "А так ли
оно мне необходимо?". Подумав еще немного
("Я подумал, мне понравилось и я подумал
еще"), я решил наваять, собственно, эту
статью.
Все нижеследующее не следует расценивать
как наезд или еще хуже - как личное ос-
корбление. Это всего лишь мое личное мне-
ние о происходящем вокруг. Статья адресо-
вана не только Андрею, но и всем разработ-
чикам нового, "крутого" железа. И, пожа-
луй, попытка ответить на вопросы "Что де-
лать?" и "Кто виноват?". Я бы хотел, чтоб
Андрей воспринял мои мысли не как ба-
нальный наезд, а как пожелание или даже
как руководство к действию.
──══════════──
Похоже, Andy решил окончательно и беспо-
воротно похоронить такую весьма важную
вещь, как стандарт. А это уже нехорошо.
Почему? Потому что бытует мнение, что
большое количество "прибамбасов", а осо-
бенно разнобой стандартов на одни и те же
внешние устройства, могут "убить"
Спектрум.
Прочитав первый абзац, можно подумать,
что я обвиняю Андрея чуть ли не во всех
смертных грехах, в том числе и в смерти
Спектрума. Я же отвечу, что он не прав в
том, что как и многие другие "железячни-
ки", скидывает на голову юзеров новый во-
рох "крутой" аппаратуры, вместе с которым
предлагает такой же, если не больший ворох
стандартов.
Начнем по порядку.
Пресловутый спор по поводу того, что все
же лучше: Стандартный Спектрум или доморо-
щенный "стандарт" Pentagon. Сколько можно!
Меня сейчас на матюки пробьет!
Несведущий юзер может спросить, чем же
"Пентагон" лучше того же "Львовского вари-
aнта". Отвечу: ничем, только на восемь
строк шире растр и нет торможения нижней
памяти. Торможение памяти - это проблема
программиста, не умеющего правильно
распределить память для программы. Да и с
более широким растром аналогично - если ты
не в силах сделать свой эффект на 2000
тактов быстрее, то какой ты после этого
кодер?! А многие из таких кодеров еще на-
зывают себя "сценерами" (суть сего понятия
я попытаюсь объяснить как нибудь в следую-
щий раз, поскольку к содержанию данной
стьи оно не имеет никакого отношения). Как
пример, приводится Enlight 96. Да уж... На
97-м, если я не ошибаюсь, кодеры поняли
что делать, и вопиюще глючных дем в "трой-
ке" мы не видели, разве что, "EYE ACHE 2".
Code Busters хотели хлопнуть дверью. Не
вышло. Я считаю, что это психическое забо-
левание, когда юзер терзается мыслью, что
его комп плох, а у дяди, писавшего прогу
хорош. ЛЮДИ! Когда же вы научитесь ценить
данное вам Богом и сэром Клайвом?! Ваши
компы здоровы на все 100! Они больны у
"крутых" дядей, пишущих кривые программы.
Кстати, завершая эту мысль, хочу заметить,
что 320 строк в растре это грубейшая ошиб-
ка, идущая в разрез с телевизионным стан-
дартом. И такой вот "суррогат" нам всем
навязывают! Не хочу брать на себя слишком
много, но все-же выскажу одну мысль: если
человек легко переступает через один стан-
дарт, то он может переступить и через все
остальные. И не надо оправданий типа "оно
же и так работает": охота телевизор наси-
ловать - насилуйте, но другим не предла-
гайте.
Ладно, "старые" заварушки проехали.
А что же впереди? Новые стандарты.
Сколько уже порты #xxFD "насиловали"?! Те-
перь начали юзать #xxF7, а особенно #EFF7.
Ну что ж, разумно. От себя только скажу,
что D7 порта - это разрешение доступа к
CMOS-часам на м/с 512ВИ1, а D4 - включе-
ние/выключение такой доработки, как Gi-
gascreen (схема была в эхе ZX.SPECTRUM, я
пытался "прилипить" ее к "Львовскому вари-
анту" - не вышло, может кто поможет?) Про-
тив использования порта #EFF7 я ничего не
имею, только хочется спросить у автора
статьи, как он делал дешифрацию порта:
посредством ЛЛ1 или ИД7? Почему я спраши-
ваю? Да потому что если сделать дешифрацию
какого-либо порта одним разрядом, то очень
легко можно лишиться сразу _восьми_ "смеж-
ных" с ним портов, а посредством ИД7 из
трех разрядов можно "вытянуть" все восемь
портов, например, следующим образом:
┌──┬────┐
A12──┤A0│DC 0o────#8FF7
A13──┤A1│ 1o────#9FF7
A14──┤A2│ 2o────#AFF7
├──┤ 3o────#BFF7
│ │ 4o────#CFF7
A3──oE1│ 5o────#DFF7
/OIRQ──oE2│ 6o────#EFF7
A15──┤E3│ 7o────#FFF7
└──┴────┘
Сразу просьба ко всякого рода "радiоко-
ханцям": не трогайте порты #BFF7 и #DFF7 -
они уже заняты CMOS-часами, и лично мне не
хотелось бы иметь с этим проблем. С порта
#EFF7 я бы тоже советовал снять все эти
Virtual ROM, защелки и т.п. перевести их
на какой-нибудь другой порт.
Ну, ладно, с портами, вроде, разобра-
лись. Так автор упомянутой статьи еще и
терминологию перевирает. Неверно называть
хитрый Virtual ROM в верхних страницах ОЗУ
- псевдо-ПЗУ. Псевдо-ПЗУ - это ОЗУ от 2-х
до 16-ти килобайт, подставляемое на место
ПЗУ интерфейса ZX Lprint.
Сделаем вывод. Кто виноват в том, что
сложилась такая ситуация? Многие виноваты.
Что мы видим? Очередной умелец кидает в
толпу схемой своего девайса. Толпа, не по-
думав, начинает его себе делать, а потом
оказывается, что у соседней толпы на тех
же портах висит совершенно иной девайс. И
вот только тогда, когда у автора схемы
вместо модема включается винчестер, он на-
чинает думать (советую - иногда помога-
ет:)). А когда и у толпы, сделавшей (ку-
пившей) такой девайс начинаются те же глю-
ки... Я сочувствую автору. Всех этих проб-
лем можно было бы избежать (или хотя бы
попытаться избежать), если бы представите-
ли двух разных толп посоветовались, а сто-
ит ли им все это вешать на один порт. Все-
го лишь спросить у соседа! А не сидеть в
своей раковине, а потом обижаться...
А что же делать?
Для уже существующих железок альтернатив
мало. Могу предложить две: автоопределение
и драйвера. АВТООПРЕДЕЛЕНИЕ и ДРАЙВЕРА!
То, о чем многие забывают и забивают. Ко-
дер, если ты пишешь прогу для оборудова-
ния, которое может иметь несколько стан-
дартов, то не поленись, и сделай либо
внешний драйвер, либо автопроверку всех
известных тебе стандартов! Неужели это так
сложно?! А то иногда доходит до маразма -
есть "метр" памяти, а программа видит все-
го 128K, поскольку автор не удосужился
сделать драйвер или грамотное определение
размера памяти машины.
Ну а авторам новых наворотов, которыми
они хотят поделиться со всем миром, дам
один совет: прежде чем предлагать, спроси-
те, а не помешает ли это людям?
И лично для автора статьи: я так понял,
Вы хотите подцепить SIMM'ы и HDD? Если бу-
дете делать для себя - пожалуйста это Ваше
дело, но если для всех, то будьте добры,
ознакомьтесь с существующими стандартами
на данные девайсы.
Вот и все, о чем я хотел поведать чита-
телям "Оптрона".
──══ P.S. от Рашпиля ══──
Да... Интересная статья. В чем-то проти-
воречивая, но в чем-то и правдивая. Думаю,
не плохой повод для _здоровой_ дискуссии.
Интрсно, что думают по этому поводу наши
читатели.
С уважением,
Хакер Рашпиль,
Климус Владимир,
редактор газеты "Оптрон"
──══════════──