ЗСНЭС
![]() | |
![]() Графический интерфейс ZSNES | |
Оригинальный автор(ы) | zsKnight, _Demo_, Pagefault и Nach |
---|---|
Разработчик(и) | Команда ЗСНЭС |
Первоначальный выпуск | 0,150 / 14 октября 1997 г |
Финальный выпуск | 1,51 / 24 января 2007 г |
Написано в | сборка x86 , C , C++ , PSR |
Операционная система | Linux , DOS , Windows , Mac OS X , FreeBSD , Xbox |
Доступно в | Английский |
Тип | Эмулятор игровой приставки |
Лицензия | С версии 1.50: только GPL-2.0. 1.17b–1.42: GPL-2.0 или новее. До 1.17: проприетарный |
Веб-сайт | зснес |
ZSNES — это бесплатный программный Super Nintendo Entertainment System, эмулятор написанный в основном на сборке x86 с официальными портами для Linux , DOS , Windows и неофициальными портами для Xbox и macOS .
Фон
[ редактировать ]Разработка ZSNES началась 3 июля 1997 года, а первая версия для DOS была выпущена 14 октября 1997 года. С тех пор были сделаны официальные порты для Windows и Linux. Эмулятор стал свободным программным обеспечением под лицензией GPL-2.0 или более поздней версии 2 апреля 2001 года. Несмотря на объявление Adventure_of_link в 2009 году о том, что «ZSNES НЕ умер, он все еще находится в разработке», сделанное на доске ZSNES после ухода его первоначальные разработчики zsKnight и _Demo_ , [1] разработка резко замедлилась со времени выхода последней версии (1.51, выпущенной 24 января 2007 г.). Большая часть усилий по разработке была сосредоточена на повышении мобильности эмулятора путем переписывания ассемблерного кода на C и C++. [2] включая новый графический интерфейс с использованием Qt . [3]
ZSNES примечателен тем, что он впервые смог на каком-то уровне эмулировать некоторые усовершенствованные чипы SNES . [4] До версии 1.50 ZSNES поддерживал сетевую игру через TCP/IP или UDP . [5]
Одной из первых интересных особенностей ZSNES были «фильмы ZMV» [1] . Эта функция позволяла игрокам записывать входные данные игровой сессии, а затем выводить их в файл ZMV таким образом, чтобы другой пользователь с копией ZSNES, соответствующим файлом ROM и файлом ZMV мог «смотреть» геймплей другого человека. Это задолго предшествовало массовой доступности видеороликов игрового процесса в Интернете и являлось ранней формой обмена контентом такого типа.
Поскольку ZSNES в основном написан на языке низкоуровневого ассемблера для процессоров x86 , идея портирования ZSNES на устройства, использующие RISC -архитектуру, такую как ARM, крайне неосуществима. Коммерческие игровые консоли обычно не использовали процессоры x86 ( оригинальный Xbox наиболее известным исключением является ) до восьмого поколения , начиная с выпуска Xbox One и PlayStation 4 в 2013 году . [6]
История развития
[ редактировать ]Первым общедоступным выпуском ZSNES была версия 0.150, выпущенная 14 октября 1997 года. Она включала в себя весь набор инструкций 65816 из модифицированного микропроцессора WDC 65C816 для SNES , а также поддержку SRAM и частичную режима 7 реализацию . В качестве дополнительной функции уже предлагалось сохранять состояния в файл .ZST. В этой первоначальной версии отсутствовали некоторые функции DSP. [7]
Версия 0.600 от 9 сентября 1998 года была первой, в которой разработчик Фарос (в качестве помощника по программированию) был представлен, и стала знаковым выпуском благодаря внедрению нового 16-битного графического движка, а также совершенно новому графическому интерфейсу с дополнительными функциями. доступные функции, чем раньше. [8] Вскоре после этого версия 0.700 от 27 октября 1998 года стала первой версией, скомпилированной с C. кодом [9]
Начиная с версии 0.900c/a от 4 июля 1999 года была добавлена важная для того времени функция — встроенная поддержка сжатия ZIP , которая позволяла пользователям экономить место на дорогих тогда жестких дисках. Также активизировалась работа над улучшением поддержки чипа SA-1 . [10]
Версия 1.000 от 1 сентября 2000 г. знаменует собой первый официальный выпуск ZSNES для Windows. [11] и следующие несколько версий эмулятора были ориентированы на улучшение качества этого порта. 2 апреля 2001 года был выпущен исходный код программного обеспечения, и к команде присоединился программист Теуф. [12]
Выпуск 1.30b от 16 июня 2001 года можно считать важной вехой в эмуляции Super Nintendo, поскольку в него добавлена первоначальная поддержка Star Ocean и ее чипа сжатия S-DD1 . [13] Эта игра расширяла возможности аппаратного обеспечения системы, предлагая голосовые клипы и улучшенную графику, и ее было сложно даже запустить на эмуляторе.
После ухода zsKnight по личным причинам в июле 2001 года, 30 сентября 2001 года проект выпустил в честь него и его семьи версию 1.337. [14] Эмулятор продолжал обновляться до июля 2002 года, но выпуски были приостановлены, и прошло более двух лет, прежде чем вышла новая общедоступная версия.
Выход версии 1.40 25 декабря 2004 года стал поворотным моментом для проекта: появились новые участники и произошли значительные изменения в устаревших системах эмулятора. Разработчики Nach и Pagefault особенно сосредоточились на удалении нескольких печально известных хаков, которые были частью кодовой базы ZSNES, и реализации правильного кода, на котором основывались сложные игры. Параллельно с этим была проведена обширная работа по улучшению поддержки специальных чипов. [15]
Версия v1.50 от 22 декабря 2006 г. представляла собой еще одну капитальную переработку, которая, по словам разработчиков: «ZSNES — это программа с более чем 200 000 строк исходного кода, и в этом выпуске более 25% из них было изменено; кроме того, около 15% сборки было перенесено на C». [16] Это был последний крупный выпуск эмулятора, за ним последовал второстепенный выпуск 1.51, который впоследствии был закрыт.
Прием
[ редактировать ]В период своего расцвета ZSNES в целом пользовался большим уважением: британский игровой журнал Retro Gamer в 2005 году назвал эмулятор «очень впечатляющим» и похвалил «невероятный режим тостера». [17]
Однако с недавней разработкой более точных эмуляторов SNES, таких как Snes9x и higan , поскольку компьютеры постепенно становились более мощными, ретроспективные обзоры подвергли ZSNES критике не только за ее относительно низкую точность, но и потому, что ее прежняя популярность привела к тому, что несколько фанатских переводы и модификации должны быть разработаны с учетом конкретных обходных путей для неточностей эмулятора, что часто делает их неиграбельными как на реальном оборудовании, так и в новых эмуляторах, пришедших на смену ZSNES. Некоторые из этих других эмуляторов даже включают режим, который специально разработан для копирования особенностей ZSNES, позволяя снова играть в моды, ориентированные на ZSNES. [18]
В 2015 году в версии 1.51 был обнаружен эксплойт , который позволил специально созданному ПЗУ SNES получить контроль над хост-системой и, таким образом, выполнить вредоносный код; Вскоре после этого была выпущена частично исправленная предварительная версия. [19]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ badinsults (9 октября 2009 г.). «ЗСНЭС не умер, он все еще находится в активной разработке» . Архивировано из оригинала 12 июня 2019 года . Проверено 23 июля 2010 г.
- ^ Гринвейдер. «Re: Часто задаваемые вопросы о текущем статусе» . Плата ЗСНЭС . Архивировано из оригинала 3 апреля 2012 года . Проверено 24 октября 2011 г.
- ^ "ZSNES GUI 3.0 первый скриншот" . Плата ЗСНЭС . Архивировано из оригинала 3 апреля 2012 года . Проверено 24 октября 2011 г.
- ^ «История — Документация ЗСНЭС» .
- ^ «Главная страница ЗСНЭС» . ЗСНЭС. 25 января 2007 г. Проверено 24 апреля 2020 г.
Изменения: v1.50 — 22 декабря 2006 г.: удалены Netplay, модем, код IPX... Как бы нам это не хотелось, нам пришлось удалить все параметры игры с компьютера на компьютер, чтобы исправить другие подсистемы, поскольку код был распространился по всему ЗСНЭС. Мы надеемся, что в будущих версиях мы реализуем его заново, а также предоставим новые функции.
- ^ Deathlike2 (3 ноября 2007 г.). «Нет запросов на порт» . Проверено 23 июля 2010 г.
{{cite web}}
: CS1 maint: числовые имена: список авторов ( ссылка ) - ^ «История — Документация ZSNES — v0.150 — Первоначальный выпуск — 14 октября 1997 г.» .
- ^ «История — Документация ЗСНЭС» .
- ^ «История — Документация ЗСНЭС» .
- ^ «История — Документация ЗСНЭС» .
- ^ «История — Документация ЗСНЭС» .
- ^ «История — Документация ЗСНЭС» .
- ^ «История — Документация ЗСНЭС» .
- ^ «История — Документация ЗСНЭС» .
- ^ «История — Документация ЗСНЭС» .
- ^ «История — Документация ЗСНЭС» .
- ^ «Ретро-кавер-диск». Ретро-геймер (15): 108. 2005.
- ^ Бюу (9 августа 2011 г.). «Точность требует силы: попытка одного человека создать идеальный эмулятор SNES на частоте 3 ГГц» . Арс Техника . Проверено 24 октября 2011 г.
- ^ «#792420 — zsnes: уязвимость выхода из эмулятора — журналы отчетов об ошибках Debian» . Дебиан . Проверено 28 июля 2016 г.
Внешние ссылки
[ редактировать ]- программное обеспечение 1997 года
- Эмуляторы развлекательной системы Super Nintendo
- Программное обеспечение для эмуляции Linux
- Программа эмуляции Windows
- Программа эмуляции DOS
- Бесплатные эмуляторы игровых консолей
- Бесплатное программное обеспечение, использующее SDL
- Кроссплатформенное программное обеспечение
- Бесплатное программное обеспечение, написанное на C.
- Бесплатное программное обеспечение, написанное на C++.
- Программное обеспечение на языке ассемблера
- Портативное программное обеспечение
- Эмуляторы, снятые с производства