Please enable JavaScript to view this site.

Opening the Message Window

To manually open the message window, use Ctrl+Shift+Double-Click somewhere on the A-Shell window, preferably not on a control that might respond to a click. This will pop up a A-Shell Developer Control Operations dialog, on which you can click the System Message Window button.

To programmatically open the message window, use one of the TRACE and DEBUG Statements.

The xxxx.OPEN statements are optional and mainly server to allow you to set the title on the message window. The xxxx.PRINT and xxxx.PAUSE statements will automatically open the message window if necessary.

The <msg> and <title> arguments are each limited to a single string expression (which may involve string operations and functions but must rely on concatenation to assemble a compound string of many parts, rather than commas or semicolons as you can do with PRINT). They may also start with zero or more of the following special control variables:

$# (displays the running message count as a message id #)

$T (displays the time in HH:MM:SS format)

$P (displays the program name in brackets, e.g. <MYPROG>)

 

For example, the following statement

DEBUG.PRINT "$T $P The value of X is: " + X

would appear something like:

11:25:01 <MYPROG> The value of X is: 25

Using the Message Window

The message window consists of a popup-dialog, initially positioned in the upper right corner of the screen, and filled with a multi-line text control, scrollable in both directions.

ashref_img90

The messages displaying in the System Messages window originate from three sources:

Internal traces generated automatically by A-Shell when activated by the various TRACE flags (see TRACE options, the TRACE system parameter, and the subroutines MX_GETTRACE, MX_SETTRACE.
TRACE.PRINT statements in the application
DEBUG.PRINT statements in the application when the DEBUG flag is set, which can be accomplished with the SET DEBUG command, MX_DEBUG subroutine, or by clicking on the Set Debug Mode option in the System Messages window context menu as seen above. (The latter method is particularly handy as it allows activating DEBUG mode externally while running a program.)

The user can move, resize, minimize or close the dialog using the typical mouse operations, without affecting the application. A right-click context menu is also supported, as shown above.

The message window lacks the more advanced capabilities found in text editors, such as search, edit, file operations, etc. If you find yourself needing these functions, the recommended procedure is:

select the parts of interest, by clicking on individual lines or using Select All on the context menu
use Copy, also on the context menu
launch Notepad or another editor, and paste the copied messages into it
use the editor for searching, editing, saving, etc.

Or, from the dot prompt, use vue %miame%/ashlog.log to access the logged copies of the messages appearing in the window.

See Also

History

2023 January, A-Shell 6.5.1724:  Add context menu option to send ^C to the application, primarily as an aid to developers who may face the need to abort in awkward situations during testing. Unlike hitting ^C on the keyboard, this method bypasses restrictions on the keyboard mode—i.e. locked or local mode only. In the ATE case, it also discards any currently queued output, allowing the effect of the ^C to be seen more rapidly in the output.

Note that sending a ^C doesn't necessarily always abort the application. Possible exceptions would be where the applicaton has disabled it, or is trapping and resuming from it, or is in the middle of a GUI wait state.

Also note this may leave the terminal in an indeterminate state requiring you to use the Settings menu to manually clear the kbd lock and/or reset the terminal, but but helps to work around situations where a combination of rapid output and a keyboard lock makes it otherwise impossible to abort an out-of-control program.

Subtopics

Properties

Created with Help+Manual 9 and styled with Premium Pack Version 5 © by EC Software