Monday, May 4, 2020

The EverDrive N8 Pro - Second Time Perfection? A Review

Your Choices (courtesy of krikzz)
Krikzz has been a premier maker of flash cartridges for various systems for a decade.  Beginning with the Sega Genesis, he has made flash cartridges for just about every cartridge-based system from the Nintendo Entertainment System to the Game Boy Advance.  For many systems, his flash carts are the only flash carts of any quality available.  In 2013 he released his NES and Famicom flash cartridges, the EverDrive N8, in 72 and 60 pin editions to widespread acclaim and adoption.  Six years later, he brings an updated flash cartridge, the EverDrive N8 Pro.  In this review, I will look into the new flash cart's features, review some of the issues from the previous model and deliver a verdict on whether the cartridge is worth an upgrade for existing users and whether new users should choose it over the original N8.


Background - Duel of the Flash Carts


The Krikzz EverDrive N8 was not the first NES flash cartridge, that honor goes to the RetroUSB/bunnyboy NES PowerPak.  The NES PowerPak was originally released in 2007 and was the first "modern" flash cart in that it used a flash-based storage medium to store and load ROMs and an FPGA to configure itself to simulate the functionality of a mapper.  But by 2012 the NES PowerPak was looking a little long in the tooth.  The PowerPak's menu system was very bare-bones, its reliance on Compact Flash for storage felt ancient when the world had moved onto SD card for removable storage, there was no 60-pin version of the cartridge, official firmware development had pretty much ended in 2010 and homebrew development was slow.


In 2013 Krikzz released the EverDrive N8 to compete for the title of "best Nintendo 8-bit flash cart"  It addressed most of the NES PowerPak's deficiencies, it came with a more robust menu and file system, it came in a 60-pin version for Famicom consoles, used SD cards for storage and used more modern parts.  It could automatically create sav files for battery-backed save games, the PowerPak required you to have pre-existing files present on the CF card.  Additionally, it came with a replaceable coin battery, so you did not have to reset the console to make the flash cart write your save to the SD to retain your save as you did with a PowerPak.  Not only is this battery advertised to last a long time, but it also has a voltage detection option in the menu.  When the voltage starts to dip below 3.00v, you should start considering replacing it.  Krikzz' supported the cartridge with over six years of firmware updates, expanding its features significantly over the course of its lifespan to offer official support for Famicom Disk System games, expansion audio, save states and many more mappers than its firmware originally shipped with.


The EverDrive had its faults.  Unlike the NES PowerPak, it did not support playing NSF music files, which gave the PowerPak a reason to continue to exist in the possession of many people, myself included.  Homebrew mapper development for the N8 was also slower to come to the N8, the N8 development tools either were not open at first or so many people already had PowerPaks that it did not attract developers initially.  The accuracy of expansion audio was for the first few years rather weak (Krikzz may be tone deaf).  The N8 and PowerPak both only had 512KiB of SDRAM for PRG-ROM and CHR-ROM storage and battery backed SRAM up to 128KiB, but larger homebrew and some games and hacks and translations required more storage.  

Improvements of the N8 Pro


So what does the N8 Pro bring to the table?  First, it uses a Cyclone IV FPGA compared to a Cyclone II in the N8, allowing for greater resources to be available for mapper simulation.   It supports up to 8MiB PRG-ROM and 8MiB CHR-ROM and 256KiB battery backed RAM, so much larger games and hacks can be supported.  There is an ARM co-processor which dramatically speeds up loading times and significantly improves the speed and smoothness of the menu navigation.  The N8 Pro can support SD cards of any size you can buy today due to exFAT file system support (FAT32 still works with third-party formatting software) and has more robust file system support.  You can get almost any category of ROMs into one folder because it supports up to 1024 files per folder and more if you turn file sorting off.


Four other improvements bear mentioning.  The first is support for an Op-amp for cartridge audio.  This allows the N8 Pro to output levels to properly compete with the original older Famicoms, something the N8 could not quite manage as it had to generate audio amplitude from the FPGA without an amplifier.  Second, where the N8 could only support one save state, the N8 Pro can save up to 99 states and it can date and timestamp them too thanks to its Real Time Clock.  Third, incompatibilities with SD cards due to file fragmentation should be a thing of the past.  The N8 Pro also supports eight Game Genie codes compared to the five of the N8.  There is menu option to load cheats from a text file with the name matching the ROM file, which is incredibly handy. Krikzz had someone write a helpful manual for the N8 Pro and it is available here.


The file fragmentation issue has been something that has affected many N8 owners, myself included, since the transition from OSv16 to OSv20, a process that took over two years of beta releases.  OSv20 brought a huge number of improvements to the N8, including much more accurate expansion audio, full MMC5 support, FDS auto-swap blocking, audio balance levels for each expansion audio chip supported, and a large number of new mappers.  All those improvements were awesome, but when my N8 has a one chance in three in successfully loading a game or showing a non-garbled menu and this issue has been known for years and no fix has been released, I am not quite as enthusiastic to trade up in the same ecosystem.  I would note that this issue only affects certain EverDrive N8s but it is not an issue with buying a clone EverDrive N8 from China, my N8 was bought from Krikzz directly.


Although the loading issues on my N8 are a very frustrating experience, I have to acknowledge that Krikzz is the only game in town for a significantly improved flash cartridge right now.  So I ordered a N8 Pro Famicom edition.  For $169.00 plus tax and shipping, it is a pretty pricey device.  I waited for most of the early bugs to be squashed in firmware and a board revision to pass.


Some features do not hold much interest for me.  Support for SD cards greater than 32GiB is not very useful.  32GiB is an enormous amount of storage space and I like to run lean.  I rarely use save states, so more than 10 is overkill.  The N8 had sufficient FPGA resources to run MMC5 games with expansion audio and the MMC5 is probably the most complex mapper ever made.  2MiB of PRG and CHR support is sufficient for anything I would ever want to run.


Features like better audio volume control, faster loading and an end to file loading errors are of supreme interest to me.  The N8 Pro has a dedicated switch on the cartridge to go to the menu or swap disk sides of FDS games, which eliminates the need for the auto-loader that skips past the FDS Zelda no Densetsu title screen unless you remember the button combo to prevent the automatic disk swapping. (You can still enable auto-swapping if you wish.)   This button can also be used to call up the menu, which is handy if you find yourself hitting the menu button combo by accident (calling up the menu can be disabled).  It also has a fourth logic level converter to prevent the console from having to deal with unfriendly logic level conversions.  Another nice feature is that it will maintain a list of recently played games, very useful for testing.  It also has a NSF player, which pretty much puts the final nail in the PowerPak's coffin as far as functionality is concerned.


The N8 Pro's menu's response time has been improved so that it is instantaneous.  The time it takes to boot from throwing the power switch is much improved as well.  The N8's boot and menu do not seem so sluggish in isolation, but when compared to the speed the N8 Pro changes screens, it is hard to go back to the N8's menu.  The N8 Pro pretty much refreshes the screen on the next frame whereas the N8's menu feels like it takes several frames.  Going up or down the directory structure, switching between pages of a file and navigating the options is far more pleasurable now on the N8 Pro.  If you use the in-game menu to exit the game, or reset back to the menu, you can start the previously loaded game by pressing the start button instantly.  You can use the same SD card with both the N8 and N8 Pro because each looks to a separate directory for its firmware.  The same SD card which the N8 had troubles loading from gave me no errors with an N8 Pro.  If the use of the ARM co-processor means that Krikzz' well-documented idiosyncratic issues with SD cards are a thing of the past, then I urge everyone to support the new paradigm whenever possible.


The USB port is useful to both developers and users alike.  With the USB connection, you can load ROMs directly from your PC or flash them to the SD card.  This helps reduce wear and tear on the microSD card reader.  You can also make directories on the SD card, run system diagnostics (also can be run from the menu).  Krikzz provides a command line utility for this functionality, so it is not a good idea for transferring your full ROMset all at once!


The build quality of the N8 Pro is excellent.  The plastic shell is much improved over the shell that encloses my N8.  The N8 Pro's plastic is translucent blue or red but has a matte finish that feels professional and is in the same league as the plastics used by Analogue and 8bitdo.  The cartridge connector now uses hard gold and a chamfered/beveled edge, so it will survive many insertion and removal cycles without excessive wear on the cartridge pins or the connector's pins.  The Mega EverDrive X7 I bought last year had a very square edge to its connector, making insertion and removal harder than it had to be.  The N8 I have also has a chamfered/beveled edge connector, as did my original Mega EverDrive, so this issue with the Mega EverDrive X7 seems to be a lapse in board construction rather than an issue endemic to Krikzz' products.  '


The N8 Pro does have a few drawbacks compared to the N8.  The Famicom N8 Pro is longer than an original N8 and will not fit in a NES front loader with a push-down cartridge connector unless you use an 60-to-72 pin converter that has a thick PCB like a Game Genie which can make contact with both sets of pins at once.  A Blinking Light Win connector should also work with a thin connector.  Jailbars are slightly more visible on large areas of sold dark gray on the N8 Pro compared to the N8.  Also, the N8 Pro's ability to work in NESRGB or Hi-Def NES (HDMI)-modded systems is very variable at this time.  There are no issues with the N8 Pro working with the Analogue Nt Mini and Krikzz said the the device works with the retroUSB AVS as of its latest firmware.  (The N8 was rather ornery with the Nt Mini until the beta N8 v1.20 firmwares)  The NES N8 Pro still requires modding your NES systems to support expansion audio.  The N8 Pro supports the same expansion audio chips of the N8 : FDS, VRC6, VRC7, Sunsoft-5B, MMC5, Namco-163.


Game Support

One of the most interesting new features is the NES 2.0 support.  iNES 1.0 only supports 4MiB of PRG-ROM and 2MiB of CHR-ROM, which is inadequate for the needs of the N8 Pro.  So the expanded PRG and CHR ROM sizes of NES 2.0 are supported.  The N8 Pro can support mapper numbers above 255, another NES 2.0 feature, and so far Mapper 389 is supported for the Caltron 9-in-1 prototype, 261 for the "200-in-1 - Elfland" multicart, 262 for Street Heroes, 290 for Asder 20-in-1 and 516 for Brilliant Com Cocoma Packs 1 & 2.  There is also support in the N8 Pro for 17 additional mappers below 255 not included with the N8.  Homebrew games using Mapper 30 and 111 are well-supported.  Saving to EEPROM (16, 157, 159) and flash memory (30, 111) work for those mappers which support it.


The N8 Pro acknowledges NES 2.0 submappers, but which ones its supports are not known with certainty.  I do not know if it supports PRG-RAM/CHR-RAM volatile/non-volatile size fields, the Vs. System Type field, the Miscellaneous ROM field, or the alternate PRG-ROM/CHR-ROM size designation method.  Some NES 2.0 fields, such as Vs. PPU Type, Extended Console Type and Default Expansion Device really cannot be supported with original consoles via a flash cart.  Most Vs. System games will still require PPU or coin input hacks to play even though Mapper 99 is supported.  The ROM Info option will show you the combined CRC32 value of the PRG-ROM and CHR-ROM, so you can demonstrate to people that you are using an original, unaltered ROM for a run of a game. The compatibility with supported mappers has improved signficantly from where the N8 left off.  I have listed the issues I found here.


The vastly increased size capacity for PRG and CHR ROM opens the way to emulating many ROMs that just were not possible on the N8.  Action 52 now runs from the original ROMs, you no longer need my crude hacks to break up the games into smaller ROM files.  The translation for Metal Slader Glory requires an increase in PRG-ROM from 512KiB to 1MiB, something the MMC5 did support but the N8 cannot.  Certain ROM hacks like Rockman 4 Minus Infinity also require 1MiB PRG-ROM.  A certain hacker going by the handle "infidelity" has a pair of ROM hacks, Zelda - The Legend of Link and Super Mario All Stars NES which max out the MMC5's addressing capabilities by requiring 1MiB of PRG-ROM and CHR-ROM.  Shenzhen Nanjing's Final Fantasy VII unauthorized port/demake requires 2MiB of PRG-ROM, so now you can play it or its English translation or Advent Children hack on original hardware.


FDS support has come a ways since the early days of the N8 Pro, but is not quite perfect.  Most games will load OK with the current firmware, but some games like Kaettekita Mario Bros. will crash when trying to load disks at certain times.  Like with the N8 with OS v1.20 and above, the Nintendo BIOS screen and the Mario and Luigi animations are replaced with a solid blue screen with "Please Insert Game Card" in white text. The button swap works like the auto swap except for the manual intervention, so playing games with more than two disk sides is impossible at this time (and never has been possible with the EverDrive N8).  I would suggest using the N8 Pro's button like the FDSStick and requiring one press for the number of the disk side (1, 2, 3 & 4) to which the user wants to switch.


Conclusion - Who Should Buy this Flash Cart?

Between the NES PowerPak (a thirteen year old product) and the EverDrive N8 Pro, there is no choice, the N8 Pro leaves the PowerPak in the dust and is only $35 more expensive at $169 vs. $135.  Someone just getting into NES and Famicom flash carts should put their money where the N8 Pro is sold.  If you are just entering the market, I still recommend the N8 Pro over the N8, even though there is a $70 difference between the two devices.  Further support for the N8 Pro should come, but the N8 is a seven-year old product and Krikzz has nearly reached the limits of what it can do.


For those already with an N8, the choice to upgrade is a more difficult one.  If you use a flash carts regularly on your Nintendo 8-bit consoles, find one save state restricting or want to explore the universe of larger ROMs, then by all means upgrade.  If your N8 is working fine for you and fits your needs, then you probably have no need to upgrade.  If you have the money to spend, and these days there are many fine flash carts and optical drive emulators competing for your hard-won retro-video game dollar, then by all means grab an N8 Pro and you will definitely enjoy it more than the N8 or NES PowerPak.  



5 comments:

  1. Thanks for the post! Gonna retire my N8 and purchase the Pro.

    ReplyDelete
  2. One thing worth noting is that the old N8 did in fact let you use more than one savestate by saving .srm files to the SD card. By creating a number of these and renaming them on your computer, you could assign each one a uniquely named state. The implementation was a tad kludgy since it wasn't intended functionality, but it was incredibly useful. Many speedrunners used this feature to easily identify and label their savestates for practice.
    Krikzz is aware of this use case but does not seem to think it's worth bringing back even as an optional setting for power-users, which is disappointing since you can still load .srm files in the N8 Pro's firmware. I'd like to see this functionality return, since I find numbered save states very hard to remember.
    The N8 Pro is a great device, I just wanted to bring up this issue because as great as 99 states sounds, using those states has become worse in my opinion.

    ReplyDelete
    Replies
    1. I appreciate your comment, I never gave it that much thought to be honest because I rarely use savestates these days. I can see how that can be convienient for speedrunner practice.

      Delete
  3. Don't have one of these, but I found your post about the Mega Everdrive x7 while looking up something else and figured out that my purple x3 could run Master System games, so thanks for that!

    Totally off-topic, but do you have any thoughts on the RetroTINK 2x? I have one and I think it's pretty great for the price, even if it doesn't have as many bells and whistles as an OSSC or FrameMeister. I use it mainly with an SNES and HD Retrovision component cables.

    ReplyDelete
    Replies
    1. While I do not have a RetroTINK 2x, I would find it useful not for displaying composite and S-Video on an HDMI TV but for using it as no-hassle deinterlacer for video capturing.

      Delete