╔════──── ║ │ Стандарты: 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. от Рашпиля ══── Да... Интересная статья. В чем-то проти- воречивая, но в чем-то и правдивая. Думаю, не плохой повод для _здоровой_ дискуссии. Интрсно, что думают по этому поводу наши читатели. С уважением, Хакер Рашпиль, Климус Владимир, редактор газеты "Оптрон" ──══════════──