UniVersus – Nintendo Vs. Flash Cart

Over the past year I have been working on creating a usb programmable flash cart for the Nintendo Vs. named UniVersus. As the project is starting to near completion I have decided it is finally time to publicly share some details about it and get feedback from other collectors

This thread is not a presale or offer of any goods for sale.

General Description

  • Universus is a ‘flash cart’ daughterboard just like other games available for the Vs. system (ie; Dr Mario, Castlevania, etc)
  • Games are programmed onto the flash cart via USB using the UniVersus programming software
  • All Vs. games are fully supported
  • Virtual DIP switches for game settings are setup during programming
  • Single game or Multi game with menu loader programming options
  • Use one PPU for all games (details below)
  • Simulates all mappers and security chips used by Vs. games
  • Additional mappers are supported allowing popular NES games to be played
  • Compatible with both UniSystem and DualSystem configurations of the Vs. system. One or both sides can be populated with UniVersus.

Hardware Specs

  • 4-Layer PCB 90x100mm
  • Lattice MachXO2 CPLD/FPGA Hybrid
  • PRG / CHR each have 2048kb/16mbit of flash storage (32mbit total)
  • PRG-RAM is available using 32kb of MRAM allowing savegame
  • CHR-RAM is available using 32kb of SRAM
  • High Speed USB interface via FTDI 2322H

Use one PPU for all games

This feature is the magic sauce of this project.

Over the years collectors have rom hacked games to allow different ppus to be used by different games. With six different palette tables and ppus with security features its a huge task to modify so many game roms. Each game has a predefined table of color values known as the palette. Each color has a byte value assigned to it. The PPU is limited to displaying 25 colors at one time, but supports up to 64 different colors. This means the game code instructs the CPU to write new color values to the PPU as needed.

UniVersus is designed to intercept the CPU writes to the PPU and can change the values written to the PPU on the fly allowing a single PPU to be used with all games.

Single Game or Multi Game

When programming the UniVersus you have the option to select a single game, or select a custom menu loader and select games of your choice. UniVersus has enough capacity to support all Vs. games being programmed at one time. Total game count depends on the total size and mapper of games selected. I plan the make the menu loader open source to allow others to make customized versions.

Mappers

  • Mapper 0, 1, 2, 3, 4, 7, 9, 10, 11, 13, 64, 75, 76, 67, 99, 118, 119 are supported
  • All mirroring modes are supported. VRAM/CIRAM on Vs. pcb is bypassed and uses UniVersus onboard SRAM
  • Mapper 4/MMC3 is simulated correctly including all reversions

UniVersus Project Status

Sept 3 2015 – Currently waiting for latest PCB reversion to arrive from fabrication. Will have some assembled pictures of this version ready to share by the end of September.