GithubHelp home page GithubHelp logo

isabella232 / hakchi2-ce Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gimpe/hakchi2-ce

0.0 0.0 0.0 116.06 MB

Tool that allows you to add more games to your NES/SNES Classic Mini

Home Page: https://discord.gg/C9EDFyg

License: GNU General Public License v3.0

C# 83.48% Makefile 0.07% C 2.48% Shell 0.47% Batchfile 0.01% NSIS 0.81% HTML 0.13% CSS 12.55%

hakchi2-ce's Introduction

hakchi2 CE

This is a fork of hakchi2 (by ClusterM) by princess_daphie, DanTheMan827, and skogaby. The aim of this fork is to not only provide new UI features and enhancements, but also bring the core of hakchi2 up to date with the rest of the modding ecosystem (i.e. USB host support, SD support).

This application can add more games (game ROMs) to your NES/SNES Classic Mini or Famicom Mini. All you need is to connect it to a Windows PC via Micro-USB cable. No soldering or disassembling required.

https://github.com/TeamShinkansen/hakchi2

Features

  • Change any game settings (including command-line arguments)
  • Fill all game data automatically using included database
  • Automatically check for supported games
  • Search for box art using Google Images
  • Use Game Genie codes for NES games; includes Game Genie database
  • Automatically patch problem games (patches for many popular games included)
  • Upload hundreds of games at once
  • Return to the HOME menu with a button combination instead of the Reset button
  • Enable autofire A/B
  • Simulate the start button on the second controller (for Famicom Mini)
  • Disable seizure protection
  • Allows to install user-mods to add more features (even support for SNES/N64/Genesis/etc., music replacement, themes, etc.)
  • Allows users to expand the storage of their system (provided a USB OTG hub, or an SD breakout module)

So you were the first to hack the NES Classic Mini?

No! It was my Russian сomrade, madmonkey, who first published a successful hack of the the NES Classic Mini. He created the original “hakchi” tool. However, it was not very user-friendly, so I decided to create a tool which is simple to use by anyone--not only Linux users. I named it “hakchi2” because I don’t like to come up with names. So my first version was a 2.0 release :)

How do I use the tool?

Basically you just need to unpack it somewhere on your harddrive (installation is not required), run it, press “Add more games”, select some game ROMs and press “Synchronize”. The application will guide you through this process.

How does the tool actually work?

You don’t need to worry about it. But if you really want to know, it’s using FEL mode. FEL is a low-level subroutine contained in the BootROM on Allwinner devices. It is used for initial programming and recovery of devices using USB. So we can upload some code into RAM and execute it. In this way we can read the Linux kernel (yes the NES Classic Mini and Famicom Mini runs an Linux operating-system), write kernel or execute kernel from memory without writing it to flash. So we can dump the kernel image of the NES Mini, unpack it, add some games and run a script which will copy them back to flash, repack, upload and execute. However, the games directory is on a read-only partition. Therefore we also need to create and flash a custom kernel with a special script that creates a sandbox folder on a writable partition and mounts it over the original games folder. This means that your original files are safe: you cannot delete or harm the original files in any way, even if you wanted. For kernel patching my application just executes other applications, which is why there is a “tools” folder.

What if I have another question?

Many more commonly asked questions are answered in the FAQ: https://github.com/TeamShinkansen/hakchi2/wiki/FAQ

hakchi2-ce's People

Contributors

asiansteev avatar bananarama203 avatar barryvdh avatar brian91292 avatar bslenul avatar cerial avatar clusterm avatar compcom avatar condiczek avatar dantheman827 avatar daphie79 avatar digitalroot avatar f0xcr4n3 avatar graykimbrough avatar hedda avatar juanlin avatar jumpmanfr avatar madmonkey1907 avatar magicseb avatar neorame avatar nerdnils avatar nhakin avatar nocodeleftbehind avatar r4dius avatar robnadin avatar sanjay900 avatar shinji257 avatar skogaby avatar spencerng avatar x0rloser 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.