Вперед в прошлое. Продолжение.

0
Вперед в прошлое. Продолжение.

Продолжаю повествование, начатое в предыдущем посте. Да, да, каюсь, виноват, не успел выложить этот пост вовремя, но, IMO, лучше уж с задержкой, чем совсем никогда. Впрочем, предыдущий пост не получил до сих пор ни одного комментария, так что, не так уж, наверное, и этот будет важен. Сказать совсем уж по правде, лытдыбр я веду, по сути, для себя, да и блог у меня не привязан к какой-то жесткой тематике. Так что – имею полное право на подобного рода публикации. Впрочем, я отвлекся.

Итак, работал я в те веселые лихие годы в котельной. Потому как никакого специального образования не имел (только-только после школы), то начинал как ученик электромонтера, а после сдачи экзаменов и получения корочек начал работать более-менее самостоятельно.

Отчасти это была просто замечательная и приятная работа: мозг не напрягался совершенно. Достаточно было знать несколько простых правил – и ничего с тобой не случится, да и работа будет выполнена практически на ура. Тем, кто помнит работу на заводе в лихие 90-е и начало унылых нулевых и так прекрасно известно о размерах и регулярности выплаты заработной платы.

Впрочем, лично для меня зарплата не была основной целью. Именно благодаря наплевательскому отношения начальства к подчиненным, аналогичным было и отношение этих самых подчиненных к своим обязанностям. В частности, обеденный перерыв (неофициально, конечно!) мог длиться до 3 часов (с 11 до 14 часов). Вот это время у меня и было посвящено развитию в плане кодинга на Speccy. Постоянно держал при себе тетрадь и ручку для этих целей. Наверняка сейчас многим покажется диким программировать на бумаге, но уверен на сто процессов – не я один занимался таким.

В прошлом посте я упомянул про некие пасьянсы. Вот они-то и стали предметом жутчайшей ностальгии по старым временам. Такой жутчайшей, что я не удержался и опубликовал эти два поста: нынешний и предыдущий. Дело в том, что это были своеобразные “шаманские ритуалы” на тему “дадут сегодня зарплату или нет”. Ну да и просто так можно было убить немало времени, раскладывая эти самые пасьянсы.
Вперед в прошлое. Продолжение.
Сразу уточню один момент: пасьянсы эти раскладывались не с помощью игральных карт. Инструментом для них служили кости домино. Вкратце о правилах: выкладывалась определенная фигура, которую нужно было разобрать, открывая кости домино определенным образом и попарно убирая те, на которых суммарное количество точек было равно двенадцати. Вот тогда-то мне и захотелось перенести эту игру в электронный вид (кодер я, в конце-то концов или где?!).

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

Никуда я, кстати, и не спешил. Главное было для меня – сделать КАЧЕСТВЕННО! (Так с тех пор и осталась эта неприязнь к высокоуровневым языкам, а уж насколько я сжимаю сердце, работая с ООП, догадайтесь сами) Максимально качественно. Оптимизировалось все: циклы, массивы, переходы. Часто, например, оператор загрузки аккумулятора значением (который, собственно, для этого и служит) заменялся логическим оператором, на первый взгляд, совершенно здесь неуместным. Только вот если учесть, что этот оператор работает быстрее, выполняет то же действие, что и “официальная” команда, а помимо всего этого еще и четко выставляет флаги (лично мне нужен был обязательный сброс флага переноса, как сейчас помню), то становится ясно и понятно, почему использовался такой вот хак, вместо написания понятного для чтения другим человеком кода.
Вперед в прошлое. Продолжение.
Но вернемся к пасьянсу. Итак, листинги вынашивались, тестировались отдельными процедурами, переделывались, снова тестировались. В итоге накануне одной из Crazy Siberian Party (такая массовая встреча спектрумистов в Новосибирске на природе) я сел и за ночь соединил все эти процедуры, приделал простенькую заставку, не успел даже музыку прикрутить, не говоря уже о чем-то красивом и серьезном. Так и ушла эта игрушка в люди незавершенной демкой. Даже в игровом процессе впоследствии обнаружился один баг, который, впрочем, только облегчал игру. Ну а после я накопил-таки денег на PC и ZX Spectrum ушел из моей жизни… как мне казалось.

И вот, совсем недавно мне по почте прислали ЛИСТИНГИ игры. Мои листинги! То, что я так долго в свое время вымучивал!! Мою юность!!! Просьба была одна: доработай, выпусти окончательный релиз. Чем я и занялся, по прошествии стольких лет бездействия, снова вспоминаю ассемблер, точки входа процедур ПЗУ и прочие нужные для кодинга на Speccy вещи. В следующем году, наверняка, тоже будет CSP. И, знаете, я хочу туда съездить. И приехать не с пустыми руками.

Такие вот дела, уважаемый мой читатель. Простите уж, что окунул Вас в те далекие годы. Пожалуй, да, пора выныривать и возвращаться, как говорила Масяня “в наш дерьмовый мир обратно”. Насчет дальнейших “приступов ностальгии” обещать, сами понимаете, ничего не могу: все-таки я тоже человек. А иногда так хочется просто сказать. Может быть, даже в пустоту, но сказать, не держать в себе. Ну да ладно. До скорых постов, уважаемый мой читатель.

Внимание! При копировании данного материала обязательна прямая текстовая ссылка на эту страницу.

LEAVE A REPLY