Инженер 2.1 (СИ) - Нерский Эд. Страница 86

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

Маги прореагировали на это довольно спокойно. Двое деловито взялись оказывать пострадавшему товарищу помощь, а остальных архимаг практически сразу отпустил.

— Им плевать на потери? — удивилась Кора.

— Скорее они выяснили, что полтергейст никогда не добивает жертву. Сейчас они должны попытаться как-то локализовать его. Я отлетел за пределы внутреннего города и стал ждать.

Архимаг скастовал какое-то плетение и всё пространство внутреннего города наполнилось антиэлементальным маревом с сильным градиентом от центра к периферии. Элементалям, находящимся внутри, должно захотеться покинуть город.

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

— Что ты делаешь?

— Эх жалко, что я больше не управляю полтергейстами, а то я бы научил их преодолевать это. — Ответил я, пролетая через границу города туда-сюда.

— Торговец предлагает мне сто пятьдесят золотых за два телепорта. Продаю?

— Конечно. — ответил я, отправляя ещё один горшок в десятисекундное путешествие вниз.

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

— Зачем ты его убил?

— Накатило что-то. Пусть считают, что полтергейст преодолел защиту. Побудут в напряжении, им полезно!

— Мы же сегодня собирались его похитить. А ну как он теперь не придёт? — укорила меня Кора.

— Тогда заберём его из постели. Но ты права, зря я это затеял. Я возвращаюсь домой!

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

Спустившись по лестнице этот эльф спокойно подошёл к креслу и уселся в него, закрыв глаза.

Как только он это сделал, я активировал нить идущую к плетению Слёз, расположенному под ним. Тело эльфа немедленно расслабилось и плавно съехало на землю.

— Уснул? — спросила Этера.

— Ага, а ты боялась: “Архимаг! Архимаг!”. Ну что, забираем его? Гляди-ка, У него три телепорта! Сплошная польза!

Я начал было конденсироваться у кресла, но был остановлен мыслекриком: “Стой!”. Плавно, не делая резких движений, я переместился обратно в ту же точку с которой мы наблюдали за происходящим. Вокруг архимага открывались один за другим телепорты, а из них выходили эльфы.

— Какую-то сигнализацию мы проглядели. — прокомментировала Эт.

Я отправил в ауру архимагу вампира: он будет забирать себе всю энергию, которая поступает туда, не давая ему прийти в себя.

Четверо магов занимались приведением его в чувство, а ещё десятка два разошлись по дворику, оглядывая окрестности, разбрасывая разнообразные сканирующие плетения.

— Поднимемся повыше и усыпим их всех! — предложил я, отправляя Ледяные Слёзы с таймером, настроенным на несколько секунд.

Увы, моё плетение не осталось незамеченным и почти сразу все эльфы оказались накрыты различными куполами защит.

Поднимаясь вверх, мы вдруг наткнулись на препятствие: вокруг всего внутреннего города мерцал купол энергетического барьера.

— Убежать не получится. — прислала взволнованную мысль Эт.

— Вижу. Придётся ждать и прятаться.

Конденсатор интегратора зарядившись до порога срабатывания запустил Слёзы. Внизу сверкнуло в аурном зрении и я переместил туда своё внимание. Слёзы смогли свалить только трёх из двух десятков эльфов, остальных же моё убер-оружие не затронуло.

Четвёрка эльфов, занимавшаяся реанимационными действиями, решила не испытывать судьбу, а переместиться в более безопасное место. Архимага подняли и потащили внутрь здания. Чтобы не потерять его, я соединил себя и его ауру нитью в Сути.

Крыши зданий, внутренний дворик ратуши, площадь и весь центр города были переполнены эльфами.

— Тащат какую-то штуку. — взволновано прокомментировала Эт. — Это артефакт Слёз Дракона! Нужно срочно бежать отсюда!

— Вот на этой крыше нет никого. — выбрал я, стараясь сохранять спокойствие, хотя получалось не очень. — Она не предназначена чтобы по ней ходили. Давай переждём атаку на ней. Нам нужно объединить сознания, чтобы пережить это молоко. — предложил я.

Два облачка сконденсировались в лужицу на крыше и вода начала стекать вниз.

— Не получается удержаться! Здесь везде наклон!

— Да, это же крыша. Так и должно быть. Что-то я не подумал об этом. Но уже поздно что-то менять!

До боли знакомое, неприятное бело-жёлтое марево молоком затопило всё вокруг. Необъединённые сознания потерялись в жёлтом тумане.

— Я не чувствую себя. Мы попались?

— Не думаю, что они ищут воду и пар. Скорее всего они ловят магов-диверсантов. Так, что просто подождём. Но если и поймают — то надеюсь, что в виде облачка пара можно будет сбежать.

— Кажется будто время остановилось. Движется оно только при произнесении мыслей.

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

— Как ты можешь в такой ситуации думать об измерениях?

— А больше же ничего не остаётся. Мы могли бы сломать этот артефакт, я даже знаю способ. Но, если это сделать, то они будут знать на кого охотиться. Придётся просто ждать. А ждать, ничего не делая, в этом молоке гораздо труднее.

Что мы хотели доделать по Ориону-128? Давай займёмся пока время стоит.

— Стек! Мне непонятно как под него выделять память, если будет запущено множество ядер.

— Просто же! Каждому ядру по какому-нибудь куску памяти для стека на старте его CPU и всё!

— Ну вот представь, — начала рассуждать Эт — захотим мы внести какие-то добавления в сам Орион-128. Чтобы это сделать нужно будет задействовать почти все имеющиеся ядра. Так?

— Так.

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

— И что ты предлагаешь?

— Выделить пространство памяти для стека внутри каждого ядра. Так же как у нас сделана регистровая память.

— Ну что же, идея хорошая. А при переполнении этого пространства будет вызываться ещё одно исключение. Нужно определиться с тем, сколько этой памяти в ядре делать. На практике, в моём мире, большинство программ укладывались в стек размером в одну-две страницы памяти. То есть пятьсот-тысячу слов.

— Компьютер же называется Орион-128? Пусть будет 128К слов.

— А и правда, не нам же его делать, он сам себя сделает. Пусть так и будет. Итого, что нам нужно? Ещё один селектор адреса для внутренней стековой памяти. Он получается простой, поскольку доступ к нему только от одного CPU. И сама память. Команды работы со стековым регистром мы уже сделали. Получается переделываем вот здесь и вот здесь. И в регистре статуса появляется новая причина исключения.

Работа по доработке ядра заняла у нас чуть ли не целую вечность. Мы не могли заставлять наш прототип компьютера плести пробные плетения, поскольку время стояло. Поэтому работа продвигалась очень медленно. В дальнейшем пришлось перепроверять всё что мы наделали будучи окружены молоком. Переделка одного блока тянула за собой переделку другого. Пришлось так же добавить ещё пару команд в ассемблер процессора.

Справившись с изготовлением плетения стековой памяти, мы доделали шины доступа к управляющим регистрам и регистрам статуса каждого CPU.

Субъективно на все эти работы мы потратили что-то около месяца времени, а жёлтый туман не заканчивался и не заканчивался.

— Сколько времени прошло?