home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-11-19 | 6.4 KB | 185 lines | [TEXT/MPS ] |
- =================================================
-
- MacsBug 6.2.2 7/17/91 © Apple Computer, Inc. 1981-91
-
- Bugs fixed in 6.2.2
-
- A cache problem that killed MacsBug at startup on a 68040
- is solved by flushing the caches where necessary.
-
- A 68040 timing error related to cursor flash and key debounce
- was fixed.
-
- Branch prediction routine used self modifying code to execute the
- actual branch to make the prediction. On a 68040, the modified
- instruction was in the data cache, so it didn't execute properly
- since the modified instruction was not loaded in the instruction
- cache. Branch prediction is now implemented using a table lookup.
-
- Breakpoints set close to current PC were missed since cache
- was not flushed to read in break point. Cache is now flushed to
- read in new breakpoints.
-
- Trap symbols were brought up to date (HFSDispatch is defined).
-
- =================================================
-
- MacsBug 6.2.1 5/20/91 © Apple Computer, Inc. 1981-91
-
- Bugs fixed in 6.2.1
-
- Interrupts are reenabled by the RS and RB commands,
- eliminating the irritating hang experienced with these
- commands when running System 7.0.
-
- Macsbug 6.2 mismanaged the bus error vector under some
- circumstances, causing disassembly (the IL command or updating
- the PC disassembly pane) to crash if Macsbug caused a bus error
- while trying to follow bad address values. Macsbug 6.2.1
- manages the vector correctly.
-
- Macsbug 6.2 turned on interrupts while the HS (heap scramble)
- routine ran, to avoid jerky mouse movement. This caused a
- problem with managing supervisor/user mode correctly when
- running under VM. For this release, interrupts remain disabled
- to prevent this problem.
-
- =================================================
-
- MacsBug 6.2 1/25/91 © Apple Computer, Inc. 1981-91
-
- You should use the “Debugger Prefs” included with this MacsBug.
- It contains macros, templates, dcmds, and the C++ name unmangler.
- You may add your own resources to “Debugger Prefs”,
- or remove some to decrease memory usage.
-
- =================================================
-
- New features since 6.1
-
- MacsBug 6.2 supports the Macintosh Plus and all newer
- Macintosh models. These are the Macintosh Plus, SE, II, IIx,
- IIcx, SE30, Portable, IIci, IIfx, Classic, IIsi and LC.
-
- MacsBug 6.2 works reliably with all Apple monitors and all
- third-party monitors if their slot ROM and driver software
- have been designed according to the guidelines presented
- in Designing Cards and Drivers for the Macintosh II and
- Macintosh SE, with and without 32 bit QuickDraw.
-
- MacsBug 6.2 runs under A/UX 2.0.
-
- Typing Command-D instead of Command-; with an international
- keyboard accesses the symbol list.
-
- If the selected symbol in the scrollable list contains a
- C++ or Object Pascal class name, then pressing the tab key
- qualifies the list by that name.
-
- MacsBug 6.2 displays the name of the current application,
- the memory management scheme (24 bit/32 bit) currently used,
- and whether you are running and have access to virtual memory.
-
- New options for the Find command allow you to specify the width
- of the pattern for which MacsBug searches. One of these options
- allows MacsBug to look for 24 bit pointers.
-
- The heap dump display is more detailed and works with 24 bit
- and 32 bit heaps.
-
- An extension to the GT command allows you to specify
- one or more MacsBug commands to be executed
- once the specified breakpoint is reached.
-
- Beginning with MacsBug 6.1 (but not documented),
- the DebugStr trap was extended so that you could include
- one or more commands in the message string to DebugStr.
- After MacsBug is invoked by the DebugStr trap, in addition
- to displaying a message specified with DebugStr, MacsBug
- executes the command(s) included in the message for DebugStr.
- The syntax for the call is as follows:
-
- DebugStr ("string [; cmd]")
- string is the message to display.
- cmd is a MacsBug command or macro.
-
- Example:
-
- DebugStr ("Checking the heap ;hc ;g")
-
- This routine invokes MacsBug, display the message "Checking
- the Heap", does a heap check, and resumes execution of the
- program.
-
- The printf dcmd included in “Debugger Prefs” allows you to
- produce formatted output.
-
- =================================================
-
- Changes after the 6.2 release notes went final
-
- The 'mxbh' help resource now resides in the “MacsBug” file
- of MacsBug 6.2.
-
- SC6, SC7, and HZ take optional parameters. More information on
- these parameters can be obtained from the help command.
-
- The SC commands allow to crawl stacks anywhere in the memory.
- HZ knows about embedded, 24 bit, and 32 bit heaps.
- HX allows to switch to partially damaged heaps.
- HD knows a new Q option and displays an additional summary line.
-
- HZ and HD display partially damaged blocks and heaps with ! or ?
- next to the address.
-
- If an address is in a known resource but not in a known
- procedure then an artificial symbol may be displayed by MacsBug.
- E.g. 'CODE 0006 0C20 Pickers'+0262 indicates the address which
- is $262 bytes offset into CODE 6 resource, named "Pickers", of
- file $0C20.
-
- =================================================
-
- We know about some bugs :
-
- If ATR is on and A0 points into hardware registers on some
- NuBus cards then reading the bytes which A0 points to may
- cause the card to perform erratically (e.g. video flickering,
- network malfunction).
- For now try to use ATT instead in such situations.
-
- Sometimes MacsBug loses FPU status when an NMI interrupts
- two consecutive FPU instructions.
- If you encounter this use _DebugStr instead of hitting the NMI.
-
- There are still problems with a few video cards and video
- drivers.
- For now if you have more than one screen try to run MacsBug
- on the other screen.
-
- If you use a pre-release of System 7.0 and switch VM on then
- use common sense to avoid :
- - using the MacsBug Find command over NuBus card memory
- - searching for symbols in memory that is swapped to disk
- (you may want to consider using the SX command)
-
- ATHC sometimes reports an invalid heap if the Memory Manager
- calls _BlockMove while the heap zone free bytes are not yet
- adjusted.
- For now ignore these warnings or use ATHCA.
-
- The source code provided for dcmds requires MPW 3.1 to build
- the dcmds. It currently does not build with MPW 3.2.
- This does not affect the execution of the dcmds included in
- the file “Debugger Prefs”.
-
- =================================================
-
- In addition to these specific changes,
- you should find MacsBug 6.2 easier to use.
-
- Whenever possible its output has been made more articulate
- and its displays more intelligible.
-
- Feedback is an important and appreciated contribution.
-