NASM 0.94
[nasm.git] / rdoff / README
blob54f3b2aee1bd777cdfba10feef38ca753a1ef1c0
1 RDOFF Utils v0.2
2 ================
4 The files contained in this directory are the C source code of a set
5 of tools (and general purpose library files) for the manipulation of
6 RDOFF version 1 object files. Here is a brief summary of their usage:
8 rdfdump
9 =======
11 This tool prints a list of the header records in an RDOFF object in 
12 human-readable form, and optionally prints a hex dump of the contents
13 of the code and data segments.
15 Usage:
16         rdfdump [-v] filename
18 The -v flag specifies that the hex dump (see above) should be printed.
20 ldrdf
21 =====
23 This tool is a version of unix 'ld' (or DOS 'link') for use with RDOFF
24 files. It is capable of linking RDOFF objects, and libraries produced
25 with the 'rdlib' utility discussed below.
27 In normal usage, its command line takes the form:
29         ldrdf [-o output-file] object files [-llibrary ...]
31 Libraries must be specified with their path as no search is performed.
32 Modules in libraries are not linked to the program unless they are
33 referred to.
35 Most of its options are not implemented, but those that are are listed here:
37    -v   increase verbosity level. Currently 4 verbosity levels are 
38         available: default (which only prints error information), normal
39         (which prints information about the produced object, -v), medium
40         (which prints information about what the program is doing, -v -v)
41         and high (which prints all available information, -v -v -v).
43    -p   change alignment value to which multiple segments combigned into
44         a single segment should be aligned (must be either 1, 2, 4, 8,
45         16, 32 or 256. Default is 16).
47 The default output filename is 'aout.rdx'.
49 rdx
50 ===
52 This program simply loads and executes an RDOFF object, by calling
53 '_main', which it expects to be a C-style function, which will accept
54 two parameters, argc and argv in normal C style.
56 rdflib
57 ======
59 This program creates a library file for use with ldrdf.
61 It is supplied with a shell script 'makelib' which should probably be used
62 to create libraries.
64 Usage:
65         rdflib command library [optional arguments]
67 Valid commands are:
69         c       Create the library
70         a       Add a module (requires a filename and a name to give the
71                 module, ie 'rdflib a libc.rdl strcpy.rdf strcpy' puts the
72                 file 'strcpy.rdf' into 'libc.rdl', and calls it 'strcpy'.
73         x       Extract (arguments are the opposite to the 'a' command,
74                 ie you'd do 'rdflib x libc.rdl strcpy strcpy.rdf to get
75                 a copy of strcpy.rdf back out again...)
77 Remove and List commands will be added soon (they're already documented
78 as existing, but I haven't had time to implement them... if anyone
79 else wants to do this, they're welcome to. The file format should be
80 amply documented in the source code... look at 'rdflib.c' and 'rdlib.c',
81 and the relevant sections of 'ldrdf.c' to see how libraries can be
82 handled).
84 Julian Hall (jules@dcs.warwick.ac.uk)