--- mon/README 1999/10/04 19:40:36 1.2 +++ mon/README 2000/09/25 17:52:30 1.5 @@ -1,9 +1,10 @@ - mon, Version 2.2 - A command-driven file monitor + mon, Version 3.0 + A command-driven file monitor - Copyright (C) 1997-1999 Christian Bauer, Marc Hellwig - Freely distributable + Copyright (C) 1997-2000 Christian Bauer, Marc Hellwig + GNU binutils disassemblers Copyright (C) 1988, 89, 91, 93, 94, 95, 96, 97, 1998 + Free Software Foundation, Inc. License @@ -16,14 +17,12 @@ file "COPYING" that is included in the d Overview -------- -"mon" is an interactive command-driven file manipulation tool that is inspired -by the "Amiga Monitor" by Timo Rossi . It has commands and -features similar to a machine code monitor/debugger, but it is not intended -to be used for debugging. It doesn't operate on physical or virtual RAM -locations of a process but rather on a fixed-size (but adjustable) buffer with -adresses starting at 0. Also, there are no commands to trace code, set -breakpoints etc. There are, however, built-in PowerPC, 680x0, 6502 and 8080 -disassemblers. +"mon" is an interactive command-driven file manipulation tool that is +inspired by the "Amiga Monitor" by Timo Rossi . It has +commands and features similar to a machine code monitor/debugger, but it +lacks any functions for running/tracing code. There are, however, built-in +PowerPC, 680x0, 80x86, 6502 and 8080 disassemblers. By default, mon operates +on a fixed-size (but adjustable) memory buffer with adresses starting at 0. Installation @@ -36,9 +35,20 @@ Usage ----- mon can be started from the Shell or from the Tracker (BeOS), but command line -history doesn't work when started from the Tracker). If you give no command -line arguments, mon enters interactive mode. Otherwise, all arguments are -interpreted and executed as mon commands. The default buffer size is 1MB. +history doesn't work when started from the Tracker). + +Options: + -m enables symbolic MacOS A-Trap and low memory globals display in the + 680x0 disassembler + -r makes mon operate in real (virtual) memory space instead of an allocated + buffer + +If no additional command line arguments are given, mon enters interactive +mode. Otherwise, all remaining arguments are interpreted and executed as mon +commands. + +The default buffer size is 1MB. + The mon command prompt looks like this: [00000000]-> @@ -166,6 +176,13 @@ characters. Entering "i" without argumen of "." is set to the address after the last address displayed. + b [start [end]] Binary memory dump + +displays the buffer contents from address "start" to address "end" in a binary +format. Entering "b" without arguments is equivalent to "b .". The value of +"." is set to the address after the last address displayed. + + m [start [end]] Hex/ASCII memory dump displays the buffer contents from address "start" to address "end" as hex @@ -180,28 +197,28 @@ Entering "d" without arguments is equiva set to the address after the last address displayed. - d65 [start [end]] Disassemble 6502 code + d65 [start [end]] Disassemble 6502 code disassembles the buffer contents from address "start" to address "end". Entering "d65" without arguments is equivalent to "d65 .". The value of "." is set to the address after the last address displayed. - d68 [start [end]] Disassemble 680x0 code + d68 [start [end]] Disassemble 680x0 code disassembles the buffer contents from address "start" to address "end". Entering "d68" without arguments is equivalent to "d68 .". The value of "." is set to the address after the last address displayed. - d80 [start [end]] Disassemble 8080 code + d80 [start [end]] Disassemble 8080 code disassembles the buffer contents from address "start" to address "end". Entering "d80" without arguments is equivalent to "d80 .". The value of "." is set to the address after the last address displayed. - d86 [start [end]] Disassemble 80x86 code (very incomplete) + d86 [start [end]] Disassemble 80x86 code disassembles the buffer contents from address "start" to address "end". Entering "d86" without arguments is equivalent to "d86 .". The value of @@ -323,15 +340,6 @@ is omitted, the variable "var" is cleare clears all currently defined variables. -rmon ----- - -When mon is started as "rmon", it enters "real mode". That is, all memory -related functions no longer operate on the buffer but on "real" (virtual) -memory. Unless you are writing Mac emulators, this is probably of not much -use. :-) - - Examples --------