od65 is an object file dump utility. It is able to output most parts of ca65-generated object files in readable form. Since the contents and format of the object files are not documented elsewhere and may change at any time, this tool is a portable way to look at the contents.
Apart from curiosity, most people don't need to use this tool.
The od65 utility dumps contents of one or more ca65 generated object file to standard output. It has no cross-version compatibility, so you have to use a version that matches the version of ca65 used to create the object files.
The program may be called as follows:
---------------------------------------------------------------------------
Usage: od65 [options] file [options] [file]
Short options:
-h Help (this text)
-H Dump the object file header
-S Dump segments sizes
-V Print the version number and exit
Long options:
--dump-all Dump all object file information
--dump-dbgsyms Dump debug symbols
--dump-exports Dump exported symbols
--dump-files Dump the source files
--dump-header Dump the object file header
--dump-imports Dump imported symbols
--dump-lineinfo Dump line information
--dump-options Dump object file options
--dump-segments Dump the segments in the file
--dump-segsize Dump segments sizes
--help Help (this text)
--version Print the version number and exit
---------------------------------------------------------------------------
Here is a description of all the command line options:
--dump-all
This will output all information, od65 is able to process. The option is a
shortcut for specifying all the other --dump
options.
--dump-dbgsyms
Dump all debug symbols contained in the object file.
--dump-exports
Dump all exported symbols contained in the object file.
--dump-files
Dump the file table contained in the object file.
-H, --dump-header
Dump the object file header.
--dump-imports
Dump the list of imported symbols contained in the object file.
--dump-lineinfo
Dump the line info contained in the object file.
--dump-segments
Dump the list of segments contained in the object file.
--dump-scopes
Dump the scope (lexical level) information contained in the object file.
-S, --dump-segsize
Dump the sizes of all segments contained in the object file. This option is quite useful to determine the effect of measures that increase or decrease code size.
-h, --help
Print the short option summary shown above.
-V, --version
Print the version number of the compiler. When submitting a bug report, please include the operating system you're using, and the compiler version.
The converter will read one or more object files per invocation and write the
contents in readable format to standard output. Please note that you need to
specify any of the --dump
options listed
above, otherwise no useful output will be generated.
Example output for the command
od65 --dump-header --dump-files t.o
t.o:
Header:
Magic: 0x616E7A55
Version: 12
Flags: 0x0001 (OBJ_FLAGS_DBGINFO)
Options:
Offset: 88
Size: 9
Files:
Offset: 97
Size: 10
Segments:
Offset: 107
Size: 101
Imports:
Offset: 208
Size: 1
Exports:
Offset: 209
Size: 1
Debug symbols:
Offset: 210
Size: 55
Line infos:
Offset: 265
Size: 1
String pool:
Offset: 266
Size: 80
Files:
Count: 1
Index: 0
Name: "t.s"
Size: 402
Modification time: 1280498435 (Fri Jul 30 16:00:35 2010)
od65 is (C) Copyright 2000-2009, Ullrich von Bassewitz. For usage of the binaries and/or sources the following conditions apply:
This software is provided 'as-is', without any expressed or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.
Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: