Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
UltraHLE — это прекращённый эмулятор для Nintendo 64. Эмуляция Nintendo 64 (которой на тот момент было всего три года) сделала его первым эмулятором N64, способным запускать коммерческие игры с приемлемой частотой кадров на доступном в то время оборудовании, а также первым эмулятором для консоли, которая всё ещё продавалась, что побудило Nintendo предпринять юридические действия против разработчиков.
UltraHLE is a discontinued emulator for the Nintendo 64. Emulating the Nintendo 64 (which was only three years old at the time) made it the first of the N64 emulators to run commercial titles at a playable frame rate on the hardware of the time, and the first emulator for a currently sold console system, which drew Nintendo to seek legal action against the developers.
Техника сверхвысокого уровня (UHLE)
Ранние эмуляторы стремились точно эмулировать все операции низкого уровня целевой машины; это хорошо работало для консолей, таких как Super NES и Genesis, которые были значительно проще, чем компьютер, запускающий эмулятор. HLE использовался еще до эмулятора UltraHLE (для эмуляции BIOS и чипов расширения SNES). Но UltraHLE внедрил агрессивную оптимизацию и средства ускорения, которые выходят за рамки традиционного HLE. Соавторы Epsilon и RealityMan поняли, что поскольку игры для N64 были написаны на C, они могли перехватывать (гораздо меньшее количество) вызовов библиотек C, а не операций на уровне машины, и просто перереализовывать эти библиотеки. Таким образом, UltraHLE – это эмулятор, частично реализованный как симулятор, в отличие от проектов, таких как MAME. Однако он проложил путь к созданию играбельных эмуляторов современных консолей, требующих значительной графической вычислительной мощности, которую можно было легко смоделировать с помощью доступных графических карт ПК. Окончательная реализация была написана на C и использовала Glide API, предназначенный для адаптеров 3dfx. Благодаря популярности эмулятора, для UltraHLE и видеокарт, не являющихся 3dfx, было создано несколько утилит для преобразования Glide в DirectX. Высокоуровневая эмуляция UltraHLE имела свои недостатки; на момент выпуска он мог эмулировать лишь около 20 игр до играбельного состояния, поскольку эмулировал и моделировал только те вызовы, которые требовались конкретным играм; для игр, использующих различные части аппаратного обеспечения N64, требовалась адаптация эмулятора. Тем не менее, он поддерживал гораздо больше игр, чем другие современные проекты эмуляции N64, такие как Project Unreality. Эта техника была перенята эмулятором Cxbx Reloaded, который эмулирует Microsoft Xbox и использует HLE для перереализации видео- и аудио-DSP. Другие эмуляторы, помимо UltraHLE, в конечном итоге также стали использовать варианты высокоуровневой эмуляции. Например, эмулятор Dolphin, эмулирующий GameCube и Wii, использует HLE для перереализации операционной системы IOS Wii, а также имеет опцию HLE для аудио-DSP GameCube.
Earlier emulators had sought to accurately emulate all low level operations of a target machine; this worked well for consoles such as the Super NES and Genesis that were substantially simpler than the computer running the emulator. HLE was done even before the UltraHLE emulator (to emulate the BIOS, and the SNES enhancement chips). But UltraHLE introduced aggressive optimization and time savers which go beyond traditional HLE. Co authors Epsilon and RealityMan realized that since N64 games were programmed in C, they could intercept (the far fewer) C library calls rather than machine level operations, and simply reimplement the libraries. Thus UltraHLE is an emulator that is partly implemented as a simulator, in contrast to projects such as MAME. However it paved the way for playable emulators of recent consoles that require considerable graphical computational power which could be simulated easily with available PC graphic cards. The final implementation was written in C and used the Glide API, specific to 3dfx adapters. Due to the emulator's popularity, several Glide to DirectX translation utilities were made specifically for UltraHLE for non 3dfx video cards. UltraHLE's high level emulation had its drawbacks; at the time of its release it was able to emulate only approximately 20 games to a playable standard as it emulated and simulated only those calls required by those specific games; it was necessary to adapt the emulator for games that used different parts of the N64 hardware. Nevertheless it supported many more titles than other contemporaneous N64 emulation projects such as Project Unreality. The technique was taken over by the Cxbx Reloaded emulator, which emulates the Microsoft Xbox, uses HLE to reimplement the Video, and audio DSP. Emulators other than UltraHLE eventually adopted variants of high level emulation as well. For example, the Dolphin emulator, which emulates the GameCube and Wii, uses HLE to reimplement the Wii's IOS operating system, and it also has an option for HLE of the GameCube's audio DSP.
Ответ Nintendo и прекращение производства UltraHLE
Также примечательно для своего времени, что UltraHLE мог запускать коммерческие игры, пока консоль оставалась коммерчески востребованной, что в конечном итоге привлекло внимание Nintendo. В феврале 1999 года Nintendo начала судебное преследование авторов эмулятора и сайта, на котором он размещался. В интервью PC Zone представитель Nintendo, Бет Льюэллвин, заявила: «Nintendo крайне обеспокоена тем, что RealityMan и Epsilon распространили продукт, предназначенный исключительно для запуска нелегальных копий игр, разработанных Nintendo и её сторонними разработчиками. Мы принимаем меры для защиты и обеспечения наших прав интеллектуальной собственности, включая обращение в суд». Тем не менее, UltraHLE вышел из-под контроля как его создателей, так и Nintendo. Впоследствии Epsilon и RealityMan отказались от своих псевдонимов и перестали выходить на связь. После утечки исходного кода в 2002 году была выпущена OpenGL-версия UltraHLE под названием UltraHLE 2064, однако она не получила широкого признания, поскольку к тому времени появилось несколько более мощных эмуляторов. UltraHLE 2064 был доступен на официальном сайте до момента его закрытия.
Also notable for its time, UltraHLE was capable of playing commercial games while the console was still commercially viable, a feat which was ultimately noticed by Nintendo. In February 1999, Nintendo began the process of filing a lawsuit against the emulator's authors, along with the website hosting the emulator. Speaking to PC Zone, Nintendo representative Beth Llewellwyn commented: "Nintendo is very disturbed that RealityMan and Epsilon have widely distributed a product designed solely to play infringing copies of copyrighted works developed by Nintendo and its third party licensees. We are taking measures to further protect and enforce our intellectual property rights which, of course, includes the bringing of legal action." Despite this, UltraHLE had grown beyond either its authors' or Nintendo's control. Subsequently, Epsilon and RealityMan abandoned their pseudonyms and went silent. After the source code was leaked in 2002, an OpenGL version of UltraHLE called UltraHLE 2064 was released, though it garnered little acclaim, as several more powerful emulators had subsequently been released. UltraHLE 2064 was available at its official site until the site was de registered.