Everdrive N8: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
(→‎Mapper compatibilty: replacing mapper list with summary table (reconsidered its usefulness))
(Original EDN8 is discontinued)
 
(33 intermediate revisions by 7 users not shown)
Line 1: Line 1:
The '''Everdrive N8''' is a flash cartridge made by Krikzz. It uses an FPGA to emulate a wide variety of mappers, allowing the user to store a large collection of ROMs on a single SD card and run them on an NES or Famicom.
The '''Everdrive N8''' is a [[:Category:Flash Cartridge|Flash Cartridge]] made by Krikzz. It uses an FPGA to emulate a wide variety of mappers, allowing the user to store a large collection of ROMs on a single SD card and run them on an NES or Famicom.


In addition to NES ROMs, the Everdrive N8 is able to play FDS disk images.
In addition to NES ROMs, the Everdrive N8 is able to play FDS disk images.
Line 6: Line 6:


Specifications:
Specifications:
PRG size: 512 KB
* PRG size: 512 KB
CHR size: 512 KB
* CHR size: 512 KB


NES product: http://shop.krikzz.com/EverDrive-N8-NES-EDN8NES.htm
NES product: https://krikzz.com/store/home/31-everdrive-n8-nes.html
Famicom product: http://shop.krikzz.com/EverDrive-N8-Famicom-EDN8FAM.htm


See also: [[PowerPak]] - A similar product by RetroUSB
Famicom product: https://krikzz.com/store/home/32-everdrive-n8-famicom.html


== Mapper compatibilty ==
This flashcart was eventually discontinued and succeeded by the much newer [[Everdrive N8 Pro]].
The most recent OS update v11.1 in September, 2014 supports the following mappers:
== Hardware ==
[[File:everdriven8-top.jpg|thumb|PCB - top side]]
[[File:everdriven8-bottom.jpg|thumb|PCB - bottom side]]
[[File:everdriven8-sch.png|thumb|schematics]]
[[File:everdriven8-shell.jpg|thumb|cartridge shell]]
[[File:everdriven8-menu.jpg|thumb|cartridge menu]]
 
Cartridge consists of:
* Altera Cyclone II FPGA (EP2C5T144), which is reprogrammed with mapper of preselected ROM
* Altera Max II CPLD (EPM240T100C5), which is glue logic
* 2 x CY7C1049CV33T (PRG-ROM, CHR-RAM/ROM)
* 29W160 (2MB) Flash (BIOS)
* IS52LV1024 (128kB PRG-RAM)
* SN74LVCR162245A 3.3V-5V buffers
* an optional FT245RL, that is responsible for communication between USB port and the CPLD
 
The software part consist of:
* CPLD - logic code inside EPM240T100C5 that is pre-programmed at factory and cannot be updated
* BIOS - program code inside 29W160 that is executed just after powering up the console (by default, it cannot be updated, unless a jumper at back side of the cartridge is closed)
* OS - program code that is stored on the flash card
 
== Mapper compatibility ==
 
As of the OS update v1.26 in 2021, the Everdrive N8 supports the following [[mapper]]s: [https://krikzz.com/pub/support/everdrive-n8/original-series/OS/changelist.txt]


{| class="wikitable"
{| class="wikitable"
|-
|-
| [[iNES Mapper 000|000]]
| {{yes|[[iNES Mapper 000|000]]}}
| [[iNES Mapper 001|001]]
| {{yes|[[iNES Mapper 001|001]]}}
| [[iNES Mapper 002|002]]
| {{yes|[[iNES Mapper 002|002]]}}
| [[iNES Mapper 003|003]]
| {{yes|[[iNES Mapper 003|003]]}}
| [[iNES Mapper 004|004]]
| {{yes|[[iNES Mapper 004|004]]}}
| [[iNES Mapper 005|005]]
| {{yes|[[iNES Mapper 005|005]]}}
| ---
| {{no|[[iNES Mapper 006|006]]}}
| [[iNES Mapper 007|007]]
| {{yes|[[iNES Mapper 007|007]]}}
| ---
| {{no|[[iNES Mapper 008|008]]}}
| ---
| {{yes|[[iNES Mapper 009|009]]}}
| ---
| {{yes|[[iNES Mapper 010|010]]}}
| [[iNES Mapper 011|011]]
| {{yes|[[iNES Mapper 011|011]]}}
| ---
| {{yes|[[iNES Mapper 012|012]]}}
| ---
| {{yes|[[iNES Mapper 013|013]]}}
| ---
| {{no|[[iNES Mapper 014|014]]}}
| ---
| {{yes|[[iNES Mapper 015|015]]}}
|-
| {{yes|[[iNES Mapper 016|016]]}}
| {{no|[[iNES Mapper 017|017]]}}
| {{yes|[[iNES Mapper 018|018]]}}
| {{yes|[[iNES Mapper 019|019]]}}
| {{no|[[iNES Mapper 020|020]]}}
| {{yes|[[iNES Mapper 021|021]]}}
| {{yes|[[iNES Mapper 022|022]]}}
| {{yes|[[iNES Mapper 023|023]]}}
| {{yes|[[iNES Mapper 024|024]]}}
| {{yes|[[iNES Mapper 025|025]]}}
| {{yes|[[iNES Mapper 026|026]]}}
| {{yes|[[iNES Mapper 027|027]]}}
| {{yes|[[iNES Mapper 028|028]]}}
| {{no|[[iNES Mapper 029|029]]}}
| {{yes|[[iNES Mapper 030|030]]}}
| {{yes|[[iNES Mapper 031|031]]}}
|-
|-
| [[iNES Mapper 016|016]]
| {{yes|[[iNES Mapper 032|032]]}}
| ---
| {{yes|[[iNES Mapper 033|033]]}}
| [[iNES Mapper 018|018]]
| {{yes|[[iNES Mapper 034|034]]}}
| [[iNES Mapper 019|019]]
| {{yes|[[iNES Mapper 035|035]]}}
| ---
| {{yes|[[iNES Mapper 036|036]]}}
| [[iNES Mapper 021|021]]
| {{yes|[[iNES Mapper 037|037]]}}
| [[iNES Mapper 022|022]]
| {{yes|[[iNES Mapper 038|038]]}}
| [[iNES Mapper 023|023]]
| {{no|[[iNES Mapper 039|039]]}}
| [[iNES Mapper 024|024]]
| {{yes|[[iNES Mapper 040|040]]}}
| [[iNES Mapper 025|025]]
| {{yes|[[iNES Mapper 041|041]]}}
| [[iNES Mapper 026|026]]
| {{yes|[[iNES Mapper 042|042]]}}
| ---
| {{no|[[iNES Mapper 043|043]]}}
| [[iNES Mapper 028|028]]
| {{yes|[[iNES Mapper 044|044]]}}
| ---
| {{yes|[[iNES Mapper 045|045]]}}
| ---
| {{no|[[iNES Mapper 046|046]]}}
| ---
| {{yes|[[iNES Mapper 047|047]]}}
|-
|-
| [[iNES Mapper 032|032]]
| {{yes|[[iNES Mapper 048|048]]}}
| [[iNES Mapper 033|033]]
| {{yes|[[iNES Mapper 049|049]]}}
| [[iNES Mapper 034|034]]
| {{yes|[[iNES Mapper 050|050]]}}
| ---
| {{yes|[[iNES Mapper 051|051]]}}
| [[iNES Mapper 036|036]]
| {{yes|[[iNES Mapper 052|052]]}}
| ---
| {{no|[[iNES Mapper 053|053]]}}
| [[iNES Mapper 038|038]]
| {{no|[[iNES Mapper 054|054]]}}
| ---
| {{no|[[iNES Mapper 055|055]]}}
| [[iNES Mapper 040|040]]
| {{yes|[[iNES Mapper 056|056]]}}
| [[iNES Mapper 041|041]]
| {{yes|[[iNES Mapper 057|057]]}}
| [[iNES Mapper 042|042]]
| {{yes|[[iNES Mapper 058|058]]}}
| ---
| {{no|[[iNES Mapper 059|059]]}}
| ---
| {{yes|[[iNES Mapper 060|060]]}}
| ---
| {{yes|[[iNES Mapper 061|061]]}}
| ---
| {{no|[[iNES Mapper 062|062]]}}
| [[iNES Mapper 047|047]]
| {{no|[[iNES Mapper 063|063]]}}
|-
|-
| [[iNES Mapper 048|048]]
| {{yes|[[iNES Mapper 064|064]]}}
| ---
| {{yes|[[iNES Mapper 065|065]]}}
| ---
| {{yes|[[iNES Mapper 066|066]]}}
| ---
| {{yes|[[iNES Mapper 067|067]]}}
| ---
| {{yes|[[iNES Mapper 068|068]]}}
| ---
| {{yes|[[iNES Mapper 069|069]]}}
| ---
| {{yes|[[iNES Mapper 070|070]]}}
| ---
| {{yes|[[iNES Mapper 071|071]]}}
| ---
| {{yes|[[iNES Mapper 072|072]]}}
| [[iNES Mapper 057|057]]
| {{yes|[[iNES Mapper 073|073]]}}
| [[iNES Mapper 058|058]]
| {{yes|[[iNES Mapper 074|074]]}}
| ---
| {{yes|[[iNES Mapper 075|075]]}}
| ---
| {{yes|[[iNES Mapper 076|076]]}}
| [[iNES Mapper 061|061]]
| {{yes|[[iNES Mapper 077|077]]}}
| ---
| {{yes|[[iNES Mapper 078|078]]}}
| ---
| {{yes|[[iNES Mapper 079|079]]}}
|-
|-
| [[iNES Mapper 064|064]]
| {{yes|[[iNES Mapper 080|080]]}}
| [[iNES Mapper 065|065]]
| {{no|[[iNES Mapper 081|081]]}}
| ---
| {{yes|[[iNES Mapper 082|082]]}}
| [[iNES Mapper 067|067]]
| {{no|[[iNES Mapper 083|083]]}}
| [[iNES Mapper 068|068]]
| {{no|[[iNES Mapper 084|084]]}}
| [[iNES Mapper 069|069]]
| {{yes|[[iNES Mapper 085|085]]}}
| ---
| {{yes|[[iNES Mapper 086|086]]}}
| ---
| {{yes|[[iNES Mapper 087|087]]}}
| ---
| {{yes|[[iNES Mapper 088|088]]}}
| [[iNES Mapper 073|073]]
| {{yes|[[iNES Mapper 089|089]]}}
| [[iNES Mapper 074|074]]
| {{yes|[[iNES Mapper 090|090]]}}
| [[iNES Mapper 075|075]]
| {{yes|[[iNES Mapper 091|091]]}}
| [[iNES Mapper 076|076]]
| {{yes|[[iNES Mapper 092|092]]}}
| [[iNES Mapper 077|077]]
| {{yes|[[iNES Mapper 093|093]]}}
| [[iNES Mapper 078|078]]
| {{yes|[[iNES Mapper 094|094]]}}
| [[iNES Mapper 079|079]]
| {{yes|[[iNES Mapper 095|095]]}}
|-
|-
| [[iNES Mapper 080|080]]
| {{yes|[[iNES Mapper 096|096]]}}
| ---
| {{yes|[[iNES Mapper 097|097]]}}
| [[iNES Mapper 082|082]]
| {{no|[[iNES Mapper 098|098]]}}
| ---
| {{yes|[[iNES Mapper 099|099]]}}
| ---
| {{no|[[iNES Mapper 100|100]]}}
| ---
| {{yes|[[iNES Mapper 101|101]]}}
| [[iNES Mapper 086|086]]
| {{no|[[iNES Mapper 102|102]]}}
| [[iNES Mapper 087|087]]
| {{yes|[[iNES Mapper 103|103]]}}
| [[iNES Mapper 088|088]]
| {{no|[[iNES Mapper 104|104]]}}
| [[iNES Mapper 089|089]]
| {{yes|[[iNES Mapper 105|105]]}}
| ---
| {{yes|[[iNES Mapper 106|106]]}}
| [[iNES Mapper 091|091]]
| {{yes|[[iNES Mapper 107|107]]}}
| [[iNES Mapper 092|092]]
| {{yes|[[iNES Mapper 108|108]]}}
| [[iNES Mapper 093|093]]
| {{no|[[iNES Mapper 109|109]]}}
| [[iNES Mapper 094|094]]
| {{no|[[iNES Mapper 110|110]]}}
| [[iNES Mapper 095|095]]
| {{yes|[[iNES Mapper 111|111]]}}
|-
|-
| [[iNES Mapper 096|096]]
| {{yes|[[iNES Mapper 112|112]]}}
| [[iNES Mapper 097|097]]
| {{yes|[[iNES Mapper 113|113]]}}
| ---
| {{no|[[iNES Mapper 114|114]]}}
| [[iNES Mapper 099|099]]
| {{yes|[[iNES Mapper 115|115]]}}
| ---
| {{no|[[iNES Mapper 116|116]]}}
| [[iNES Mapper 101|101]]
| {{yes|[[iNES Mapper 117|117]]}}
| ---
| {{yes|[[iNES Mapper 118|118]]}}
| ---
| {{yes|[[iNES Mapper 119|119]]}}
| ---
| {{no|[[iNES Mapper 120|120]]}}
| ---
| {{no|[[iNES Mapper 121|121]]}}
| ---
| {{no|[[iNES Mapper 122|122]]}}
| [[iNES Mapper 107|107]]
| {{no|[[iNES Mapper 123|123]]}}
| ---
| {{no|[[iNES Mapper 124|124]]}}
| ---
| {{no|[[iNES Mapper 125|125]]}}
| ---
| {{no|[[iNES Mapper 126|126]]}}
| ---
| {{no|[[iNES Mapper 127|127]]}}
|-
|-
| [[iNES Mapper 112|112]]
| {{no|[[iNES Mapper 128|128]]}}
| ---
| {{no|[[iNES Mapper 129|129]]}}
| ---
| {{no|[[iNES Mapper 130|130]]}}
| [[iNES Mapper 115|115]]
| {{no|[[iNES Mapper 131|131]]}}
| ---
| {{yes|[[iNES Mapper 132|132]]}}
| ---
| {{yes|[[iNES Mapper 133|133]]}}
| [[iNES Mapper 118|118]]
| {{no|[[iNES Mapper 134|134]]}}
| [[iNES Mapper 119|119]]
| {{no|[[iNES Mapper 135|135]]}}
| ---
| {{yes|[[iNES Mapper 136|136]]}}
| ---
| {{yes|[[iNES Mapper 137|137]]}}
| ---
| {{yes|[[iNES Mapper 138|138]]}}
| ---
| {{yes|[[iNES Mapper 139|139]]}}
| ---
| {{yes|[[iNES Mapper 140|140]]}}
| ---
| {{yes|[[iNES Mapper 141|141]]}}
| ---
| {{yes|[[iNES Mapper 142|142]]}}
| ---
| {{yes|[[iNES Mapper 143|143]]}}
|-
|-
| ---
| {{yes|[[iNES Mapper 144|144]]}}
| ---
| {{yes|[[iNES Mapper 145|145]]}}
| ---
| {{yes|[[iNES Mapper 146|146]]}}
| ---
| {{yes|[[iNES Mapper 147|147]]}}
| ---
| {{yes|[[iNES Mapper 148|148]]}}
| [[iNES Mapper 133|133]]
| {{yes|[[iNES Mapper 149|149]]}}
| ---
| {{yes|[[iNES Mapper 150|150]]}}
| ---
| {{yes|[[iNES Mapper 151|151]]}}
| ---
| {{yes|[[iNES Mapper 152|152]]}}
| ---
| {{no|[[iNES Mapper 153|153]]}}
| ---
| {{yes|[[iNES Mapper 154|154]]}}
| ---
| {{no|[[iNES Mapper 155|155]]}}
| [[iNES Mapper 140|140]]
| {{yes|[[iNES Mapper 156|156]]}}
| ---
| {{no|[[iNES Mapper 157|157]]}}
| ---
| {{yes|[[iNES Mapper 158|158]]}}
| ---
| {{yes|[[iNES Mapper 159|159]]}}
|-
|-
| ---
| {{no|[[iNES Mapper 160|160]]}}
| ---
| {{no|[[iNES Mapper 161|161]]}}
| ---
| {{no|[[iNES Mapper 162|162]]}}
| ---
| {{no|[[iNES Mapper 163|163]]}}
| ---
| {{yes|[[iNES Mapper 164|164]]}}
| ---
| {{yes|[[iNES Mapper 165|165]]}}
| ---
| {{no|[[iNES Mapper 166|166]]}}
| [[iNES Mapper 151|151]]
| {{no|[[iNES Mapper 167|167]]}}
| [[iNES Mapper 152|152]]
| {{yes|[[iNES Mapper 168|168]]}}
| ---
| {{no|[[iNES Mapper 169|169]]}}
| [[iNES Mapper 154|154]]
| {{no|[[iNES Mapper 170|170]]}}
| ---
| {{yes|[[iNES Mapper 171|171]]}}
| ---
| {{yes|[[iNES Mapper 172|172]]}}
| ---
| {{yes|[[iNES Mapper 173|173]]}}
| [[iNES Mapper 158|158]]
| {{no|[[iNES Mapper 174|174]]}}
| ---
| {{yes|[[iNES Mapper 175|175]]}}
|-
|-
| ---
| {{yes|[[iNES Mapper 176|176]]}}
| ---
| {{yes|[[iNES Mapper 177|177]]}}
| ---
| {{yes|[[iNES Mapper 178|178]]}}
| ---
| {{no|[[iNES Mapper 179|179]]}}
| ---
| {{yes|[[iNES Mapper 180|180]]}}
| ---
| {{no|[[iNES Mapper 181|181]]}}
| ---
| {{yes|[[iNES Mapper 182|182]]}}
| ---
| {{yes|[[iNES Mapper 183|183]]}}
| ---
| {{yes|[[iNES Mapper 184|184]]}}
| ---
| {{yes|[[iNES Mapper 185|185]]}}
| ---
| {{yes|[[iNES Mapper 186|186]]}}
| ---
| {{yes|[[iNES Mapper 187|187]]}}
| ---
| {{yes|[[iNES Mapper 188|188]]}}
| ---
| {{yes|[[iNES Mapper 189|189]]}}
| ---
| {{yes|[[iNES Mapper 190|190]]}}
| ---
| {{yes|[[iNES Mapper 191|191]]}}
|-
|-
| ---
| {{no|[[iNES Mapper 192|192]]}}
| ---
| {{yes|[[iNES Mapper 193|193]]}}
| [[iNES Mapper 178|178]]
| {{no|[[iNES Mapper 194|194]]}}
| ---
| {{no|[[iNES Mapper 195|195]]}}
| [[iNES Mapper 180|180]]
| {{yes|[[iNES Mapper 196|196]]}}
| ---
| {{yes|[[iNES Mapper 197|197]]}}
| [[iNES Mapper 182|182]]
| {{yes|[[iNES Mapper 198|198]]}}
| ---
| {{yes|[[iNES Mapper 199|199]]}}
| [[iNES Mapper 184|184]]
| {{yes|[[iNES Mapper 200|200]]}}
| [[iNES Mapper 185|185]]
| {{yes|[[iNES Mapper 201|201]]}}
| ---
| {{yes|[[iNES Mapper 202|202]]}}
| ---
| {{yes|[[iNES Mapper 203|203]]}}
| [[iNES Mapper 188|188]]
| {{no|[[iNES Mapper 204|204]]}}
| [[iNES Mapper 189|189]]
| {{yes|[[iNES Mapper 205|205]]}}
| ---
| {{yes|[[iNES Mapper 206|206]]}}
| [[iNES Mapper 191|191]]
| {{yes|[[iNES Mapper 207|207]]}}
|-
|-
| ---
| {{no|[[iNES Mapper 208|208]]}}
| [[iNES Mapper 193|193]]
| {{no|[[iNES Mapper 209|209]]}}
| ---
| {{no|[[iNES Mapper 210|210]]}}
| ---
| {{yes|[[iNES Mapper 211|211]]}}
| ---
| {{yes|[[iNES Mapper 212|212]]}}
| ---
| {{yes|[[iNES Mapper 213|213]]}}
| ---
| {{yes|[[iNES Mapper 214|214]]}}
| ---
| {{no|[[iNES Mapper 215|215]]}}
| [[iNES Mapper 200|200]]
| {{yes|[[iNES Mapper 216|216]]}}
| [[iNES Mapper 201|201]]
| {{no|[[iNES Mapper 217|217]]}}
| ---
| {{no|[[iNES Mapper 218|218]]}}
| [[iNES Mapper 203|203]]
| {{yes|[[iNES Mapper 219|219]]}}
| ---
| {{yes|[[iNES Mapper 220|220]]}}
| [[iNES Mapper 205|205]]
| {{yes|[[iNES Mapper 221|221]]}}
| [[iNES Mapper 206|206]]
| {{yes|[[iNES Mapper 222|222]]}}
| [[iNES Mapper 207|207]]
| {{no|[[iNES Mapper 223|223]]}}
|-
|-
| ---
| {{no|[[iNES Mapper 224|224]]}}
| ---
| {{no|[[iNES Mapper 225|225]]}}
| ---
| {{no|[[iNES Mapper 226|226]]}}
| ---
| {{yes|[[iNES Mapper 227|227]]}}
| [[iNES Mapper 212|212]]
| {{yes|[[iNES Mapper 228|228]]}}
| ---
| {{yes|[[iNES Mapper 229|229]]}}
| ---
| {{no|[[iNES Mapper 230|230]]}}
| ---
| {{yes|[[iNES Mapper 231|231]]}}
| ---
| {{yes|[[iNES Mapper 232|232]]}}
| ---
| {{no|[[iNES Mapper 233|233]]}}
| ---
| {{yes|[[iNES Mapper 234|234]]}}
| [[iNES Mapper 219|219]]
| {{no|[[iNES Mapper 235|235]]}}
| [[iNES Mapper 220|220]]
| {{no|[[iNES Mapper 236|236]]}}
| ---
| {{no|[[iNES Mapper 237|237]]}}
| ---
| {{yes|[[iNES Mapper 238|238]]}}
| ---
| {{no|[[iNES Mapper 239|239]]}}
|-
|-
| ---
| {{yes|[[iNES Mapper 240|240]]}}
| ---
| {{yes|[[iNES Mapper 241|241]]}}
| ---
| {{yes|[[iNES Mapper 242|242]]}}
| ---
| {{yes|[[iNES Mapper 243|243]]}}
| ---
| {{yes|[[iNES Mapper 244|244]]}}
| ---
| {{yes|[[iNES Mapper 245|245]]}}
| ---
| {{yes|[[iNES Mapper 246|246]]}}
| [[iNES Mapper 231|231]]
| {{no|[[iNES Mapper 247|247]]}}
| [[iNES Mapper 232|232]]
| {{yes|[[iNES Mapper 248|248]]}}
| ---
| {{yes|[[iNES Mapper 249|249]]}}
| ---
| {{yes|[[iNES Mapper 250|250]]}}
| ---
| {{no|[[iNES Mapper 251|251]]}}
| ---
| {{yes|[[iNES Mapper 252|252]]}}
| ---
| {{no|[[iNES Mapper 253|253]]}}
| ---
| {{no|[[iNES Mapper 254|254]]}}
| ---
| {{no|[[iNES Mapper 255|255]]}}
|-
|-
| [[iNES Mapper 240|240]]
| [[iNES Mapper 241|241]]
| [[iNES Mapper 242|242]]
| [[iNES Mapper 243|243]]
| ---
| [[iNES Mapper 245|245]]
| [[iNES Mapper 246|246]]
| ---
| ---
| ---
| ---
| ---
| ---
| ---
| ---
| ---
|}
|}


Known problems:
Known problems:
* Mapper 5 (MMC5) does not support expansion audio.
* Mapper 71 only supports the memory controller used by FireHawk, all other Mapper 71 games must be reassigned to Mapper 2 to work correctly.
* Mapper 69 (FME-7) does not support expansion audio.
 
== Obsolete Mappers ==
A few mappers have been created by others to supplement the Everdrive's provided set, but have since been integrated into or replaced by official mappers:
* [[UNROM 512]] ([[iNES Mapper 030|030]]): [//forums.nesdev.org/viewtopic.php?p=235457#p235457 forum post] (lacks flash save)
* [[GTROM]] ([[iNES Mapper 111]]): [//forums.nesdev.org/viewtopic.php?f=9&t=18841 forum post] (lacks flash save)
 
== Software development limitations ==
 
Aside from mapper incompatibility, there are minor differences between running NES programs on the Everdrive versus a traditional single-game cartridge.
 
* The Everdrive does not accurately simulate power-on state. Because power-on always boots the Everdrive menu, RAM and various registers will be initialized to a consistent state before any NES ROM is chosen to run. (Reset state, however, is not affected by this problem.)
* [[Open bus behavior]] may be different in several memory regions that are used by the Everdrive, but would not be connected on a regular cartridge. ([http://forums.nesdev.org/viewtopic.php?f=2&t=12549 forum post])
* The Everdrive is incompatible with an NES that has the [[CopyNES]] modification installed, due to a bus conflict with its boot code.


== Everdrive development resources ==
== Everdrive development resources ==


* Software tools and example mapper source code: http://krikzz.com/pub/support/index.php?dir=everdrive-n8/development
* Software tools and example mapper source code: http://krikzz.com/pub/support/everdrive-n8/original-series/development/
 
[[Category:Flash Cartridge]]

Latest revision as of 05:36, 13 November 2023

The Everdrive N8 is a Flash Cartridge made by Krikzz. It uses an FPGA to emulate a wide variety of mappers, allowing the user to store a large collection of ROMs on a single SD card and run them on an NES or Famicom.

In addition to NES ROMs, the Everdrive N8 is able to play FDS disk images.

Famicom expansion audio is supported, and on the NES version is output on the EXP 6 expansion pin on the cartridge connector as used by the PowerPak. A simple modification to the NES allows the expansion audio to be mixed with its output.

Specifications:

  • PRG size: 512 KB
  • CHR size: 512 KB

NES product: https://krikzz.com/store/home/31-everdrive-n8-nes.html

Famicom product: https://krikzz.com/store/home/32-everdrive-n8-famicom.html

This flashcart was eventually discontinued and succeeded by the much newer Everdrive N8 Pro.

Hardware

PCB - top side
PCB - bottom side
schematics
cartridge menu

Cartridge consists of:

  • Altera Cyclone II FPGA (EP2C5T144), which is reprogrammed with mapper of preselected ROM
  • Altera Max II CPLD (EPM240T100C5), which is glue logic
  • 2 x CY7C1049CV33T (PRG-ROM, CHR-RAM/ROM)
  • 29W160 (2MB) Flash (BIOS)
  • IS52LV1024 (128kB PRG-RAM)
  • SN74LVCR162245A 3.3V-5V buffers
  • an optional FT245RL, that is responsible for communication between USB port and the CPLD

The software part consist of:

  • CPLD - logic code inside EPM240T100C5 that is pre-programmed at factory and cannot be updated
  • BIOS - program code inside 29W160 that is executed just after powering up the console (by default, it cannot be updated, unless a jumper at back side of the cartridge is closed)
  • OS - program code that is stored on the flash card

Mapper compatibility

As of the OS update v1.26 in 2021, the Everdrive N8 supports the following mappers: [1]

000 001 002 003 004 005 006 007 008 009 010 011 012 013 014 015
016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031
032 033 034 035 036 037 038 039 040 041 042 043 044 045 046 047
048 049 050 051 052 053 054 055 056 057 058 059 060 061 062 063
064 065 066 067 068 069 070 071 072 073 074 075 076 077 078 079
080 081 082 083 084 085 086 087 088 089 090 091 092 093 094 095
096 097 098 099 100 101 102 103 104 105 106 107 108 109 110 111
112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191
192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207
208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223
224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255

Known problems:

  • Mapper 71 only supports the memory controller used by FireHawk, all other Mapper 71 games must be reassigned to Mapper 2 to work correctly.

Obsolete Mappers

A few mappers have been created by others to supplement the Everdrive's provided set, but have since been integrated into or replaced by official mappers:

Software development limitations

Aside from mapper incompatibility, there are minor differences between running NES programs on the Everdrive versus a traditional single-game cartridge.

  • The Everdrive does not accurately simulate power-on state. Because power-on always boots the Everdrive menu, RAM and various registers will be initialized to a consistent state before any NES ROM is chosen to run. (Reset state, however, is not affected by this problem.)
  • Open bus behavior may be different in several memory regions that are used by the Everdrive, but would not be connected on a regular cartridge. (forum post)
  • The Everdrive is incompatible with an NES that has the CopyNES modification installed, due to a bus conflict with its boot code.

Everdrive development resources