Hello everyone. It’s been a while.
To recap some of my previous posts about the HMAPL Project, I was trying to decompile the game’s code at one point from it’s main executable file.
Due to some complications in the code, I was never ultimately able to find any machine that exists with enough pure RAM to satisfy the optimization procedure, resulting in large, confusing, inefficient code. However, the retdec program I was using can also use “virtual memory” which includes a “page file” stored on the hard drive. The downside to using a page file is that it’s much slower than RAM, and also can cause all other running programs to slow down or crash.
So to solve my issues, I was able to create a Windows Server 2016 virtual machine on Google Cloud that included:
- 1 vCPU
- 52 GB Memory
- 2 TB Standard persistent disk
- Windows Server 2016 Datacenter
Once configured, I installed the necessary retdec software, manually set the page file to a size of 1.8TB and let the program do it’s thing. I made sure not to even log in while the app was running, as even that could mess with memory usage and cause a system crash. I instead based my readings off of the CPU/disk activity from the Google Dashboard.
It took roughly 12 days for the program to run it’s full course with optimizations, but it actually did complete successfully.
I decided to go with a python interpreter, as that should make the code overall simpler to interpret. The code can be found on my [GitHub].
It’s worth noting that the decompiled code is not the same code that the developers would have used to create the game. This is just a file generated using AI to interpret the executable powerpc data of the game.
I’ll be going over the new code dump over the next few weeks to see what I can find, and will post back with my results.