I’m trying to decompile an old compiled project of mine, and I heard that Reform was the best one to use. However, I can’t for the life of me figure out how to get it to work, and the included html file doesn’t really explain how. I tried creating a .bat file with something resembling the command-line syntax, but no matter what I try all I get is a blank file. Does anyone else know how to use Reform?
I’ve used Reform a lot, especially on Infocom story files. Since you mentioned a .bat file, I assume you’re using Windows. Reform is a command-line program, so you should go to the command line and just try reform story.z5
That will output quasi-Inform 6 source to the screen. If you add on >story.src at the end of the command, you get a file with the output in it. But since Reform doesn’t know the data type of most of the variables, it won’t give very informative output for many things. You need to create a symbol file to get it to recognize what’s a string, what each object is, and so forth. The documentation and the sample files help there, but it’s a learning process. Hope this helps.
Ok, i’ve tried using the command prompt, but it still doesn’t work. I browsed to the same folder Reform was in (as well as the story file i’m trying to decompile), typed in reform with the story file afterwards, and the message I get is:
You also mentioned there being sample files? I don’t seem to have those. Where did you download Reform from? I got it from if-archive.
The file on the IFArchive is a folder with the sources in, and you’d have to compile it yourself. And it’s hard, because it’s in Haskell, and it’s an old file, and stuff changed in between so you get a bunch of errors and stuff… Anyway, I used the compiler that was standard back in 2004 when the program was made, and the result is here.
I tried it with a French game but it gave me a rather implausible i6 source file, but that doesn’t mean it won’t work for other I6 files. I’m curious though, so please report here on whether it worked or not
Edit: I tested Uninform: you need to unzip ztools in the same folder, and type “uninform --help” for how to use it. I got a file that looked much better, but still wouldn’t compile (but it looked like it had recreated the game logic rather accurately). So that’s better I guess!
I got it from the original website, which I did not realize until just now is no longer with us. But you can still get everything, including a Windows executable, at the Wayback Machine here.
I hope this isn’t all a wild goose chase for you. I hope you’re not looking for a full decompiler, in the sense of producing compilable source. There ain’t no such animal.
Reform produces Inform 6-like code that you can use to analyze the logic of a game (and it’s been very useful for me in hunting Infocom bugs), but you can’t compile it back into the original story file.
Sorry for the old bump!
The link to the Wayback Machine is still working but is there any reason that the win32-version isn’t on IF Archive?
I wanted to test this program and vary much not trying to compile the Haskell source and it was nice finding a pre-compiled version.
If there are no god reasons, I’ll submit this one to IF Archive later next week.