Short: Low Level Debugger Uploader: thor@einstein.math.tu-berlin.de (Thomas Richter) Author: thor@einstein.math.tu-berlin.de (Thomas Richter) Type: dev/debug Version: 1.61 Requires: An Amiga or even better two. The OS version doesn't matter. ***************************************************************************** ** ** ** ___________ ** ** \ */ ** ** /----------- ####### ####### ######## ** ** | ^ | ## ## ## ## ## ## ** ** | _\ ## ## ## ## ## Version 1.61 ** ** | | ## ## ## ######## ** ** | --| ## ## ## ## ** ** +-----/ ## ## ## ## ## ** ** | | ####### ####### ## (c) 1993-1998 THOR-Software ** ** ** ** ** ** A Low Level Debugger for all Amiga Systems ** ** ** ***************************************************************************** by _______ _____ _____ __ _ / / / / / / / \/_/ //_/_ / /____/ / / /____/ ___ / ____// / _ __ / / / / / / \ / /|/ / / / /_/ / /\_/_/ / / / /____/ / / _/__/_/ /__/|_/_/_/ /_/_/ /_ / _____________________________________________________________________________ About COP COP is a low level debugger for all amiga systems. "Low Level" means it directly plays with the hardware, does not have GUI, but is unbeatable stable. Its main purpose is to debug programs not debugable with the usual "source level" debugger, like hardware device drivers, DOS handlers in action and much more. It supports debugging by the serial port, thru a standard tty terminal (also a COP type 5 terminal is better. A terminal program for amigas is included), and a build-in terminal emulation in case no second computer is available. In case you want to use COP, make sure: -that you really want it. COP is not easy to use! -that you know assembly language. It won't work without! -that you have a lot of good will! EMail: thor@einstein.math.tu-berlin.de WWW: http://www.math.tu-berlin.de/~thor/thor/index.html By the way: You should read the documentation first (before trying to get COP running)! This is even more important if you own a '060 or '040 system. Special hints can be found at the end of the COP.doc file. _____________________________________________________________________________ Changes made in 1.61: - Fixed a lot of bugs in the '060 support code. Thus, the chance that this release operates properly on a '060 has about doubled (from 1% to 2%, to be precise...). - Added NOEMU command line switch to bypass emulator traps. - Added proper support for the '060 '040 MMU and cache. - Debugged the AbsExecBase move.l emulator for the '060. Might actually work by now, but is untested. - Changed some details in MMU handling. - Changed minor details for COP capturing its own bugs. - Added another function to the label manager, showing the label given an address - LABL.F command. - Fixed a bug in the memory manager that did not handle non-writable memory in the correct way. - Fixed a bug in the set-breakpoint logic. - Enhanced the stack traceback with the new label manager. It tries to find out the label names. _____________________________________________________________________________ Changes made in 1.60: - Removed bugs in the breakpoint logic. - Added SegTracker support for the REGS.G and (new) SEGM commands. - Updated MMU/Enforcer support since I finally bought a real 68030. - Added the NOMMU command line switch to disable the MMU bypass. - Added the ability to pre-compile the DDT files for faster parsing with the "PRE" command line option. - Updated the Terminal program a bit. _____________________________________________________________________________ Changes made in 1.59: - Removed a bug in the expression evaluator that made the indirection operator [] unuseable. - Removed a bug in the conditional break points. - Rewrote parts of the system segment. - Added support for the CyberGuard. That's not yet tested, however! - Added more '040 instructions I forgot. - Fixed a bug in the disassembler. - The previous fix of the "NODE" command broke it even more, fixed! - Fixed plain MC68000 support that was broken since 1.56. _____________________________________________________________________________ Changes made in 1.58: -Added two '040 instructions I wasn't aware of. -Rewrote the complete math support, an FPU is no longer required. -Enhanced the "NODE" command, it displays now all additional information it can hold of. -Removed a stupid bug from the "NODE" command. -Added the "LABS" command to view the defined labels. Study the doc file for details. _____________________________________________________________________________ Changes made in 1.57: -Added PAL/NTSC switch. -Added a check for many command that won't work in a splitted display. _____________________________________________________________________________ Changes made in 1.56: -Removed a bug in the printer hardware driver that caused one additional character to be printed. -Added command to eject paper. -Added Enforcer support for the MC68020 and MC68030 CPUs. -Added partial MMU support, however no MMU related commands are available. Enforcer must be run for this purpose. -Added IRQ CopyBack mode. -Fixed several final bugs in the 1.55 release, esp. some MC68060 related, although the support isn't complete yet ('60 FPU support is still somewhat broken, as the FPU part must be re-written anyways). Thomas, February 1998