• Way of Tanks

    Way of Tanks

    Way of Tanks – это танковый ранер с бесконечным геймплеем и разнообразной трассой. Игрок свайпами

    Read more »
  • Road Fighter

    Road Fighter

    Road Fighter — видеоигра в жанре аркадных автогонок, разработанная компанией Konami и выпущенная в виде

    Read more »
  • ZX-Spectrum 48k

    Неизвестный Синклер

    Весьма занимательное чтиво об истории становления компьютера ZX-Spectrum, Клайве Синклере и компании Sinclair Research. Цветной,

    Read more »
  • King Valley

    King’s Valley на ZX-Spectrum

    Моя версия игры King’s Valley для ZX-Spectrum, которую я написал еще в школьные годы, аккурат

    Read more »
  • YouCompleteMe in action

    Рандомные тормоза Vim с плагином YouCompleteMe

    Пользуюсь для C/C++ комплитером YouCompleteMe, базирующемся на clang. Периодически YCM тормозил так сильно, что ввод

    Read more »
  • Simple Viewer GL

    Simple Viewer GL

    Небольшой вьювер изображений использующий OpenGL. Пользуюсь этим вьювером в повседневной работе для быстрого просмотра списка

    Read more »
  • Rubik's Stopwatch

    Rubik’s cube Stop-watch

    Таймер для учёта времени сборки кубика Рубика и прочих головоломок. Более подробно о возможностях таймера

    Read more »

Перезагрузка iOS-устройства

Если во время отладки зависнет “ай”-девайс и перестанет реагировать на любые внешние воздействия, то перерзагрузить устройство можно удерживая кнопки Home и Power.

Симптомы такие: черный экран, горит подсветка, девайс не реагирует на нажатия кнопок, но iTunes его видит. Xcode ругается “process launch failed: launch or suspend in progress”.

Неизвестный Синклер

ZX-Spectrum 48

ZX-Spectrum 48

Весьма занимательное чтиво об истории становления компьютера ZX-Spectrum, Клайве Синклере и компании Sinclair Research.

Цветной, с полноценной клавиатурой, дешевый

К декабрю 1981 года количество проданных ZX81 превысило 250 тысяч. На волне этого успеха, как пена, всплыли недостатки, свойственные полукалькулятору-полукомпьютеру, которым, по сути, и являлся ZX81. Прежде всего, это было отсутствие цветной графики и недостаточный даже по меркам 1981 года объем ОЗУ (RAM). И если недостаток памяти компенсировался низкой ценой и возможностью «прилепить» дополнительные килобайты в виде коробочки RAM Pack, то отсутствие цвета было для ZX81 неисправимо.

В начале 80-х годов в Великобритании больше половины выпускаемых и импортируемых телевизоров — цветные. В Америке аналогичные показатели достигали 80 %. Черно-белый компьютер, подключенный к цветному телевизору, выглядел «инвалидом». И хотя на витринах компьютерных магазинов уже красовались цветные Apple, Commodore и Acorn, сделать очередной ZX цветным было очень непросто.

По аналогии с предыдущими моделями, в качестве монитора предполагалось использовать телевизор. Только теперь вместо черно-белой картинки (ZX80, ZX81) нужно было передавать цветную. Сложность состояла в формировании качественного видеосигнала в стандарте PAL. Далее сигнал преобразовывался в высокочастотный (UHF). Это позволяло подсоединить телевизор через антенный (UHF) вход. Добиться качественного изображения было непросто, но такое решение давало максимально простое подключение.

ZX-Spectrum +

ZX-Spectrum +

Полная история доступна по ссылкам Неизвестный Синклер ч.1 и Неизвестный Синклер ч.2.

Сортировка изображений по их EXIF

Простой способ сортировки свалки изображений по EXIF:

exiftool '-Directory<CreateDate' -d sorted/%Y-%m-%d -r unsorted/

Наверняка такая утилита есть в репозитории всех дистрибутивов. Обитает она тут – http://www.sno.phy.queensu.ca/~phil/exiftool/

Сказ о том, как сильные магниты перевозили

Слышали, как ящик с магнитами в поезде везли? Ну, там одни в купе ящик с сильными магнитами везли, а другие тоже ящик, но с часами на продажу. И на руках часы еще у всех. Слава. Не Партии, Правительству, Президенту, т. е. Генеральному секретарю, лично и дорогому. А часы Слава, или Командирские, а может быть и простой Полет. Или приборы всякие, что магнитов боятся, несмотря на то, что дорогие очень. И все сразу в одном купе. Часы, конечно, встали у всех, приборы вышли из строя и т. д. Все знают байку? Мне, так, часто рассказывали.

На LOR прочитал сию забавную историю о перевозке сильных магнитов. Правда или нет, судить не мне.

Screen config

Мой новый конфиг screen. Ничего особенного, просто решил обновить.

Скриншот запущенного screen:
gnu screen

Собственно сам конфиг: ~/.screenrc

# Select whether you want to see the copyright notice during startup:
startup_message off

term screen-256color
terminfo rxvt-unicode 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm'

# Get rid of trailing spaces
defbce "on"

hardstatus alwayslastline "%{+b wk} %-w%{-b wk} %n %t %{-}%+w %41=%H @ %l %-= %= %D,%c:%s "

# Set the scrollback length:
#defscrollback 10000

Pixel Art в Linux

King's Valley objectsНовая игра, над которой уже неделю идет работа будет в old-school стиле. А для этого стиля хорошо подходит Pixel Art. До сего момента вся графика делалась в любимом мною GIMP. Но, стоит признаться самому себе, он для этого подходит не лучшим образом.

Поиск подходящих Pixel Art редакторов дал два проекта – Aseprite и GrafX2.

Aseprite Это редактор с открытым кодом, доступны бинарные сборки для Windows и OS X. Обе платные. Линуксоиды могут взять сорцы на GitHub и собрать редактор самостоятельно.

Мне для сборки Aseprite пришлось пропатчить несколько правил для сборки – оставляем libpng, giflib, pixman и libloadpng идущие в комплекте.

$ mkdir build ; cd build
$ cmake -DENABLE_UPDATER=off \
 -DUSE_SHARED_ALLEGRO4=on \
 -DUSE_SHARED_CURL=on \
 -DUSE_SHARED_JPEGLIB=on \
 -DUSE_SHARED_LIBLOADPNG=off \
 -DUSE_SHARED_LIBPNG=off \
 -DUSE_SHARED_TINYXML=on \
 -DUSE_SHARED_ZLIB=on \
 -DFULLSCREEN_PLATFORM=on  ..
$ make

После стрипаем бинарник (strip aseprite), дабы уменьшить его размер в 15 раз.

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

Aseprite интуитивно-понятный, но у меня не умеет работать в полноэкранном режиме, размеры окна задаются в конфиге (не умеет налету менять разрешение), поддерживает одновременную работу с несколькими проектами, поддерживает слои и анимацию.

GrafX2 Расторовый графический редактор, создан под впечатлением от амиговских редакторов Deluxe Paint и Brilliance. Нацелен на создание 8-битной графики, включает большое количество инструментов и эффектов, подходящие для pixel-art, игровой графики. Редактор написан для Linux и Windows, но может быть портирован и на другие платформы (по заверению автора).

Умеет переключать разрешение окна налету, умеет полноэкранный режим. Менее интуитивен. Очень понравилась работа с палитрой цветов.

King’s Valley на ZX-Spectrum

Моя версия игры King’s Valley для ZX-Spectrum, которую я написал еще в школьные годы, аккурат до поступления в ВА РБ. Игра не является клоном оригинальной игры для MSX, а написана по ее мотивам. Персонаж игры был по-пиксельно скопирован с King’s Valley 2 с помощью листика в клетку, нескольких глаз и карандаша, моим приятелем Евгением Янушкевичем. Уровни помогали мне делать мои брат Илья и приятель Евгений. Вся разработка игры и ресурсов для нее велась исключительно на ZX-Spectrum’е.

На видео какой-то серьезный игрок – прохождение игры всего за два часа:

Вообще игра является большим долгостроем, затянувшимся, если мне не изменяет память, на целый год. И писалась она аккурат после того, как были потеряны диски с исходниками предыдущей игры, порта Kinightmare с MSX.

Игра есть в архиве World of Spectrum и на других сайтах.

Странно, но world of spectrum утверждает, что игра была выпущена в 1994 году. Что несколько не соответсвует действительности, т.к. это третий год моего обучения в военной академии. А игру я писал еще в школе.

Вплоть до сего момента я продолжаю заниматься воскрешением этой игры для мобильных устройств (iOS, Android), телевизионных приставок (Apple TV, Android TV), десктопа (Linux, macOS) и веба. Но делаю я это все ОЧЕНЬ неспешно, иногда откладывая разработку игры, иногда тратя на нее несколько часов в месяц.

Рандомные тормоза Vim с плагином YouCompleteMe

Пользуюсь для C/C++ комплитером YouCompleteMe, базирующемся на clang. Периодически YCM тормозил так сильно, что ввод символа производился с задержкой в несколько секунд. Происходило это рандомно, от размеров проекта никак не зависело. Тормоза могли проявляться и в “проекте” из одного файла, и в проекте из сотен файлов.

YouCompleteMe in action

Отключение всех плагинов, кроме YCM не помогало. Отключение YCM решало проблему, но без комплитера менее комфортно.
В ход пришлось пустить метод научного тыка – чистка конфика Vim методом деления отрезка пополам.
И проблема решилась. Виной тому был один единственный параметр, из-за которого связка Vim + YCM умудрялась жестоко тормозить.

Параметр-виновник: set foldmethod=syntax
Удаление или установка этого параметра в любое другое значение решало проблему.

Iab Helper для InApp Purchases

Нет, мля, эта музыка будет вечной. Если гугель не уволит этого придурка, то покупки внутри android-приложения так и будут глючить. Зовут этого придурка Trevor Johns. Он не способен наложить готовый патч и проверить его корректность. Как таких идиотов держат в гугеле мне не понятно.

https://code.google.com/p/marketbilling/issues/detail?id=123

1 2 3 4 5 70