Code Monkey home page Code Monkey logo

summercart64's Introduction

SC64 - an open source Nintendo 64 flashcart


Features

  • 64 MiB SDRAM memory for game and save data
  • 16 MiB FLASH memory for bootloader and extended game data
  • 8 kiB on-chip buffer for general use
  • ~23.8 MiB/s peak transfer rate USB interface for data upload/download and debug functionality
  • ~23.8 MiB/s peak transfer rate SD card interface
  • EEPROM, SRAM and FlashRAM save types with automatic writeback to SD card
  • Battery backed real time clock (RTC)
  • Status LED and button for general use
  • 64DD add-on emulation
  • IS-Viewer 64 debug interface
  • N64 bootloader with support for IPL3 registers spoofing and loading menu from SD card
  • Enhanced UltraCIC_C emulation with automatic region switching and programmable seed/checksum values
  • PC app for communicating with flashcart (game/save data upload/download, feature enable control and debug terminal)
  • UNFLoader support
  • Initial programming via UART header or dedicated JTAG/SWD interfaces
  • Software and firmware updatable via USB interface
  • 3D printable plastic shell

Documentation


How do I get one?

I've prepared all necessary manufacturing files on PCBWay Shared Project site. Full disclosure: for every order made through this link I will receive 10% of PCB manufacturing and PCB assembly service cost. This is a great way of supporting further project development.

PCB from PCBWay

If you don't need a physical product but still want to support me then check my GitHub sponsors page.


Where's menu?

Menu, as known from 64drive or EverDrive-64, is currently under development. Progress can be tracked in N64FlashcartMenu repository. Ambitious goal of this software is to target every flashcart available on the market. However, main focus for now is getting at least basic UI running on the SC64.


Help / Q&A

For any questions related to this project, please use Discussions tab in GitHub repository. Do not use my e-mail for these questions, as I want to have a centralized knowledge base accessible for everyone interested in this project.

I'm also active at N64brew Discord server as korgeaux#5558 but keep in mind that Discussions tab is a preferred option. Discord is not a replacement for contact form in any way.


High-level flashcart block diagram

SC64 block diagram


Finished example

SC64 finished example


Acknowledgement

This project wouldn't be possible without these contributions:

  • 64drive orders being on permanent hold long before creating this repository.
  • EverDrive-64 X7 being disappointment for homebrew development (slow USB upload, unjustified price and overcomplicated SD card access).
  • Jan Goldacker (@jago85) and his projects:
    • Brutzelkarte providing solid base for starting this project and sparking hope for true open source N64 flashcarts.
    • UltraCIC_C reimplementation for easy integration in modern microcontrollers. Thanks also goes to everyone involved in N64 CIC reverse engineering.
  • N64brew Discord server community being very helpful during flashcart development.
  • FatFs FAT32/exFAT library being easiest to integrate in embedded environment.
  • Yakumono's (@LuigiBlood) extensive 64DD documentation and its implementation in various emulators.
  • Libdragon open source N64 SDK project and its developers.

summercart64's People

Contributors

networkfusion avatar polprzewodnikowy avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.