As part of my latest hack, I am trying to port sound effects into it. After learning how to do pointer calculations for extracting the sfx, I realized that it would take a long time to calculate the pointers for the 70+sfx by hand. So, because I was slightly bored, I made a program (compiled from QuickBASIC 4.5 and QB64 0.9) that would do the hex math for me. I present to you, SMPSCalc! (Copied from my readme) Some pics: DOWNLOAD x86+x64 editions Source included (QuickBASIC)!
No replies? Not even comments, criticism, bugs, or feature suggestions for future releases? Doesn't anybody find this utility useful? I'm disappointed... Granted, it isn't the holy grail of utilities like SonED2, but it sure does save the user from a lot of time consuming hex$ math. It could easily fill in the blanks for many undocumented pointers on a per-track basis in the SCHG's Music hacking guide. BTW, I apologize about the x64 edition of the program; unlike official Quickbasic 4.5 program compilations, unofficial qb64 compilations require gay .dlls . I did not know about this until I tested it after the fact. I will reupload the .rar file with the included .dlls tomorrow. Some bugs/features that I will fix/implement in future releases: @Fix logging of backwards pointers @Fix Size$ variable in log (it's off by $01) @Fix Track # log (also off by 1) @Ability to save log files to current directory @Ability to paste hex$ pointers into an external document for pasting into the program (esp for x64 edition) @Ability to use bigger sized pointers (32 bit for 32x stuff?) @Other stuff? Do you guys think this useful program should get a wiki-page? There's not that many sfx/music hacking tools that deal with pointers and offsets like this.
Eh, I'm sure it will get replies. I guess the reason I didn't post is because it goes over my head. Was waiting for someone else more qualified than myself to congratulate you.
I donno if I count as "qualified" but I'll congratulate you anyway for your efforts, although, fixing pointers isn't too bad once you get the hang of it, I also got told that a programmed called music pointer fixer (or something) already does what your program attempts to do, but is more in favour of the user as it alters a music file first hand. I'll also note that "timezones" are the reason why I never saw this thread until just now, and I'm guessing the same would apply for many others too.
Actually, this program is more designed towards calculating pointers when finding offsets when extracting music/sfx with a hex-editor. After extracting the music/sfx, then you can use MPF or edit the pointers within.
Hate to double-post, but I have finally updated this program to V2.0! Changelog: V2.0 (final?) Added some more logging options: Base option for counting the track numbers Negative fix options for backwards pointers Added the abilty to load pointers from Input.txt Files now save to current directory of the program Commented Code, made code cleaner Improved x64 edition See the first post and the utility's readme for more information Enjoy! C&CC welcomed
As I am now in my Freshman year of college, I am planning on either majoring in electronics engineering or computer programming. Anyways, in order to learn more about modern programming, I am taking Visual Basic 2010, using Visual Studio 2010 Express by Microsoft. Since I am taking this class, I thought that it would be a great idea to "modernize" SMPSCalc by porting it to a modern. visual programming language. V2.0 is still available at mediafire, but the QuickBASIC 4.5/QB64 0.9 versions will no longer be supported by me, and should be considered as FINAL versions. Minimal testing has been done on this version, so I don't know if x86/32 bit machines will be able to run the program. I'm assuming also that the latest .NET framework needs to be installed too. Moreover, since I don't know how yet, there is no input validation yet. I present to you SMPSCalc V3.0b! (Copied from my readme) Pics: Download here (src including) C&CC welcomed, and especially testers and bug reports!