ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/mon/README
(Generate patch)

Comparing mon/README (file contents):
Revision 1.1 by cebix, 1999-10-04T19:31:09Z vs.
Revision 1.7 by cebix, 2000-10-10T21:14:33Z

# Line 1 | Line 1
1  
2 <        mon, Version 2.2
3 <        A command-driven file monitor
2 >  mon, Version 3.0
3 >  A command-line file manipulation tool and disassembler
4  
5 <        Copyright (C) 1997-1999 Christian Bauer, Marc Hellwig
6 <        Freely distributable
5 >  Copyright (C) 1997-2000 Christian Bauer, Marc Hellwig
6 >  GNU binutils disassemblers Copyright (C) 1988, 89, 91, 93, 94, 95, 96, 97, 1998
7 >    Free Software Foundation, Inc.
8 >
9 >
10 > License
11 > -------
12 >
13 > mon is available under the terms of the GNU General Public License. See the
14 > file "COPYING" that is included in the distribution for details.
15  
16  
17   Overview
18   --------
19  
20 < "mon" is an interactive command-driven file manipulation tool that is inspired
21 < by the "Amiga Monitor" by Timo Rossi <trossi@jyu.fi>. It has commands and
22 < features similar to a machine code monitor/debugger, but it is not intended
23 < to be used for debugging. It doesn't operate on physical or virtual RAM
24 < locations of a process but rather on a fixed-size (but adjustable) buffer with
25 < adresses starting at 0. Also, there are no commands to trace code, set
18 < breakpoints etc. There are, however, built-in PowerPC, 680x0, 6502 and 8080
19 < disassemblers.
20 > "mon" is an interactive command-driven file manipulation tool that is
21 > inspired by the "Amiga Monitor" by Timo Rossi <trossi@jyu.fi>. It has
22 > commands and features similar to a machine code monitor/debugger, but it
23 > lacks any functions for running/tracing code. There are, however, built-in
24 > PowerPC, 680x0, 80x86, 6502 and 8080 disassemblers. By default, mon operates
25 > on a fixed-size (but adjustable) memory buffer with adresses starting at 0.
26  
27  
28   Installation
29   ------------
30  
31 < There are precompiled binaries for BeOS included in the archive. mon doesn't
26 < need any auxiliary files.
27 <
28 < To compile under Unix, cd to "src", edit "Makefile" and type "make".
31 > Please consult the file "INSTALL" for installation instructions.
32  
33  
34   Usage
35   -----
36  
37   mon can be started from the Shell or from the Tracker (BeOS), but command line
38 < history doesn't work when started from the Tracker). If you give no command
39 < line arguments, mon enters interactive mode. Otherwise, all arguments are
40 < interpreted and executed as mon commands. The default buffer size is 1MB.
38 > history doesn't work when started from the Tracker).
39 >
40 > Options:
41 >  -m  enables symbolic MacOS A-Trap and low memory globals display in the
42 >      680x0 disassembler
43 >  -r  makes mon operate in real (virtual) memory space instead of an allocated
44 >      buffer
45 >
46 > If no additional command line arguments are given, mon enters interactive
47 > mode. Otherwise, all remaining arguments are interpreted and executed as mon
48 > commands.
49 >
50 > The default buffer size is 1MB.
51 >
52   The mon command prompt looks like this:
53  
54    [00000000]->
# Line 162 | Line 176 | characters. Entering "i" without argumen
176   of "." is set to the address after the last address displayed.
177  
178  
179 +  b [start [end]]          Binary memory dump
180 +
181 + displays the buffer contents from address "start" to address "end" in a binary
182 + format. Entering "b" without arguments is equivalent to "b .". The value of
183 + "." is set to the address after the last address displayed.
184 +
185 +
186    m [start [end]]          Hex/ASCII memory dump
187  
188   displays the buffer contents from address "start" to address "end" as hex
# Line 176 | Line 197 | Entering "d" without arguments is equiva
197   set to the address after the last address displayed.
198  
199  
200 <  d65 [start [end]]          Disassemble 6502 code
200 >  d65 [start [end]]        Disassemble 6502 code
201  
202   disassembles the buffer contents from address "start" to address "end".
203   Entering "d65" without arguments is equivalent to "d65 .". The value of
204   "." is set to the address after the last address displayed.
205  
206  
207 <  d68 [start [end]]          Disassemble 680x0 code
207 >  d68 [start [end]]        Disassemble 680x0 code
208  
209   disassembles the buffer contents from address "start" to address "end".
210   Entering "d68" without arguments is equivalent to "d68 .". The value of
211   "." is set to the address after the last address displayed.
212  
213  
214 <  d80 [start [end]]          Disassemble 8080 code
214 >  d80 [start [end]]        Disassemble 8080 code
215  
216   disassembles the buffer contents from address "start" to address "end".
217   Entering "d80" without arguments is equivalent to "d80 .". The value of
218   "." is set to the address after the last address displayed.
219  
220  
221 <  d86 [start [end]]          Disassemble 80x86 code (very incomplete)
221 >  d86 [start [end]]        Disassemble 80x86 (32-bit) code
222  
223   disassembles the buffer contents from address "start" to address "end".
224   Entering "d86" without arguments is equivalent to "d86 .". The value of
225   "." is set to the address after the last address displayed.
226  
227  
228 +  d8086 [start [end]]      Disassemble 80x86 (16-bit) code
229 +
230 + disassembles the buffer contents from address "start" to address "end".
231 + Entering "d8086" without arguments is equivalent to "d8086 .". The value
232 + of "." is set to the address after the last address displayed.
233 +
234 +
235    : start string           Modify memory
236  
237   puts the specified byte string at the address "start" into the buffer. The
# Line 319 | Line 347 | is omitted, the variable "var" is cleare
347   clears all currently defined variables.
348  
349  
322 rmon
323 ----
324
325 When mon is started as "rmon", it enters "real mode". That is, all memory
326 related functions no longer operate on the buffer but on "real" (virtual)
327 memory. Unless you are writing Mac emulators, this is probably of not much
328 use. :-)
329
330
350   Examples
351   --------
352  
# Line 370 | Line 389 | Load a BeBox boot ROM image and start di
389    d 100
390  
391  
373 Legal stuff
374 -----------
375
376 Copyright 1997-1999 Christian Bauer. This program is freeware. You may do
377 whatever you want with it for personal use. Permission is granted to
378 redistribute this program free of charge, provided it is distributed in the
379 full archive with unmodified contents and no profit  beyond the price of the
380 media on which it is distributed is made. Exception to the last rule: It may
381 be included on freeware/shareware collections on CD-ROM. There are no
382 warranties of any kind for this program. If you use this program, you do so
383 at your own risk. The authors are not responsible for any damages that might
384 result from using this program.
385
386
392   History
393   -------
394  
395 < V1.0 - Initial release
391 < V1.3 - Now uses libreadline
392 <       Disassembler: prints SPR names instead of numbers, fixed bugs
393 < V1.4 - Implemented 6502 and 680x0 disassemblers
394 < V1.5 - Non-interactive mode, real mode
395 < V2.0 - Unified PPC and x86 release
396 < V2.1 - Compiled for BeOS R4, opens Terminal window when started from Tracker,
397 <       implemented 8080 disassembler, included Unix makefile
398 < V2.2 - Switched from project files to makefiles on BeOS, fixed some minor
399 <       bugs in the PPC disassembler, commands made modular
395 > Please consult the file "ChangeLog" for the release history.
396  
397  
398   Christian Bauer
399 < <cbauer@iphcip1.physik.uni-mainz.de>
399 > <Christian.Bauer@uni-mainz.de>
400  
401   Marc Hellwig
402 < <hellwig@iphcip1.physik.uni-mainz.de>
402 > <Marc.Hellwig@uni-mainz.de>

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines