home *** CD-ROM | disk | FTP | other *** search
- /*************************************************************************/
- TURBO PROFILER TIPS AND HINTS
-
- This file contains a list of the most commonly asked questions about
- Turbo Profiler. In addition, there is a section on mouse usage at the
- end of the file.
-
- 1. Answers to common questions
- ==============================
-
- 1. How can a "}" line in the program possibly use 90% of the total time
- spent in the program?
-
- Turbo Profiler area markers only mark the beginning of an area when you
- are profiling in active analysis mode. All time spent in the program
- after hitting one area marker is charged to that marker until the
- program hits a different area marker. Thus, if you're profiling one
- routine in your program with an area set on each line in the routine,
- you should see normal results for all lines except the last one. The
- last line (usually a "}" in C++ or "end" in Pascal) will show all the
- time spent between calls to the routine.
-
- Several methods can be used to obtain normal-looking results. You can
- use the Filter/Current local command in the Execution Profile window to
- remove that line from the statistics after each run. Or you can set
- that area to Disable statistics collection, using the Operation command
- in the Module or Areas windows. (Set the first area in the routine to
- Enable statistics collection or you will only get results from the first
- call to the routine.) Or you can switch to passive analysis mode, which
- uses the area markers in a completely different way.
-
- 2. What's the difference between Active, Passive, and Coverage analysis?
-
- Think of it this way: while profiling, your program is like a rabbit
- running through a maze. The maze is set up with buttons (area markers)
- on the floor. In active analysis mode, each button the rabbit hits
- tells Turbo Profiler the part of the maze the rabbit is going into. In
- passive analysis mode, each button marks the boundary between two areas,
- and when a flash of light goes off, Turbo Profiler records which two
- buttons the rabbit is between. Coverage analysis mode is like having
- flags in the maze, but only at the entrance to new paths. As the rabbit
- goes down a new path, it knocks down the flag for that path. Then, at
- the end of the run, you can inspect which flags are left standing in the
- maze.
-
- 3. How does Turbo Profiler handle screen output for graphics- and
- text-based programs?
-
- There are a number of strategies that can be used to control how and
- when the screen gets refreshed. If you are profiling a program that
- uses a graphics display mode or are using a Borland pop-up utility
- (such as SideKick or SideKick Plus) while profiling, you should review
- the following tips.
-
- The default screen-updating mode is "Swap"; this means that Turbo
- Profiler uses a single display adapter and display page, and swaps the
- contents of the User and Turbo Profiler screens in software. This is
- the slowest method of display swapping, but it is the most protective
- and least disruptive.
-
- Pop-up utilities may not appear on the screen if your screen updating
- is set to Flip, even though they are active and processing your
- keystrokes. You must select "Swap" mode for display updating in order
- for these programs to work properly. Use Turbo Profiler's -ds
- command-line option to do this, or use the TFINST utility to
- permanently set this mode. Swap mode makes screen updating slower, but
- it makes sure that Turbo Profiler's screen does not interfere with
- either your program's or any other program's display.
-
- You may also need to use "Swap" when you use the DOS Shell command or
- run an editor from within Turbo Profiler. Most programs expect to run
- on video page 0, and don't check to see what the current video page is.
- Turbo Profiler's DOS Shell and any editors that Turbo Profiler runs
- in "Flip" mode don't run from video page 0, and the programs might
- appear to hang, even though you'll be able to type in keystrokes normally.
- If this happens, use the -ds command-line option when you run Turbo
- Profiler, or reinstall Turbo Profiler to use "Swap" instead of "Flip."
-
- If you're profiling a graphics mode application, you must specify the
- -ds command-line option ("Swap" contents). You might also want to use
- Turbo Profiler's -vg command-line option (Graphics Save), which causes
- additional memory to be set aside for saving the entire graphics image
- your program produces. If you don't use this option, a "red cloud"
- might appear on your program's screen. You can also set the -ds and -vg
- options permanently with the TFINST program. The Graphics Save option
- takes an additional 8K of memory and slows screen-swapping.
-
- If you're running a graphics program that changes the EGA palette,
- make sure you use the -vp command-line option to save the palette.
-
- 4. Can Turbo Profiler execute other programs while you're still profiling?
-
- When you're using Turbo Profiler, the DOS Shell and Edit commands in the
- Module and File windows can swap the program you're profiling to disk
- to make room for running DOS or your editor. The default amount of memory
- to swap is 128K. You can use TFINST to set a different amount if that's
- not enough memory to run your editor or other programs. Setting the swap
- size to 0K tells Turbo Profiler to swap the entire user program to disk
- before running the DOS command processor.
-
- Only your program gets swapped to disk; Turbo Profiler remains in
- memory.
-
- 5. Why can't I press Ctrl-Break to get out of a program running on a
- remote machine?
-
- The program running on the remote machine has taken control of
- Interrupt 1B (Ctrl-Break). TFREMOTE does not take back control of
- Interrupt 1B until you stop execution of the running program on the
- profiler side by completing the program or pressing Ctrl-F2 (Program
- Reset).
-
- 6. What is the most likely reason for Turbo Profiler to hang when
- starting up on a PC-compatible computer?
-
- If your computer is a Tandy 1000, IBM PC Convertible, or NEC
- MultiSpeed, or if Turbo Profiler hangs when loading onto your system,
- run TFINST and change an item in the Options\Miscellaneous menu so that
- NMI Intercept is not set. Some computers use the NMI (Non-Maskable
- Interrupt) in ways that conflict with Turbo Profiler, so you must disable
- Turbo Profiler's use of this interrupt in order to run the program.
-
- Also, if you're using a machine based on the Intel 80386 processor (or
- higher) and you have the SuperKey utility loaded, be careful not to
- press a key when TF386 is loading, since SuperKey might capture the
- keystroke and cause unexpected results.
-
-
- 2. Mouse support
- ================
- Turbo Profiler provides mouse support that allows you to manipulate
- elements of the user interface. Most Turbo Profiler mouse operations are
- similar to Windows mouse operations. In the material that follows, we
- discuss some driver issues, some uses of the mouse under Turbo
- Profiler that are different from standard Windows mouse usage, and
- some problems you might encounter with using a mouse with TPROFW.
-
-
- Mouse drivers
- -------------
- If you have a mouse driver installed by default, Turbo Profiler
- and installation utilities will try to use your mouse. If you don't
- want to use your mouse during a debugging session, you can use the
- command-line switch '-p-' to turn the mouse off. You can also set
- this option in TFINST.
-
- Your mouse driver is the application that you install to make your
- mouse active inside Turbo Profiler and other programs. Most mouse
- drivers will work with Turbo Profiler but may have to be updated
- to a newer version if you are having problems using an older
- version.
-
- If you have problems with the mouse once you have loaded Turbo
- Profiler or TFINST, you might try using the Display Swap option
- that can be specified either in TFINST or on the command-line with
- the -ds switch. Consult your mouse manual to ensure proper use of the
- mouse and its driver. Early versions of mouse drivers don't
- support screen display modes larger than 80 columns by 24 lines.
- As a result, your mouse driver might not work correctly when you
- use Turbo Profiler's EGA 80x43, VGA 80x50, or EGA/VGA graphics modes.
-
-
- Using the mouse
- ---------------
- Most mice provide two or three buttons that allow for various
- functions inside an application. With Turbo Profiler you can, among
- other things, use the left mouse button to select options, move items
- around on the screen, and set breakpoints.
-
- Double-clicking the mouse on an item in a list chooses the item.
- For instance, in the File|Open dialog box clicking the mouse once
- just highlights a file. Double-clicking loads the file.
-
- The right mouse button has some of the same functionality as the
- left mouse button, but you can also open local menus within Turbo
- Profiler windows by using this button.
-
- You can also choose the commands shown at the bottom of the screen,
- like F1-Help, by using the mouse.
-
-
- Mouse problems when profiling Windows programs
- ----------------------------------------------
- When the mouse driver is disabled for Windows, it will be disabled
- for TPROFW as well. Starting TRPOFW with the mouse support option
- (-p) has no effect unless you enable the Windows mouse driver.
-
- If you have a mouse driver installed by default, TPROFW and the
- installation utilities will try to use your mouse. If you
- don't want to use your mouse during a debugging session, you
- can use the command-line switch '-p-' to turn the mouse off.
-
- When you're debugging a Windows application that uses the mouse,
- and you reset the application and then run the program, it won't
- accept mouse clicks until you make a keyboard entry.
-
- /********************** END OF FILE ******************************/
-