Monday, 13 April 2009

Free Hex Dump Program ...

I have been writing, but nothing fictional. In fact I have been distracted by learning a new language, C#.

Many years ago I was quite the adept programmer and was even being paid for my efforts. The language I was using was Fortran 77 which no doubt dates me.

These days it is all about Object Oriented Programming which is very different to the languages I learnt on (C, Pascal, Cobol and even 6800 assembler). So it was a bit of a learning curve getting familiarised with C#.

My first bit of freeware is a Hex File Dumper because I needed one to help me write another program. A hex dump is a hexadecimal view of the contents of a file. They are handy for reverse engineering how certain programs save files, recovering data, or just having a look at what gets inserted in data files without your knowledge. Most operating systems come with a hex dump utility but I use Windows (which doesn't).

This is a simple programming problem and it took me a couple of days over Easter to whip up.  Click on this link to download it. All the usual caveats apply, this is very much beta software so don't use it on important data and feedback is welcome. Also don't use it to analyse large files (> 250 kB), even loading a 42kB file took 30 seconds on my machine. I'm using a string data type to store the dump file so theoretically you should be able to open up a file with 2^29 characters (i.e. 512 MB) but practically you will be limited by the amount of contiguous memory on your PC and how long you are willing to wait as the file loads. 

It is straightforward to use. File-Open will open up the file to be analysed. You can then save or print the dump file. I have also included an ASCII table in the Help menu to assist in interpreting  the hex representation of the characters. You can edit the contents of the dump file but this won't change the original file.

The Characters Read field will tell you the total number of characters (or bytes) in the file opened and the KiloBytes field is this number divided by 1024.

1 comment:

  1. This comment has been removed by a blog administrator.