• Прокачиваем NES Classic Mini — продолжение

      В феврале я писал статью о том, как русские энтузиасты «взламывали» консоль NES Classic Mini, как мы занимались её реверс-инжинирингом, и как я писал приложение для того, чтобы каждый мог легко закачать в неё свои игры буквально в пару кликов.

      image

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

      Как обычно, под катом моё повествование и в современной видеоформе, и в виде традиционной статьи.
      Читать дальше →
    • Прокачиваем NES Classic Mini

        На geektimes.ru недавно была статья о том, что «умельцы» взломали NES Classic Mini. Однако, там даже не упомянули о том, что это сделали русские. Нет, не я, а человек под ником madmonkey. Я же сразу решил написать приложение под Windows с дружелюбным интерфейсом, чтобы это можно было делать в пару кликов. В этой статье я хочу рассказать более детально о сути «взлома», о том, как в NES Mini всё устроено, и о трудностях, с которыми пришлось столкнуться.

        И да, я опять предлагаю своё изложение в двух вариантах: видео и традиционная текстовая статья. Кому как больше нравится.
        Читать дальше →
      • Снимаем образы с картриджей для Dendy/Famicom/NES

          Ни для кого не секрет, что сейчас можно легко скачать эмулятор почти любой игровой консоли 80х-90х и поиграть в классические игры на компьютере, телефоне и многих других платформах. В сети легко можно найти и ROM'ы этих самых игр. Зачастую люди качают их и даже не задумываются, каким же образом кто-то однажды прочитал их из картриджа. В этой статье я и постараюсь рассказать, как же это делалось в случае с NES/Famicom, которая у нас была больше известна как «Денди», и покажу, как можно сделать это самостоятельно.

          image

          Читать дальше →
        • Умный будильник на основе датчика движения или IP-камеры

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

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

            У меня в комнате один из датчиков движения висит прямо над кроватью. Об этом я немного рассказывал в своей статье про мой умный дом.

            image

            Недавно я просматривал логи и заметил, что на истории движения с этого датчика очень чётко видны фазы моего сна, когда я сплю один. Это не удивительно, он очень хорошо фиксирует любое моё движение, даже если я лежу под одеялом. Сразу же возникла мысль — почему бы не сделать мой будильник «умным»?
            Читать дальше →
          • Игры для NES/Famicom/Денди глазами программиста

              Это пост про ограничения старых видеоигр. Сам я под NES никогда не программировал, но с архитектурой поверхностно познакомился. Теперь я не могу играть в игры для NES, не задумываясь, как же они устроены. Иногда это на столько вызывает восхищение, что невольно забываешь про саму игру. «Чему же там восхищаться?», — скажете вы. Да просто укладываться во все ограничения NES, но при этом делать игру красивой, — это действительно целое искусство.

              Сейчас я постараюсь рассказать об этом вам, максимально всё упростив.
              Читать дальше →
            • Создание умного дома и разработка своего протокола

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

                Я тут решил забить на всю работу и заняться чем-то для души. Снова взялся за паяльник. Решил автоматизировать дома всё и вся. На старой-то квартире у меня был умный дом или что-то типа того — мог свет в комнате включать через Интернет и всё такое.

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

                Было решено, что лучше делать много отдельных устройств, каждое из которых отвечает за строго определённую задачу, имея возможность с лёгкостью подключать их к какой-то общей сети. И чтобы у каждого устройства был адрес и свой набор команд. Что-то вроде CAN-шины в современных автомобилях. При этом хочется, чтобы сеть была децентрализованной, без мастер-устройства, чтобы соединялись все по одному проводу, легко реализовывалось без покупки дополнительного контроллера, ну и чтобы длинные провода не были проблемой.

                На борту микроконтроллера есть всякие I²C, да UART, но они явно не удовлетворяют условиям. В итоге было решено разработать свой велосипед протокол.



                Читать дальше →
              • cluBalance — проверка баланса

                  Наконец-то и я вступил в ряды разработчиков под Андроид. Хотелось бы показать своё первое приложение.

                  cluBalance — приложение для проверки мобильного баланса через SMS сообщения. В существующих аналогах мне не хватало возможности запрашивать баланс по расписанию и виджетов разного размера.



                  Что же получилось...