• Снимаем образы с картриджей для Dendy/Famicom/NES

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

      image

      Читать дальше →
    • Элиза

        Давным-давно, когда я был маленький, у меня не было друзей. Нет, правда, совсем-совсем не было. Я нуждался в общении, мечтал о ком-то близком, но понимания среди других людей найти не мог, и спасение находил лишь в книгах и компьютере. Вместе с первым CD-приводом появились мои первые компакт-диски с играми. Ты, наверное, помнишь такие: триста игр, пятьсот, семьсот… Кроме всяких аркад и шутеров, на одном из дисков была программа Диала — интерактивный собеседник.
        Читать дальше →
      • CP/M-80 на клоне Спектрума «Кворум»

          У меня на окне на память лежит большая стопка пятидюймовых дискет от компьютера, который мне подарили родители в три года, и с которого я смог перелезть на PC только в 14. Это «Кворум-128», наш, уральский клон Спектрума. Клон довольно интересный и существенно отличавшийся от, например, уральского же «Магика». С магнитофоном он работал, как любой другой Спектрум, но при подключении Кворумовского же контроллера дисковода — не так-то просто его было достать! — он умел работать в ОС CP/M-80. Вот об этой ОС и ее реализации на «Кворуме» я и хочу сегодня рассказать.



          Читать дальше →
        • Солнечная зарядка для литиевого аккумулятора

          «я его слепила из того, что было» (с) Танич М.

          Мой добрый давнишний друг – турист-водник. Когда-то очень давно, еще в прошлом веке, как говорит мой сын, я подарил другу солнечную батарею для зарядки аккумуляторов видеокамеры.

          Тогда я купил в Чипе и Дипе пяток солнечных элементов отечественного производства, соединил их последовательно, добавил диод КД213. Получилась батарея с напряжением около 9 вольт и током порядка 300 мА. Механически элементы батареи были соединены полосками синей изоленты, батарея складывалась гармошкой, мой друг сделал для нее самодельный чехол. С тех пор прошло лет 15, батарея эта много раз бывала в походах и с неизменным успехом заряжала разнообразные Ni-Cd аккумуляторы.

          image
          Читать дальше →
        • Yaxy — proxy-сервер для веб-разработчика

            Yaxy — proxy-сервер, подменяющий различные части HTTP-запросов и ответов на указанные в config-файле значения. Я не буду здесь описывать, как поставить, настроить и запустить сервер, это всё описано в readme репозитория. Здесь я опишу различные случаи, в которых Yaxy очень помогает, а то и вовсе незаменим.

            Под катом 9 примеров использования Yaxy
          • Прекратите скручивать!

            • Tutorial
            Ну действительно, прекратите. Есть куча прикольных штук для соединения самых разнообразных проводов, а все равно технология «откусить зубами изоляцию, скрутить, замотать изолентой» жива до сих пор.

            Дальше много текста, фотографий, разборок. Ну все как обычно
          • Детали реализации двойной буферизации в Windows Forms

            О том, что такое двойная буферизация много написано здесь и здесь.

            Здесь можно почитать, как реализуется ДБ на Java.

            Я расскажу, как реализуется двойная буферизация на C#. Многое из того, что здесь написал можно прочитать в MSDN, но без деталей реализации.

            Ручное управление двойной буферизацией (далее ДБ)


            Для ручного управления двойной буферизацией, .NET Framework предоставляет следующие 3 класса:
            • BufferedGraphics – обеспечивает буфер для временного хранения графики и средства вывода её на полотно контрола.
            • BufferedGraphicsContext — обеспечивает создание нового объекта BufferedGraphics на основе объекта Graphics;
            • BufferedGraphicsManager – предоставляет дефолтный BufferedGraphicsContext.
            Читать дальше →
            • +29
            • 10,2k
            • 9
          • Ещё раз о «Mercurial против Git» (с картинками)

            • Перевод
            Некоторое время назад я опубликовал очень многословное сочинение, где пытался объяснить, почему Git серьёзно поломан, и почему всем следует вместо этого пользоваться Mercurial, до тех пор, пока разработчки Git его не починят. Ну ладно, я был не настолько груб, но близок к этому.

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

            Ниже я нарисовал упрощёный граф истории репозитория Git с тремя созданными ветками: «master», «release» и «topic». До того, как энтузиасты Git начнут ругаться, что я исхитрился показать нереально плохой случай запутанности истории, позвольте мне заверить вас, что это на самом деле ещё упрощённый пример. У меня есть доступ к реальному репозиторию Git, где создано шесть рабочих веток релизов, около сорока рабочих тематических веток и несколько сотен ранее существовавших веток, которые уже удалены с центрального сервера.
            Читать дальше →
          • GLGDI+ или «переходим с GDI+ на OpenTK»

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

              и понял, что GDI+ мне больше не хватает, нужно переходить на что-то ускоренное, причем за минимальное время. Немного погуглив, я решил остановить свой выбор на библиотеке OpenTK.
              Читать дальше →
            • Применение паттерна MVP в классическом ASP.NET

              Приходилось ли Вам сталкиваться с долгоиграющими проектами на ASP.NET?
              Может быть Вы сейчас над таким проектом как раз и трудитесь?
              Если да, то вы скорее всего сталкивались со сложно переплетенным набором событий, логики и валидаций внутри классов страниц.
              Эта статья рассказывает о том как можно упростить жизнь на таких проектах используя все тот же шаблон Model-View-Presenter.
              Читать дальше →