Blog:Code Comparisons Like Mom Used to Make

From Game Developer Research Institute
Jump to: navigation, search

Dimitri recently used CloneSpy to look at Game Boy (regular, not color) games. In case you don't know, CloneSpy is a code comparison program that predates our own; it was originally written by Thomas Jentzsch back in 2000 and was aimed at sorting out Atari 2600 ROM dumps.

There are significant differences between CloneSpy and our program. Our program only looks at two files at a time, while CloneSpy goes over all files in a directory. Our program writes shared data like hex strings to an output file. The user then has to search for that data on his or her own in other files, perhaps using a program like Effective File Search. CloneSpy does all this itself, but it's a mystery as to what shared code is being found unless you want to disassemble the ROMs later and investigate for yourself. This may not be a big deal when it comes to 2600 games, but it becomes a problem when dealing with more complex games. For example, CloneSpy grouped together puzzler Rock'n! Monster!! and Super Street Basketball. Upon further examination, it turned out both games were by different developers, but they do share a music composer, which means they likely share the same sound driver. That likely triggered CloneSpy's reaction.

As for the rest of our Game Boy run, CloneSpy mostly grouped variants of the same game together. There are some interesting findings, however, like a chunk of Tose games and a chunk from a potential mystery developer (see GDRI-009). See the full results here.

CRV 08:47, 5 July 2009 (CDT)

Comments on Blog:Code Comparisons Like Mom Used to Make

It should also be noted that I attempted to run Clonespy on the NES set as well, but the structure of NES ROMs doesn't seem to be conducive to this sort of approach, and possibly the sheer number of files crashed it anyway. :P --Dimitri 17:43, 5 July 2009 (CDT)
Question for you: Does it work on the SNES ROMs? Oh, and are you going to revise your code comparison thing to scan a huge number of ROMs in the future and group them? ^_^ KungFuFurby 19:15, 5 July 2009 (CDT)

SNES ROMs would probably make his computer explode. CRV 03:46, 6 July 2009 (CDT)
Indeed. I'm trying it on the PC Engine set, though, but things aren't looking too hopeful. Even with a really low threshold it's still mostly picking up variants. Perhaps the Gameboy and Master System are the technological limit for this sort of approach. :P --Dimitri 06:24, 6 July 2009 (CDT)

<startFeed />

Thomas Jentzsch said ...

I never expected CloneSpy to be used on other systems. Glad you like it.

The code base is a real mess (and there are a few bugs in it). Eventually I have to rewrite it, probably using Java.

--Thomas Jentzsch 16:17, 2 August 2009 (CDT)

<endFeed />

Leave a comment

<comments hideform="false" />