1.4
This commit is contained in:
237
index.html
Normal file
237
index.html
Normal file
@@ -0,0 +1,237 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
||||
<title>xd: Extended Dump and Load Utility</title>
|
||||
<meta name="keywords" content="xd, dump, hexadecimal, octal, decimal, ASCII, ISO" />
|
||||
<meta name="description" content="xd: Extended Dump and Load Utility" />
|
||||
<meta name="author" content="John Walker" />
|
||||
<meta name="robots" content="index" />
|
||||
<link rel="stylesheet" href="https://www.fourmilab.ch/documents/styles/standard_screen.css"
|
||||
type="text/css" />
|
||||
<style type="text/css">
|
||||
blockquote.rights {
|
||||
text-align: justify;
|
||||
font-size: smaller;
|
||||
font-family: sans-serif;
|
||||
}
|
||||
|
||||
dl.options :first-child {
|
||||
margin-top: 0px;
|
||||
}
|
||||
|
||||
dl.options dd {
|
||||
text-align: justify;
|
||||
}
|
||||
|
||||
dl.options dt {
|
||||
margin-top: 1ex;
|
||||
padding-bottom: 0px;
|
||||
}
|
||||
|
||||
h3.subtitle {
|
||||
color: #0000FF;
|
||||
font-style: italic;
|
||||
margin-top: 0px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
p {
|
||||
text-align: justify;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body class="standard">
|
||||
|
||||
<h1 class="c" style="margin-bottom: 0px;"><img src="images/xd.png"
|
||||
width="257" height="123" alt="XD" /></h1>
|
||||
<h3 class="subtitle">Extended Dump and Load Utility</h3>
|
||||
|
||||
<hr />
|
||||
|
||||
<p>
|
||||
This page describes, in Unix manual page style,
|
||||
<b>xd</b>, a utility which dumps files in hexadecimal,
|
||||
decimal, or octal, with file addresses shown in any of
|
||||
those formats. <b>xd</b> can read files in any of the
|
||||
formats it writes, recreating binary files, including
|
||||
modifications made by editing the dump with any text
|
||||
editor. In addition, <b>xd</b> can transform a binary
|
||||
file into a C data declaration which permits embedding
|
||||
its contents into a program. <b>xd</b> is available as
|
||||
C source code compatible with most Unix systems.
|
||||
</p>
|
||||
|
||||
<h3>NAME</h3>
|
||||
<p>
|
||||
<b>xd</b> – extended dump and load utility
|
||||
</p>
|
||||
|
||||
<h3>SYNOPSIS</h3>
|
||||
<p>
|
||||
<b>xd</b> [ <b>−a</b><i>addrfmt</i> <b>−c</b>
|
||||
<b>−d</b><i>label</i> <b>−l</b> <b>−n</b><i>datafmt</i>
|
||||
<b>−s</b> ] [ <i>infile</i> [ <i>outfile</i> ] ]
|
||||
</p>
|
||||
|
||||
<h3>DESCRIPTION</h3>
|
||||
<p>
|
||||
<b>xd</b> dumps files in hexadecimal, decimal, or octal, optionally with
|
||||
ISO characters side by side. File addresses can likewise be
|
||||
displayed in hex, decimal, or octal notation.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>xd</b> can <em>read</em> dump files in the same formats it writes and create
|
||||
binary files from the data therein. This allows you to dump a
|
||||
binary file with <b>xd</b>, edit it with your favourite text editor,
|
||||
then make a new binary file containing whatever changes you've
|
||||
made. When creating a binary file, <b>xd</b> normally assumes you've
|
||||
only modified data in place (neither expanding nor contracting
|
||||
the file) and verifies file addresses to guarantee this.
|
||||
However, a "stream" option is available which ignores file
|
||||
addresses so you're free to insert and delete bytes at will. <b>xd</b>
|
||||
thus turns your existing text editor into a binary file editor
|
||||
without requiring you to learn any new commands.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Finally, <b>xd</b> can read a binary file and emit a C language data
|
||||
declaration which contains the data from the file. This is handy
|
||||
when you wish to embed binary data within C programs.
|
||||
</p>
|
||||
|
||||
<h3>OPTIONS</h3>
|
||||
|
||||
<dl class="options">
|
||||
<dt><b>−a</b><i>addrfmt</i></dt>
|
||||
<dd>Displays addresses in the dumped file as specified by
|
||||
<i>addrfmt</i>: <b>d</b> for decimal, <b>h</b> or
|
||||
<b>x</b> for hexadecimal, and <b>o</b> for octal. By
|
||||
default, addresses are shown in hexadecimal.</dd>
|
||||
|
||||
<dt><b>−c</b></dt>
|
||||
<dd>Display ISO characters alongside the numeric
|
||||
dump. Non-printing characters (according to ISO
|
||||
8859/1) are shown as periods. The ISO characters are
|
||||
separated from the dump by vertical bar characters,
|
||||
which <b>xd</b> treats as comment delimiters when loading a
|
||||
file.</dd>
|
||||
|
||||
<dt><b>−d</b><i>label</i></dt>
|
||||
<dd>Dumps the file as a C language declaration of an array
|
||||
of <tt>unsigned char</tt> which, when compiled, will
|
||||
contain the same data as the binary input file. The C
|
||||
array declaration is given the variable name
|
||||
<i>label</i>, or <tt>xd_data</tt> if no label
|
||||
specification is given. Data are declared as individual
|
||||
bytes to guarantee portability across architectures with
|
||||
different byte ordering conventions, and are expressed
|
||||
as decimal numbers in lines of less than 80 characters
|
||||
for maximum portability among compilers. The C operator
|
||||
<tt>sizeof</tt> may be applied to the array <i>label</i>
|
||||
to obtain its length in bytes.</dd>
|
||||
|
||||
<dt><b>−l</b></dt>
|
||||
<dd>Load file from dump. <b>xd</b> reads a file in the same
|
||||
format it writes, creating a binary output file. Each
|
||||
line is assumed to begin with a file address terminated
|
||||
by a colon. Data bytes are separated by white space,
|
||||
and any characters after a vertical bar are ignored
|
||||
(thus discarding any ISO characters included in the dump
|
||||
with the <b>−c</b> option). If the
|
||||
<b>−s</b> option is not specified, each file
|
||||
address is checked against the number of bytes written
|
||||
so far to guarantee that no bytes have been added or
|
||||
deleted. Files must be loaded with the <b>−a</b>
|
||||
and <b>−n</b> options set the same as when the
|
||||
file was dumped.</dd>
|
||||
|
||||
<dt><b>−n</b><i>datafmt</i></dt>
|
||||
<dd>Edits bytes in the dumped file as specified by
|
||||
<i>datafmt</i>: <b>d</b> for decimal, <b>h</b> or
|
||||
<b>x</b> for hexadecimal, and <b>o</b> for octal. By
|
||||
default, bytes are shown in hexadecimal.</dd>
|
||||
|
||||
<dt><b>−s</b></dt>
|
||||
<dd>Stream input when loading file. If this option is
|
||||
specified in conjunction with the <b>−l</b> option, file
|
||||
addresses are not verified when loading a file and, in
|
||||
fact, need not be specified at all. The input file is
|
||||
treated as a stream of byte values separated by white
|
||||
space. This option allows you to create a dump with
|
||||
<b>xd</b>, edit it as you wish with any text editor,
|
||||
inserting and deleting bytes in the file wherever you
|
||||
like, then create a binary file from the modified dump
|
||||
with the command <b>xd −l −s</b> <i>dumpfile
|
||||
outfile</i>.</dd>
|
||||
|
||||
<dt><b>−u</b></dt>
|
||||
<dd>Print how-to-call information.</dd>
|
||||
</dl>
|
||||
|
||||
<h3>FILES</h3>
|
||||
<p>
|
||||
If no <i>infile</i> is specified, <b>xd</b> obtains its
|
||||
input from standard input; if no <i>outfile</i> is given,
|
||||
output is sent to standard output. The input and output are
|
||||
processed in a strictly serial manner regardless of
|
||||
options; consequently <b>xd</b> may be used in pipelines
|
||||
without restrictions.
|
||||
</p>
|
||||
|
||||
<h3>BUGS</h3>
|
||||
<p>
|
||||
Input error checking in load mode might be improved. Note
|
||||
that each byte in load mode must be specified as a number
|
||||
in the same format selected by the <b>−n</b> option
|
||||
when the file was dumped, separated by white space, and
|
||||
that the <b>−a</b> and <b>−n</b> options must
|
||||
be set the same when loading a file as when it was dumped.
|
||||
</p>
|
||||
|
||||
<h3>SEE ALSO</h3>
|
||||
<p>
|
||||
<b>cc</b>(1), <b>od</b>(1), <b>iso_8859_1</b>(7)
|
||||
</p>
|
||||
|
||||
<h2><a href="xd-1.4.tar.gz"><img src="https://www.fourmilab.ch/images/icons/file.png"
|
||||
alt="[download]" class="button" width="40" height="40" /></a>
|
||||
<a href="xd-1.4.tar.gz">Download xd-1.4.tar.gz</a> (Gzipped TAR archive)</h2>
|
||||
|
||||
<p>
|
||||
The release archive contains source code, a <tt>Makefile</tt>
|
||||
for building the program, and documentation in manual page and
|
||||
HTML form.
|
||||
</p>
|
||||
|
||||
<h3>COPYING</h3>
|
||||
|
||||
<blockquote class="rights">
|
||||
<p>
|
||||
This software is in the public domain. Permission to use,
|
||||
copy, modify, and distribute this software and its
|
||||
documentation for any purpose and without fee is hereby
|
||||
granted, without any conditions or restrictions. This
|
||||
software is provided “as is” without express or
|
||||
implied warranty.
|
||||
</p>
|
||||
</blockquote>
|
||||
|
||||
<h3 class="nav"><a href="http://www.fourmilab.ch/?topic=unix">Other
|
||||
Unix Utilities at Fourmilab</a></h3>
|
||||
<h3 class="nav"><a href="http://www.fourmilab.ch/">Fourmilab Home Page</a></h3>
|
||||
|
||||
<p />
|
||||
<hr />
|
||||
|
||||
<address>
|
||||
by <a href="http://www.fourmilab.ch/">John Walker</a><br />
|
||||
Version 1.4<br />
|
||||
October, 2017
|
||||
</address>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user