PreviousStarting Animator Directives for AnimatorNext

Chapter 3: Working With Animator

This chapter describes the windows displayed by Animator, and the operations you can perform using Animator.

3.1 The Animator Screen

The Animator screen appears after Animator has been invoked. Your program source code appears on this screen. The cursor is positioned under the first executable statement in the Procedure Division, and this statement is highlighted. The bottom of the screen displays the information line and the Animator main menu.

The main menu for Animator is shown in Figure 3-1.



Figure 3-1: Main Menu - Animator

The Animator main menu contains functions that you select to control the way your program is executed. A full description of these functions is presented later in this chapter.

When you use an option that causes statements to be executed, the cursor and highlighting follow the execution path, so they are always on the statement to be executed next. At other times, the highlighting remains on the statement that is to be executed next, but you can move the cursor around the screen to access different places in the source. The statement to be executed next, or currently being executed, is always highlighted, and is known as the current statement.

3.1.1 The Information Line

The information line displays the name of your program. It also shows the current level (Level=01) of nested PERFORM statements in the program, and the speed at which you have selected to animate your program. The Ins, Caps, Num and Scroll indicators, which appear on the right side of the information line, are highlighted when Insert, Caps Lock, Num Lock, or Scroll Lock respectively are active.

3.1.2 Moving the Cursor and Text During Animation

You can use several keys to move the cursor through the displayed code. You can also change the portion of text displayed on the screen.

Some of these keys are symbolic key names which might not be present on your keyboard. For details of the actual keystrokes for your environment, see the appendix UNIX Key Usage Chart in your Utilities Handbook.

Key Name Function Default Key/Keystroke
cursor-left Moves the cursor left one character position cursor-left
cursor-right Moves the cursor right one character position cursor-right
cursor-up Moves the cursor up one line; with Scroll Lock on moves the text down one line cursor-up
cursor-down Moves the cursor down one line; with Scroll Lock on moves the text up one line cursor-down
Tab Moves the cursor to the next tab position to the right; tabs are set every four positions in columns 1 through 76 Tab
Backtab Moves the cursor to the next tab position to the left Backtab
Enter Moves the cursor to column 1 on the next line in Animator; with Scroll Lock on, moves the text up one line Enter
Home Moves the cursor to column 1 of the current line in Animator; pressing Home a second time moves the cursor to column 1 of the top line; pressing Home a third time moves the cursor to the beginning of the file Home
End Moves the cursor to the end of the current line; pressing End a second time moves the cursor to the bottom of the screen; pressing End a third time moves the cursor to the end of the file End
Page-Up Displays the screen of program text preceding the current screen KEY_PPAGE or Ctrl+U
Page-Down Displays the screen of program text following the current screen KEY_NPAGE or Ctrl+D
Top-of-text Moves immediately to the top of the program Ctrl+T
Bottom-of-text Moves immediately to the end of the program Ctrl+V
Up-10-screens Moves (10 x source screen size) lines up the program KEY_SR or Ctrl+B
Down-10-screens Moves (10 x source screen size) lines down the program KEY_SF or Ctrl+F
F1 through F10 Function key 1 through Function key 10 KEY_F(0-10)
Escape Escape Esc

3.1.3 Entering Text on Menus

Several of the Animator menus require you to enter text. In all cases, on entry to the menu, the previous contents of the field are present. This can be cleared using F2=clear. This key acts as a delete-to-end-field, deleting all characters from the current cursor position to the end of the field. When entering or editing text, the keys <left-arrow>, <right-arrow>, Home, End and Backspace all operate as normal. Insert or overtype mode can also be selected using the Ins key.

Once you have completed a field, pressing Enter confirms your update. If you want to cancel the update, press Escape. Both keys cause exit to a higher level menu if appropriate.

Where a selection of fields is presented, you can use the cursor keys to move up and down the list, and Enter selects the item you want and places it in the input field if appropriate.

3.1.4 Using the Animator Windows

Animator places information in windows which you can manipulate.

You view your COBOL source code as a backdrop to the windowing system displaying the monitored data items. You can fill the screen as required with the contents of data items. The system is capable of covering the entire source code area with data windows. Simple keystrokes enable the monitored items to be hidden, reappearing automatically whenever they change in value.

3.1.4.1 Viewing Data

You can view a maximum of 200 characters in COBOL format in one window. You can scroll through the contents of this window to view other parts of the data item. You use multiple windows to monitor the same data item so that more than 200 characters can be monitored at one time. You also have the option of displaying a maximum of 128 bytes of the monitored item in hexadecimal format.


Note: Numeric values are viewed as equivalent edited PICTURE strings.


The contents of data items that you can change appear in reverse video in the monitoring windows. Keyboard keys and special keystrokes enable efficient editing of the item's contents. See the section Key Functions for Updating Queried Data Items below.

3.1.4.2 Key Functions for Updating Queried Data Items

The following keys and key combinations have special effects when updating the contents of data items. Some of these keys are symbolic key names which might not be present on your keyboard. For details of the actual keystrokes for your environment, see the appendix UNIX Key Usage Chart in your Utilities Handbook.

Key Name Function Default Key/Keystroke
Home Moves the cursor to the beginning of the window Home
Top-of-Text Moves the cursor to beginning of the data item; causes the contents of the window to change if not currently displaying the beginning of the item Ctrl+T
End Moves the cursor to the end of the window End
Bottom-of-Text Moves the cursor to the end of the data item; causes the contents of the window to change if not currently displaying the end of the item Ctrl+V
cursor-up Moves the cursor up one line; if at the top of the window, updates the window to show the previous window of the item's contents cursor-up
cursor-down Moves the cursor down one line; if at the bottom of the window, updates the window to show the next window of the item's contents cursor-down
cursor-left Moves the cursor left one character position; if at the beginning of the window, shifts data in the window one character to the right cursor-left
cursor-right Moves the cursor right one character position; if at the end of the window shifts data in the window one character to the left cursor-right
F2 Clears the contents of the data item KEY_F2
Ins Toggles between insert and replace modes; in insert mode, Ins is highlighted on the information line; the cursor changes shape Ins
Del Deletes the character at the current cursor position; if insert mode is on, causes all other characters to the right of cursor in the window to shift left one position Del
Backspace Deletes the character before the cursor position; if insert mode is on, causes all characters to the right of cursor in the window to shift left one position Backspace

3.2 Menus

Animator menus are organized to provide rapid access to the most commonly used functions.

You can access help menus from any Animator menu by pressing F1=help. This calls the help screen for the option from which it is called.

The menus described in this section appear in alphabetical order according to their menu name, which is displayed on the left-hand side of the information line.

3.2.1 Animator Main Menu

The Animator main menu is displayed when Animator is started (unless the ZOOM Animator directive has been set, in which case the program executes immediately).

The main menu (shown earlier in this chapter in Figure 3-1) provides access both to direct functions and to submenus. The direct functions enable you, with a single keystroke, to execute the program and to reposition the program text on your screen.

To select a submenu or a function, use the appropriate function key or highlighted key required.

3.2.2 Breakpoints Menu

The Breakpoints menu (see Figure 3-2) is accessed by pressing B on the Animator main menu.



Figure 3-2: Breakpoints Menu

You can set breakpoints in your program to halt execution when you are using Go or Zoom mode. They are useful for debugging programs quickly when you have some idea of where a problem lies.

This menu displays options that enable you to perform the following functions:

When a breakpoint is reached, you see the message:

Breakpoint encountered

at the bottom of your screen.

You can set up to 100 breakpoints in each program.


Note: By default, whenever you syntax-check a program, Animator saves details of the breakpoints in an .aif file. This means that breakpoints you set are not lost when you syntax-check a program again, or exit Animator.

The location of a breakpoint is stored in an .aif file as an offset from the start of the relevant section or paragraph. As a result, when you insert or delete lines before a breakpoint in a section or paragraph, rechecking the program could cause the breakpoint to be set on a line other than the line on which you set it.


3.2.3 Environment Menu

The Environment menu (see Figure 3-3) is accessed by pressing E on the Animator main menu.



Figure 3-3: Environment Menu

The Environment menu provides functions which enable you to set parameters to control some general execution aspects of the program you are executing. These include:

3.2.4 Go Menu

The Go menu (see Figure 3-4) is accessed by pressing G on the Animator main menu.



Figure 3-4: Go Menu

The Go function automatically executes each statement in the program one by one, displaying the source code on the screen as it is executed. Go mode is an automatic Step mode; you do not have to press a key to execute each statement as you do in Step mode.

You can set the Go execution speed by pressing a key from 0 to 9, where 0 is the slowest. You can also set the speed of execution from the Animator main menu by pressing a number from 0 to 9 before selecting the Go function. The current speed is shown on the information line. The default speed is 5.

3.2.5 Locate-declaration Menu

The Locate-declaration menu, shown in Figure 3-5, is accessed by pressing L on the Animator main menu.



Figure 3-5: Locate-declaration Menu

The Locate-declaration function finds the location in the source code where a data item, filename or procedure is declared.

From the Locate-declaration menu you can locate an item either by using the cursor as a pointer or keying in the name of the item you want to locate. You can use the cursor control keys to position the cursor in the program text or monitor window. Data items and filenames can be located from either their monitor windows or name in the text. Procedure-names can be located from their names in the program text.

3.2.6 Perform-level Menu

The Perform-level menu, shown in Figure 3-6 is accessed by pressing P on the Animator main menu.



Figure 3-6: Perform-Level Menu

The Perform-level function enables you to Zoom through performed paragraphs, in-line PERFORM statements and called subprograms. This is useful if you are looking for a bug and are sure it isn't in a particular PERFORM range or subprogram.

The perform functions enable you to:

You can animate programs with up to a maximum of 254 levels of PERFORM nesting. If your program exceeds this level, Animator will only Step, even if you specify Zoom mode.

3.2.7 Query Menu

The Query menu is accessed by pressing Q on the Animator main menu. This menu is shown in Figure 3-7.



Figure 3-7: Query Menu - Animator

The Query menu functions enable you to look at and change the contents of data items. From this menu and its submenus, you can query data items, create a file containing a list of data values, and monitor data items.

Following a successful query, the Query Data-name menu appears on the screen with the queried data-name on the information line and the value of the data item in a window or at the bottom of the screen.


Notes:


3.2.7.1 Query Data-name Menu

The Query Data-name menu, shown in Figure 3-8, appears after you have selected the item to be queried. The data-name appears on the information line; the value of the data item appears in a window.



Figure 3-8: Query Data-name Menu

This menu provides functions which enable you to display the contents of the queried data item; if the data item exceeds 200 bytes, only the first 200 bytes are displayed. From this menu, you can also view the data item in both hexadecimal and ASCII (text) format together and clear or alter the contents of the data item.

The Query Data-name menu is actually a set of two menus: an ASCII (text) menu and a hexadecimal menu. You switch between them using a toggle key.

The ASCII menu is the menu which first appears after selecting the data item to be queried. Selecting F3=hex invokes the hexadecimal menu. On this menu, the F3=hex is replaced by F3=ext function which switches back to the Text menu.

On the hexadecimal menu, the content of the queried data item appears on the left of the display area in hexadecimal form. The corresponding ASCII representation appears on the right.

3.2.8 Reset-execution Menu

The Reset-execution menu, shown in Figure 3-9, is accessed by pressing R on the Animator main menu.



Figure 3-9: Reset Execution Menu

The Reset function enables you to alter the sequence of program execution by changing the current statement, which is the statement that is to be executed next. You can simply skip one statement, reset to the current cursor position, reset at the next (higher) Perform level, or reset at the start of the program. Reset does not change the values of any data.

3.2.9 Text Menu

The Text menu, shown in Figure 3-10, is accessed by pressing T on the Animator main menu.



Figure 3-10: Text Menu

The Text function enables you to split, join, and redisplay the screen.

3.3 Functions

Animator functions are accessed from menus. The function names are sometimes abbreviated on the menus; however, the descriptions in the following sections use the full names.

The following section contains a quick reference listing all of the functions available in Animator. This listing is followed by detailed descriptions of these functions.

3.3.1 Function Access

The following table lists the functions in alphabetical order and indicates the keys you must press to access them. Thus, to determine the path to access a given function, follow the sequence of keystrokes. For example, to reach the Set Breakpoint function, from the Animator main menu, you press the Breakpoints key (B) followed by the Set Breakpoint key (S).

Some of these keys are symbolic key names which might not be present on your keyboard. For details of the actual keystrokes for your environment, see the appendix UNIX Key Usage Chart in your Utilities Handbook.

For the purposes of this table, it is assumed that you are using the cursor to identify data-names rather than keying them in; therefore, a C on the menu access path indicates the selection of a data-name using the cursor. If, however, you are not using the cursor, simply substitute E (Enter name) and the name of your data item for the key C to identify fields.

Function
Menu Access Keys
Function
Menu Access Keys

0-9

0-9

Next Reset

R, N

Align

F3

On Count Breakpoint

B, O

Alter Path

No explicit access

Organize Monitors

Q, O

Alternate

Alt

Perform-level

P

Breakpoints

B

Perform-view

P, V

Cancel All Breakpoints

B, C

Query

Q

Cancel Program Break

E, P, C

Query Data-name

Q, C

Clear

Several

Quit-perform

R, Q

Child Data

Q, C, F8

Refresh

T, R

Parent Data

Q, C, F7

Reset-execution

R

Cursor-name Locate

L, C

Same Level

Q, C, F9

Cursor-name Query

Q, C or double-click

Scroll Up/Down

(continuously)

Ctrl+F9/F10

Cursor-position Reset

R, C

Scroll Up/Down

(1 line)

Ctrl + <left-arrow>/<right-arrow>

Detach from application

Esc D

Select Program Break

E, P, S

Do

D

Set Breakpoint

B, S

Do At Breakpoint

B, D

Split Text

T, S

Down Table

Q, C, F6

Start

R, S

Enter

Enter

Step

S

Enter-name Locate

L, E

Step Perform

P, S

Enter-name Query

Q, E

Text

T or Q, C, T

Environment

E

This Program Break

E, P, T

Escape

Esc

Thread-local Breakpoint

B, T

Examine Breakpoints

B, E

Un-set Breakpoint

B, U

Exchange

F4

Up Table

Q, C, F5

Exit Perform

P, E

View

F2

Find String

F

View Programs

E, V

Go

G

View Threads

V

Hex

Q, C, F3

Where

F5

Hex/ASCII

Q, C, F10

Word left

F9

Hide Monitors

Q, H

Word right

F10

If Breakpoint

B, I

Zoom

Z

Join Text

T, J

Zoom Breakpoint

B, Z

Look-up

F6

Monitor

Q, C, F4

Monitor-off

Q, M

3.3.2 Function Descriptions

This section describes the functions available with Animator.


 0-9

Enable you to vary the speed at which execution progresses in Go mode, where 0 is the slowest and 9 is the fastest.


Align

Repositions the program text so that the line on which the cursor is currently positioned becomes the third line on the display screen.


Alter Path

Searches for a file on a different path from the one you originally specified. You can enter any valid path specification, but you must terminate it with a directory separator slash ( /).

This function is offered as appropriate. There is no explicit access.


Breakpoints

This function displays the Breakpoints menu, which is described in the section Menus. For a description of the functions on this menu, see Cancel All Breakpoints, Do At Breakpoint, Examine Breakpoints, If Breakpoint, On Count Breakpoint, Set Breakpoint, and Un-set Breakpoint.


Cancel All Breakpoints

Resets all active breakpoints.


Cancel Program Break

Cancels the currently set program break; that is, a breakpoint that is activated when execution reaches the specified program. See also Select Program Break.


Clear

Clears the current input field.


Child Data

Displays the contents of the first sublevel of the item that is being queried. This query function is available when a group item is being queried.


Parent Data

Displays the contents of the data item in which the selected item occurs. This query function is available when a member of a group item is being queried.


Cursor-name Locate

Finds the location in the source code where a data item, filename or procedure is declared.

You can use the cursor control keys to position the cursor in the program text, a structure diagram or monitor window. Data items and filenames can be located either from their monitor windows or name in the text. Procedure-names can be located from their names in the program text.


Cursor-name Query

Displays the contents of the data item at the current cursor position. It gives you access to other functions which enable you to modify and monitor the item. To alter the contents of the queried data type in a new value. The new value replaces the item's previous value. If the data item is a dynamic stream, you can update it using the Do function.

You can place the cursor, or select with the mouse, anywhere in the data item or in the data item window. If you do not select the name of a data item, the message:

Not data item

appears at the bottom of the screen.

Following a successful query, the Query Data-name menu appears on the screen with the queried data-name on the information line and the value of the data item at the bottom of the screen.


Cursor-position Reset

Enables you to alter the sequence of program execution. The statement at the cursor position becomes the current statement. Execution continues from this statement. This function does not change the value of any data.


Detach from application

Enables you, where possible, to terminate Animator without terminating the application you are debugging. For example, if you are debugging an NSAPI application you will need to use this function to ensure that the Web Server is not terminated when you terminate Animator.


Do

Enables you to enter a COBOL statement to be executed immediately. This command enables you to insert a statement in the sequence of execution but does not add it to your program code. To add it, you must key it in using a text editor then recompile your source code file. Alternatively, you can specify that it is done at a breakpoint, in which case it is saved in a file.

The COBOL statement cannot exceed 71 characters.

Entering an invalid COBOL statement gives an error message.


Note: Although most COBOL statements are supported by the Do command, Animator does not support some complex statements. An appropriate error message is issued in these cases.



Do At Breakpoint

Prompts you for a valid COBOL statement which is to be executed along with the current line. Execution is not interrupted. The line containing the breakpoint is highlighted.

When Animator encounters a breakpoint set with the Do option, the COBOL statement is executed immediately before the statement containing the breakpoint. In Zoom or Go mode, execution continues without a break. In Step mode, the Do-statement is executed when the statement containing the breakpoint is stepped onto. A message indicating that the statement has been executed appears at the bottom of the screen. You can repeatedly execute the COBOL statement without retyping it.

Entering an invalid COBOL statement gives an error message.

On exit from Animator, all the COBOL statements that are currently set using this function are written to a file called progname.edo, where progname is the name of your main program, in the same directory as the source of that program . You can then paste the contents of the .edo file into the program source file. You can do this using the F4=load-DO-statement-file option on the COBOL Editor's Command File menu.


Note: Although most COBOL statements are supported by the Do command, Animator does not support some complex statements. An appropriate error message is issued in these cases.



Down-table

Displays the contents of the next table entry. The display of the variable used as the table subscript (shown with the data-name) reflects the current value and is changed by this function. This query function is only active when a table data item is being queried.


Enter

Confirms any selections you have made or data you have keyed in. It might return you to a higher level menu. Where both Escape and Enter options are available, Escape exits without making the update you have keyed in, whereas Enter makes the update and then exits.


Enter-name Locate

Displays a menu where you can type in the name of the item to be located in the source code. Once you have entered the name of a data-item, the cursor is moved to one of the following locations:

depending upon what you enter at the prompt. If you are working with nested programs, you must be positioned in the program in which that data item is defined for this function to work successfully.


Enter-name Query

Prompts you for a data item name, which can be entered in upper or lower case. Following a successful query, the Query Data-name menu appears on the screen with the queried data-name on the information line and the value of the data item in a window or at the bottom of the screen. To alter the contents of the queried data, simply type in a new value. The new value replaces the item's previous value.

If you are working with nested programs, you must be positioned in the program in which that data item is defined for this function to work successfully.


Environment

Displays the Environment menu, which is described in the section Menus. For a description of the functions on this menu see This Program Break, Select Program Break and Cancel Program Break.


Escape

Returns to the higher level menu or exits from Animator altogether if you are at the top menu. Where both Escape and Enter are available options, Escape exits without making the update you have keyed in, whereas Enter makes the update and then exits.


Examine Breakpoints

Enables you to review your breakpoints. Each time you execute this function, the cursor is placed on the COBOL statement that has the next breakpoint set on it. After displaying the final breakpoint, the function displays the first breakpoint.

In addition, if the Breakpoint menu is active, whenever the cursor is positioned on a statement containing a breakpoint, a message appears on the bottom line of the screen.


Exchange

Toggles to move the cursor, and therefore the display of execution, between screens in split-screen mode. You can split the screen in two using the Split Text function.


Exit Perform

Executes the remainder of outstanding code in the PERFORM range which includes the current statement. Execution stops on the statement following the end of the PERFORM range.

This function operates only if the current statement is in a PERFORM range. If you select this function when you are not in the range of a PERFORM (PERFORM LEVEL = 01) and you are currently in a subprogram, you are asked if you want to leave the program. If you reply "Yes", the program execution continues in Zoom mode until the calling program is reached. If you are not in a subprogram, you are reminded that the PERFORM LEVEL = 01 by an error message.


Find String

Finds the next occurrence of a text string in the source program file. You can find a text string in both the main program and copyfiles or in just the main program. By default, the Find function searches all files in the program. Once the find is completed, the cursor is positioned at the beginning of the text string located.

The string can be up to 32 characters long and must be entered exactly as written in the source code, using upper- and lower-case letters as appropriate.

If you want to include spaces at the end of the string, enter the spaces and terminate them with a hash mark (#). If you want to find a string in the main program only, enter the string, terminated by a # and an M. The M tells Animator to search just the main file.

If you have previously used the Find function during the current session, the last specified string appears in the prompt field. You can use the Clear function to clear the string, or press Enter to search for the same string again.

The Find function searches forward only from the current cursor position. You cannot find a string that you have already passed.


Go

Executes automatically each statement in the program one by one, displaying the source code on the screen as it is executed. Go mode is an automatic Step mode; you do not have to press a key to execute each statement as you do in Step mode.

You can set the Go execution speed by pressing a key in the range 0 to 9, where 0 is the slowest. You can also set the speed of execution from the Animator main menu by pressing a number in the range 0 to 9 without selecting the Go function. The current speed is shown on the information line. The default speed is 5.

To stop execution in Go mode and return to the Animator main menu, press Escape.

To change to Zoom mode from Go mode, press Z. The program then executes at full speed without animation. You can break out of Zoom mode using the Break key combination.


Hex

Toggle to change the display of a queried data item to hexadecimal format and to change the menu displayed. You can type over the data using either text or hexadecimal code.


Hex/ASCII

Toggles to move the cursor between the hexadecimal and ASCII data representations. It is available when you are displaying a queried data item in hexadecimal format. You can type over the data using either text or hexadecimal code.


Hide Monitors

Hides all monitors. They only reappear on the screen if their value changes or if a Refresh function is performed.


If Breakpoint

Enables you to set a conditional breakpoint. A conditional breakpoint is a breakpoint that takes effect only if the specified condition is true when the breakpoint is reached. The line containing the breakpoint is highlighted.

The submenu prompts you to enter a condition in COBOL format. Once you have entered a valid statement, pressing Enter sets a conditional breakpoint at the current cursor position. Execution stops at this breakpoint only when the condition is true.

If the condition you specify is false, Animator ignores the breakpoint and continues executing the program. You can enter any condition enabled by COBOL syntax, including combinations of conditions. You cannot set a conditional breakpoint on a statement that already has an ordinary breakpoint, and vice versa.

If you want to set a conditional breakpoint that is not tied to a particular statement, you should use the Until function.


Join Text

Cancels the effect of the Split Text function and returns you to a single screen display of source code. You can use the Refresh Text function to repaint the screen after using the Join Text function.


Look-up

Repositions the program text so that the line number specified at the prompt becomes the third line on the screen. This provides a quick and easy means of locating a line in your code without having to scroll through it line by line.


Monitor

Enables you to display the content of a queried data item as it changes during program execution.

See also Monitor-off, and Hide Monitors.


Monitor-off

Switches off the monitor display of a queried data item. See also Hide Monitors.


Next Reset

Causes the next statement to become the current statement without executing any code. This function does not change the value of any data.


On Count Breakpoint

Enables you to set periodic breakpoints that halt execution immediately before the specified statement has been executed the specified number of times. For example, if you specify a frequency of 3, set the breakpoint and then Zoom, execution breaks the third time that the breakpoint is encountered, and every third time subsequently. The line containing the breakpoint is highlighted.

The frequency must be in the range 2 through 255 inclusive. Once the frequency has been entered, the normal Breakpoint menu appears, enabling you to set the breakpoint or to specify a breakpoint with the Do function. The number selected for the desired frequency appears on the information line.


Organize Monitors

Reorganizes the monitors on your screen to their default positions.


Perform-level

Displays the Perform-level menu, which is described in the section Menus. For a description of the functions on this menu see Step Perform and Exit Perform.


Perform-view

Views and changes context to a different level in the CALL/PERFORM stack.


Query

Displays the Query menu, which is described in the section Menus. For a description of the functions on this menu, see Cursor-name Query, Enter-name Query, Monitor-off, Hide Monitors, and Organize Monitors.


Query Data-name

Displays the Query Data-name menu, which is described in the section Menus. For a description of the functions on this menu, see Child Data, Parent Data, Down-table, Hex, and Hex/ASCII.


Quit-perform

Exits from the current PERFORM range without executing the remaining statements. The next executable statement after the PERFORM statement becomes the current statement. You can select this function only when inside the range of a PERFORM.

This function does not change the value of any data.


Refresh

Refreshes the display of all source text and the monitored variables.


Reset-execution

Displays the Reset-execution menu, which is described in the section Menus. For a description of the functions on this menu, see Start, Next Reset, Quit-perform and Cursor-position Reset.


Same Level

Displays the content of the next data item that has the same level as the queried data item. The data-name appears on the information line.


Scroll Up/Down (continuously)

Scrolls the text rapidly toward the beginning (Up) or end (Down) of the file. Press any key to stop scrolling in either direction.


Scroll Up/Down (one line)(Ctrl+<left-arrow>/<right-arrow>)

Enables you to scroll up or down, line by line, by using the <left-arrow> or the <right-arrow> key respectively.


Select Program Break

Prompts you for the name of the program at which you want execution to halt; that is, a program break. A program break is a breakpoint that is activated when execution reaches the specified program.


Set Breakpoint

Sets a breakpoint at the current cursor position. When Animator encounters the breakpoint, execution halts before executing the statement. The statement containing the breakpoint becomes the current statement. The line containing the breakpoint is highlighted.

Program breakpoints remain set, so if you leave animation without unsetting (canceling) a breakpoint, the breakpoint is set the next time you animate the program. You can set up to 100 breakpoints in each program.

When a breakpoint is reached, you see the message:

Breakpoint encountered

at the bottom of your screen.


Split Text

Enables you to split a screen horizontally in two at the current cursor position. You must have a minimum of four lines in a split screen.

When you have split the screen, you can execute in either half. The Exchange function moves the cursor between the halves.

Split-screen mode is particularly useful if you want to query data declarations or a set of variables in one screen while executing in the other.


Start

Makes the first executable statement in the program the current statement. No code is executed.

This function does not change the value of any data, so if you use this function to test your program as though you had not executed any code, make sure you reinitialize all of your variables before continuing.


Step

Executes the current statement and places the cursor on the next executable statement, which it also highlights.


Step Perform

Causes execution in Zoom mode of the entire PERFORM range or subprogram if the current statement is a PERFORM or CALL statement. Execution stops on the statement following the end of the PERFORM range or subprogram.


Text

Changes the display of a queried data item to text format and changes the menu displayed if accessed from the Query Data-name menu. You can type over the data using either text or hexadecimal code.

Alternatively, if accessed from the Animator main menu, this function displays the Text menu, which is described in the section Menus. For a description of the functions on this menu see Split Text, Join Text, and Refresh.


This Program Break

Sets a program break; that is, a breakpoint that occurs when the selected program is re-entered. For example, if This Program Break specifies a program break for the current program, a breakpoint occurs when the program is re-entered after a subprogram call.


Thread-local Breakpoint

Sets a breakpoint that is only active for the current thread at the current cursor position. Any other thread executing this statement does not stop.


Un-set Breakpoint

Cancels a breakpoint at the current cursor position.


Up Table

Displays the contents of the previous table entry. The display of the variable used as the table subscript (shown with the data-name) reflects the current value and is changed by this function. This query function is active only when a table data item is being queried.

If you select an entry that is before the first table entry, a warning beep is sounded.


View

Enables you to view the user screen during animation. The screen changes whenever you execute a statement that echoes a character to the screen. Press any key to return to the source code, unless you are using cross-session animation , in which case the Animator screen returns automatically after n seconds.

View has no effect if you are using cooperative animation.


View Threads

Lists all threads running within the application. Enables control over those threads by freezing or thawing a thread. Also enables you to change context to another thread.


View Programs

Lists all programs currently loaded. Also enables you to change context to another program to query it, or set breakpoints


Where

Moves the cursor to the start of the current statement, and repositions the program text so that the current statement becomes the third line on the screen.


Word Left

Moves the cursor to the previous word in the program text. If the cursor is positioned on the first word on a line, this function moves the cursor to the last word on the previous line and scrolls the text if necessary.


Word Right

Moves the cursor to the next word in the program text. If the cursor is positioned on the last word on a line, this function moves the cursor to the first word on the next line and scrolls the text if necessary.


Zoom

Executes the program at full speed, displaying the user screen rather than the Animator screen containing the source code.

You can break out of Zoom mode by pressing Escape, unless your program is executing an Enhanced ACCEPT, in which case the Break or Escape terminates the ACCEPT, and animation continues.

If you do not break out of Zoom mode, execution continues until a STOP RUN statement is encountered. At this point the Animator screen is restored and Step mode resumed.


Zoom Breakpoint

Sets a temporary breakpoint at the current cursor position and enters Zoom mode. When this breakpoint is encountered (or execution is interrupted for any other reason) the breakpoint is unset.


3.4 Run-time System Error Messages

A run-time system error message is returned on a program that is syntactically correct but which encounters problems during the actual running of the intermediate code. You could receive such an error if you try to access a file in the wrong mode or if you use a corrupt file. Refer to your Error Messages for complete descriptions of possible run-time errors.

Animator displays run-time errors on the bottom line of the screen in the format described in your Error Messages.


Copyright © 2000 MERANT International Limited. All rights reserved.
This document and the proprietary marks and names used herein are protected by international law.

PreviousStarting Animator Directives for AnimatorNext