We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
The help screen on the HEX2BIN utility does not give any hint to the usage of 'n'. I want to convert a HEX file (less than 32k) to a binary file with size=32k (8000 Hex). Unused bytes should be padded with FF. I expected the following command to work: HEX2BIN /P0xFF myfile.hex but this cmd pads with 00. To my surprise it works with this command: HEX2BIN /L0x8000 myfile.hex Can anyone explain?
/P expects a decimal value. 0xff is the default pad byte if you don't specify one.
Yes, but simply writing HEX2BIN /P255 myfile.hex does not work. I have to write: HEX2BIN /L32768 /P255 myfile.hex but thats OK. Thanks for the quick reply!
I have decided to drop this utility. When it is used in an IDE that captures the DOS output, you get an awfull lot of lines with: Status: Writing nn bytes at address 0xhhhhhhhh. (in a regular DOS box you just get the last line). Does anyone know about a better (newer)converter? Must be DOS based!
OOOPS! I forgot the /Q qualifier.
There is no length specification in an Intel HEX file. Therefore, when you run HEX2BIN, only the data from the HEX file are converted to the binary file. No additional pad bytes are appended. For example: HEX2BIN myfile.hex creates myfile.bin. If myfile.hex only contains 3 bytes, the resulting .bin file will only be 3 bytes long. The /L argument allows you to specify a LENGTH for the binary file. So, HEX2BIN /L32768 myfile.hex creates myfile.bin that is 32768 bytes long. The 3 bytes from myfile.hex will be copied and all other bytes will be filled with the default pad value (0xFF). The arguments to HEX2BIN may be in decimal or in hex (prefixed with 0x). Jon
Yes, but if you have a file with gaps, and you just want to fill the gaps, you can't do this without specifying the length. For example: HEX2BIN /l0x1000 /f0xff myfile.hex will work, while HEX2BIN /f0xff myfile.hex fills the gaps with 0x00. This is not what you expect, but of course Hex2Bin would have to go through the hex file twice to fetch the size in the 1st run (or it could just fill up a 64kb array).
Are you using /P or /F for the pad argument? It should be /P. Jon
Sorry, I'm using /P, not /F. /F will output an error message.