annotate docs/nitros9guide/disasm.refentry @ 1404:097d8033bccc

source improvements
author boisy
date Thu, 27 Nov 2003 23:46:01 +0000
parents 4dae346c4969
children b00cf13c9f61
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
971
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
1 <refentry id="disasm">
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
2 <refnamediv>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
3 <refname>DISASM</refname>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
4 <refpurpose>OS9 Module Disassembler</refpurpose>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
5 </refnamediv>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
6
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
7 <refsynopsisdiv>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
8 <cmdsynopsis>
1093
4dae346c4969 Added crossreferences and lowercased synopsises
roug
parents: 1053
diff changeset
9 <command>disasm</command>
971
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
10 <group>
975
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 971
diff changeset
11 <arg choice="opt">-m <replaceable>module name</replaceable></arg>
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 971
diff changeset
12 <arg choice="plain"><replaceable>filename</replaceable></arg>
971
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
13 </group>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
14 <arg choice="opt">options</arg>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
15 </cmdsynopsis>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
16 </refsynopsisdiv>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
17
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
18 <refsect1><title>Description</title>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
19 <para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
20 Disasm was written to hack apart OS9 system modules,command modules,
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
21 file managers and device drivers/descriptors either from memory or disk.
1053
b5ff125a1d60 Since this book was only typeset in fixed width, single-font, they used
roug
parents: 975
diff changeset
22 Unlike most other disassemblers, <command>disasm</command> is a two pass disassembler, creating
971
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
23 output using only referenced labels. This output can be redirected to a file
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
24 and (after modifications if desired) then re-assembled.
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
25 </para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
26 <para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
27 Disasm provides completely commented disassembly of Device Descriptors...
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
28 very useful for building a customized boot file.
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
29 </para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
30 </refsect1>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
31 <refsect1><title>Options</title>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
32 <variablelist>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
33 <varlistentry>
975
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 971
diff changeset
34 <term>disasm -m <replaceable>module name</replaceable></term>
971
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
35 <listitem>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
36 <para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
37 will link to module in memory - if not found,will load module from exec
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
38 directory and then link to it...after disassembly,it will attempt to
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
39 unlink the module.
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
40 </para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
41 </listitem>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
42 </varlistentry>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
43
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
44 <varlistentry>
975
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 971
diff changeset
45 <term>disasm <replaceable>pathlist/module name</replaceable></term>
971
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
46 <listitem>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
47 <para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
48 will 'read' the module from the specified path without loading.
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
49 </para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
50 </listitem>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
51 </varlistentry>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
52
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
53 <varlistentry>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
54 <term>other options:</term>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
55 <listitem>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
56 <para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
57 o = display line number,address,object code &amp; source code... useful for
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
58 hard to crack modules with data embedded in the middle.
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
59 </para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
60 <para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
61 x = look for module in execution directory.
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
62 </para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
63 </listitem>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
64 </varlistentry>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
65 </variablelist>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
66 <para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
67 ANY combination of options is allowed (upper or lower case) but they *must*
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
68 immediately follow the '-' and there must be no spaces separating the options.
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
69 </para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
70 </refsect1>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
71 <refsect1><title>OS9 Level I Users</title>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
72 <para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
73 by changing relative address $17 from $64 to $30 will cause the output
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
74 source to reference /d0/defs instead of /dd/defs
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
75 </para><para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
76 also,if you are not using a driver which supports level II display codes,
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
77 you *MUST* change relative address $15 from 01 to 00 to avoid problems
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
78 in the event of an error message being printed out.
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
79 </para>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
80 </refsect1>
425b8a051c58 Reference pages for new commands
roug
parents:
diff changeset
81 </refentry>