Образ ПЗУ

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Образ ПЗУ (ROM-image либо просто ROM) — двоичный файл, содержащий копию данных из микросхемы ПЗУ, обычно — из картриджа игровой приставки, из «прошивки» компьютера или сведения о конфигурации материнской платы аркадного автомата. Термин часто используется в контексте эмуляции: старые игры или программы, записанные в ПЗУ старого компьютера, копируются в файл образа ПЗУ и, при помощи программы-эмулятора, могут быть запущены на современном компьютере.

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

Для некоторых людей образы ПЗУ становятся предметом коллекционирования. Мотивы этого могут быть разными, например, желание сохранить историю компьютеров и игровых приставок для последующих поколений.

Получение[править | править вики-текст]

Дампер Visoly flash linker, предназначенный для работы с картриджами от Game Boy Advance.
Устройство отладки и резервного копирования Doctor 64 с подключенной приставкой Nintendo 64 и установленным игровым картриджем.

Для получения образа ПЗУ из отдельной микросхемы памяти может использоваться программатор ПЗУ.

Для получения образа программы, содержащейся в ПЗУ игрового картриджа (так называемый дамп — англ. dump) и многих существующих аркадных автоматов применяются специально разработанные устройства — дамперы (англ. dumper), а сам процесс носит название дампинга (англ. dumping). Для каждого типа картриджей и игровых систем требуется свой тип дампера. В настоящее время дамперы существуют для большинства существующих систем.

Дампинг ПЗУ из аркадных автоматов зачастую требует специального набора программно-аппаратных средств и высокой квалификации оператора ввиду высокой специализации данного типа оборудования и большого разнообразия исполнений применяемых в них печатных плат.

Защита от копирования[править | править вики-текст]

Хотя образы ПЗУ могут использоваться для сохранения истории компьютерных игр, эксплуатация их особенностей может облегчить неавторизованное копирование и распространение современных игр. Многие компании-разработчики игр, рассматривая это как потенциальную угрозу для продаж своих продуктов, стали включать в игры особенности, препятствующие копированию, но сохраняющие при этом игру рабочей.

Основные методы защиты от копирования ПЗУ[править | править вики-текст]

  • Проприетарные форматы носителей. Например, Nintendo в своей приставке GameCube использовала проприетарный 8-сантиметровый формат оптического носителя, подобного DVD, чем длительное время препятствовала копированию информации на ПК. Копирование было невозможно, пока в эпизодах I и II игры Phantasy Star Online не была обнаружена уязвимость, эксплуатация которой позволила копировать данные на ПК, используя саму приставку в качестве дисковода.
  • Шифрование данных. SNK Playmore также добавила защиту в игру The King of Fighters для Neo Geo, вышедшую в 1999. Защита использовала специальный алгоритм шифрования графической ПЗУ, что должно было препятствовать запуску игры на эмуляторе. Защита собрала множество положительных отзывов, которые сводились к тому, что данная защита должна положить конец эмуляции Neo Geo. Однако уже в 2000 году хакерское сообщество успешно разработало рабочий механизм дешифровки, после чего был произведен успешный дампинг ПЗУ, что вернуло возможность играть в игры Neo Geo на эмуляторе.
    • Повышение стойкости шифра. Весьма стойкое шифрование использовалось Capcom в системных платах CPS-2 для аркадных автоматов. Системные платы делились на два типа. Платы типа А были одинаковыми для всех систем, тогда как платы типа B содержали саму игру. На плате B была установлена питаемая от батареи RAM, содержащая шифр, требующийся для запуска игры. Постепенно батарея исчерпывала заряд, и автомат переставал работать. Это обеспечивало конечное время работы автомата и продолжение его работы было возможно только после отчислений в пользу Capcom. Существовали способы подать питание на микросхему, обойдя батарею, но это следовало сделать до падения напряжения на ней ниже 2 вольт. Защита системы впервые оказалась не у дел лишь в 2000, через 7 лет после запуска CPS-2. Однако метод, предложенный CPS2Shock Team не был полноценной эмуляцией защитного алгоритма, а представлял собой лишь набор XOR-таблиц для обхода системы защиты и возможности запуска игр[1]. Сам алгоритм шифрования был полностью описан лишь в 2007 году Андреасом Нейвом (Andreas Naive) и Николой Салмориа (Nicola Salmoria) в ходе обратной разработки. Алгоритм шифрования использовал две 4-раундные сети Фейстеля с 64-битным ключом.
  • Контроль целостности данных. Попытка записи в память, отведённую под ПЗУ на оригинальном картридже вызовет сбой или запуск обработчика исключений, однако многие эмуляторы могут успешно выполнять подобные запросы. Также в пиратских картриджах иногда устанавливают перезаписываемые микросхемы вместо ПЗУ. По результату последующего чтения значения по адресу записи система защиты игры может определить, запущена ли она с оригинального картриджа. Также система защиты может пытаться записать случайные данные в критические области памяти игры, что в случае использования перезаписываемых микросхем вместо ПЗУ приведет к неработоспособности игры. Например, в портативной игровой системе GameBoy контроллер памяти располагался на шине картриджа. Система защиты игры могла периодически посылать запросы записи в особые области этого оборудования. Если запись происходила, значит в картридже установлена не ПЗУ и такая запись делала игру неработоспособной.

Применение[править | править вики-текст]

Эмуляция[править | править вики-текст]

Эмуляторы игровой приставки как правило используют файлы образов ПЗУ в качестве исходных данных для работы.

ПЗУ с программным обеспечением[править | править вики-текст]

Образы ПЗУ широко используются при разработке встраиваемых систем. Разрабатываемое ПО часто записывается в файлы образа ПЗУ для тестирования и отладки на обычном компьютере перед записью в микросхемы ПЗУ физического устройства.

Сохранение данных[править | править вики-текст]

Продолжительность работоспособности большинства носителей цифровых данных невелика. Некоторые технологии, например черно-белая фотография, могут обеспечить сохранность данных в течение столетия и более. Однако, множество цифровых носителей становятся нечитаемыми всего через 10 и менее лет. Это становится проблемой, так как первые компьютерные системы сейчас имеют возраст 50-60 лет, а первые образцы игровых приставок перешагнули за 30 лет. Проблема состоит в том, что большинство первых компьютеров и компьютерных игр окажутся безвозвратно утраченными, если не будут перенесены на современный тип носителей. Таким образом, энтузиасты, увлеченные сохранением данных, ищут копии старых компьютерных и аркадных игр для создания образов содержащихся в них ПЗУ. Хранение образов на таких стандартизированных носителях как CD-ROM или DVD-ROM в будущем способно значительно уменьшить усилия, требующиеся для копирования их на носители, которые будут стандартизированы в будущем.[2][3]

Развивающееся направление на массовое распространение образов ПЗУ электронным способом, несмотря на возможный ущерб правообладателям, может внести позитивный вклад в дело сохранения данных. Не смотря на то что оригинальные копии старых игр могут повреждаться, изнашиваться или выбрасываться, цифровые копии в виде образа ПЗУ или другого носителя могут распространиться повсеместно, сохраняя тем самым старые игры, которые иначе были бы утрачены безвозвратно.[4]

Модификация и любительский перевод[править | править вики-текст]

Пользователи могут делать модификации игры сразу после того, как она станет доступной в виде образа ПЗУ. Модификации могут затрагивать измененную графику, измененные игровые уровни, измененный уровень трудности или перевод игры на язык, на котором оригинал никогда не выходил. Хаки иногда могут приобретать комическую форму, что случилось с одним из хаков Mario Bros., озаглавленной Afro Mario Brothers, особенностью которого стало изменение причесок главных персонажей на афро. Также известна модификация Metroid Redesign игры Super Metroid, улучшающая оригинальную игру и вводящая новые цели.

Большим значением обладает сцена любительских переводов на другие языки. Многие игры изданы только в какой-то стране мира. Например, многие ролевые игры, вышедшие в Японии, никогда не издавались вне ее пределов. Группы переводчиков-любителей делают независимые переводы, встречая сильную поддержку от сообщества. Так в 1995 году в Японии была выпущена игра Tales of Phantasia, а в 2001 году группа DeJap Translations перевела экранный текст на английский язык. Более того, существовал проект Vocals of Phantasia, цель которого состояла в полной любительской озвучке игры. Официальная английская версия вышла лишь в 2006 году, 5 лет спустя появления любительского перевода. Другой пример — игра Mother 3, сиквел достаточно популярной игры EarthBound, который вышел только в Японии. На разгневанные вопросы от массы фанатов серии в Nintendo ответили, что планируется выпуск английской версии в европейском регионе, которая так и не была выпущена. Фанатским движением в ответ на это был создан сайт Starmen.net, на котором велась работа по переводу игры, завершившаяся в октябре 2008. Перевод был высоко оценен фанатами, представителями самой Nintendo, Square Enix и другими профессионалами рынка.

Хаки могут быть разными по внедрению в игру: от незначительных исправлений или ввода чит-кодов до полномасштабной переделки всей игры, которую можно рассматривать как новую игру, созданную на основе старой.

Одной из игр, по настоящее время имеющей активную сцену ромхакинга, является Super Mario Bros.

Правовое положение[править | править вики-текст]

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

Однако в США, начиная с 1983 копирование ПЗУ компьютерных игр на другой картридж было незаконным. Это решение вынес суд по делу «Atari против JS&A». JS&A производило устройство «резервного копирования игры», которое позволяло пользователю считывать образ ПЗУ оригинального картриджа и копировать его в пустой картридж. JS&A заявило, что на это распространяется правило резервной копии. Суд не согласился с этим, указав на то, что микросхемам ПЗУ не присуща такая же недолговечность как магнитным дискам, для которых и был принят соответствующий закон. Таким образом, признав ПЗУ недостаточно уязвимым носителем, суд исключил их из-под действия пункта 17 USC 117(a)(2).[5]

Позже Чак Кочемс (Chuck Cochems), приложив определенные усилия, показал, что копирование легального программного обеспечения для персонального использования на эмуляторе должно признаваться законным, исходя из решения по делу «Sony против Universal» (1984). При этом особе внимание обращается на то, что такое использование может быть законным только при соблюдении принципов добросовестного использования.[6]

Некоторые комапнии, например Nintendo, печатают в прилагаемых к играм «руководствам пользователя» заявления о том, что пользователю запрещается создание резервных или архивных копий. Остается нерешенным, могут ли быть подобные формулировки признаны офертой или нет. Для обзора связанных проблем см. статьи Лицензия на программное обеспечение, Обёрточная лицензия, Добросовестное использование, Digital Millennium Copyright Act.

Существование образов ПЗУ может быть лицензировано непосредственным правообладателем. Например, Atari сделала доступным в виде образов ПЗУ некоторое число игр, доступных до этого только на аркадных автоматах. Данные образы ПЗУ совместимы с эмулятором MAME и распространяются через онлайн ретейлера Star ROMs. Nintendo предоставляет для своих приставок седьмого (3DS, Wii) поколения службу Virtual Console, которая позволяет пользователям приобретать игры предыдущих поколений приставок (например, NES), после чего пользователь имеет возможность загрузить эмулятор и соответствующий образ ПЗУ. Подобным принципом пользуется PlayStation Store при переиздании старых игр для PlayStation на PlayStation 3 и PSP, а также Xbox Live Arcade при переиздании таких старых игр как, например Sonic the Hedgehog, для Xbox 360.

Подавляющее большинство устаревших компьютеров и старых игр ныне не производятся. В таких случаях иногда правообладатели предлагают бесплатные лицензии на такие игры, единственным условием которых чаще всего является запрет на коммерческое использование. Например, 14 из игр, эмулируемых MAME, включая Gridlee и Robby Roto, доступны по подобной лицензии и распространяются в рамках проекта MAME.[7]

Похожие типы образов[править | править вики-текст]

Образы, полученные с магнитной ленты, называют образами ленты. Образы, полученные с гибких дисков, CD-ROM (и других дисковых форматов), называют образами диска. Образы, полученные с оптических носителей, часто называют ISO-образами по названию файловой системы ISO 9660, используемой на таких носителях.

Создание образов с других носителей часто не сопряжено со значительными трудозатратами и часто может быть осуществлено без использования специальных средств. Например, создание образа магнитной ленты, содержащей компьютерную игру (например, для ZX Spectrum) обычно осуществляется проигрыванием типовой компакт-кассеты на магнитофоне, линейный выход которого подключен к линейному входу звуковой карты ПК. Данные записываются в аудиофайл, после чего преобразовываются в файл образа ленты специальной программой. Точно также практически любая игра на CD или DVD дисках может быть скопирована на обычном CD/DVD приводе ПК, используя специальную программу.

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

  1. The Future Intent of CPS2shock
  2. Conley, James; Andros, Ed; Chinai, Priti; Lipkowitz, Elise; Perez, David (Spring 2004). «Use of a Game Over: Emulation and the Video Game Industry, A White Paper». Northwestern Journal of Technology and Intellectual Property 2 (2). “Fans of classic games argue that emulation preserves video arcade games, many of which would otherwise be approaching extinction.”
  3. About MAME. MAME (30 ноября 2007). — «MAME is strictly a non-profit project. Its main purpose is to be a reference to the inner workings of the emulated arcade machines. This is done both for educational purposes and for preservation purposes, in order to prevent many historical games from disappearing forever once the hardware they run on stops working.»
  4. Hyman, Paul. Game over? Not if preservationists have their way, The Hollywood Reporter (8 октября 2004). Архивировано из первоисточника 28 сентября 2009. «[T]he archivists feel that the more copyable something is, the more likely it's going to survive in the long term.».
  5. Sam Pettus. Appendix B, Important Court Decisions. The EmuFAQ. World of Spectrum (1999). Архивировано из первоисточника 5 января 2013.
  6. Cochems, Chuck. The Question of ROMs. EmuFAQ Addendum (11 марта 2000). Архивировано из первоисточника 5 января 2013.
  7. MAME-compatible ROM Images. mamedev.org. MAME Development Team.