1srec_binary(5)                File Formats Manual               srec_binary(5)
2
3
4

NAME

6       srec_binary - binary file format
7

DESCRIPTION

9       It is possible to read and write binary files using srec_cat(1).
10
11   File Holes
12       A  file  hole is a portion of a regular file that contains null charac‐
13       ters and is not stored in any data block on disk.  Holes  are  a  long‐
14       standing  feature of Unix files.  For instance, the following Unix com‐
15       mand creates a file in which the first bytes are a hole:
16              $ echo -n "X" | dd of=/tmp/hole bs=1024 seek=6
17       Now /tmp/hole has 6,145 characters (6,144 null  characters  plus  an  X
18       character), yet the file occupies just one data block on disk.
19
20       File  holes were introduced to avoid wasting disk space.  They are used
21       extensively by database applications and, more generally, by all appli‐
22       cations that perform hashing on files.
23
24       See   http://www.oreilly.com/catalog/linuxkernel2/chapter/ch17.pdf  for
25       more information.
26
27   Reading
28       The size of binary files is taken from the size of the file on the file
29       system.   If  the  file  has  "holes" these will read as blocks of zero
30       data, as there is no elegant way to detect Unix file  holes.   In  gen‐
31       eral,  you  probably  want to use the -unfill filter to find and remove
32       large swathes of zero bytes.
33
34   Writing
35       In producing a binary file, srec_cat(1) honours the address information
36       and  places the data into the binary file at the addresses specified in
37       the hex file.  This usually results on "holes" in the file.   Sometimes
38       alarmingly large file sizes are reported as a result.
39
40       If  you  are on a brain‐dead operating system without file "holes" then
41       there are going to be real data blocks containing real zero bytes,  and
42       consuming real amounts of disk space.  Upgrade - I suggest Linux.
43
44       To make a file of the size you expect, use
45              srec_info foo.s19
46       to find the lowest address, then use
47              srec_cat foo.s19 -intel -offset -n -o foo.bin -binary
48       where  n is the lowest address present in the foo.s19 file, as reported
49       by srec_info(1).  The negative offset serves to move the data  down  to
50       have an origin of zero.
51
53       srec_binary version 1.55
54       Copyright  (C)  1998,  1999,  2000, 2001, 2002, 2003, 2004, 2005, 2006,
55       2007, 2008, 2009, 2010 Peter Miller
56
57       The srec_binary program comes with ABSOLUTELY NO WARRANTY; for  details
58       use  the 'srec_binary -VERSion License' command.  This is free software
59       and you are welcome to redistribute it under  certain  conditions;  for
60       details use the 'srec_binary -VERSion License' command.
61

AUTHOR

63       Peter Miller   E‐Mail:   pmiller@opensource.org.au
64       /\/\*             WWW:   http://miller.emu.id.au/pmiller/
65
66
67
68Reference Manual                    SRecord                     srec_binary(5)
Impressum