
Я долго придумывал вступление к теме FPGAЧитать полностью »
Я долго придумывал вступление к теме FPGAЧитать полностью »
Даже сегодня люди по-прежнему продолжают создавать новые игры для старых консолей. Мы называем их «homebrew». Иногда это способ реализовать детскую мечту о создании игры для консоли, на которой играл ребёнком. Но кроме того это ещё и интересная задача для любого дизайнера или разработчика игр: ретро-железо обладало множеством ограничений, бросающих вызов креативности авторов. В 90-х для профессиональных разработчиков эти ограничения были привычными. Сегодня, когда у нас есть более совершенные инструменты, создание игр для подобных машин стало гораздо доступнее.
В прошлом году я написал статью о создании игры для Game Boy. Сегодня я поделюсь своим опытом создания трёх игр для домашней консоли SEGA Mega Drive/Genesis. Вероятно, благодаря современным мощным инструментам, это самая простая машина для разработки homebrew-игры. Например, мне даже удалось создать (очень простую) игру всего за 60 минут, и она на самом деле запускается на консоли!
Читать полностью »
Слева: NTSC Model 2 Sega Genesis, справа: PAL Model 2 Mega Drive (европейская)Читать полностью »
В нашем первом туториале по ретро-играм мы показали, как настраивать инструмент 2D Pixel Perfect и как создавалась графика в эпоху 8-битных игр. В этом посте мы перенесёмся в 16-битную эру. С помощью Mega Cat Studios мы узнаем, как создавать аутентичную графику для игр в стиле Sega Genesis (Mega Drive) и Super NES при помощи параметров, графических структур и цветовых палитр Unity.
В этом разделе мы рассмотрим рабочий процесс создания графики, имитирующей картинку разных консолей. Здесь будет меньше ограничений, чем в 8-битном проекте и больше свободы при работе с цветом, но всё-таки у Genesis есть пределы. Мы считаем, что будет также полезно объяснить, как работало «железо» консоли, чтобы вы могли применить эти ограничения в собственном ретро-проекте.
Переход от 8-битных к 16-битным консолям благодаря усложнению оборудования предоставил разработчикам больше возможностей. Тем не менее, принципы создания качественной NES-графики всё ещё остаются в силе. Вся графика по-прежнему хранится в тайлах, например, размером 8×8, и собирается из них в большие изображения — спрайты и элементы фона. Художники по-прежнему ограничены субпалитрами с общим прозрачным цветом, но 16 бита обеспечивают бОльшую гибкость работы с палитрами. Вас скорее всего порадует то, что у 16-битных консолей не было жёстко заданной цветовой палитры, то есть по сравнению с NES количество доступных цветов сильно расширилось.
Читать полностью »
Многие современные игроки в видеоигры воспринимают онлайн-соединения как нечто само собой разумеющееся — и правда, онлайн-сервисы являются стандартной функцией консолей уже почти пятнадцать лет1. Однако ещё до того, когда проникновение Интернета стало повсеместным, существовали картриджи, позволявшие игрокам пользоваться передовыми технологиями и заглядывать в будущее.
Этой статьёй мы закроем цикл постов о необычных картриджах. В ней мы рассмотрим несколько картриджей, обеспечивавших возможность связи для изолированных от окружающего мира консолей. Как обычно, это будет не исчерпывающий список всех существовавших технологий, а краткий обзор самых примечательных или интересных устройств.
Предыдущие статьи серии: «История о трёх картриджах», «Системы внутри картриджей: как инженеры расширяли возможности игровых консолей», «Универсальность картриджей: датчики в играх для Game Boy».
Читать полностью »
В прошлой статье мы говорили о трёх картриджах с интересной особенностью: у них был разъём, в который вставлялись другие картриджи. Некоторые другие картриджи развили эту идею, позволив подключить в разъёмы своих консолей отдельные видеоигровые консоли. Это не были обычные аппаратные дополнения: они требовали собственных картриджей, несовместимых с основной системой.
Сегодня мы рассмотрим три очень разных «консоли внутри картриджей» от трёх очень разных производителей. Для появления всех трёх систем существовали все технологические и стратегические причины, и они могут поведать нам интересную историю. Давайте начнём с самой загадочной системы — единственной из трёх, которая была нелицензионной и производилась не самим создателем консоли.
В начале 1990-х в офисе компании Codemasters, должно быть, находилась впечатляющая лаборатория исследований и разработок. Изначально компания была создана с целью разработки игр для домашних компьютеров Commodore, но спустя несколько лет открыла отдел по созданию нелицензионных игр и аппаратных дополнений к Nintendo Entertainment System (NES). Наверно, самым знаменитым продуктом компании, по крайней мере, в среде консольных игроков, было чит-устройство Game Genie 1, но оно оказалось не единственным примером нелицензионного оборудования для NES.
Читать полностью »
Почти все любители видеоигр определённого возраста знакомы с игровыми картриджами и их принципом работы: ты вставляешь картридж в консоль, включает её и начинаешь игру. Менее известны картриджи, которые не были такими простыми, в том числе и подмножество устройств, предназначенное для вставки в них других картриджей. Давайте рассмотрим три примера подобных промежуточных устройств: узнаем, зачем создатели таких картриджей вообще заморачивались добавлением лишнего разъёма под картридж, как такие картриджи использованные подключенные к ним игры, и какие преимущества давала эта уникальная конструкция самим игрокам.
Game Genie был, вероятно, одним из первых устройств для читерства в видеоиграх, с которым сталкивался обычный игрок на домашней консоли. Это хитрое устройство располагалось между Nintendo Entertainment System (NES) и стандартными игровыми картриджами, и давало игрокам возможность настраивать уровни сложности, перемещаться вперёд по игре или просто экспериментировать.
Для детей в 90-х Game Genie казался настоящим волшебством. Сначала вы вставляли один из игровых картриджей в Game Genie. Затем, не без усилий (потому что вставлялся он довольно трудно), вы подключали конструкцию из Game Genie и игры к консоли и включали её. Но вместо обычного запуска игры появлялся загадочный экран, просивший вводить бессмысленные пароли1. Каждый пароль влиял на игру по-своему, и ни в одной игре пароли не повторялись.
Так как же Game Genie («игровой джинн») выполнял желания игроков? Версии Game Genie существовали для NES, Super NES и Game Boy, а также для Sega Genesis и Game Gear. Они перехватывали обмен данными между консолью и игровым картриджем. Внутренняя работа игровой консоли управлялась битами и байтами, поэтому возможность перезаписи данных, передаваемых из картриджа в консоль, позволяла Game Genie выполнять невероятно мощные трюки.
Читать полностью »
Приветствую вас, товарищи. Не слышал о пока-ещё-не-опенсорсной GHIDRA
, наверное, только глухой/слепой/немой/без_интернета реверс-инженер. Её возможности из коробки поражают: декомпиляторы для всех поддерживаемых процессоров, простое добавление новых архитектур (с сразу же активной декомпиляцией благодаря грамотному преобразованию в IR), куча скриптов упрощающих жизнь, возможность Undo
/Redo
… И это только очень малая часть всех предоставляемых возможностей. Сказать что я был впечатлён — это практически ничего не сказать.Читать полностью »
Привет всем,
В предыдущей статье мы успешно модифицировали ядро эмулятора игр на Sega Mega Drive
/ Genesis
, добавив в него возможность отладки. Теперь пришёл черёд написания собственно плагина-отладчика для IDA Pro
, версия 7.0
. Приступим.Читать полностью »
Приветствую!
Товарищи реверсеры, ромхакеры: в основном эта статья будет посвящена вам. В ней я расскажу вам, как написать свой плагин-отладчик для IDA Pro
. Да, уже была первая попытка начать рассказ, но, с тех пор много воды утекло, многие принципы пересмотрены. В общем, погнали!Читать полностью »