Well, your problem is actually easier to explain than you might have thought. The reason you are having issues is due to "overloading the cache memory". Typically, every time you do anything, go into a folder, play a game, back out, save, etc, whilst the Mini NES is on...you add to the cache memory that is being used. Think Excitebike, overheating. I made a joke about this, months ago...where, we should have an Excitebike Gauge to monitor how much cache is being used. This bug is a result of Folder Management. There is no true way to fix it. It was looked into, as much as possible. A few tweaks were done to Hakchi2, to help try to clear memory. But C8 errors of this nature are random, and absolutely unavoidable. They are also pretty harmless. Now, then...This is where the save state issues come into play. You basically "stress tested" them to the extreme and forced yourself into crashes. First and foremost, Retroarch, and all of its HMODS, and their dependencies, are entirely experimental in the Mini Linux Distribution Environment. Nothing relative to them is guaranteed to be 100 percent foolproof. Save States are "good" for NES, "decent" for SNES, "ok" for Genesis, "bad" for N64, "no cigar" for Arcade. You get the idea. Anyways, the "proper" course of action is to turn the Mini on, from a fresh state. You then minimize how much surfing you do, and try to get to the game you want to play without overdoing surfing. When you load the game, say SNES...You, play it at least long enough to be "inside" the game. Once you are invested enough in the "true" gameplay, then you can usually, and safely, exit to the main Gui, and have option to save the game. Once you save, if the save is important to you...Use Save State Manager in Hakchi2 2.17, and back-up that save. You do NOT want to keep "testing", by making save after save after save. Because, you are basically overloading cache memory, and will cause a crash, data loss in the way of saves, or C8 errors. You did basically the same thing I would do, if I was stress testing perimeters. I did these tests months ago. Now that I understand how you were trying to pinpoint your issue, you simply did not realize that you were literally pushing your system too hard. Anyways, once you play a few games, make a few saves, blah blah blah...You should shut the system down, let the cache clear. Then, turn it back on. But, always, always, make sure to back-up saves that are important. Lastly, in the case of Sega Genesis...You may not have much familiarity with how rom dumping works. But, MANY Genesis Dumps are "bad" dumps, to begin with. So, in this experimental environment, your chances of a random, bad save, or crash...increases slightly. So, as long as you do not overdo it, and realize everything you do can lead to cache overload, you should be able to minimize your issue. Also, you can get a random C8 upon a fresh boot, on the very first game you load! I typically get random C8 errors, about 4 percent of the time, in my hundreds of tests! So, at least 4 out of every 100 tests I run, lead to the unavoidable, random C8 errors. Save States, I am very careful with, as with my above mentioned methodology. I save, back-up, turn system off
Never run into any problems. So, hope this helps! Just reduce how much you do while the system is on! And, you should be better off in the end...