Hello, my name is David Watts.
As the title states this is about SNES Classic Compression.
I am in the works designing a (hopefully) to be implemented compression system for Hakchi2.
I've been running tons of tests and and optimistic I can make a catered Snes compression system.
As I'm sure a lot of you have realized, despite there being (7zip) compression with Hakchi2, you are still limited to what you can put on your Snes Classic in terms of amount of games, this is what I am trying to alleviate, every test I've done so far on my program I am writing is showing positive results in terms of patterns, (chunks, etc). Not just that but I've been looking through various SNES games with a Hex Editor and am seeing quite a lot of the same patterns in specific portions of their data. Which is stuff I can account for, optimize and thus give a better result that is catered specifically for this situation.
But with this being said, I am not trying to be a Hakchi competitor, it's in my hopes that Cluster will implement the final touches into Hakchi once I have it completed this, because after all we all want the same thing - to enjoy our beloved games!
I will post updates here as often as I can, and if you have any questions please feel free to ask! Also you can stay most informed on my Twitter (I just started my personal one) been using my business one for years. So you can find me on Twitter at @N1warhead
Thanks guys, hope to make this trip of memory lane better for all of us!
Faq Below
Q: What format will this be?
A: Strangely enough I didn't realize this until after I made the format that it will be .snesc (Snes Compression), it didn't click in my head that it meant as well "Snes Classic" haha.
Q: How does this work?
A: As the moment of writing this there are Three stages of optimizing the data, Step One - just get the data we want, Step Two - run the data through an algorithm that has pre-defined common patterns that I find so shortening down 1,000 [0's] to pat0x1000 or something like that. the Third Step is it will then again scan the remaining data for smaller but repeating byte sequences and combining them. As we know bytes don't EVER go above 255, so how can we possibly deal with lets say the following sequence [250, 250, 250] clearly there isn't a byte that can replace this, and that is true, there isn't. However, who's to say we don't just get them 3 bytes and output to 250x3 so when we go back to reconstruct this data we see '250x3' which means to then INPUT [250, 250, 250] back into the structure.
Q: How long have you been working on this?
A: To be truthful, literally just started it like 10 hours ago, non-stop coding, setting up UI Interfaces, Directory stuff, gathering data, exporting data, etc.
I have a lot of experience with compression converting things such as 8K BMP Photos down to roughly 450 bytes. (Like actual photos, not a solid color), solid colors could make an entire image literally 10 bytes. I just didn't see a need to work on this compression system until I seen the results of the SNES Hardware Specs to know if it was even needed - even though I figured it would be, but who knows, there might be a 500 Gig HD in there somewhere hehe.
Q: Will this be free?
A: Absolutely, why charge, not a Scalper like some people
Q: Do you have a release date?
A:I want to be truthful with you, no I do not. It's still very early in development, once I get over this initial hurdle of learning the patterns, I will then be able to give you guys a better idea of a release date.
Q: Will you release the source code and program?
A:Absolutely, I will be using my GitHub page when it is ready.
Q: What license will this be under?
A: As of now I'm going with MIT so you can do whatever you want with it, don't care about credit, I just want to do a good thing.
Q: But doesn't Hakchi already have compression, why would they implement your system?
A: Yes, they most certainly do have Compression, but it's a general compression system that yes it does work, but it isn't catered to this type of data, it's a general purpose compressor. My system will be catered directly to the *.sfrom format and compressing it to my *.snesc format, I don't know if NES Classic uses that same format - I was never lucky enough to get that console. But if it does then you should benefit from this too. I'll try to get in contact with Hakchi creators to make this happen, if not, I suppose I'll make my own System to upload games and such. I just don't see a point in re-inventing the wheel when I can just give it some better tread and get more mileage out of it. But time will tell, we'll see what happens.
EndOfFaq
As the title states this is about SNES Classic Compression.
I am in the works designing a (hopefully) to be implemented compression system for Hakchi2.
I've been running tons of tests and and optimistic I can make a catered Snes compression system.
As I'm sure a lot of you have realized, despite there being (7zip) compression with Hakchi2, you are still limited to what you can put on your Snes Classic in terms of amount of games, this is what I am trying to alleviate, every test I've done so far on my program I am writing is showing positive results in terms of patterns, (chunks, etc). Not just that but I've been looking through various SNES games with a Hex Editor and am seeing quite a lot of the same patterns in specific portions of their data. Which is stuff I can account for, optimize and thus give a better result that is catered specifically for this situation.
But with this being said, I am not trying to be a Hakchi competitor, it's in my hopes that Cluster will implement the final touches into Hakchi once I have it completed this, because after all we all want the same thing - to enjoy our beloved games!
I will post updates here as often as I can, and if you have any questions please feel free to ask! Also you can stay most informed on my Twitter (I just started my personal one) been using my business one for years. So you can find me on Twitter at @N1warhead
Thanks guys, hope to make this trip of memory lane better for all of us!
Faq Below
Q: What format will this be?
A: Strangely enough I didn't realize this until after I made the format that it will be .snesc (Snes Compression), it didn't click in my head that it meant as well "Snes Classic" haha.
Q: How does this work?
A: As the moment of writing this there are Three stages of optimizing the data, Step One - just get the data we want, Step Two - run the data through an algorithm that has pre-defined common patterns that I find so shortening down 1,000 [0's] to pat0x1000 or something like that. the Third Step is it will then again scan the remaining data for smaller but repeating byte sequences and combining them. As we know bytes don't EVER go above 255, so how can we possibly deal with lets say the following sequence [250, 250, 250] clearly there isn't a byte that can replace this, and that is true, there isn't. However, who's to say we don't just get them 3 bytes and output to 250x3 so when we go back to reconstruct this data we see '250x3' which means to then INPUT [250, 250, 250] back into the structure.
Q: How long have you been working on this?
A: To be truthful, literally just started it like 10 hours ago, non-stop coding, setting up UI Interfaces, Directory stuff, gathering data, exporting data, etc.
I have a lot of experience with compression converting things such as 8K BMP Photos down to roughly 450 bytes. (Like actual photos, not a solid color), solid colors could make an entire image literally 10 bytes. I just didn't see a need to work on this compression system until I seen the results of the SNES Hardware Specs to know if it was even needed - even though I figured it would be, but who knows, there might be a 500 Gig HD in there somewhere hehe.
Q: Will this be free?
A: Absolutely, why charge, not a Scalper like some people
Q: Do you have a release date?
A:I want to be truthful with you, no I do not. It's still very early in development, once I get over this initial hurdle of learning the patterns, I will then be able to give you guys a better idea of a release date.
Q: Will you release the source code and program?
A:Absolutely, I will be using my GitHub page when it is ready.
Q: What license will this be under?
A: As of now I'm going with MIT so you can do whatever you want with it, don't care about credit, I just want to do a good thing.
Q: But doesn't Hakchi already have compression, why would they implement your system?
A: Yes, they most certainly do have Compression, but it's a general compression system that yes it does work, but it isn't catered to this type of data, it's a general purpose compressor. My system will be catered directly to the *.sfrom format and compressing it to my *.snesc format, I don't know if NES Classic uses that same format - I was never lucky enough to get that console. But if it does then you should benefit from this too. I'll try to get in contact with Hakchi creators to make this happen, if not, I suppose I'll make my own System to upload games and such. I just don't see a point in re-inventing the wheel when I can just give it some better tread and get more mileage out of it. But time will tell, we'll see what happens.
EndOfFaq