Saturday, December 9, 2023

The History of Nintendo 64 Emulators - Part 3

Corn (1999)

Corn

The Corn project was created by the Chinese-American Contra SF in 1999, releasing its first version, the 0.01 beta, in September for Windows. Contra was helped with the project by Zach, who posted updates on the website. His emulator was influenced by the TrueReality and 1964 projects. Initially, it only ran some demos and Mario 64, ran with DirectX 6.0 or higher, supported four types of resolution, but did not yet support sound. In October, two versions were released, the 0.01, with bug fixes and basic GFX function (which adds effects, perspective, lighting and shadows to the graphics) and the 0.01 alpha version, fixing crashes on Intel processors and now running on AMD processors. Most likely, joypad support came in the alpha version of the emulator. Some said that in its early days it was faster than UltraHLE, famous at the time.

Corn 0.2 (Options/Settings/About/Game List)

Five months later, in March 2000, Contra released a new version of the emulator, 0.1, now with support for sound, save states, PCs with Voodoo 1 and 2 graphics cards (the best graphics cards available at the time), and the elimination of the individual configuration that previously existed for running ROMs, and the addition of more GFX functions. Some other games also started to run in this version, such as Chopper Attack, Star Fox, Olympic Hockey 98 and perhaps some other games that had not yet been tested. Although it did not work based on plug-ins, the sound reproduction was good. In addition, two binaries were brought in this version for maximum and minimum PC requirements. CornH for Pentium II, Celeron and K7 processors and CornL for K6, Pentium 1 and MMX. In April 2000, version 0.2 was released. It begins to implement a new GUI, improvements to GFX and speed, and better compatibility and support for INI files.

Corn (Fighting Force 64)

This version also came with seven screen resolution modes, fullscreen, support for four joypads, support for seven languages ​​in total and ease of choosing which of the binaries to use, CornL or H. In that month, well-known actors in the 64 scene, began to create INI (initialization) files for the emulator, such as Spinal, Myzar, The Company and Emulation64. At the end of April, version 0.29 of Corn was released. Another 8 games were released with this version, such as Doom 64 and Rush 2. However, several problems arose from this version, such as coming without a GUI, requiring the copy of the GUI from the previous version to the current version in order to run the emulator until the new engine was released. The other problem is that this version does not run the games that ran in the previous version, because the engine structure is modified, so it was recommended, if you want to run the games from the previous version, to keep the binary of the current version, for example, CornL, and instead of CornH, copy CornL from the previous version and rename it to CornH to trick the system and have both versions of the CornL emulator running in one (quite confusing, right?).

Corn (San Francisco Rush 2049)

After the release of version 0.29, Emulation Kingdom also created its INI file for the emulator with support for 29 games, and Spinal released another version of its INI with support for 35 games. The latest version of the emulator, released in June (but created in May), again does not come with the GUI, requiring version 0.2 again to work. It is also not known what improvements this version has. When it was released, it required DirectX 7 or higher, a 300Mhz processor, 32MB of RAM and a graphics card with support for Direct3D and OpenGL for it to work properly. After the end of the emulator, several INI lists were released until the end of 2001. The first after Corn's closure was Spinal's in August, with support for 46 games. The last and most complete list was Duncan's released in December 2001 with 56 games. It has tests of 407 games, 48 ​​of which are more or less playable and 303 are unplayable (between non-functional and loadable up to the intro). Corn was one of the emulators with the lowest game compatibility.

Apollo (2000)

Apollo

Azimer created The Apollo Project in 2000, alongside Phrodide, who helped build the emulator's source code/core. Phrodide also worked on dynamic recompilation of the emulator and Azimer on emulation speed. Azimer had already worked on another N64 project, which was headed by Phrodide alongside Jabo, but which did not go ahead. The first version of Apollo was released in May 2000 for Windows, already executing some ROMs in .N64 and .BIN formats, and working on a Pentium II or K6-2 500 and without a 3D card. In June, he completely rewrote the emulator and began emulating the RSP processor. In July, he preferred to simulate the RSP instead of the emulator, and also simulated the 2D RDP coprocessor and audio (but without plug-ins). It also provides multilingual support and preliminary plug-in support (at this stage only supporting video plug-ins).

Apollo (Cruis'n World)

In December, it fixed bugs in the RSP, brought speed increases, definitive plug-in support, added a controller plug-in and loaded 3D demos of a piece of Zelda64. In February 2001, it created the Azimer OpenGL video plug-in and in April 2001 the Azimer's Audio Plug-ins audio plug-in, both present in the May 2001 version of the emulator, with audio plug-ins starting to work in this version. The May version also added Mempack (the console's memory card), EEPROM (read-only memory) and Rumble Pak (control vibrator), among others. In July, it added support for ROMs in .V64, .U64, Z.64 and .ROM formats, added support for SRAM files (another type of read-only memory) for the PJ64 and TR64 emulators, screenshot support, zipped ROM and improved compatibility and stability.

Apollo (Settings/About)

In August, of the 200 games tested, more than half worked, that is, almost half of the games released for the console. The emulator's last update was in November 2001. It fixed several specific problems and interface issues. The project had the help of some influencers from the N64 scene, such as Niki Waibel, Schibo and Ice from TrueReality, Marius Dumitrean from NINCest 64, Mike Tedder from Project Unreality, Zilmar from Project64, as well as other influencers from the scene such as _Demo_ from ePSXe, from PS1. In August 2003, the emulator's source code was released. The audio plug-in was developed until July 2014. The project's creator, Azimer, also worked on other projects from 1998 onwards, such as KANE (Kick Ass Nintendo Emulator) for Nintendo and SNESRise for SNES, both of which were never released, and contributed to the UltraHLE fork, UltraHLE 2064.

Daedalus (2001)

Daedalus

Daedalus (in English, labyrinth) was released in April 2001 by Storming Norman for Windows. The name of the emulator was inspired by the inventor of the labyrinth that trapped the Minotaur in Greek mythology. With an interface similar to UltraHLE, the emulator came with sound support created by Zilmar, using his standard plug-ins, both for sound and control, known as Zilmar Spec or Zilmar Specifications. The first five versions were all released in April 2001. The first version supports ROMs in .v64, .z64 and .rom formats. The second version already supports ROMs in .n64 format. The third version improves sound support and adds screen resolutions and full screen mode. The project's source code is also released along with it. The fourth version adds support for several console controllers, improves the GUI, fixes bugs, adds the Expansion Pak, to expand the console's RAM and save SRAM. In May, Storming created the graphics plug-in, Daedalus Graphics, used from the last version of the emulator released, in June 2001, when it began to support video plug-ins, also using the Zilmar Spec specifications.

Daedalus (Puyo Puyo Sun 64)

This latest version also adds screenshots, 1024 x 768 resolution, ROM extensions in .jap, .pal and .usa formats. In terms of games, it had good compatibility. Of the games tested, 276 were playable, 90 were almost playable and 418 were unplayable or did not run. It also supported 14 languages. Its recommended emulator execution settings were a Pentium 3 500Mhz, with a GeForce 2 card with 128MB of RAM and DirectX 8. The project had the help of three main groups in the N64 scene, those of the TrueReality, Nemu64 and Project64 emulators. In October 2001, the source code of what would be version 0.08 of the emulator was released, but its binary was never released. The release of its source code in April 2001 allowed for several forks and ports to emerge. In May, after the code was released and version 0.6 of the emulator was released, the Daedalus-LKB hack was released, with versions up until August of that year. It was created by LKB, a collaborator on the project in April, and mainly brought improvements to graphics and game compatibility.

Daedalus (Settings)

In July 2002, Rice created the DaedalusD3D8 graphics plug-in for his 1964 project. It got its name because it combined Storming's graphics plug-in with Rice's. This plug-in also worked on the recently completed Daedalus project. In May 2003, Hikaru ported it to the Xbox console, called Deadalus X. In May 2006, Storming returned to port his emulator to the PSP console, called Daedalus PSP, releasing versions until November 2007. At the same time, a port of his PSP version called DaedalusX64 was released, also created in 2006 for PSP and Linux. The creators of this port were kreationz, alongside salvy6735, Corn and Chilly Willy. The emulator was updated until October 2019. Later, DaedalusX64 was also ported to the Nintendo 3DS (in 2019 by masterfeizz) and PSVita (in 2019 by Shinriji) handhelds and the Dreamcast console (in 2007 by Simpson474). One of the last ports of Daedalus made by Storming (the original creator of the emulator) was in August 2012, to Java Script, called n64js (Nintendo 64 Java Script), which worked through a browser. The project never went beyond a prototype and was soon abandoned.

Project64 (2001)

Project64

Project64 began to be developed by Zilmar in March 1998. At the time, he had help from a few people. In December 1999, Jabo joined the project. At the time, he was known for creating the NES emulator, JNES. In 2000, Zilmar and Jabo began to develop their own plug-ins for the 1964, Apollo and TrueReality emulators. Zilmar developed sound and control plug-ins and Jabo developed mainly video plug-ins. At that time, Zilmar developed standards for the creation of audio, joypad and video plug-ins, which later became standards in practically all the main emulators in the scene. Initially, Jabo wanted to work on emulating the PJ64 CPU, as he had already done so in his own N64 project, but he ended up moving on to the graphics part, later creating some plug-ins for the emulator, such as Jabo's Direct3D (the first being Direct3D6) and Jabo's OpenGL, as well as Jabo's DirectInput for the joypad. Zilmar, on the other hand, was in charge of the audio part, with the Zilmar's Audio Plug-in. Other people directly helped the project over time, such as Shygoo, Azimer, Smiff and Gent. The emulator also had the help of several other influencers in the N64 scene, who were always very close. Among them, Schibo from 1964, Icepir8 and F|RES from TrueReality, Azimer and Phrodide from Apollo, Lemmy and LaC from Nemu64, Storming Norman from Daedalus, as well as Duddie and _Demo_ from the PSX, PSEmu Pro and ePSXe projects, among others. In May 2001, Zilmar and Jabo released the first version of the emulator for Windows along with the previously mentioned plug-ins.

Project64 (Killer Instinct Gold)

Project64 (Super Smash Bros.)

The video plug-ins are high level and the audio plug-ins are low level. The video plug-ins use texturing with various microcodes from the Mario 64 and Zelda 64 games. These microcodes are optimized with the SSE and 3DNow! technologies of Intel and AMD processors. The emulator also supported instant saving (in the console's memory) and Gameshark (cheating). It came with advanced mode recompilation of the device's CPU and GPU (the 4300 and the RSP). Its interface was built on top of UltraHLE. It already had great graphics and compatibility in its early days. PJ64 was developed with C and C++ programming. Initially the emulator required at least a Pentium III 600Mhz processor, which supported SSE technology. Later, it indicated the use of processors with support for SSE2 technology, which began to occur with the Pentium 4 and Athlon 64 processors. In addition, it also required 512 MB of RAM, DirectX 8, a graphics card with support for OpenGL 1.1 onwards and a Windows XP operating system and later. The second version of June 2001 brought updates mainly to the video plug-ins and the console's CPU and GPU. In July 2001, its third version was released, which came with 15 languages ​​available, such was its fame. This version also came with Jabo's DirectSound audio plug-in and the RSP plug-in, which was the device's coprocessor, similar to today's GPUs. It continued to update video, CPU and GPU plug-ins and modify the joypad plug-in.

Project64 (Menus/Options)

It also came with support for save states and snapshots. In September 2001, version 1.3 brought another new plug-in, N-Rage's DirectInput, also for the joypad, along with support for 4 players. The audio plug-in also began to undergo changes from this version onwards. In December 2001, the emblematic version 1.4 was released, which would be the farewell of the emulator. With it, part of the emulator's source code was released for use by anyone interested. It included the novelty of a new GUI, which showed the names of the ROMs in the form of a list on the entry screen. From this version, the Jabo plug-in evolved from Direct3D to Direct3D7, specifically for compatibility with DirectX 7. In addition, another joypad plug-in was released, the Adaptoid Plug-in. In May 2002, the project returned, now with Witten, who developed the cheats part of the emulator. In August 2002, Witten's team joined forces with the emulator's founding team to release a version that would in fact be the final one, titled 1.5. This version included Tooie, Jabo, Witten, Zilmar, Gent, Radeon and Azimer. This version was mainly to clean up the emulator's old code. The website was taken offline the following year. In this version, the plug-ins and processors continued to be updated. Almost three years later, Zilmar returned with Project64, created a new website and released version 1.6 in April 2005. From then on, the project operated on a donation basis. In this version, we saw the creation of Jabo's plug-in, Direct3D8. In November 2005 and August 2006, the emulator received two more updates.

Project64 v1.4 (Interface/About/Menus)

Around the end of 2005, beginning of 2006 (we don't know for sure), version 1.7 was released for donors only. This version had some improvements and ran games that version 1.6 could not run. This version had updates in February and April 2006, two updates in April 2008 and October 2010. The versions of the plug-ins made for this paid version were later used in the free versions of the emulator. In February 2013, they finally released a new public version, called 2.0. In April 2013, they released its source code in its entirety, although with a large part rewritten (why would that be?). Along with it, they released the last update of the binary for this version. Once again, it was understood that this would be a new end for the emulator, but its story continued (I've never seen an emulator with so many ends like that lol). In this version, its icon and logo were also modified. In May 2013, they released another version, 2.1. From this version onwards, a new video plug-in became part of the emulator, Glide64, also developed by the project. In addition, there were also updates to the emulator and better communication between the plug-ins and the emulator, as well as fixes to the RSP plug-in, updates to the Jabo's DirectInput joypad plug-in, among others. From this version onwards, the language selection was also changed, appearing before the emulator was started. This version was updated until February 2014. Two years passed, and a new version appeared, 2.2 in April 2015 (you noticed that they like the month of April, right? LOL). There is something curious about this version.

Project64 v2.0.0.14 (Interface/About/Settings)

They launched support for the 64DD disk, which made it possible to record game files, create movies, animations and characters and play online. It basically turned the console into a computer. Something similar to the SNES Stellaview. This was the first emulator to support this peripheral. From this version onwards, the only joypad plug-in that remains is N-Rage, which is updated in this version. Another one that is also updated is the RSP plug-in. This version also comes with small changes to its layout. At the same time, this version of the emulator is released in the GitHub repository with its source code. In August 2016, version 2.3.0 is released. From this version onwards, the language you want the emulator to be in starts to appear on the input screen. N-Rage and RSP are updated. On this same date, the first public beta release of the Android version also takes place, which had begun its development and alpha stage at the beginning of the year. In this beta version, the emulator starts to run games. In January 2017, version 2.3.2 was released, with updates until February 2019. RSP and N-Rage were updated once again in this version. This version also contains several small bug fixes. The emulator was released for both Windows and Android. The Android version was released in February 2019 as 2.3.3, which was the last version released for the system, and was taken offline from the Play Store months later. In May 2021, version 3.0.0 was released. It introduced the sound, video, and input plug-ins called Project64.

Project64 v2.2.0.3 (Interface/About)

The Glide64 plug-in is replaced by GlideN64. As of this writing, the latest version of the emulator released was in July 2021, 3.0.1. From this version onwards, when entering the emulator, the user could choose whether they wanted a video plug-in for a modern PC or an old PC, in which order the GlideN64 plug-in or the Project64 plug-in was used. This version supported 23 languages. The Project64 plug-ins and the GlideN64 plug-in have all been updated. In 2014, the computer magazine PC World published an article praising the emulator, which supported more advanced settings than Nintendo's official emulator, known as Virtual Console. Regarding its list of compatible games based on the January 2017 version, of about 1020 games tested, 719 were compatible, 199 had problems and 44 were not supported. Regarding its front-end/interface, there have been some updates over the years. From version 1.1 to version 1.3, its interface remained the same, changing in version 1.4, when it stopped being black and became white, with the games in its center detailed by titles, divided into name, status and core and plugin notes in a darker color, in addition to the language options becoming their own menu. In version 1.6, the titles in the center of the front end became white. In version 2.0, the icon at the top of the window was modified since the creation of the emulator, in addition to the titles becoming darker again. And finally, in version 2.2, the titles in the center of the front end became white again. There was a hack of the emulator called Project64k (also called a fork) that provided support for Kaillera, which is nothing more than a server for playing online. The hack was made in April 2003 on top of the open source version 1.4 released in December 2001 by Hotquik. This project was very popular, and was used for many years for online gaming. The project lasted until August 2003. In 2010 it was resurrected by smasherx74 called Project64K7E, who saw the need to fix bugs, glitches and problematic plug-ins. He released his first version in June 2010. In August 2013 he released his last version. Project64 was also ported to Java in November 2009, under the name Jario64. It could be run both on its official website and in a Windows version. In September 2019 another hack of the emulator appeared, Project64 Netplay, which supported direct IP online gaming, unlike the Kaillera version that needed the server in question for online gaming.

No comments:

Post a Comment

Featured Posts

Emulation Names - Part 21

Matt Conte Matthew P. Conte, or Matt Conte (known as Shady) was born in Italy in 1977. He attended the naval academy, where he learned engin...

Popular Posts

Total Pageviews