LINUX.ORG.RU

Умер сэр Клайв Синклер

 ,


2

2

16 сентября 2021 года ушёл из жизни небезызвестный изобретатель и бизнесмен Клайв Синклер.

Большинство теперешних российских линуксоидов начинало знакомство с миром компьютеров с ПК ZX Spectrum производства Sinclair Research Ltd, который был чрезвычайно популярен в нашей стране в 90-е годы прошлого тысячелетия. И только заядлый линуксоид Линус Торвальдс, не будучи гражданином нашей страны, был вынужден учиться программировать не на ZX Spectrum, а на Sinclair QL — другом компьютере от компании Синклера, сделанном на процессоре Motorola 68008.

Со временем Линус разочаровался в Sinclair QL и приобрёл IBM PC 386, который использовал для написания ядра Linux. Однако в дальнейшем линукс был портирован на процессоры серии M68K, а в конце 90х энтузиастами был представлен и модернизированный вариант Sinclair QL (материнские платы под кодовым названием Q40 и Q60), способный запускать Linux.

Хотя непосредственного участия в развитии экосистемы линукс cэр Клайв не принимал, для всех нас он является отцом-основателем наших первых домашних компьютеров.

RIP.

>>> Подробности

★★

Проверено: Shaman007 ()
Последнее исправление: sudopacman (всего исправлений: 4)
Ответ на: комментарий от XoFfiCEr

Это не совсем обязательно

Мало ли что в мире бывает. Я не про экзотику говорил. Но суть, конечно, не в PC и не в SP, а в разрядности шины адреса и адресных регистров.

Какую растеризацию? Ты ничего не путаешь?

https://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%BD%D0%B4%D0%B5%D1%80%D0%B8%D0%BD%D0%B3#%D0%A0%D0%B5%D0%BD%D0%B4%D0%B5%D1%80%D0%B8%D0%BD%D0%B3_%D0%B8_%D1%80%D0%B0%D1%81%D1%82%D0%B5%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F

Рендеринг и растеризация[править | править код]

Высокоуровневое представление изображения обязательно содержит
элементы, отличные от пикселей. Эти элементы называются
примитивами. Например, на схематическом рисунке отрезки и кривые
могут быть примитивами. В графическом пользовательском
интерфейсе окна и кнопки могут быть примитивами.

Спрайты тоже могут быть примитивами растеризации. Неужели не очевидно, что работа с графикой заключается не только в её выводе операциями пересылок?

anonmyous ★★
() автор топика
Последнее исправление: anonmyous (всего исправлений: 1)
Ответ на: комментарий от anonmyous

Разрядность всего вышеперечисленного совпадала и равнялась 16 битам

Эм, но разрядность шины адреса равнялась 20 битам у PC и 24 у PC AT.

gremlin_the_red ★★★★★
()
Ответ на: комментарий от gremlin_the_red

Эм, но разрядность шины адреса равнялась 20 битам у PC и 24 у PC AT.

Да при чём тут это, там чел привёл конкретные названия регистров Z80: PC и SP. Регистра PC в PC (пардон за тавтологию) нету. В том списке, что он привёл, разрядность всего и вся - совпадала.

anonmyous ★★
() автор топика
Ответ на: комментарий от XoFfiCEr

Спрайты не обязательно будут, растеризация не применима к Спектуруму

https://ru.wikipedia.org/wiki/%D0%A1%D0%BF%D1%80%D0%B0%D0%B9%D1%82_(%D0%BA%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80%D0%BD%D0%B0%D1%8F_%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%BA%D0%B0)#%D0%A1%D0%BF%D1%80%D0%B0%D0%B9%D1%82%D1%8B_%D0%B2_%D0%B4%D0%B2%D1%83%D1%85%D0%BC%D0%B5%D1%80%D0%BD%D0%BE%D0%B9_%D0%B3%D1%80%D0%B0%D1%84%D0%B8%D0%BA%D0%B5

Впоследствии с увеличением мощности центрального процессора от
аппаратных спрайтов отказались и понятие «спрайт»
распространилось на всех двумерных персонажей.

Так понятнее?

anonmyous ★★
() автор топика
Ответ на: комментарий от XoFfiCEr

Нет спектрум это примитивная графика, векторной нет в принципе, короче никакой растеризации.

https://en.wikipedia.org/wiki/Rasterisation

Rasterization may refer to the technique of drawing 3D models,
or the conversion of 2D rendering primitives such as polygons,
line segments into a rasterized format.

Может, так понятнее? :) В спеке и 3д растеризация присутствует в некоторых играх, и 2д.

anonmyous ★★
() автор топика
Ответ на: комментарий от anonmyous

3d вот возьмем к примеру nezher earth https://torinak.com/qaop#!netherearth там вроде и 3d и углы поворота и тени. Как скорее всего поступили разработчики? Они скорее всего сделали некий экранный буфер в который компоновали фигурки, здания, тени заранее рассчитав позиции, а потом просто ldir и все. Векторной графики нет.

XoFfiCEr ★★☆☆
()
Последнее исправление: XoFfiCEr (всего исправлений: 1)
Ответ на: комментарий от XoFfiCEr

рассчитав позиции

Ключевое слово. Надо рассчитать все позиции объектов/спрайтов на финальном кадре. А в изометрии, как в nether earth, это куда сложнее, хотя и без изометрии, обычно, есть «задник», двигающийся медленнее объектов переднего плана, есть перекрытия объектов, и тд. Вы таки всё ещё уверены, что разрядность ALU тут роли не играет, и что он вообще для этого не нужен?

anonmyous ★★
() автор топика
Ответ на: комментарий от anonmyous

А многие ли пользователи спека сменили его на денди, когда тот появился в наших краях? Цена - доступная, игры - неплохие по тем временам.

Думаю, что немногие. В пользу приставки было то, что не надо было ничего загружать с магнитофона. Вставил картридж — и играешь сразу. Но вот цена картриджей была запредельная. Масштаба точно не помню, но что-то типа пара картриджей — и уже цена приставки.

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

и всё это в любом магазине «Электроника» по доступным ценам.

Пардон, но в Казахстане у нас в магазинах Электроника ничего такого в то время не было. И в Смоленске — тоже. Я думаю, что ты говоришь про Москву/Питер.

Да вроде и на Spectrum +3 CP/M работал.

Ага, прям был широкий выбор, что купить. Что мужики спаяли в соседнем подъезде, то и покупалось. Какой еще 3+? :)

aist1 ★★★
()
Последнее исправление: aist1 (всего исправлений: 1)
Ответ на: комментарий от anonmyous

Это несложно рассчитать. Да в этом случае нужны арифметические операции, но в большей степени они нужны для рассчета позиции пикселя.

XoFfiCEr ★★☆☆
()
Ответ на: комментарий от anonmyous

Да дорогим он просто был! Каким ещё скучным? :)

Это да. Не для пацанов. Далеко не все игры были хорошими. Звук — пищалка. Графика — CGA (мы же про XT-шку говорим). Текстовый режим был качественно другим, это да. Но спектрумиста интересовала графика. А она на XT-шках была так себе. Потрясная графика была на VGA, но он далеко не у всех был. Потом, где-то в 1994-м хлынули клоны PC-486 с SVGA/SB, и про XT/AT забыли, как про страшный сон. А заодно и про Спектрум.

Но стоили они дорого,

В те времена мало кто игры покупал. Т.е. их покупать и негде было, так как реселлеров и дистрибуторов софта еще для нас не существовало. Просто переписывали у друзей. Цена — стоимость набора дискет.

aist1 ★★★
()
Ответ на: комментарий от aist1

Звук — пищалка. Графика — CGA (мы же про XT-шку говорим). Но спектрумиста интересовала графика. А она на XT-шках была так себе.

Так себе, или нет, но даже CGA имела 16К видео памяти, не имела клэшинга и других ограничений, присущих видео подсистеме спека. Кроме того, XTшка могла выдавать хорошую анимацию, недоступную спеку из-за хилого проца, и, попутно, ШИМом выводить оцифровку на спикер. :) И игры этим всем пользовались. И я не уверен, что владельца ХТ можно было переманить на спек. Скучной они её не считали, имея, до кучи, хард на 20Мб против нашего кассетника. :)

Цена — стоимость набора дискет.

Это когда он действительно «у всех» появился. По началу, когда копировать ещё было не у кого, играми отлично «барыжили», как частники, так и магазины.

anonmyous ★★
() автор топика
Ответ на: комментарий от aist1

Как программист, я еще долго был повернут на разной графике. Занимался разработкой GUI-тулкитов. Даже сделал свой аналог экселевской таблицы на Java. Но, в целом, PC-графика меня постоянно разочаровывала своей неконсистентностью. Софт тупо не вытягивал возможности железа. В том смысле, что создавал уйму прослоек сверху, сжиравших любые преимущества. Был большой разрыв в возможностях того же GUI и игр, работавших с низкоуровневыми интерфейсами. Ситуация выправилась только относительно недавно, с появлением OpenGL-акселерированного GUI. Но и здесь, опять же, погоду делают напрочь закрытые реализации открытых стандартов. Хотя, спасибо капиталистам с копирастами за поддержку Линукса, как-то жить можно.

И в этом смысле, мне был бы интересен какой-нибудь проект а-ля ZX Spectrum Next, но полностью на современной технологической базе. Типа высокопроизводительный RISC-V с различными акселераторами на борту (3D, звук, Neuro, шифрование и сжатие, и т.п.). И с модерновой операционной системой без тяжелого юникс-наследия, типа Fuchsia (или Haiku), нацеленной на максимизацию вовлеченности пользователя в хакинг самого компьютера. Малинка в этом смысле очень даже неплохая. Но хочется больше. Например, всё это можно сделать на вместительной FPGA, чтобы можно было хакать сам процессор.

Чтобы можно было учить детишек такой штуке, как software/hardware co-design. Новая горячая тема, от которой вибрируют мои железячные друзья.

Дополню. Вот есть у меня плата Arty A7-100T с FPGA на борту на 100K LE. На неё влезает 7 полноценных ядер RV64GC со всем, чем надо, и на 50MHz. Мало, но это FPGA. Если взять 2 ядра, то будет еще дохрена ресурсов на акселераторы. Цена железного вопроса — $200.

aist1 ★★★
()
Последнее исправление: aist1 (всего исправлений: 1)
Ответ на: комментарий от anonmyous

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

aist1 ★★★
()
Ответ на: комментарий от anonmyous

Спектрум брал ценой/фичами. Т.е. за его цену, его возможности были очень даже огого. XT-шка стоила раз в 10 а то и в 50 больше. Но за свои деньги ничего толком не давала сверху Спектрума, если не брать в расчет профессиональный софт. Ну да, мои бейсик-проги при портировании на GW-basic работали на XT раз в 5-10 быстрее. Это впечатляло. Но это быстродействие не сильно-то конвертировалось в fun от компа.

aist1 ★★★
()
Ответ на: комментарий от aist1

ничего толком не давала сверху Спектрума, если не брать в расчет профессиональный софт.

А ведь всего 10 минут назад говорили про игры, графику, ШИМ, 20Мб хард и дискетник… Как-то вы всё забываете. :)

anonmyous ★★
() автор топика
Ответ на: комментарий от anonmyous

Ой, не лови меня, плиз, на словах. Ты от этого ничего не выиграешь)

Что я говорил, что XT не создавала такой атмосферы вовлеченности, которую создавал Спектрум. По спекам XT была, конечно, на голову выше, хотя бы по памяти. Но, вот, если брать какой-нибудь распальцованный ATM-Турбо (который было не купить, но всё же), с дисководом, то выбор в пользу XT-шки был уже не столь очевиден. По крайней мере, я мечтал именно об ATM-Turbo. И только понимание, что «бобик сдох», а на дворе уже «386 — это драное старьё», давало понять, что выбора-то уже и нет. PC — и без вариантов.

Софтварный стек на PC был очень фрагментирован, по возможности закрыт и проприетарен. Софт не тянул сам и не позволял использовать все возможности железа. Игры все были под DOS и использовали проприетарные расширения для доступа к 32-битному режиму процессора. И только с появлением Linux ситуация вернулась к комфортному для меня уровню вовлеченности и консистентности среды для программирования и хакинга. Я Linux-only где-то с 1998 года. Винда у меня была второй ОС только тогда, когда она тупо требовалась для запуска какого-нибудь конкретного софта или для портирования моих приложений.

aist1 ★★★
()
Ответ на: комментарий от aist1

Что я говорил, что XT не создавала такой атмосферы вовлеченности, которую создавал Спектрум.

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

Игры все были под DOS и использовали проприетарные расширения для доступа к 32-битному режиму процессора.

В обсуждаемых ХТ такого не было, там как раз всё использовалось по максимуму. А потом произошёл такой вот «спотык», было дело. МС должны были нормальный эмулятор по-быстрому запились, но ntvdm таковым не получился.

anonmyous ★★
() автор топика
Ответ на: комментарий от anonmyous

В общем, рад, что мы договорились наконец. :)

Ну, слава всем всевышним сразу, и Линусу с Патриком! :)

В обсуждаемых ХТ такого не было, там как раз всё использовалось по максимуму.

Но у CGA максимум был не сильно впечатляющим)) Даже Корвет был значительно лучше. В моих глазах XT-шка сильно проигрывала АТМ по совокупности характеристик как хакерский компьютер. Если же брать как профессиональный (для тех программ, которым нас учили на занятиях УПК), то, XT-шка, конечно, была вне всякой конкуренции. Но меня последнее (dbase какой-нибудь, текстовый редактор или lotus) мало возбуждало.

aist1 ★★★
()
Ответ на: комментарий от lenin386

Ну вот прям на том-же сайте и написано что они совместимы: https://sinclair.wiki.zxnet.co.uk/wiki/ZX_Spectrum_edge_connector

Подозреваю что и идея была их сделать обратно совместимыми, ибо периферия она дорогая и покупать 2 раза одно и то-же раньше было не особо принято.

Q-Master
()
Ответ на: комментарий от aist1

В моих глазах XT-шка сильно проигрывала АТМ по совокупности характеристик как хакерский компьютер.

20меговый хард по дефолту - это была киллер фича, кто бы что ни говорил. Если же мы о доп периферии вдруг заговорим, и докупим к ХТшке VGA и SB… то придём, опять же, к тому, что всё-таки цена и была основным сдерживающим фактором. :)

Да и была ли? Сколько стоила АТМ?

anonmyous ★★
() автор топика
Ответ на: комментарий от lenin386

Лично видел такой разветвитель прекрасно работающий и выполняющий свои обязанности. Более того, буфер без проблем можно поставить на ответной части разъема и в спектруме он становится не нужен.

Не очень понимаю как может контроллер бетадиска портить оперативу если он никакого доступа туда не имел и даже порты его были доступны только при включенном определённом банке ПЗУ с TR-DOS. Весёлый гемор был как-раз читать всякими там извращёнными методами порты ВГшки напрямую для создания своих лоадеров, выполняя куски прошивки TR-DOS с нужной последовательностью команд, и как это всё весело не работало или работало неправильно на разных версиях TR-DOS.

Q-Master
()
Ответ на: комментарий от anonmyous

VGA были дорогими, на момент появления стоили несколько тысяч $, если я правильно помню.

АТМ был дорогой, да. Но, мечтать было же бесплатно, да?)

aist1 ★★★
()
Ответ на: комментарий от lenin386

А можно ссылку на такой ram expansion board, а то везде в этих ваших интернетах требуют просто впаять как-раз 64Kx1 цитата: Can be used individually or in any quantity to replace any of the original Upper RAM chips used in the Spectrum 48K (eg: Texas Instrumenents TMS4532-15NL3, TMS4532-15NL4, OKI M3732H-20, M3732L-20).

Я вот вижу по даташитам, что все официально ставившиеся микросхемы Upper RAM официально 32Kx1, поэтому даже в условиях этой волшебной ram expansion board ни о каких потерях в 32 килобайта речи не идёт. 16 килобайт + 32 килобайта (8х32килобита) = 48 килобайт ровно.

ПЗУ никогда не затеняло ОЗУ, оно было прибито гвоздями к адресам 0х0000 - 0х4000, реальная память физически начиналась с 0x4000. Это уже дальше при расширении появился 0x7FFD порт в котором можно было подменять одну из страниц (а после появились и возможности произвольно мапить страницы)

Q-Master
()
Ответ на: комментарий от aist1

VGA были дорогими, на момент появления стоили несколько тысяч $, если я правильно помню.

Да пусть хоть EGA. Вот у АТМок был EGA режим, но нормальную анимацию проц не вытянет, так что толку то.

anonmyous ★★
() автор топика
Ответ на: комментарий от anonmyous

У меня на Профи+ вполне замечательно работала, я даже что-то там делал, но было не так привычно как в режиме спектрума и грузиться с диска было лень постоянно. Винчестеры тогда были суровой редкостью.

Q-Master
()
Ответ на: комментарий от anonmyous

Для игр и анимации использовались режимы с низким разрешением. Всякие «EGA» — это уже для профессиональной статичной графики, не для игр. Я помню, что у друга в 640x480x265 quake выводил более-менее только, когда его P166MMX разгоняли до 200MHZ. Вот какой камень нужен был, чтобы чисто в софте раскрыть возможности видеорежима. Зато, dos extender, watcom c++, P200MMX — это был графический powerhouse, о котором мы мечтали. Идеальная машина своего времени.

aist1 ★★★
()
Ответ на: комментарий от aist1

Для игр и анимации использовались режимы с низким разрешением.

И клэшингом? :)

Я помню, что у друга в 640x480x265 quake выводил более-менее только, когда его P166MMX разгоняли до 200MHZ. Вот какой камень нужен был, чтобы чисто в софте раскрыть возможности видеорежима.

Про 3д графику речи нет - это совсем, совсем другое. Проблема с z80 была в том, что там нельзя было рассчитывать на что-то большее, чем перемещение некоторого кол-ва небольших спрайтов по экрану. В общем, прмерно это и называли 8битной графикой.

Зато, dos extender, watcom c++, P200MMX — это был графический powerhouse

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

anonmyous ★★
() автор топика
Ответ на: комментарий от anonmyous

Было и полноценное софтовое 3D, 1fps но было. С заливкой штриховкой и текстурами очень низкого разрешения. Видел несколько таких игр.

slapin ★★★★★
()
Ответ на: комментарий от anonmyous

Я на Скорпионе CP/M гонял, разрешение экрана было шибко низким чтобы 80x25 символов сделать, в остальном все для CP/M-80 работало хорошо (да и чего там не работать? стандартизованное же API). Всякий спецсофт заточенный на определенное железо не работал, конечно. Но я сталкивался всего 1 раз. А, еще с KOI7 были траблы, это очень странная штука, но увы, совместимость с 7-битным набором символов тех лет. Но в общем это была не специфика именно спектрумовских клонов а вообще особенности локализации систем тогда.

slapin ★★★★★
()
Ответ на: комментарий от anonmyous

Зачем обязательно с клэшингом? Клэшинг был из-за того, что в 80-х экономили на памяти, так как память была очень дорогой. На AtariST/Amiga клэшинга в низком разрешении не было.

Я про P166MMX+SVGA true color к тому, что это тот уровень производительности, на который стоит ориентироваться всяким чисто софтовым ретрокомпьютерам на FPGA. На Arty A7-100T стоит 256MB DDR3-600MHz. Простейший целочисленный RV32i можно реализовать на примерно 300LE на 100-200 MHz в кластере по 8 штук. Из массивов таких PE, в сочетании с локальной скрэтч-памятью, можно делать всякие акселераторы приложений. В том числе и по игровой двумерной графике. 1-2 тяжелых RV32GC ядра (для OS) + массив легких RV32i+accel ядер (для акселераторов) + IO — вот это идеальная игрушка для тех, кто хочет снова попробовать хакинг-атмосферы Спектрума))

Я сейчас вовлечен в похожий проект, но там smart storage (смарт-контроллеры SSD на RV64).

aist1 ★★★
()
Ответ на: комментарий от anonmyous

Я уж и не помню :( Я так понял адаптирована под Скорпион с кого-то еще. Я так понял какая-то «официальная» версия под Скорпион. Но CP/M простая совсем, там сложнее было эмуляцию терминала писать под спектрумовский экран. Ну и рамдиск реализовывать.

slapin ★★★★★
()
Последнее исправление: slapin (всего исправлений: 1)
Ответ на: комментарий от anonmyous

Дело не в готовом чипе (их много, да), а в том, что само железо можно хакать. Фишка ретрокомпьютеров была в том, что железно реализовавалиь те функции (в первую очередь, графика и звук), которые CPU сам вытянуть в то время не мог. Потом, в 90-х, возможности CPU начали резко расти и про такой тип sw/hw co-design забыли на время. Сейчас снова вспоминают, особенно в мобильном секторе. Так как таким образом можно добиваться нехилой экономии энергии.

Вот я бы и определил ретрокомпьютинг как sw/hw co-design для домашний применений (развлечения, обучение программированию и т.п.). Тогда как парадигма 90-х — это максимальная изоляция софта от железа, для унификации и совместимости. Вплоть до тяжелых VM типа JVM.

aist1 ★★★
()
Ответ на: комментарий от aist1

Дело в том, что с появлением С++11 с его стандартной моделью памяти, JVM стала особо и не нужна для разработки легко портируемого многоплатформенного софта. И все эти изоляции с унификациями стали создавать проблем больше, чем решать. Да, разрабатывать кросс-платформенное приложение на С++ всё еще труднее, чем на Java или JS (Electron, etc). Но оно получается более функциональным.

aist1 ★★★
()
Ответ на: комментарий от aist1

Вплоть до тяжелых VM типа JVM.

JVM, благодаря джиту, всё равно в нативный код вам всё транслирует. Только ещё и оптимизирует на основе динамического профайлинга, чего от статического компилятора вы не добьётесь. Но что-то мы в офф-топик ушли…

Дело в том, что с появлением С++11 с его стандартной моделью памяти

Мне тут, в соседней ретрокомпьютерной ветке, попадался недавно код на C++11: Как настроить доступ к принтеру через dosemu и dosbox? (комментарий) Сами на таком пишите. :) Закодили всю логику в компайл-тайм, но как такое читать…

anonmyous ★★
() автор топика
Ответ на: комментарий от anonmyous

Дело не в JIT, а в изоляции кода от физической машины. Вплоть до того, что, например, писать кэш-птимизированный код под JVM весьма проблематично. А так, JIT/не-JIT — оно для java ортогонально совсем. JIT можно и для С++ делать. Причем, работает нормально. JIT входит в состав Clang.

Закодили всю логику в компайл-тайм, но как такое читать…

А никто и не говорил, что будет легко. Наоборот. Но кому хочется легко, можем питончика подвезти. Даже для того, чтобы железо дизайнить.

Суть в том, что сейчас фактор доступности софта уже не стоит, а в 80-е именно он радикально определял архитектуру. Портирование CPU-only приложений проблем не составляет. А акселераторов еще толком и нет, чтобы что-то можно было портировать.

aist1 ★★★
()
Ответ на: комментарий от aist1

Вплоть до того, что, например, писать кэш-птимизированный код под JVM весьма проблематично.

Правильно: платформо-специфичные оптимизации за вас джит должен делать.

JIT входит в состав Clang.

Пруфы, что уже входит - есть? Я только вот это нашёл: https://github.com/hfinkel/llvm-project-cxxjit/wiki Но это крайне узкоспециализированный джит, оптимизирующий инстанцирование шаблонов. Это, в общем то, ничего общего не имеет с явовским.

anonmyous ★★
() автор топика
Ответ на: комментарий от anonmyous

А, ерунда. Ты в спектрумовскую игру 'avalon' видимо не играл. Там как раз этот конфликт используется со слов разработчика.

XoFfiCEr ★★☆☆
()
Ответ на: комментарий от XoFfiCEr

Он много где «используется»… избежать-то его всё равно нельзя. А не можешь победить - присоединяйся. :)

anonmyous ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.