From 54b535a6063205e0ee3627c6945d0709eaea2fcb Mon Sep 17 00:00:00 2001 From: cuz Date: Fri, 8 Aug 2003 10:03:35 +0000 Subject: [PATCH] First version of da65 docs git-svn-id: svn://svn.cc65.org/cc65/trunk@2252 b7a2c559-68d2-44c3-8de9-860c34a00d81 --- doc/Makefile | 1 + doc/da65.sgml | 190 +++++++++++++++++++++++++++++++++++++++++++++++++ doc/index.sgml | 3 + 3 files changed, 194 insertions(+) create mode 100644 doc/da65.sgml diff --git a/doc/Makefile b/doc/Makefile index 1934926d4..470cd1f6a 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -11,6 +11,7 @@ SGML = ar65.sgml \ cl65.sgml \ co65.sgml \ coding.sgml \ + da65.sgml \ debugging.sgml \ dio.sgml \ funcref.sgml \ diff --git a/doc/da65.sgml b/doc/da65.sgml new file mode 100644 index 000000000..ffe4f8cc4 --- /dev/null +++ b/doc/da65.sgml @@ -0,0 +1,190 @@ + + +
+da65 Users Guide +<author>Ullrich von Bassewitz, <htmlurl url="mailto:uz@cc65.org" name="uz@cc65.org"> +<date>2003-08-08 + +<abstract> +da65 is a 6502/65C02 disassembler that is able to read user supplied +information about its input data for better results. The output is ready for +feeding into ca65, the macro assembler supplied with the cc65 C compiler. +</abstract> + +<!-- Table of contents --> +<toc> + +<!-- Begin the document --> + +<sect>Overview<p> + +da65 is a disassembler for 6502/65C02 code. It is supplied as a utility with +the cc65 C compiler and generates output that is suitable for the ca65 +macro assembler. + +Besides generating output for ca65, one of the design goals was that the user +is able to feed additional information about the code into the disassembler +for improved results. This information may include the location and size of +tables, and their format. + +One nice advantage of this concept is that disassembly information for +copyrighted binaries may be handled without problems: One can just pass the +information file for disassembling the binary, so everyone with a legal copy +of the binary can generate a nicely formatted disassembly with readable labels +and other information. + + +<sect>Usage<p> + + +<sect1>Command line option overview<p> + +The assembler accepts the following options: + +<tscreen><verb> +--------------------------------------------------------------------------- +Usage: da65 [options] file +Short options: + -g Add debug info to object file + -h Help (this text) + -o name Name the output file + -v Increase verbosity + -F Add formfeeds to the output + -S addr Set the start/load address + -V Print the disassembler version + +Long options: + --cpu type Set cpu type + --debug-info Add debug info to object file + --formfeeds Add formfeeds to the output + --help Help (this text) + --pagelength n Set the page length for the listing + --start-addr addr Set the start/load address + --verbose Increase verbosity + --version Print the disassembler version +--------------------------------------------------------------------------- +</verb></tscreen> + + +<sect1>Command line options in detail<p> + +Here is a description of all the command line options: + +<descrip> + + <label id="option--cpu"> + <tag><tt>--cpu type</tt></tag> + + Set the CPU type. The option takes a parameter, which may be one of + + 6502, 65SC02, 65C02 + + Support for the 65816 is currently not available. + + + <label id="option--formfeeds"> + <tag><tt>-F, --formfeeds</tt></tag> + + Add formfeeds to the generated output. This feature is useful together + with the <tt><ref id="option--pagelength" name="--pagelength"></tt> option. + If <tt/--formfeeds/ is given, a formfeed is added to the output after each + page. + + + <tag><tt>-g, --debug-info</tt></tag> + + This option adds the <tt/.DEBUGINFO/ command to the output file, so the + assembler will generate debug information when reassembling the generated + output. + + + <tag><tt>-h, --help</tt></tag> + + Print the short option summary shown above. + + + <tag><tt>-o name</tt></tag> + + The default output name is the name of the input file with the extension + replaced by ".dis". If you don't like that, you may give another name with + the -o option. The output file will be placed in the same directory as + the source file, or, if -o is given, the full path in this name is used. + + + <label id="option--pagelength"> + <tag><tt>--pagelength n</tt></tag> + + Sets the length of a listing page in lines. After this number of lines, a + new page header is generated. If the <tt><ref id="option--formfeeds" + name="--formfeeds"></tt> is also given, a formfeed is inserted before + generating the page header. + + A value of -1 for the page length will disable paging of the output. + + + <tag><tt>-S addr, --start-addr addr</tt></tag> + + Specify the start/load address of the binary code that is going to be + disassembled. The given address is interpreted as an octal value if + preceeded with a '0' digit, as a hexadecimal value if preceeded with '0x', + '0X', or '$', and as a decimal value in all other cases. If no start address + is specified, 0xC000 is used - which is often not what you want. + + + <tag><tt>-v, --verbose</tt></tag> + + Increase the assembler verbosity. Usually only needed for debugging + purposes. You may use this option more than one time for even more + verbose output. + + + <tag><tt>-V, --version</tt></tag> + + Print the version number of the assembler. If you send any suggestions + or bugfixes, please include the version number. + +</descrip> +<p> + + +<sect>Bugs/Feedback<p> + +If you have problems using the disassembler, if you find any bugs, or if +you're doing something interesting with the assembler, I would be glad to hear +from you. Feel free to contact me by email (<htmlurl url="mailto:uz@cc65.org" +name="uz@cc65.org">). + + + +<sect>Copyright<p> + +da65 (and all cc65 binutils) are (C) Copyright 1998-2003 Ullrich von +Bassewitz. For usage of the binaries and/or sources the following +conditions do 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: + +<enum> +<item> The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +<item> Altered source versions must be plainly marked as such, and must not + be misrepresented as being the original software. +<item> This notice may not be removed or altered from any source + distribution. +</enum> + + + +</article> + + + + diff --git a/doc/index.sgml b/doc/index.sgml index ad359e8de..91a961926 100644 --- a/doc/index.sgml +++ b/doc/index.sgml @@ -37,6 +37,9 @@ Main documentation page, contains links to other available stuff. <tag><htmlurl url="compile.txt" name="compile.txt"></tag> How to compile cc65 and the support tools. + <tag><htmlurl url="da65.html" name="da65.html"></tag> + Describes the da65 6502/65C02 disassembler. + <tag><htmlurl url="debugging.html" name="debugging.html"></tag> Debug programs using the VICE emulator.