84478 packages online


No screenshot available
Short:Amiga Monitor, a monitor/debugger
Author:trossi at (Timo Rossi)
Uploader:trossi jyu fi (Timo Rossi)
Download: - View contents

                 Amiga Monitor v1.65 instructions

  This is a machine code monitor/debugger program for the Amiga.
  The first version was created many years ago, and many of the
  features and commands of the monitor were made similar to those
  of the monitors available for the Commodore 64. However, because
  the Amiga is a quite different machine many new commands and
  features were needed. Later versions of the monitor add many more
  useful features, such as expressions and variables. This version
  is quite close to an actual symbolic debugger as it can read symbol
  table information from executable files and display them in disassembly
  listings. It also has a built-in Scripts.

  Version history:

1.65 ->
  - loading symbols is a little faster (but not much, memory
    allocation limits the speed more than disk i/o)
  - current address is set to the starting address of
    '[' and '<' commands.
  - hunk number/offset is shown in disassembly output.
  - '&' (alloc-abs) doesn't allow odd addresses.
  - memory list shows block numbers, and they can be used in
    the mem-free (')' command.
  - added 'i'-command.
  - added AmigaGuide-format document.
  - address range syntax addr..endaddr and addr:length

1.64 ->
  - now works again on OS 1.3. there was
    a bug in version checking...

1.63 ->
  - now should properly count labels when displaying
    disassembly one screen at a time.

1.62 ->
  - fixed a problem with breakpoints on 68040 machines

1.61 ->
  - breakpoint list shows counts correctly.
  - better error messages with b and br commands.

1.60 ->
  - command line setting from monitor command line works again
    (was broken in 1.59)
  - lib/dev etc. now return zero on error only if option flag #6 is set,
    otherwise they fail.
  - added board()-function to the expression parser.
  - disassembler now displays short branches as '.b' and 68000 long
    branches as '.w'. It also understands 68020+ long branches (.l)
  - now supports ReadArgs() command line parsing.
  - rb-command now works properly

1.59 ->
 - added 've'-command (list autoconfig devices)
 - 'no auto stackreset'-option flag and 'rs'-command to reset
   the stack pointer
 - automatically initializes a0/d0 to point to an empty
   command line when 'l'-command is used to load a new executable file.

1.58 ->
 - changed window position/size logic. now monitor window should
   open to the visible part of a bigger-than-display screen.

1.57 ->
 - memory display displays only the requested memory block
   (the last line is not always full)

1.56 ->
 - memory display stops at end of hunk (disassembly already did that)
 - memory allocation error now stops script execution
 - added %s and %x formats to the mf-command

1.55 ->
 - uses TC_TrapData instead of TC_UserData again...
 - now the `(' command cannot allocate negative amounts of memory...
 - now the assembler understands `.b' as short branch specifier and
   `.w' as long branch specifier.
 - now frees memory properly in `u' command.

1.54 ->
 - added poke[w,l] commands

1.53 ->
 - better error reporting with scripts.

1.52 ->
 - scripts (exec/quit/if/goto/echo commands)
 - -command can be used to execute any cli/shell command.

1.51 ->
 - no longer lists bss hunks as split in strange ways (one lsl.l #2,d0 was
   missing in version 1.50)

1.50 ->
 - now mf-command requires space after command, else -> m fxxxx
 - show seglist displays info about split data/bss hunks
 - internal source reorganization

1.49 ->
 - hunk type display also shows chip/fast
 - some changes in symbol handling
 - internal source reorganization
 - disassembly stops at hunk end

1.48 ->
 - address register relative symbol support (rb-command)

1.47 ->
 - symbol support
 - variables now case sensitive
 - hunk type display in `sl'-command

1.46 ->
 - added breakpoint counts.

1.45 ->
 - small change in help text.
1.44 ->
 - added task/library/device/resource/port/semaphore list viewing commands.

1.43 ->
 - added formatted memory dump command
 - now gives error message if cannot allocate audio channels in digisound
   play command.
 - display can be stopped/started with ctrl-s/ctrl-q
 - spaces can be used in `set register' command before the equal sign.

1.42 ->
 - better option handling
 - understands 2.0 shell window close gadget
 - redirection to file now appends if possible
 - modulo operator now `%'

1.41 ->
 - fixed a bug that prevented some assembler instructions working.

1.40 ->
 - cd works correctly again
   (in 1.37..1.39 it ignored first letter of dir name...)

1.39 ->
 - interrupting `c' or `h' commands no longer causes error conditions.
 - added option flag 2 to select whether characters $a0-$ff are printable
   in `m' command memory dump.

1.38 ->
 - return from `j' or `g' commands with rts now works
   (was a major bug in 1.37)
 - input routine no longer acts strangely if shift-cursor-down
   or ESC-cursor/function/help is pressed.
 - command line automatically set if file name given on the monitor command
 - many little changes in assembler. most of these not visible to the user.

1.37 -> lots of new features...
 - major source code reorganization
 - extended checksum commands
 - calculator `ascii' output
 - memoryinfo displays hunk offsets
 - breakpoint numbers
 - added `port()' to expression parser

1.34 ->
 - added `narrow disassembly' option.
 - digisound player now defaults to play the sample once.

1.32 ->
 - now opens own window only if started with `run' or window width and
   height are given on the command line. can be used from serial terminal
   with AUX: shell.

1.31 ->
 - it is now not possible to accidentally try to assemble code to
   an odd address.

1.30 ->
 - many internal changes: global variable base register changed, uses
   new library call macros...

1.29 ->
 - added lib(), dev(), res() and task() to expression parser.

1.28 ->
 - modified patchtrace to work also when vector base is relocated.
 - small changes in initial window placement and size

1.27 ->
 - disk block/bootblock checksum functions and jump/go/trace etc. now
   check properly for odd addresses.
 - `odd address'-error message
 - skip instruction-command
 - Exit() now returns control back to the monitor.

1.26 ->
 - added hend() and nhunks-functions to the expression parser.
 - added command line options for window width and height
 - a file name to LoadSeg() can be given in the command line
 - new filename parse routine, now names with spaces in
   them must be in quotes

1.25 ->
 - (internal change) now uses TC_Userdata instead of TC_TrapData because
   TC_TrapData is marked as private in some prerelease 1.4/2.0 includes.
 - `'-command now first tries to start a shell, then a CLI.
 - disk read/write commands can be used with hard disks etc.
 - fixed condition code register setting with go and jump commands.

1.24 ->
 - corrected a small bug in the assembler/disassembler mnemonic tables
   (trap and tas-instructions were accidentally exchanged...)

1.23 ->
 - quicktrace-command
 - now reserves separate areas of stack for the monitor itself and
   the program being debugged.

1.22 ->
 - better handling of stack pointer with jump & go-commands
 - extended trace command
 - memory display can be used at odd addresses
 - generally cleaned up the source code
 - variables are now case-insensitive.

1.20 ->
 - added the `[register]'-syntax in the expression parser

1.19 ->
 - disassembler now uses new routines. this makes the monitor
   executable little smaller than 1.17

1.17 ->
 - monitor is now re-entrant and can be made resident
 - transfer no longer crashes if you transfer from location zero
 - default base is again hexadecimal

1.15 ->
 - some minor bug fixes in assembler
   (move sp,usp or exg Rx,sp did not work)
 - `memory info'-command
 - underscores are allowed in variable names
 - variable list is kept in alphabetical order

1.12 ->
 - expressions can now be used instead of numbers. also included
 - variables can be used in expressions.
 - user-defineable default number base, default is now decimal.
 - hunt-command no longer finds anything in the monitor code/data areas
 - show seglist now displays hunk numbers
 - chip memory allocation syntax has been changed.

1.08 ->
 - the monitor works ok with 68010/68020 processors. older versions
   left sometimes extra data in supervisor stack.

1.07 ->
 - The disassembler and assembler handle exg Dn,An correctly
   (previously the data and address register numbers were reversed)
 - The disassembler no more displays any invalid codes as valid
   instructions (On the 68000 processor, of course. The monitor does
   not currently support 68010/68020 extra instructions).
 - The pc-relative indexed addressing mode now works with the assembler.
 - Some little bugs were fixed in the assembler.
    + And/or-instructions work with a pc-relative source operand.
    + cmpm works with all sizes
    + most(if not all...) of the bugs that caused the assembler to
      assemble invalid instructions have been fixed.
 - `sp' can be used instead of `a7' in the assembler and the disassmbler
   displays a7 as `sp'.
 - The assembler now unserstands blo/bhs, slo/shs and dblo/sbhs
   and assembles them as bcs/bcc, scs/scc and dbcs/dbcc
 - The disassembler displays address-register relative offsets and short
   absolute addresses as signed numbers.
 - The monitor works now better with 60-column default font (TOPAZ60).
 - Disk read/write commands can be used with non-chip memory
 - Play digisound command has an optional parameter to specify
   how many times the sample is played.
 - A new command has been added to specify a command line for programs
   executed under the control of the monitor.
 - Breakpoints work even if you jump into the code at to breakpoint.
   The breakpoint does not activate until the instruction at the break
   position is executed, so you don't get immediately interrupted.
   (internally the monitor uses the trace-exception to skip the breakpoint
   at the first time...)

1.06 and older...
 - prehistoric versions...

Contents of dev/moni/mon165.lha
---------- ----------- ------- ------- ------ ---------- ------------ ----------
[generic]                18863   28024  67.3% -lh5- 565e May 21  1994 mon
[generic]                18267   50376  36.3% -lh5- ac67 May 21  1994 mon.doc
[generic]                19288   54240  35.6% -lh5- 14e9 May 21  1994
[generic]                  116     116 100.0% -lh0- b6f3 May 21  1994 patchtrace
---------- ----------- ------- ------- ------ ---------- ------------ ----------
 Total         4 files   56534  132756  42.6%            May 22  1994

Aminet © 1992-2024 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>