Wednesday, November 2, 2022

The History of NES Emulators - FwNES, FCE, RockNES and FCEUltra

Today we will talk about the emulators FwNES, FCE, RockNES (forked from xNes) and FCEUltra (originated from FCE), the latter being the most famous and forked NES emulator. Check it out.


fwNES (1998)

FwNes was released on February 24, 1998 by Chinese developer FanWen Yang and Japanese developer Shu Kondo for MS-DOS and Linux. Fan worked on the main core and Shu on the sound core. In addition to being one of the oldest NES emulators, it is also the pioneer in emulating the Nintendo Disk System, the famous Famicom floppy disks. The emulator runs the .FDS formats for Disk System games and .NES and .NEZ (with z) for NES games. In addition, it is a great emulator for sound, emulating the five sound channels of the NES, and the extra sound channels of the Disk System, with compatibility with several cards besides the Sound Blaster, a drama from the 1990s, which suffered with sound compatibility mainly in emulation. Despite this, some games had problems with sound emulation.

The emulator worked well on a 586 with 16Mb of RAM. However, on PCs later than those recommended for running it, it worked extremely fast, making it impossible to play. This happened so that the emulator could adapt to the low performance of older PCs. fwNES also had a great front-end, with ROM selection by folder, language selection, color, theme, save state, reset, screen, sound and joystick adjustment, palette adjustments, speed, as well as choice between Shu Kondo's and Marat Fayzullin's 6502 cores, among others. fwNes also used Neil Bradley's 6502 emulators and the NESticle NES emulator throughout the project. Also at the time, it was considered one of the best NES emulators for Linux. The emulator's latest version was released in November 1998.

In 1998, Shu also created his own NES emulator called BioNES for Windows, which only had two versions released, ending in the same year. The project was quite promising. It's a shame it didn't go ahead.

FCE (1998) FCE or Family Computer Emulator, was created in 1998 by the Japanese Bero, with its second version released in April 1998 for PC-98. The emulator uses Marat Fayzullin's 6502 processor emulation, Yoshi's NES documentation, and Sound Blaster support for DOS achieved in Reki Murakami's MSX2 PC emulator fMSX98-AT, among others. It was an extremely beginner project, with a very fast emulation speed, very poor sound, low compatibility and many bugs. The project was discontinued in 1998.

Despite its shortcomings, it inspired several other NES emulation projects, such as FCE Ultra (with its various derivatives) by TrelaneQ and NextFCE (and its PlasticNES variation) by grugru, both around January 1999 for MS-DOS. The emulator also gained a port for UNIX, as xfce by eggman around May 1999. Bero also developed other emulation projects, such as FPCE for PC-Engine and FPSE for Playstation 1.

RockNES (1998)

RockNES is a fork of the xNES emulator created by Brazilian Fabiano Lopes, known by the pseudonyms Zepper and Fx3 in 1998. RockNES was released in June 1998 for MS-DOS. Initially it was titled xNES (as a continuation of the project that ended in January 1998), changing its name in August 1998.

Initially, it used the xNES source code, but some time later it was completely rewritten. During 1998, it added save state, screenshot, and joypad, until December, when it supported the console's 4 sound channels. RockNES was one of the most functional emulators of its time. In January 2000, it released its first front-end, still in DOS mode. This front-end changed its color and size over time.

In March 2000, Alexandre da Veiga created the Windows version of the emulator, called RockNES X, a name given due to the use of DirectX required for its execution. The Windows version was released until April 2002. RockNES was only released for Windows again in October 2004, when Zepper ended the releases for DOS, which had occurred until August 2004. This version was known as RockNES/Win32, and used the same front-end as the DOS version. This front-end also changed its color, size and word spacing over time. Around the year 2000, the released versions of the emulator required a Pentium II 300Mhz processor with 128MB of RAM, and sound and video quality cards, a medium-high configuration for the time.

Regarding ports to other systems, the famous Richard Bannister ported the emulator to MacOS around October 2000, discontinuing it in October 2005, keeping only the Nestopia port that he had been working on for some time. Before RockNES, Bannister had also ported its predecessor, the xNES. Chris Vallinga ported the emulator to Linux in March 2001, discontinuing it in July of the same year. There was only one more Linux port of the emulator in July 2004, by Matheus Villela. RockNES is one of the oldest and longest-running NES and video game emulators.

Its updates occurred between 1998 and 2021, being continuous from 1998 to 2008, and with hiatuses in the years 2009, 2015, 2018 and 2019. Among the various updates it received in all these years, the one that stood out from 2010 onwards was the launch of two versions of the emulator simultaneously, one for more current technologies, and another for i586 and i686 computers, which are based on Intel processors from the 1990s. The latest version of the emulator is dated May 2021.

FCEU (1998)

FCEU, Family Computer Emulator Ultra, or simply FCE Ultra, was created in November 1998 for MS-DOS by TrelaneQ, Zaik, based on Bero's FCE emulator created in April of the same year. Trelane worked closely with Bero, and developed the Linux version of the emulator at the time of the project's release. The emulator was largely rewritten by Trelane, which resulted in a much more stable and compatible emulator. In version 0.17 for MS-DOS in September 1999, it was the first NES emulator to support Nintendo's arcade game, UniSystem (or Nintendo Vs.).

The emulator supported sound through Sound Blaster, making it one of the best NES sound emulators at the time. In addition, it also supported 5 video modes, joypad, Game Genie, save state, snapshot, among others. It also had good speed, so a fast PC was recommended to run it, and it had good compatibility due to the number of mappers it supported. In late 1999, the Linux version was released on top of version 018. The project had the help of several influencers, such as Nobuaki Andou from Pasofami, Yoshi from nestech.txt, Marat Fayzullin from iNes and Matthew Conte from Nofrendo, who provided various information about the console, among many others. It was recommended to have a Pentium 233Mhz, with 16MB of RAM, a 512KB video card and a Sound Blaster-compatible sound card to run the emulator more smoothly. The emulator also had synchronization between CPU and PPU (central and mathematical processing), which was poor in most emulators. The emulator also supported the NSF player, and the iNES and fwNES NES format ROMs and the FDS Disk System format ROMs. The emulator was closed in September 2000, when the Windows version was also released. It was a simple version, with no front-end, with only the menu to select games.

In November 2000, it was ported to Pocket PC. Also in November, Trelane released the source code, and Xodnizel became interested and began developing the emulator from then on, continuing with the DOS, Windows and Linux versions released in the same month. Around the beginning of 2001, a front-end for Windows was released, with several video, sound and joypad settings, among others. Around July 2001, it was ported by Caz to BeOS as FCEU Ultra/SDL. In mid-2002, it was ported to Xbox as StellaX. In early 2004, a version for MacOS was also released. All versions worked via the command line, except for the Windows and Xbox versions, which had their own interface. The project has dozens of versions, with graphic and sound corrections, added support for several games, and support for the Zapper gun via mouse. The last version was released in May 2004, with a correction in October. The emulator gained ports for the portable WonderSwan in 2000, GP2X in 2006 and PSP in 2006 and 2009, and for the Playstation 2 consoles in 2007 and Nintendo GameCube and Nintendo Wii in 2008. It also received a port for the portable PC, Pepper Pad (unfortunately we do not have its release year).

Because it has always been open source, several versions of the emulator have emerged, including while it was still being developed, such as FCEUD (FCE Ultra Debugger) in 2002 by Parasyte, FCEU-MM (FCEU- Mappers Modified) in 2003 by CaH4e3 going until 2016, FCEUXD (FCE Ultra eXtended-Debug) in 2004 by bbitmaster and DahrkDaiz, FCEUXD SP (FCE Ultra eXtended-Debug Sebastian Porst) in 2005 by Sebastian Porst going until 2007 and FCEUXD SP CE (FCE Ultra eXtended-Debug Sebastian Porst Championship Edition) in 2006 by UglyJoe. It also had a version with recording support, FCE Ultra Rerecording, made by blip in an unidentified year, and updated in 2006 and 2008 by Nitsuja and other influencers in the field.

In March 2006, the initial FCEU project was brought back by Anthony Giorgio and Mark Doliner, but due to lack of time they did not continue it, nor did they release any version of the emulator. Zeromus and Sebastian Porst then thought of merging all the unofficial versions and forming FCE Ultra X, or just FCEUX. The project was started in 2006, and several authors of old ports of the emulator participated, such as Parasyte (péurasait), Cah4e3, bbitmaster and Uglyjoe, as well as many other contributors. The first release was in August 2008. FCEUX played both Famicom and NES ROMs from all regions. The emulator also allows the creation of videos for the ROMs, the famous Tool-Assisted Speedrun, a feature coming from the Re-Recording version, in addition to also allowing changes to ROMs, a process known as Rom-Hacking. In March 2009, it modified the logo of its front-end. In June 2021, it released its 64-bit version, called QFCEUX, with several modifications and extensions to the front-end. FCEUX has had versions for Windows, MacOS X, Linux, UNIX and BeOS since its launch. The project had twenty-two versions released from 2008 to 2013, and in 2018, 2021 and 2022. The last version released was in March 2022. The emulator was added to multi-system emulators such as RetroArch in 2011 and OpenEmu in 2013.

No comments:

Post a Comment

Featured Posts

Emulator and Rom Sites - Part 1

When we talk about emulation and ROMs, we also talk about the websites that spread this idea. And there are many of them. Here we will talk ...

Popular Posts

Total Pageviews