M BUZZ CRAZE NEWS
// general

How can I convert (really) old files in Microsoft Paint format (.MSP) to a usable format?

By Emma Johnson

While recapturing the data from a bunch of old archives on 3.5" floppy disks, I have run into a few disks of pictures stored in the MSP format. I'm pretty sure this is from an ancient version of Microsoft Paint (circa 1988-1990). I looked inside the binaries, hoping for a clue about the format, but they all start with DanM for some reason.

I have searched for compatible applications and so far cannot find one. I tried the mogrify/convert app from ImageMagick without success. I also tried XnConvert, but it didn't recognize the MSP format either.

How do I convert MS Paint's MSP file format to something modern, like JPG? Any bitmap format supported by Ubuntu would be fine... Thanks.

6

3 Answers

I was able to convert the MSP files with recoil () and didn't even have to leave Ubuntu to do it. Thanks to Kurt Fitzner for inspiring me to dig deeper on the web.

Congratulations on finding a file format from the Windows 1.0/2.0 days. The .msp file format only supported one bit-per-pixel monochrome. Not having ever actually looked at the format, I can't say if it's compressed or not and I can't find any references to say for sure. I do know that the original Microsoft Paint was actually a very stripped down version of ZSoft's PC Paintbrush (of the .pcx format). This may mean that there is run length encoding on the data, since that's what .pcx usually used.

Options:

  1. Try and get someone with Windows to use software like XnView to convert the files. The mentioned software isn't open source, but it is free (to use) for noncommercial purposes. I think it unlikely you will find any open source software now existent that will open such an esoteric file format. By the time Windows 3.0 came along and made it an actually viable platform, the .bmp file format came with it and relegated .msp to almost pink unicorn status.
  2. You can try and manually convert the image to something software in Linux can use. If the image is raw (uncompressed) and you can identify where the image data starts in the file, you could probably use a text editor that supports binary and some clever search and replacing to convert the file into .PBM. If you are at all inclined to programming, writing a program to convert it shouldn't be difficult.
6

I were able to crack the file format:
0x00: 4-Byte ASCII File Header (the "DanM" string you saw in the beginning of the file, this is different for Windows 2.0)
0x04: Width (16-Bit Little Endian Integer, on default Windows 1.0 images this is 592)
0x06: Height (16-Bit Little Endian Integer, on default Windows 1.0 images this is 768)
0x08 - 0x1F: Information we don't really care about (mostly 0x00 null characters)
0x20+: Raw 1-bit monochrome pixel data (Big Endian)

To view these images in rawpixels.net you need these settings:

  • Width: 592 or whatever 0x04 is
  • Height: 768 or whatever 0x06 is
  • Offset: 32
  • Flip Horizontal: No
  • Flip Vertical: No
  • Invert: No
  • Pixel Format: Grayscale
  • Ignore Alpha: No
  • Alpha First: No
  • BPP1: 1
  • BPP2: 0
  • BPP3: 0
  • BPP4: 0
  • Pixel Plane: Packed
  • Alignment: 1
  • Subsampling Horizontal: 1
  • Subsampling Vertical: 1

Using this information it will be easier to program software that will convert the file into a more modern format (BMP, PNG, TIFF, JPG). I don't have Ubuntu btw, I have Windows 10 so I really should not be on this community anyway lol.

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy