Hakchi2 CE

Hakchi2 CE is a frontend to Hakchi. It is a fork of Hakchi2, maintained by Team Shinkansen, with occasional contributions from individual developers.

In order to connect to a SNES CLassic, Hakchi2 CE uses Remote NDIS (RNDIS, USB ethernet) ?.

It is interesting to note that there are many forks of Hakchi2. The original Cluster's Hakchi2, and Team Shinkansen's Hakchi2 CE are the main versions.

The last commit on Cluster's Hakchi2 is from 14 april 2019. It is the preferred version of Hakchi2 by some users. Team Shinkansen's fork, named Hakchi2 CE, is the only being actively developed, and is usually recommended.

Hakchi2 and Hakchi2 CE are not compatible with each other.

## Name

Its name is source of some confusion. It is incosistently called Hakchi, Hakchi2, Hakchi 2, Hakchi CE, Hakchi2 CE, and Hakchi 2 CE.

Its name comes from the original Hakchi2, which, in turn, got its name from the original hakchi scripts. Which, in turn, may or may not have been name after tha haxchi custom firmware for the Nintendo Wii U.

## Variants

Hakchi2 CE is make disponible in 3 variants:

zip: a stand-alone (protable) program. The entirety of the Hakchi2 CE program is stored on its folder.

debug: the same as the zip variant, with the inclusion of a second window that shows the commands Hakchi2 CE is running. The recommend variant, specially for troubleshooting purposes.

installer: although Hakchi2 CE is a portable program that does not need to be installed to the computer, some people prefer to have it installed. So a installer variant is offered. Some Hakchi2 CE files will be located at the user's *Documents* folder.

## Features overview

 Auto patching
 Metadata scraping

## Files and folders structure overview

### **config**

The folders structures are tored inside the *config* folder.

folders\_snes\_REGION.htm: the SNES folders structure file
folders.htm: the NES folder configuration file

### **data?**

snescarts.xml: contains metadata information about the SNES games. Can be edited, and expanded by the addition of <game></game> fields.
snescarts.xml is a database file on Hakchi2 and Hakchi2 CE. When a SNES game is added, Hakchi will search for the CRC32 hash of the added file on snescarts.xml. If the CRC32 is found, Hakchi2 (CE) will automatically add the metadata for said game.

structure:

```

 <Game>
 <name>The name of the game as it will be displayed on Hakchi2 CE and by the SNES Classic</name>
 <players>The number of people that can play the game</players>
 <simultaneous>set to *1* if the game can be played by 2 people simutaneously; 0 if otherwise</simultaneous>
 <crc>The CRC32 Checksum of the game</crc>
 <date>The date of the game's launch</date>
 <publisher>The game's publisher</publisher>
 <region>The country or region where the game was released in</region>
 <cover>The URL for the cover box of the game (currently it does nothing, but Hakchi2 CE should download it automatically)</cover>
 <api\_id>The id of the game on The Games DataBase.net (currently does nothing, should it do anything?)</api\_id>
 </Game>

```

## Compiling

It is possible to use Microsoft Visual Studio to compile Hakchi2 CE.

Download the .zip source from TeamShinkansen's Hakchi2 CE github page.

Donload the contents of the *libraries* folder (they aren't included into the .zip download spoken of above), and put the contents on the respective directory.

Copy the file *detached fallback* from a pre-compiled realease, and move it to \tools\arm (?)

Open the .sln hakchi\_gui.sln solution file. Right-click onto the solution and select *Build solution*.

## Hakchi2 CE on a macOS computer

There are reports that Windows 7 works better than Windows 10 via Virtual Box.

The user need to do USB settings twice: once while powered on, and once while in FEL mode. Then, the SNES Classic should work as intended after a power cycle, and the user can intall the custom kernel by going to Kernel --> install/repair

A tutorial can be found on r/miniSNESmods.

## External links

Hakchi2 CE Azure DevOps page, click on a commit hash, then on "X published" below "Related" to get to compiled builds.