Ouch my eye!

Do not look at LASER with remaining eye!


Reverse Engineering

Posts related to my various reverse engineering endeavours



  • Out of the fire and into the PAN

    Today’s format has been on my list since the early days of my journey in this reverse engineering of image file formats started about a year ago. My interest in it was re-kindled by a recent comment by “RedMike” to my PIC File Format summary. The format in question is the .PAN File format from MicroProse. PAN files are animations, so I’m going to assume PAN stands for PIC Animation. Lets see if we can help Mike out and help to figure this one out.

    (more…)
  • Foreign Intelligence

    Stardate -298165.9: As is often the case, new adventures in reverse engineering are inspired by random comments that I stumble across. I was enjoying a lazy Sunday when I stumbled across this in one of the groups I participate in.

    The “request” (it wasn’t directed at me specifically) comes as a result of the release of DiskMaster 2 earlier in the day. I’ve never heard of the NGF format before, so my interest was definitely piqued. I was also a bit bored, so I decided to take a look.

    (more…)
  • No REServations

    In my last post we took on the .RES Container File format from Nova Logic. In that post I mentioned that there was a 2nd variant of the format that we see with F-22 Lightning II” (1996) from Nova Logic. While working on the original format we found with “Comanche 3”, I took a quick peek and saw this version is quite similar, but there are some notable differences. In this post we will take a deeper look at this other variant and see if we can figure it out fully as well.

    (more…)
  • What about Kyle?

    It all started so innocently. I’ve been away from the scene for a while so I was catching up on some chat history on one of the modding/gaming servers on Discord that I’m on and I stumbled across the following.

    Well we can’t have that now, can we? I’ll take that as a sign for me to get back into things. I mean, how hard can it be? Only one way to find out, let’s dig in!

    (more…)
  • PIC: The lost version

    As I’ve been slowly working on getting the PIC file format code into a releasable state, another title popped up. Well not so much another title, but a rare, and nearly forgotten, version of a title. In this case it’s a 16 colour EGA specific release, while the version we’ve previously looked at was targeted for 256 colour VGA. The title in question? “Gunship 2000” (GS2K) from 1991. The title is interesting in the fact that, like “F117A”, it relies on the original PIC format and not the later ones MicroProse was already using with other titles at the time. Likely due to being based on older game engine code. As such, I didn’t expect much, why would it be any different than the version we already looked at? Guess someone at MicroProse didn’t get the memo. 🤣

    (more…)
  • Rumours of my demise have been greatly exaggerated

    Sorry for the silence everyone. It’s been a tough ride the past while. I have been dealing with a serious illness with a member of my family, and have spent most of my time and energy helping there. As a result I have not had the energy, or inspiration, to make any new posts which take a lot of time to do. Rest assured I have been, in the background, doing quite a bit of work with some outstanding items that we’ve already covered, as well as some new ones we haven’t seen yet. More is coming, just might be slow in making it here. Lots of loose ends I want to tie up, as well as a list of new formats that I’m excited to start looking deeper into. In the meantime please bear with me as I try to find a balance between work, family, life, and blogging. As a result this one is going to just be a quickie, about a new (to me) reverse engineering tool I’ve started to use, and thought some of you might be interested in it too. If you don’t already use it. (wouldn’t surprise me that I’m late to the party on this)

    (more…)
  • PIC as we know it

    Time to stop procrastinating, and distracting myself with other formats, and time to put the MicroProse PIC file format to rest – at least with what we know about it so far. This post serves to act as a formal document for the PIC format, with everything we know so far, and possibly make a few changes too. If you haven’t followed along the whole adventure over the past four months, you may want to read that first, you can find all the PIC related posts here, though I will try to link to relevant posts here as I go. With that said, let’s get down to business.

    (more…)
  • MAXed out

    Here we go again, on yet another side quest, I didn’t mean to, but couldn’t help myself. After finishing off with the CAT file variant we saw with M1 Tank Platoon from MicroProse in my last post, I took a quick poke around the other files included with the game. A number of files with “MAX” in the name along with “EGA”, “VGA”, and “MCGA” caught my eye. These are obviously related to the various graphics modes the game supports, and likely contain more graphic assets, just like we found with the 3 CAT files in my last post. I’ll try to keep this adventure a quick one, so with that let’s dig into it.

    (more…)
  • Cat Pics were always a thing

    We have some unfinished business with regards to the MicroProse CAT file format, it’s time to start wrapping things up. The last time when we looked at the CAT file format we determined the files structure, and wrote some code to extract the contents. We also mentioned the existence of a slightly different variant found with MicroProse’s M1 Tank Platoon. So let’s take a look at this other variant to see how it differs from the version we’ve already looked at.

    (more…)
  • Just toss it in the BIN

    This is actually a format variant I did a while back, but never got around to writing about it. In this case it’s a .BIN image file from SSI’s Western Front. I’ve decided to include it with their .IMG format as it is raw image data just like the IMG format is, with only a slight difference in how the data is encoded. Also I felt .BIN was a bit too generic to be considered it’s own unique type, this is more of an alias extension. So let’s dig into it and see what the differences are.

    (more…)