Annotation of os232sdk/toolkt20/c/samples/spy/spy32.itl, revision 1.1.1.1

1.1       root        1: :userdoc.
                      2: :prolog.
                      3: :docprof toc=1.
                      4: :title.Spy32 Help Panels
                      5: :eprolog.
                      6: :toc.
                      7: :body.
                      8: #include "help.h"
                      9: .***************************************************************
                     10: :h1 res=HLP_SPY1.About Spy32
                     11: :i1 id=Spy.Spy
                     12: :p.
                     13: Spy is a debugging tool who's  main purpose, is to display the window messages
                     14: that are sent to one or more windows.
                     15: :p.
                     16: Spy watches the messages that a window receives by hooking the
                     17: the HK_INPUT and HK_SENDMSG hooks
                     18: :p.
                     19: In addition to displaying the messages that are sent to windows, spy also
                     20: allows you to display information about windows, queues, accelerator tables.
                     21: Spy also provides a way to convert addresses into symbolic names.
                     22: :p.
                     23: See :hpt.Display Format:ehpt.:hdref RES=HLP_MSGFMT. for the message display
                     24: format.
                     25: .***************************************************************
                     26: :h1 res=HLP_MSGFMT.Message Display Format
                     27: :i1 id=MFmt.Message Display Format
                     28: :p.
                     29: This section describes the format of how the messages are displayed.
                     30: The begining of each line, is common to all messages, regardless of which
                     31: message it is.  The first two characters, shows the origins of the
                     32: message as follow&colon.
                     33: :sl compact.
                     34: :li.I&colon. - Input hook and the message is removed (WinGetMsg, or
                     35: WinPeekMsg with PM_REMOVE)
                     36: :li.I- - Input hook no remove (WinPeekMsg with PM_NOREMOVE)
                     37: :li.S&colon. - Send message hook, and the message was sent from the
                     38: same thread.
                     39: :li.S* - Send message hook, and the message was sent from a different
                     40: thread or process.
                     41: :esl.
                     42: :p.
                     43: Following the message prefix, is the alphabetical name of the message, that
                     44: was sent or posted, followed, by the window handle (H&colon.) the message was
                     45: sent or posted to.  The remaing fields depends on which type of message
                     46: is being displayed.
                     47: .***************************************************************
                     48: :h1 res=HLP_KEYS.Help for Keys
                     49: :p.
                     50: ***** To Be Filled in *****
                     51: .***************************************************************
                     52: :h1 res=HLP_MessagesDlg.Help for Message List
                     53: :p.
                     54: This command allows you to be selective about which messages, you
                     55: wish to monitor.
                     56: :p.
                     57: The dialog contains the following fields:
                     58: :p.
                     59: :hp2.Message:ehp2.&colon. - Displays the current message from the list box,
                     60: and also allows you to directly enter a message.  You may enter the message
                     61: in Hexidecimal, Decimal, or by name.
                     62: :p.
                     63: :hp2.Message List:ehp2. - The list box contains most of the know messages.
                     64: The messages may either be displayed in numerical order, or in alphabetical
                     65: order.
                     66: :p.
                     67: :hp2.All:ehp2. - Selects all messages in the list.
                     68: :p.
                     69: :hp2.None:ehp2. - Deslects all messages in the list.
                     70: :p.
                     71: :hp2.Char On:ehp2. - Selects all WM_CHAR type messages.
                     72: :p.
                     73: :hp2.Char Off:ehp2. - Deselect all WM_CHAR type messages.
                     74: :p.
                     75: :hp2.Mouse ON:ehp2. - Selects all messages that are mouse related.
                     76: :p.
                     77: :hp2.Mouse Off:ehp2. - Deselects all messages that are mouse related.
                     78: :p.
                     79: :hp2.Freq On:ehp2. - Selects some messages, that happen often, and that
                     80: we usually do not wish to monitor, such as WM_HITTEST.
                     81: :p.
                     82: :hp2.Freq Off:ehp2. - Deselects the messages, that happen often and that
                     83: we usually do not wish to monitor, such as WM_HITTEST.
                     84: :p.
                     85: :hp2.Input Hook:ehp2. - Should we monitor the input hook?
                     86: :p.
                     87: :hp2.SendMsg Hook:ehp2. - Should we monitor the Send Message Hook?
                     88: :p.
                     89: :hp2.Display undefined msg:ehp2. - Do you want all of the messages that
                     90: are not defined in this table to be monitored or not.  Usually these messages
                     91: are the messages that are above WM_USER.
                     92: :p.
                     93: :hp2.Ok:ehp2. - Dismiss the dialog, and update our table with the new
                     94: message selections.
                     95: :p.
                     96: :hp2.Cancel:ehp2. - Dismiss the dialog without updating our tables.
                     97: 
                     98: .***************************************************************
                     99: :h1 res=HLP_OutputsDlg.Help for Output
                    100: :p.
                    101: ***** To Be Filled in *****
                    102: .***************************************************************
                    103: :h1 res=HLP_WindowsDlg.Help for Window List
                    104: :p.
                    105: This command displays a list box of all of the windows that are currently
                    106: defined on the system.   You can select one or more windows from this
                    107: list to monitor the messages for.  The items in this list are displayed in
                    108: the format: xxxx(n) - ID: iii, where the xxxx is the hexidecimal value of
                    109: the low word of the window handle, (n) is the level number.  The level numbers
                    110: are the number of layers deep we are from HWND_DESKTOP (or HWND_OBJECT).  A
                    111: level 3 window is a child of a level 2 window, etc.
                    112: :p.
                    113: The :hp2.Window Handle:ehp2.&colon. field, displays the complete window handle,
                    114: it also allows you to enter one manually.  The entered value, can be either
                    115: in hexidecimal or decimal.
                    116: :p.
                    117: The :hp2.OK Push Button:ehp2. - Will exit the dialog and update
                    118: Spy's internal list of which windows to monitor windows for.
                    119: :p.
                    120: The :hp2.CancelPush Button:ehp2. - Will exit the dialog without updating.
                    121: :p.
                    122: The :hp2.All Push Button:ehp2. - Selects all of the windows in the list.
                    123: :p.
                    124: The :hp2.None Push Button:ehp2. - Deselect all of the windows in the list.
                    125: :p.
                    126: The :hp2.Mouse Push Button:ehp2. - Captures the mouse, and waits for you to
                    127: click the mouse over a window.  While the mouse button is down, the window
                    128: information on the right hand side of the dialog is updated to show information
                    129: about the window, that the mouse is currently over.  If the
                    130: :hp2.Control:ehp2. key is down, the code will walk up the parent chain to
                    131: find a frame window.
                    132: .***************************************************************
                    133: :h1 res=HLP_SaveListDlg.Help for Save List
                    134: :p.
                    135: Will save the contents of the spy main window (listbox) to a file.
                    136: :p.
                    137: A dialog is displayed that will prompt you for the name of the output
                    138: file, and whether the information should be appended to the specified file,
                    139: or should overwrite the file.
                    140: .***************************************************************
                    141: :h1 res=HLP_About1Dlg.Help for About
                    142: :p.
                    143: Displays information about help...
                    144: .***************************************************************
                    145: :h1 res=HLP_MsgQueueDlg.Help for Spy Message Queues
                    146: :p.
                    147: This command displays a list box of all of the message queues that are
                    148: currently defined on the system.   You can select one or more queues from this
                    149: list to monitor the messages for.
                    150: :p.
                    151: The ability for selecting message queues is important, when you need to
                    152: monitor messages that are sent during the creation process of the window.
                    153: :p.
                    154: The Left hand side contains a listbox, which contains an entry for each
                    155: of the message queues that existed, when the command was selected.
                    156: :p.
                    157: The :hp2.Hmq:ehp2.&colon. field, displays the complete handle to the message
                    158: queue, it also allows you to enter one manually.
                    159: The entered value, can be either in hexidecimal or decimal.
                    160: :p.
                    161: The :hp2.OK Push Button:ehp2. - Will exit the dialog and update
                    162: Spy's internal list of message queues to monitor messages for.
                    163: :p.
                    164: The :hp2.CancelPush Button:ehp2. - Will exit the dialog without updating.
                    165: :p.
                    166: The :hp2.All Push Button:ehp2. - Selects all of the message queues in the list.
                    167: :p.
                    168: The :hp2.None Push Button:ehp2. - Deselect all of the message queues in the list.
                    169: :p.
                    170: The :hp2.Mouse Push Button:ehp2. - Captures the mouse, and waits for you to
                    171: click the mouse over a window.  While the mouse button is down, the queue
                    172: information on the right hand side of the dialog is updated to show information
                    173: about the message queue of the window, that the mouse is currently over.
                    174: .***************************************************************
                    175: :h1 res=HLP_SendMsgDlg.Help for Spy Send Message
                    176: :p.
                    177: This command allows you to send or post messages to windows, on the screen.
                    178: :p.
                    179: This dialog has the following fields:
                    180: :p.
                    181: The :hp2.Window Handle:ehp2.&colon. field, allows you to manually enter the
                    182: window handle, that you wish to send or post a message to.
                    183: :p.
                    184: The :hp2.Point at Hwnd:ehp2. field allows you to select the window using the
                    185: mouse.
                    186: :p.
                    187: The :hp2.Message:ehp2.&colon. field, is where you enter the message value that
                    188: is sent/posted to specified window.  This value can be entered in Hex (0x4096),
                    189: Decimal(1024), or by Message name (WM_QUIT).
                    190: :p.
                    191: The :hp2.MParam1:ehp2. and :hp2.MParam2:ehp2. fields allow you to enter the
                    192: value of mp1 and mp2, that is sent to the destination window.  This value
                    193: again, can be entered in hex or decimal.  In addition, if you specify,
                    194: the value &amp.1, this value will be filled in with the address of
                    195: :hp2.String1:ehp2. and likewise for &amp.2.
                    196: :p.
                    197: The :hp2.Post Message:ehp2. button, will post the message to the specified
                    198: window.  The status of the post will be displayed in the :hp2.Result:ehp2.
                    199: field.
                    200: :p.
                    201: The :hp2.Send Message:ehp2. button, will send the message to the specified
                    202: window.  The result returned from the destination window procedure will
                    203: be displayed in the :hp2.Result:ehp2. field.
                    204: :p.
                    205: The :hp2.Cancel:ehp2. button, will exit the dialog.
                    206: .***************************************************************
                    207: :h1 res=HLPMU_SPY.Help for Spy Menu
                    208: :i1 id=MSPY.Spy Menu
                    209: :p.
                    210: ***** To Be Filled in *****
                    211: .***************************************************************
                    212: :h1 res=HLPMU_WINDOWS.Help for Windows Menu
                    213: :i1 id=MWND.Windows Menu
                    214: :p.
                    215: ***** To Be Filled in *****
                    216: .***************************************************************
                    217: :h1 res=HLPMU_WNDSEL.Help for Window Select Sub-Menu
                    218: :p.
                    219: ***** To Be Filled in *****
                    220: .***************************************************************
                    221: :h1 res=HLPMU_WNDDUMP.Help for Window Dump Sub-Menu
                    222: :p.
                    223: ***** To Be Filled in *****
                    224: .***************************************************************
                    225: :h1 res=HLPMU_MESSAGES.Help for Messages Menu
                    226: :i1 id=MMSG.Message Menu
                    227: :p.
                    228: ***** To Be Filled in *****
                    229: .***************************************************************
                    230: :h1 res=HLPMU_HOOKS.Help for Hooks Menu
                    231: :i1 id=MHOOK.Hook Menu
                    232: :p.
                    233: ***** To Be Filled in *****
                    234: .***************************************************************
                    235: :h1 res=HLPMU_SNDOUTPUT.Help for Hooks Send Message Output Sub-Menu
                    236: :p.
                    237: ***** To Be Filled in *****
                    238: .***************************************************************
                    239: :h1 res=HLPMU_OUTPUTS.Help for Outputs Menu
                    240: :i1 id=MOUTPUT.Outputs Menu
                    241: :p.
                    242: ***** To Be Filled in *****
                    243: .***************************************************************
                    244: :h1 res=HLPMU_HELP.Help for Help Menu
                    245: :i1 id=MHELP.Help Menu
                    246: :p.
                    247: ***** To Be Filled in *****
                    248: .***************************************************************
                    249: :h1 res=HLPM_ACTIVE.Help for Active
                    250: :i2 refid=MSPY.Turning spy on or off
                    251: :p.
                    252: The Active menu item is a toggle, that allows you to turn Spy on or off.
                    253: .***************************************************************
                    254: :h1 res=HLPM_EXIT.Help for Exit
                    255: :i2 refid=MSPY.Exit from Spy
                    256: :p.
                    257: This command will cause spy to terminate.
                    258: .***************************************************************
                    259: :h1 res=HLPM_CLRWIN.Help for Clear Window
                    260: :i2 refid=MSPY.Clear window contents
                    261: :p.
                    262: This command will cause the contents of the main spy window to be erased.
                    263: .***************************************************************
                    264: :h1 res=HLPM_SAVEWIN.Help for Save Window
                    265: :i2 refid=MSPY.Save window contents to file
                    266: :p.
                    267: Will save the contents of the spy main window (listbox) to a file.
                    268: :p.
                    269: A dialog is displayed that will prompt you for the name of the output
                    270: file, and whether the information should be appended to the specified file,
                    271: or should overwrite the file.
                    272: .***************************************************************
                    273: :h1 res=HLPM_SAVEOPT.
                    274: Help for Save Options
                    275: :p.
                    276: The save options command saves some of your preferences to OS2.INI, which
                    277: will be used the next time spy is executed.
                    278: :p.
                    279: The saved options include:
                    280: :p.
                    281: :hp2.Outputs:ehp2. - File, Debug Terminal, and/or Screen
                    282: :p.
                    283: :hp2.Hooks:ehp2. - Input, Send Message, ...
                    284: :p.
                    285: :hp2.Messages:ehp2. - Alphabetical Sort?
                    286: .***************************************************************
                    287: :h1 res=HLPM_WINDOWS.Help for Windows List
                    288: :i2 refid=MWND.Select windows from list
                    289: :p.
                    290: This command displays a list box of all of the windows that are currently
                    291: defined on the system.   You can select one or more windows from this
                    292: list to monitor the messages for.
                    293: :p.
                    294: An addition to simply selecting files, this command also displays information
                    295: about the windows, such as the window class, ID, bounding rectangle, etc.
                    296: .***************************************************************
                    297: :h1 res=HLPM_QUEUES.Help for Queues
                    298: :i2 refid=MWND.Select message queues
                    299: :p.
                    300: This command displays a list box of all of the message queues that are
                    301: currently defined on the system.   You can select one or more queues from this
                    302: list to monitor the messages for.
                    303: :p.
                    304: The ability for selecting message queues is important, when you need to
                    305: monitor messages that are sent during the creation process of the window.
                    306: .***************************************************************
                    307: :h1 res=HLPM_WNMSSEL.Help for Mouse Select
                    308: :i2 refid=MWND.Select a window with mouse
                    309: :p.
                    310: This command allows you to select one window, to be added to the list of
                    311: windows, that spy will monitor the messages for.
                    312: :p.
                    313: After selecting this command, simply move the mouse pointer over the desired
                    314: window, and press mouse button 1.  If the Control key is down, when you
                    315: depress mouse button 1, spy will walk up the window chain, until it finds
                    316: a Frame window (a window, whose window class has the CS_FRAME bit set).
                    317: .***************************************************************
                    318: :h1 res=HLPM_WNMSDSL.Help for Mouse deselect
                    319: :i2 refid=MWND.UnSelect a window with mouse
                    320: :p.
                    321: This command allows you to use the mouse to remove one window, from
                    322: the list of windows, that spy will monitor the messages for.
                    323: :p.
                    324: After selecting this command, simply move the mouse pointer over the desired
                    325: window, and press mouse button 1.  If the Control key is down, when you
                    326: depress mouse button 1, spy will walk up the window chain, until it finds
                    327: a Frame window (a window, whose window class has the CS_FRAME bit set).
                    328: .***************************************************************
                    329: :h1 res=HLPM_ALLWNDWS.Help for Select All Windows
                    330: :i2 refid=MWND.Select all windows
                    331: :p.
                    332: This command toggles on the All window state.  When the all window state is
                    333: selected, spy will monitor the messages going to all windows.
                    334: .***************************************************************
                    335: :h1 res=HLPM_ALLFRAMES.Help for Select All Frames
                    336: :i2 refid=MWND.Select all frame windows
                    337: :p.
                    338: This command toggles on the All window state.  When the all window state is
                    339: selected, spy will monitor the messages going to all frame windows.
                    340: :p.
                    341: A Frame window is defined as a window who's window class is defined with
                    342: the CS_FRAME bit set).
                    343: .***************************************************************
                    344: :h1 res=HLPM_WNDPWIN.Help for Dump One Window
                    345: :i2 refid=MWND.Dump information for one window
                    346: :p.
                    347: This command allows you to dump information about one window. The window
                    348: is selected with the mouse.  The dumped information contains&colon.
                    349: :sl compact.
                    350: :li.:hp2.H&colon.:ehp2. - The window handle.
                    351: :li.:hp2.P&colon.:ehp2. - Parent window handle.
                    352: :li.:hp2.C&colon.:ehp2. - First child window handle.
                    353: :li.:hp2.O&colon.:ehp2. - Owner window handle.
                    354: :li.:hp2.ID&colon.:ehp2. - Window Identifier.
                    355: :li.:hp2.MQ&colon.:ehp2. - The handle to the message queue.
                    356: :li.:hp2. (x1, y1):ehp2. (x2, y2) - Coordinates of window.
                    357: :li.:hp2.ST&colon.:ehp2. - Window Style words.
                    358: :li.:hp2.PID&colon.:ehp2. - Process ID of the window.
                    359: :li.:hp2.TID&colon.:ehp2. - Thread ID of the window.
                    360: :li.:hp2.PFN&colon.:ehp2. - Pointer to window function.
                    361: :li.:hp2.Cl&colon.:ehp2. - Window Class name.
                    362: :li.:hp2.xxxx xxxx :ehp2. - Dump of extra window words.
                    363: :esl.
                    364: .***************************************************************
                    365: :h1 res=HLPM_WNDPALL.Help for Dump All Windows
                    366: :i2 refid=MWND.Dump information for all windows
                    367: :p.
                    368: Dumps information about all windows.  Warning, this can be a lengthy
                    369: process, unless your output is only going to a disk file.
                    370: :p.
                    371: See :hpt.Dump One Window:ehpt.:hdref RES=HLPM_WNDPWIN. for an
                    372: explanation about the dump format.
                    373: .***************************************************************
                    374: :h1 res=HLPM_DACCEL.Help for Dump Accel Table.
                    375: :i2 refid=MWND.Dump accelerator table
                    376: :p.
                    377: This command allows you to display an accelerator table for one frame window.
                    378: After this command is selected, simply move the mouse over the desired frame
                    379: window, or one of it's decedents, and press mouse button 1.  The information
                    380: will be dumped to the current output devices.
                    381: :p.
                    382: First a header line is displayed, which contains the following
                    383: information&colon.
                    384: :sl compact.
                    385: :li.:hp2.HACCEL&colon.:ehp2. - Handle to accelerator table.
                    386: :li.:hp2.HWND&colon.:ehp2. - Frame window handle.
                    387: :li.:hp2.CP&colon.:ehp2. - Which code page it is defined for.
                    388: :li.:hp2.CNT&colon.:ehp2. - Count of items in the accelerator table.
                    389: :esl.
                    390: :p.
                    391: For each item in the accelerator table, a line of information will be displayed,
                    392: which contains information like&colon.
                    393: :sl compact.
                    394: :li.:hp2.fs&colon.:ehp2. - The AF_ bits are defined in pmwin.h.
                    395: :li.:hp2.key&colon.:ehp2. - Which key, may be Char, Virtual key, or Scan code.
                    396: :li.:hp2.cmd&colon.:ehp2. - Which command will be generated.
                    397: :esl.
                    398: :p.
                    399: At the end of each of these lines, the FS field is broken up in to
                    400: alphabetical names for each of the bits, the names are as follow:
                    401: :sl compact.
                    402: :li.:hp2.CH:ehp2. - Use the Character.
                    403: :li.:hp2.VK:ehp2. - Use the virtual key.
                    404: :li.:hp2.SC:ehp2. - Use the Scan code.
                    405: :li.:hp2.SHFT:ehp2. - Shift key must be depresed.
                    406: :li.:hp2.CTRL:ehp2. - Control key must be depresed.
                    407: :li.:hp2.ALT:ehp2. - Alt key must be depresed.
                    408: :li.:hp2.LONE:ehp2. - Must be a lone key.
                    409: :li.:hp2.SYS:ehp2. - Generate a WM_SYSCOMMAND message.
                    410: :li.:hp2.HELP:ehp2. - Generate a WM_HELP message.
                    411: :esl.
                    412: .***************************************************************
                    413: :h1 res=HLPM_MESSAGES.Help for Message List
                    414: :i2 refid=MMSG.Select messages
                    415: :p.
                    416: This command allows you to be selective about which messages, you
                    417: wish to monitor.
                    418: :p.
                    419: A dialog will be displayed, which allows you to individually select
                    420: the messages, or classes of messages.
                    421: .***************************************************************
                    422: :h1 res=HLPM_MGDABLE.Help for Disable Message
                    423: :i2 refid=MMSG.Disable message
                    424: :p.
                    425: This command allows you to remove a message for the list of messages
                    426: that are currently being monitored.  This command will disable the
                    427: message of the currently selected line in the output listbox.
                    428: 
                    429: .***************************************************************
                    430: :h1 res=HLPM_MGEABLE.Help for Enable Message
                    431: :i2 refid=MMSG.Enable a message
                    432: :p.
                    433: This command allows you to again monitor a message that was previously
                    434: removed using the Disable message command.
                    435: .***************************************************************
                    436: :h1 res=HLPM_ALPHASORT.Help for Alpha Sort Message List
                    437: :i2 refid=MMSG.Alphabetically sort message list.
                    438: :p.
                    439: This command is a toggle, which is used by the Message List dialog, to
                    440: choose if the messages should be displayed in numerical order, or in
                    441: alphabetical order.
                    442: .***************************************************************
                    443: :h1 res=HLPM_SENDMSG.Help for Send Message
                    444: :i2 refid=MMSG.Send or Post message to window.
                    445: :p.
                    446: This command sends or posts messages to one or more windows.
                    447: .***************************************************************
                    448: :h1 res=HLPM_INPUTHOOK.Help for Input Hook
                    449: :i2 refid=MHOOK.Enable/Disable Input Hook
                    450: :p.
                    451: This command toggles the state of whether to monitor the message that
                    452: come in the HK_INPUT hook or not.
                    453: .***************************************************************
                    454: :h1 res=HLPM_SENDMSGHOOK.Help for Send Message Hook
                    455: :i2 refid=MHOOK.Enable/Disable send message Hook
                    456: :p.
                    457: This command toggles the state of whether to monitor the messages that
                    458: come in from the HK_SENDMSG hook or not.
                    459: .***************************************************************
                    460: :h1 res=HLPM_SENDEXTEND.Help for Send Message Extended Data
                    461: :i2 refid=MHOOK.Dump extended message data
                    462: :p.
                    463: This command toggles the state of whether we should display extended
                    464: information for messages that come in from the Send Message hook or not.
                    465: :p.
                    466: The extended information may contain SWP structures, Rectangles,
                    467: Queue messages, etc.  See the Message format item for the formats
                    468: of information.
                    469: .***************************************************************
                    470: :h1 res=HLPM_OUTSCREEN.Help for Output Screen Lines
                    471: :i2 refid=MOUTPUT.Output to Screen
                    472: :p.
                    473: ***** To Be Filled in *****
                    474: .***************************************************************
                    475: :h1 res=HLPM_OUTTERM.Help for Output Debug Terminal
                    476: :i2 refid=MOUTPUT.Output to Debug Terminal
                    477: :p.
                    478: This command toggles the state of whether any displayed information should
                    479: go to the debug terminal or not.
                    480: :p.
                    481: This command may depend of if you have a debugging version of OS2 or not, and
                    482: if you have added a /C1 or /C2 to the PMDD statement in config.sys, for
                    483: Com1&colon. or Com2&colon...
                    484: 
                    485: .***************************************************************
                    486: :h1 res=HLPM_OUTFILE.Help for Output File
                    487: :i2 refid=MOUTPUT.Output to File
                    488: :p.
                    489: This command will toggle whetter outputs should go to an output file or not.
                    490: The name of the output file can be set, by the Outputs... command.
                    491: .***************************************************************
                    492: :h1 res=HLPM_OUTPUTS.Help for Outputs
                    493: :i2 refid=MOUTPUT.Options
                    494: :p.
                    495: This command toggles whetter output should go to the main spy window or
                    496: not.
                    497: .***************************************************************
                    498: :h1 res=HLPM_HOWHELP.Help for How to Use Help
                    499: :i2 refid=MHELP.Using
                    500: :p.
                    501: Use this choice to find out what kind of help is available and
                    502: how to use the help that is available.
                    503: :p.
                    504: In general, help is provided for every action bar choice,
                    505: pull-down choice, and other selections.
                    506: .***************************************************************
                    507: :h1 res=HLPM_HELPEXTENDED.Help for Extended Help
                    508: :i2 refid=MHELP.Extended
                    509: :p.
                    510: Extended help provides general information about the program you are using.
                    511: .***************************************************************
                    512: :h1 res=HLPM_HELPKEYS.Help for Keys
                    513: :i2 refid=MHELP.Keys
                    514: :p.
                    515: Use this choice to display a list of keys.
                    516: :p.
                    517: The list of keys groups similar keys together so they are
                    518: easier to find.
                    519: .***************************************************************
                    520: :h1 res=HLPM_HELPINDEX.Help for Help Index
                    521: :i2 refid=MHELP.Index
                    522: :p.
                    523: The help index lists all of the titles of the help information that
                    524: is available.
                    525: .***************************************************************
                    526: :h1 res=HLPM_ABOUT.Help for About.
                    527: :i2 refid=MHELP.About Spy
                    528: :p.
                    529: Use this choice to display the copyright information.
                    530: .***************************************************************
                    531: :index.
                    532: :euserdoc.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.