Official hakchi2 - NES Mini very simple pimp tool

Hacking_Myself

Well-Known Member
Newcomer
Joined
Jan 12, 2017
Messages
98
Trophies
0
Age
46
XP
88
Country
Brazil
Cluster, congratulations, nice work! I have put a lot of ROMs without any problem. I'm very curious about memory limit of the device...

Cheers from Brazil! ;-)
 

orgazmo1009

Active Member
Newcomer
Joined
Jan 27, 2010
Messages
38
Trophies
0
XP
170
Country
United States
Any idea why the google feature doesnt work for me? Ive tried on 3 different versions of this program and on a different computer. same result.
 

EdGe7x

Member
Newcomer
Joined
Dec 31, 2013
Messages
15
Trophies
0
XP
138
Country
United States
Has anyone been able to successfully unselect specific default games?

In my attempts they are still either all there or not even if I select only a few. For example, from the original list of 30 I only want Zelda because it has my save states.

I should mention this was done using the latest version. (2.0.7)
 
Last edited by EdGe7x,

Cluster

Well-Known Member
OP
Member
Joined
Oct 2, 2005
Messages
394
Trophies
0
Age
37
Location
Moscow Region, Electrostal
Website
clusterrr.com
XP
1,281
Country
Serbia, Republic of
I found free hour to write FAQ (in first post). Please read it, there many anwers on questions from above.

Has anyone been able to successfully unselect specific default games?
In my attempts they are still either all there or not even if I select only a few. For example, from the original list of 30 I only want Zelda because it has my save states.

I should mention this was done using the latest version. (2.0.7)
Are you sure you replaced all files when upgraged to new version? "mods" folder was updated.
 

DarkunderdoG

Well-Known Member
Newcomer
Joined
Jul 2, 2007
Messages
96
Trophies
0
XP
215
Country
United States
Yes.. I've unchecked many of the games and the unchecked games were removed... Added Mike Tyson's Punch-Out!! and Donkey Kong Original Edition in place of the ones that came on the system...
 

EdGe7x

Member
Newcomer
Joined
Dec 31, 2013
Messages
15
Trophies
0
XP
138
Country
United States
I found free hour to write FAQ (in first post). Please read it, there many anwers on questions from above.


Are you sure you replaced all files when upgraged to new version? "mods" folder was updated.

No sir I most certainly did not... LOL . I just updated the executable... that would make a lot of sense... I will update all of the files and report back. Thank you!
 
  • Like
Reactions: Cluster

Cluster

Well-Known Member
OP
Member
Joined
Oct 2, 2005
Messages
394
Trophies
0
Age
37
Location
Moscow Region, Electrostal
Website
clusterrr.com
XP
1,281
Country
Serbia, Republic of
Has anyone tested whether optimizing the cover art sizes would allow for more games to fit?
I'm not sure if its a space issue or a filesystem issue that is the limiting factor here.

Hakchi2 spits out png files that are rather large. After running all my covers (about 14 extra games) through a file optimizer
I managed to save about 150kb of space; enough for a couple of games or freeing up some save slots.

From what I understand space isn't the reason that you can't play more games / have more saves. It has to do with what the environment was set to handle.
Seems like this is RAM limit. Shell loading all pictures on startup and maybe it allocating not so much memory or can't allocate it. So it's possible that image size optimization will help.
Anyway it's better to optimize PNG compression.
 
Last edited by Cluster,

DarkunderdoG

Well-Known Member
Newcomer
Joined
Jul 2, 2007
Messages
96
Trophies
0
XP
215
Country
United States
Seems like this is RAM limit. Shell loading all pictures on startup and maybe it allocating not so much memory or can't allocate it. So it's possible that image size optimization will help.
Anyway it's better to optimize PNG compression.

Can this be tested by not requiring an image or utilizing a extremely small size image? (I'm guessing it could be...)
 

EdGe7x

Member
Newcomer
Joined
Dec 31, 2013
Messages
15
Trophies
0
XP
138
Country
United States
I found free hour to write FAQ (in first post). Please read it, there many anwers on questions from above.


Are you sure you replaced all files when upgraged to new version? "mods" folder was updated.

You sir are a scholar! Updating the mods folder did the trick. Thank you again!
 

Hacking_Myself

Well-Known Member
Newcomer
Joined
Jan 12, 2017
Messages
98
Trophies
0
Age
46
XP
88
Country
Brazil
Hi.

I developed ROM-management tool for NES Mini.

View attachment 74050

It's very-very simple to use.

Current version: 2.07
Download link:
https://github.com/ClusterM/hakchi2/releases/tag/2.07

Requirements: Windows XP+, .NET Framework 3.5
Also working on Wine.

hakchi2 is distributing as SFX (.exe file) archive now since some versions of WinRAR can corrupt file attributes required by mkbootfs.exe for symlinks. To update just replace files of old version.

  • It's very easy to add games, just select .nes files
  • You can change any game settings - publisher, release date, etc.
  • Automatic online search for boxart via Google
  • It can fix incorrect iNES headers using fceux database
  • Automatic verification of supported mappers
  • You can hide 30 default games in one click
Q: What is it?

A: This application can add more games to your Nintendo Classic Mini. All you need is to connect it to PC via microUSB cable. No soldering, no disassembling.


Q: So you are hacked NES Mini?

A: No! It was my russian сomrade madmonkey. He created original “hakchi” tool. It was not very user friendly so I decided to create tool which is simple for everyone, not only Linux users. I named it “hakchi2” because I don’t like to coming up with names. So first version was 2.0 :)


Q: How to use it?

A: Basically you need just to unpack it somewhere (installation not required), run it, press “Add more games”, select some ROMs and press “Synchronize”. Application will guide you.


Q: How it’s working?

A: 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 Linux kernel (yes, NES Mini runs on Linux), write kernel or execute kernel from memory without writing it to flash. So we can dump kernel image of NES Mini, unpack it, add some games and script which will copy them to flash, repack, upload and execute. But games directory is on read only partition. So we need also to create and flash custom kernel with special script that creates sandbox folder on writable partition and mounts it over original games folder. So your original files are safe. You can’t delete or harm original files in any way. For kernel patching my application just executing other applications, that’s why there is “tools” folder.


Q: Which games are supported?

A: On this moment confirmed that emulator of NES Mini can run this mappers:

  • 0 (NROM) - very simple games like Ice Climber, Pac-Man, etc.
  • 1 (MMC1) - many good games, this is the second most popular mapper.
  • 2 (UxROM - UNROM/UOROM) - games like Castlevania, Contra, Duck Tales, etc.
  • 3 (CNROM) - mostly simple games but with much graphics, like Adventure Island, Friday The 13th, etc.
  • 4 (MMC3) - most popular mapper, used by huge bunch of great games.
  • 5 (MMC5) - very complex and most powerful mapper on NES, used only by Castlevania 3 and few japanese games. Is there at least one default game using it? I’m surprised that NES Mini can emulate it.
  • 7 (AxROM - ANROM/AMROM/ANROM/etc.) - simple mapper used by games like Battletoads.
  • 9 (MMC2) - used only by Punch Out!!
  • 10 (MMC4) - used by few japanese games.
  • Famicom Disk System images - japanese ROMs with .fds extension, like original Super Mario Bros. 2, Doki Doki Panic, japanese version of Metroid, etc.

It is possible that emulator will run some other mappers too. You can add those ROMs but application will warn you and game likely will not work. If it WILL work please report me about this game. I’ll add this mapper to list of confirmed.

Also if you will patch unsupported game with mapper hack/patch/conversion it should work. There are many MMC3 patches over the Internet. Also it's easy to port games from Codemasters/Camerica to UNROM.

But even game’s mapper is supported some games are not working good without patches. Emulator in NES Mini tested only on default 30 games and actually sucks.


Q: Can I play european/PAL games?

A: NES Mini can emulate only NTSC NES. There is command line argument to enable PAL emulation but it’s not working for some reason. All european NES Minis actually the same as USA versions and they are running NTSC versions of games. So you can play not all PAL games and this games will run faster. Use “(U)” and “(J)” ROMs if possible.


Q: How many games can be uploaded to NES Mini.

A: I don’t know. I have not tested it for maximum yet. Internal storage in NES Mini is really huge for ROMs (about ~300MB) but seems like built in shell of NES Mini can work only with ~90-100 games without glitches. Seems like it’s cannot allocate so much RAM. Investigation required.


Q: Will it work with Famicom Mini too?

A: Yes, It’s confirmed.


Q: I can’t install driver!

A: If you are using Windows Vista, 7, 8 or 10 disable driver signature verification (Google it) and try again.


Q: It says that MD5 checksum is unknown! What I need to do?

A: There are two possible reasons:

  • You have some unique unknown revision of NES Mini. Please send me your MD5 checksum is this case. You can continue flashing custom kernel on your own risk.

  • You are using hakchi2 not the first time with this NES Mini (used it on another PC e.g.) and your kernel already patched. Of course it has unknown MD5. It’s safe to continue in this case.
In any case it’s better not to lose kernel image. It is stored in the “dump” folder. Backup it somewhere. But don’t worry if you still lost it. This kernel image is near the same for all NES Minis.


Q: Can I brick my NES Mini?

A: It’s pretty hard to brick it. You always can flash original kernel back (via menu). Even if your flashing process was terminated for some reason you just can do it again. But flash memory can handle only 100,000 erase cycles for any sector typical.


Q: How to update hakchi2 to new version? I don’t want to lose my games, kernel image and settings.

A: Just copy all files of the new version into the folder of old version with replacement. Or just copy folders “dump” and “games” into the directory of new version. Also copy “config.ini” if it’s exists.


Q: Some games are displayed with an incorrect name, some characters are missed. Why?

A: Nes Mini doesn’t contain some characters in their font. But I created my own font. You can use it on the latest version. Don’t forget to enable it in “Settings” menu (enabled by default).


Q: Can you modify emulator so the combination of buttons on gamepad will trigger reset?

A: It is possible in theory but need to disassemble binary of emulator. I have not so much skill.


Q: Can I use savestates on added games?

A: Yes, you can. Battery backed games can use their internal saves too. Note that saves are stored on writable partition along with other savestates. When you delete a game, all savestates remains in the memory. You can delete them at once using factory reset. But they take only few kilobytes.


Q: Why it is distributed in the SFX archive (as .exe)?

A: Some versions of WinRAR can corrupt file attributes which are required by the “mkbootfs” util.


Q: Your english is awful! Can we do something about it?

A: hakchi2 is opensource: https://github.com/ClusterM/hakchi2

So you can clone it, fix, upload and make pull request. Same way you can add other languages and some cool features.

Or just send me list of fixes.


Q: How to uninstall it?

A: Just flash original kernel using command in the menu. But it will not delete sandbox folder. I'll made uninstall feature soon if you want.


Q: How can I donate you?

A: My PayPal: [email protected]

Thank you! Maybe I’ll buy my own NES Mini one day. All this time experimenting with NES Mini of my friend, lol.

Changelog:
soon

Please send to me any bugreports and suggestions.


You're simply the best, man! Thanks for share your expertise with us. The gamer community appreciate your efforts! ;-)
 

mrjamma

Active Member
Newcomer
Joined
Jan 11, 2017
Messages
31
Trophies
0
Age
43
XP
69
Country
@Cluster / guys

Just a couple of questions.

1. I want to upload games to my brothers mini NES on the same computer as the one I used to flash my Mini NES. Being that I already dumped my kernel, and added my game list, is it correct to assume that all I need to do, is to extract the originally downloaded 7zip hakchi2.exe to a second separate folder location e.g. c:\hakchi2Alternate , and run hakchi2 application from there. Doing so should allow me to backup his kernel into that dump folder, make its own separate games folder and config file, and add games to his liking/flash accordingly?

I imagine I shouldn't need to reinstall the driver either?

2. Based on this:
https://www.reddit.com/r/nesclassicmods/comments/5n1sn3/the_new_game_countsafe_save_count_list/
if I want to keep my original 30 games + add 50 extra (which I have done), that means I have 80 games = only allows 1 save slot per game, is this correct? Does it end up crashing the system if you save more than 80 total saves?
 
Last edited by mrjamma,

Mad-Mega

Well-Known Member
Member
Joined
Jan 11, 2017
Messages
261
Trophies
0
Age
49
XP
165
Country
Netherlands
did you find a working rom for Akumajō Special: Boku Dracula-kun

I've searched a long time but only found 2 roms, the original and the translated, both are using mapper 23 so it will not work.
So either the Mini NES learns to accept mapper 23 or, if it is possible, change the mapper.



Can games be removed once they've been flashed? Or are they just hidden when you remove them?

If you right click on a game you don't want, there will be a delete option.
 
Last edited by Mad-Mega,

LoggerMan

Well-Known Member
Member
Joined
Jun 10, 2011
Messages
567
Trophies
1
XP
845
Country
So even if you cycle through all of the NES US compatible catalogue all of the saves are kept, so if I delete a game and then put it back the saves will still carry on? This is great, now if only I could find a NES mini.
 

Cluster

Well-Known Member
OP
Member
Joined
Oct 2, 2005
Messages
394
Trophies
0
Age
37
Location
Moscow Region, Electrostal
Website
clusterrr.com
XP
1,281
Country
Serbia, Republic of
Can this be tested by not requiring an image or utilizing a extremely small size image? (I'm guessing it could be...)
Yes, I'll test it soom.

@Cluster Yes i replace all files, but with the custom kernel the screen is Black. Flash the Original Kernel all ok
Strange. Try to unpack application again and do everything from scratch.

@Cluster / guys

Just a couple of questions.

1. I want to upload games to my brothers mini NES on the same computer as the one I used to flash my Mini NES. Being that I already dumped my kernel, and added my game list, is it correct to assume that all I need to do, is to extract the originally downloaded 7zip hakchi2.exe to a second separate folder location e.g. c:\hakchi2Alternate , and run hakchi2 application from there. Doing so should allow me to backup his kernel into that dump folder, make its own separate games folder and config file, and add games to his liking/flash accordingly?

I imagine I shouldn't need to reinstall the driver either?

2. Based on this:
https://www.reddit.com/r/nesclassicmods/comments/5n1sn3/the_new_game_countsafe_save_count_list/
if I want to keep my original 30 games + add 50 extra (which I have done), that means I have 80 games = only allows 1 save slot per game, is this correct? Does it end up crashing the system if you save more than 80 total saves?

1. Added this question to FAQ. hakchi2 is a portable application. Most safe way is just extract the hakchi2 to a second separate folder, and run hakchi2 from there. Doing so should allow to backup kernel, and add games to his liking/flash accordingly. You don't need to install driver.
99% safe way: just flash custrom kernel and sync games in same application. This is shouldn't break anything but I can't 100% guarantee it.

2. I can't say anything about this tests. But if it's true it confirms my theory about limited RAM.

--------------------- MERGED ---------------------------

So even if you cycle through all of the NES US compatible catalogue all of the saves are kept, so if I delete a game and then put it back the saves will still carry on? This is great, now if only I could find a NES mini.
Yes. You can do factory reset to erase all saves. Or just delete saves before deleting game if you don't need to keep it.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • TwoSpikedHands @ TwoSpikedHands:
    @Sicklyboy I am wanting to fully change the game and bend it to my will lol. I would like to eventually have the ability to add more characters, enemies, even have a completely different story if i wanted. I already have the ability to change the tilemaps in the US version, so I can basically make my own map and warp to it in game - so I'm pretty far into it!
  • TwoSpikedHands @ TwoSpikedHands:
    I really would like to make a hack that I would enjoy playing, and maybe other people would too. swapping to the EU version would also mean my US friends could not legally play it
  • TwoSpikedHands @ TwoSpikedHands:
    I am definitely considering porting over some of the EU features without using the actual ROM itself, tbh that would probably be the best way to go about it... but i'm sad that the voice acting is so.... not good on the US version. May not be a way around that though
  • TwoSpikedHands @ TwoSpikedHands:
    I appreciate the insight!
  • The Real Jdbye @ The Real Jdbye:
    @TwoSpikedHands just switch, all the knowledge you learned still applies and most of the code and assets should be the same anyway
  • The Real Jdbye @ The Real Jdbye:
    and realistically they wouldn't

    be able to play it legally anyway since they need a ROM and they probably don't have the means to dump it themselves
  • The Real Jdbye @ The Real Jdbye:
    why the shit does the shitbox randomly insert newlines in my messages
  • Veho @ Veho:
    It does that when I edit a post.
  • Veho @ Veho:
    It inserts a newline in a random spot.
  • The Real Jdbye @ The Real Jdbye:
    never had that i don't think
  • Karma177 @ Karma177:
    do y'all think having an sd card that has a write speed of 700kb/s is a bad idea?
    trying to restore emunand rn but it's taking ages... (also when I finished the first time hekate decided to delete all my fucking files :wacko:)
  • The Real Jdbye @ The Real Jdbye:
    @Karma177 that sd card is 100% faulty so yes, its a bad idea
  • The Real Jdbye @ The Real Jdbye:
    even the slowest non-sdhc sd cards are a few MB/s
  • Karma177 @ Karma177:
    @The Real Jdbye it hasn't given me any error trying to write things on it so I don't really think it's faulty (pasted 40/50gb+ folders and no write errors)
  • DinohScene @ DinohScene:
    run h2testw on it
    +1
  • DinohScene @ DinohScene:
    when SD cards/microSD write speeds drop below a meg a sec, they're usually on the verge of dying
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    Samsung SD format can sometimes fix them too
  • Purple_Heart @ Purple_Heart:
    yes looks like an faulty sd
  • Purple_Heart @ Purple_Heart:
    @Psionic Roshambo i may try that with my dead sd cards
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    It's always worth a shot
  • TwoSpikedHands @ TwoSpikedHands:
    @The Real Jdbye, I considered that, but i'll have to wait until i can get the eu version in the mail lol
  • I @ I-need-help-with-wup-wiiu:
    i need help with nusspli failed downloads, can someone respond to my thread? pretty please:wub:
  • Sheeba- @ Sheeba-:
    I can't wait to hack my 11.00 PS4 pro
    Sheeba- @ Sheeba-: I can't wait to hack my 11.00 PS4 pro