27.08.98 г.Сургут Здравствуйте, уважаемый капитан Nemo! Пишет Вам простой спектрумовский ко- дер. Так как Вы являетесь схемотехником Спекки, то я хотел бы ознакомить Вас с моими размышлениями о будущем платформы SPECTRUM. Я уверен, что не первый в этом деле и попытаюсь учитывать это. 2. Итак, на сегодня самые приоритетные пути развития таковы: Аппаратные: 2.1. Развитие чисто процессорной мощ- ности без потери совместимости. 2.2. Резкое увеличение графических мощностей. Музыкально-цифровые ушли после появле- ния GS. Программные: 3.1. Новая операционная система с ав- тонастройкой на все аппаратные характе- ристики компьютера и периферию и исполь- зующая все доступные ресурсы. 3.2. Появление мощных систем в сфере музыки и графики (MULTIMEDIA). И общая проблема стандартизации. 4. Я ознакомился с многими проектами (Splinter, GMX, Transformer), но с моей точки зрения, появление "Монстра" повле- чет следующие проблемы: 4.1. Понижение совместимости. 4.2. Неокупаемость проекта (пользова- тель просто не сможет купить еще один компьютер, даже если будет стоимость убы- точной для продавца). 5.Вот мои задумки (этакая помесь всего сказанного на эту тему). 5.1. Резкое повышение процессорной мощности без потери совместимости (это скорее вопрос к Вам - можно ли сделать такое чисто аппаратно?) 5.2. "Акселератор" вставляется вместо процессора через шлейф, а процессор, по- кинувший насиженное место и вставляется в "акселератор". По умолчанию (после сбро- са) активен Z-80. Каким-либо портом пе- реключается текущий процессор, банк ОЗУ и ПЗУ. в ПЗУ можно записать инициализацию Z-180, BIOS, AUТOCONF и т.д. 5.3. Примечание (*): Регистры можно передавать и программным путем. 5.4. Я, к сожалению, не разбираюсь в электронике, но все же думаю, что немного логики здесь есть. 6. Графика. Здесь почти все как в GS. 6.1. По умолчанию (после сброса) уста- навливается обычный спектрумовский экран и определяется доступная видео память. В ПЗУ защита управляющая программа, процедуры операций с графикой 4-х видов: - текстовые режимы; - растровая (блочная); - векторная 2D (линии, круги, заливка и т.д.); - векторная 3D (прорисовка трехмерных объектов, 3D масштабирование и т.д.) 6.2. Было бы неплохо, если присутство- вало: - Переваривание BMP, JPG, TIFF, PCX и т.д. - Распаковка запакованной информации (графики). - Математические функции. Еще важно делать в таких картах прямой доступ к памяти (в данном случае - видео- памяти). Ну, а в РЗУ хранятся переменные. Помимо встроенных, не помешала бы под- держка произвольных режимов (dXxdYxC) и палитры (в пределах доступной памяти). Наличие возможности (неограниченного) расширения видеопамяти и замены процессо- ра. 7. Вот, пожалуй, и все о железе. Сам я сейчас разрабатываю мощнейший (для Спекки) графический редактор. В нем будут реализованы ранее нереализованные на Спекки: - Векторные FONT'ы. + Градиентная заливка ("Моховой" теч- турой) + 16-ти битная последовательность "формы" линии (пунктир и т.а.) + REAL TIME MAGNIFI X8 - редакторы FONT'а, "формы" линии, текстуры, точки (8х8) и т.д. + 2 экрана - подключение вместо точки любого об- ъекта (линии, круга, окна) + безошибочная заливка - масштабирование, перспективы, нак- лон, кручение и т.д. "+" - уже сделано и работает. Также уже сделаны все графические примитивы. Все операции производятся с максимальной для Спектрума скоростью. В общей сложнос- ти сделано около 30 %. Длина маш. кода всего редактора будет около 40 Килобайт или около 12000 команд (это на глаз). Сейчас где-то 12к кода. Учитывая масштабы работ и то, что я один, срок выхода более чем неизвестен. Тем более, что для многих операций прихо- дится разрабатывать новые алгоритмы (или неоткуда взять, или меня не устроили их характеристики). Таким образом, родился новый алгоритм прорисовки линии (та часть процедуры линии, которая принимает реше- ние - переходить или не переходить на точку вниз представляет собой 11(!) ко- манд процессора Z-80, включая единствен- ную команду перехода JP M - она выполня- ется как результат раздумий. Этот же ал- горитм используется при масштабировании, наклоне и т.д. Хотелось бы узнать мнение г.Брезенхема по этому поводу. 7.2. Также был разработан совершенно новый алгоритм заливки. У него пять ос- новных достоинств: 7.1. Четко установленный размер буфера (2 * макс.размер области заливки, для Спекки 2*6144=12к). 7.2. Огромная скорость (на Спекки бо- лее 30000 точек/секунду). 7.3. Кореляция между сложностью релье- фа и временем заливки стремится к нулю. 7.4. Соотношение "чем меньше макс.раз- мер области, тем выше скорость "заливки" является герметическим, т.е. если весь экран (49152 точки) заливается 68 frames (1.36 сек.), то окно для векторной буквы (64х64) зальется в пределах 5 frames. 7.5. Полная безошибочность. Данный ал- горитм исключается ошибки на 100 %. Реа- лизация данного алгоритма на Спекки ГА- РАНТИРУЕТ заливку ЛЮБОГО объекта в преде- лах 5 (пяти) секунд. Хотя скорость можно увеличить где-то на 20-25 %, но надо кон- вертировать весь экран в формат "линия за линией" и потребуется еще 6 килобайт. Все цифры указаны с учетом того, что процессор работает на частоте 3.5 Mhz. Вот и все, что я смог написать. 8. Уважаемый капитан Nemo! Я хотел бы узнать Ваше мнение по всему вышесказанно- му и заодно получить последние прайс-лис- ты. 8.1. P.S. Можно ли запатентовать алго- римы, если - да, то как? 8.2. P.P.S. Если Вы захотите ознако- миться с вышеназванными алгоритмами, то я Вам представлю их с полным описанием их работы. 8.3. P.P.P.S. Прошу извинить за все допущенные мной в тексте ошибки и опечат- ки. С уважением N. 11.09.98 г.Сургут 26.11.98 C Nemo Здравствуйте, N! Извиняюсь за задержку ответа, т.к. на письма такого рода весьма затрудняюсь от- вечать. Ошибочен сам подход к проблемам Spectrum'а. Согласно формальной логике, из неверных попыток (False - англ., блядь - ложь, мошенничество, прельщение глу- постью - старорусское) может следовать все, что угодно, в том числе и истинные утверждения. Вместе с тем, все в целом - неверно, несмотря на то, что есть и ис- тинные утверждения. Также можно заметить, что Вы слишком злоупотребляете просмотром телепередач (телевизора) и чтением массо- вой "желтой" компьютерной литературы. Ваша основная ошибка - это уверенность в том, что основополагающей причиной раз- вития компьютеров является рост их техни- ческих параметров. По Вашему мнению, это первопричина, "перводвигатель" всего, что происходит в компьютерном мире. Это не так. Технические характеристики - это следствие развития платформ как со- цио-культурных (или кибер-социальных) об- разований. Ровно настолько, насколько хо- рошо структурно развита платформа и нас- колько она массовая, какие задачи решают- ся на платформе, - гос.управление, про- фессиональная и коммерческая деятельность (IBM); демомейкинг, кулибинство, изучение компьютерной техники (Spectrum), - зави- сит и техническая "навороченность" аппа- ратуры. Бессмысленно ставить телегу впе- реди лошади и выпускать микроскопы для того, чтобы ими забивали гвозди. "Итак, на сегодня самые приоритетные пути развития таковы". 1. Изменение спектра задач платформы Spectrum. Как за счет внедрения в массы пользователей новых областей применения Spectrum'а и новых приемов и сфер исполь- зования, так и за счет совершенствования уже имеющихся структур и сфер использова- ния. 2. Эволюционное, непрерывное развитие платформы. При таком подходе темп разви- тия определяется не "навороченностью" са- мого крутого "монстра" (а их наплодили немало), а интенсивностью замены устарев- шей техники. Переход на новые, более со- вершенные стандарты и отказ от старых, себя исчерпавших. С финансовой точки зре- ния можно и нужно делать лишь то, что в состоянии оплатить пользователи. Т.е. по одежке протягивать ножки. Бессмысленно вкладывать деньги в нищих, они никогда не вернутся. 3. Развитие идеологии Spectrum'а. Что- бы каждый ламер знал, что Spectrum - это телевизор и только телевизор как устройс- тво отображения. Что это менять нельзя, иначе плохо будет всем, т.е. всему сооб- ществу. А вот, например, магнитофонный интерфейс можно и нужно убрать. Что рабо- тать необходимо "под "операционной систе- мой", а не "с ней" или "над ней". Что операционная система должна быть одна. (Представьте себе, что кроме TRDOS'а су- ществовали бы и все остальные дисковые интерфейсы, что "наплодились" в Европе? Spectrum бы просто не состоялся как плат- форма). Теперь попробуем проанализировать Ваши предложения с этих позиций, а не исходя из расхожей глупости "Spectrum'у не хва- тает технических характеристик". Итак, по пунктам: 2.1. Давайте развивать "чисто процес- сорную мощность" (подразумевается, види- мо, тактовая частота). Сейчас машин с грамотно сделанным Turbo-режимом единицы процентов от всего парка. Программ под них нет, - а посему никто и не знает, что там турбо-режим сделан грамотно, а не че- рез задницу. Вот и напишите программу, которая бы задействовала эти характерис- тики. Это и будет развитие. 2.2. Для графических мощностей нужен дисплей (именно дисплей, а не телевизор без радиоканала отечественного производс- тва, который ламеры называют "дисплеем"). Попробуйте продать хотя бы парочку, а по- том бесплатно их обслуживать, - денег то у пользователей нет! Полезно также для усугубления понимания этой проблемы про- дать еще парочку дисплеев по почте в де- ревню, скажем, Тьмутараканьку, где напря- жение скачет в районе 150-300 вольт, и посмотреть, как они там технически прод- винутся. 3.1. Давайте сделаем новую операцион- ную систему. За мой счет, за Ваши деньги. Платить-то больше некому. Потратим 10-20 человеко-лет на создание, отладку и шли- фовку кода, напечатаем (а главное, расп- ространим!) тонн эдак 50 сопроводительной литературы, закупим штук эдак с двадцать клонов Spectrum'а (а их именно столько на просторах России). Наймем помещение для их установки. Заимеем телефон, абонент- ский ящик (это необходимо для обратной связи и сопровождения клиентов - а то как Вы узнаете, где система глючит?). Во вре- мя перекуров в этой кипучей деятельности мы на подоконнике офиса в порядке совме- щения приятного с полезным напишем первую версию операционной системы, так что ее стоимостью можно пренебречь. Вероятно стоить это будет тысяч эдак 300-500. Рек- визиты указаны в прайс-листе, как только перечислите деньги, так сразу и присту- пим. 3.2. А зачем мощные системы музыки и графики (MULTIMEDIA - термин-то какой! По телевизору, наверно, услышали?)? Есть Amig'а. Есть IBM. Вообще же говоря, есть и GS. Проблемы современной музыки коре- нятся не в несовершенстве музыкальных инструментов, а в несовершенстве слушате- лей. Зафиксированы прецеденты, когда не только исполнители пользовались фонограм- мой ("фанерой"), но и зрительный зал. Кроме того, чем "сложнее", "навороченнее" аппаратура, тем дороже код (программы) к ней. Как в себестоимости (т.е. цене для ее создателя), так и в оконечной цене для покупателя. Дилетантский (непрофессио- нальный) подход к программированию в этом случае будет уже невозможен. Если Вы в одиночку пытаетесь создать такой продукт, то лет эдак 15 это у Вас займет. В струк- тур (фирм) в Spectrum'е практически нет. 95 % - это кулибины-надомники, финансиру- ющиеся за счет родителей. Даже если пред- положить невозможное, что эти 15 лет Вы честно отработали - кто это купит? Даже те достаточно простые программные продук- ты, распространяемые на коммерческих ус- ловиях, оплачиваются, что называется "че- рез пень-колоду". А ведь есть еще пира- ты... 4. Splinter и GMX - это действительно проекты. Transformer - это концептуальная разработка. Как ни странно, концептуаль- ная разработка может быть более реальной, чем проект. Если бы "Transformer" был проектом, то он бы, несомненно, оказался "монстром". Вместе с тем, если Вы перечи- таете начало письмп, то обнаружите, что в перспективе Transformer возможен, а вот Splinter и GMX невозможны даже в перспек- тиве. 4.1. Понижение программной совмести- мости неизбежно. Допустимо: 90 % транзитивной программ- ной совместимости, 95 % прямой программ- ной совместимости. При этом развитие бу- дет плавным, без складок и многозначнос- ти, т.е. непрерывным. Будь Transformer реализован сейчас, соответствующие пара- метры бы составили 60 % и 50 % соответс- твенно. Итого имеем: 0.6 = 0.9n. Решаем относительно n : n = lu (0.6) / lu (0.9) n - 5. Т.е. необходимо примерно пять про- межуточных моделей. Учитывая, что по це- лому ряду причин модели не могут сменять- ся чаще, чем через год и реже, чем через два, то получаем лет эдак 5-10. И самое главное, рынок должен быть готов к реаль- ному применению такой техники. Так что основная проблема в мозгах, а не в желез- ках. 4.2. То, что неокупаемо в пределах го- да, окупаемо в пределах 10-ти лет. Причем пользователю совсем необязательно поку- пать еще один компьютер. Это абсурд. Сог- ласно п.4.1. ему придется купить 5 комп- ьютеров! Необходимо менять платы и делать upgrade. в таком случае пользователь бу- дет регулярно финансировать производите- ля. Серия KAY уже имеет upgrade-цепочку из 5-ти моделей (RAY-256/2SL-94 г./V 1.0 до KAY-1024/3SL-TURBO- 98 г.). Разница в цене между моделями плат составляет в среднем 100 рублей. При этом все платы работают, и только самые первые модели начинают утилизироваться. Это альтерна- тивный "доработкам" (кухонным) подход. Нетрудно заметить, что после 3-х дорабо- ток (с примерно 50 %-ной вероятностью) комп летит в мусорный бак. Отремонтиро- вать его невозможно, продать также. Вот это и есть попадание на деньги, т.к. не- обходимо покупать новый комп (1000 р. - сравните с 500 р. - по upgrad'у в расс- рочку на 5-10 лет). Так как у пользовате- лей денег нет, то они перестают таковыми быть. 5.1. Пересчитайте все вышенаписанное. И, главное, поймите: быстро только кошки сношаются, - все остальное происходит медленно. Что же касается диаграммы 1, то это что-то до боли знакомое мне напомина- ет - уж не GMX ли? Вы берете одноэтажный сарай, - который и так вот-вот развалит- ся, - и делаете его двухэтажным. Нелогич- но. Под дальнейшей перспективой, видимо, понимается третий этаж и мансарда. Это уж и вовсе из области фантастики. Но можно, - у нас в России все можно, - она всегда славилась дураками и дорогами. Первых не стало меньше, вторые не стали короче. Единственное, что необходимо продумать, это как Вы объясните тот простой факт, что устойство в диаграмме 1 будет дороже аналогичной, целиком новой платы? В ка- честве резонов можно попенять пользовате- лю на его сарай и сказать: "не плачь, еще послужит, ты так к нему сердцем прирос, каждая микросхемка тебе в нем дорога. Да- вай сварим же суп из топора". Вот так и попадают на деньги. 6.2. Диаграмма 2. Ага, вот и мансарда. Знаете, сколько будет стоить этот агре- гат? Один только квадратик, скромно спря- танный в углу диаграммы, а именно прямоу- гольничек "Декодер PAL/RGB" обойдется Вам один рублей эдак в 300. В фирменных Spectrum'ах TV-интерфейс (т.е. аппаратные навороты, отвечающие за соединение с TV) занимает от 25 до 30 % площади платы (и, соответственно, стоимости). Кстати, а зачем из диаграммы выходит стрелочка к BUS? Вполне законченная конс- трукция, однако. Spectrum больше не ну- жен. Хотя нет, я не прав, ннеобходим по- вод, чтобы это впарить. Тут-то шина и пригодится. По п.6.1. Слушайте, а зачем все это надо (имеется ввиду перечень п.6.1)? При- ведите пример хотя бы одной реальной пос- тановки задачи, за которую кто-то будет готов отдать деньги. Имеются ввиду не мнимые, эфемерные возможности (так ска- зать, прельщение мыслеобразами), а реаль- ные применения? Вместе с тем, весьма удовлетворен знакомым Вам набором слов из компьютерной отрасли. Какой будет резуль- тат на уровне платформы? Что полезного это принесет пользователям? Что они будут делать после того, как им надоест разга- дывать этот ребус и пытаться как-то прак- тически использовать? 6.2. Насчет переваривания BMP, JPG, TIFF, PCX и т.д. ничего сказть не могу. Здесь Вы превзошли меня. Эти термины мне не знакомы. Профессионал характеризуется не только тем, что он знает, что ему не- обходимо для работы, но и не знает того, что ему не нужно. Заем забивать себе го- лову ерундой? вообще по п.6.1. и 6.2. замечу следую- щее. Архитектуры не аддитивны. Это зна- чит, что "лучшее - враг хорошего". Если выразиться более академично, то архитек- тура, как и любая сложная система необя- зательно оптимальна, если составлена сплошь из оптимальных узлов. И наоборот - архитектура (структура) может быть опти- мальной, даже если составлена частично из неоптимальных по отдельности узлов. Если собрать все мыслимые достоинства различ- ных архитектур в одну, то получится один крупный недостаток. Куча - она и есть ку- ча. Это, кстати, главное, что не поняли разработчики Spectrum'а. Они собрали все пожелания ламеров в ону кучу. Куча и по- лучилась. Ну и напоследок. Когда человеку требуется неграниченное количество мозгов (памяти), то это бросает мрачную тень на на его собственные мозги. Компьютеры, по- нимаемые как архитектуры, комплиментарны ментальности. Это силлогизм. 7.1. Относительно программного обеспе- чения - здесь я и не специалист, и не профессионал. Обращайтсь в фирмы, которые занимаются soft'ом. Единственно, что хо- телось бы отметить: п.7.3. необходимо пе- реформулировать: "Время заливки практи- чески не зависит от сложности рельефа". 8. Алгоритмы патентовать для себя бессмысленно. Патентный механизм предназ- начен не для гарантирования пенсиона за однажды случившееся посещение умной мысл- ью чьей-то головы. Авторское право защи- щает прежде всего реализации, а не идеи. Между этими понятиями есть некоторая раз- ница. По существу, это защита инвестиций (капиталов), направляемых в области повы- шенного риска. Под капиталом (инвестици- ей) можно понимать и Ваше личное время (труд), затраченный на создание продукта (готового продукта, а не идеи!), и прямые денежные средства, и накладные, стоимость оборужования для получения результата и т.д. и т.п. Т.е. главная цель авторского права - это не обеспечить кому-то безбед- ную старость, а защитить инвестиции с риском и поспособствовать превращению этих инвестиций в капиталы. Не следует путать деньги с капиталом. Деньги - это просто деньги. Капитал же - это работаю- щие в определенном направлении деньги, - как бы рабочее тело. Утомительно давать подробное юридическое толкование с приве- дением прецедентов. Попробуйте понять это в том виде, как сказано. Применительно к Вашему письму необхо- димо отметить, что готовый продукт вряд ли не за горами. Юридически правом распо- ряжения реализацией (продукта) обладает тот, кто понес основные затраты. В част- ности, в фирмах продукты интеллектуально- го труда становятся собственностью самих фирм, а не тех людей, которые по трудово- му соглашению этот продукт наработали. Что же касается способов защиты авторско- го права, то государству сейчас не до этого, и спасение утопающих - дело рук самих утопающих. Приведу пример эффектив- ной защиты своих авторских прав. Когда на рынке Казакова (СПб) появились "левые" версии "НЛО" Славы Медноногова, то он, не долго думая, направился к г.Зонову и ска- зал ему примерно следующее: "Если продажа левых дисков не прекратится, то следующая версия на Scorp'е работать не будет". г.Зонову пришлось отъехать не солоно хле- бавши. Действительно, нехорошо гадить там, где жрешь. В аппаратуре применяются более сложные комбинации - их долго об- ъяснять. Смысл в том, что в конечном сче- те удар приходится по карману того, кто "украл".