home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / emxtutor.zip / emxsrcd1.zip / emx / src / pmgdb / pmgdb.ipp < prev    next >
Text File  |  1996-09-08  |  79KB  |  2,009 lines

  1. .* pmgdb.ipp
  2. .*
  3. .* Copyright (c) 1996 Eberhard Mattes
  4. .*
  5. .* This file is part of pmgdb.
  6. .*
  7. .* pmgdb is free software; you can redistribute it and/or modify it
  8. .* under the terms of the GNU General Public License as published by
  9. .* the Free Software Foundation; either version 2, or (at your option)
  10. .* any later version.
  11. .*
  12. .* pmgdb is distributed in the hope that it will be useful,
  13. .* but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. .* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  15. .* GNU General Public License for more details.
  16. .*
  17. .* You should have received a copy of the GNU General Public License
  18. .* along with pmgdb; see the file COPYING.  If not, write to the
  19. .* the Free Software Foundation, 59 Temple Place - Suite 330,
  20. .* Boston, MA 02111-1307, USA.
  21. .*
  22. :userdoc.
  23. :prolog.
  24. :docprof toc=1234.
  25. :title.Help for pmgdb
  26. :eprolog.
  27. :body.
  28.  
  29. .imd help.h
  30.  
  31. .nameit symbol=tt text=':font facename=Courier size=16x9.'
  32. .nameit symbol=ett text=':font facename=default size=0x0.'
  33.  
  34. .************************************************************************
  35. .* General help, nothing selected
  36. .************************************************************************
  37. :h1 res=&HELP_GENERAL..About pmgdb
  38. :i1 id='pmgdb'.pmgdb
  39. :lm margin=1.
  40. :p.
  41. :hp2.pmgdb:ehp2. is a Presentation Manager frontend for GDB, the
  42. GNU debugger.
  43. :p.
  44. To start :hp2.pmgdb:ehp2. from the command line, type
  45. :lm margin=5.:xmp.pmgdb app.exe arg1 arg2:exmp.:lm margin=1.
  46. :p.
  47. where &tt.app.exe&ett. is the application
  48. to be debugged and &tt.arg1&ett. and &tt.arg2&ett. are command
  49. line arguments for that application.
  50. :p.
  51. Alternatively, you can select the application to debug and provide
  52. command line arguments with :hp2.pmgdb:ehp2.'s menus.
  53. :p.
  54. In addition to a :link reftype=hd res=&HELP_TUTORIAL..tutorial:elink.,
  55. help is available on the following topics&colon.
  56. :p.
  57. :ul.
  58. :li.:link reftype=hd res=&HELP_CMD_WINDOW..The command window:elink.
  59. :li.:link reftype=hd res=&HELP_SRC_WINDOW..Source windows:elink.
  60. :li.:link reftype=hd res=&HELP_SRCS_WINDOW..Source files window:elink.
  61. :li.:link reftype=hd res=&HELP_BRK_WINDOW..Breakpoints window:elink.
  62. :li.:link reftype=hd res=&HELP_DSP_WINDOW..Display window:elink.
  63. :li.:link reftype=hd res=&HELP_THR_WINDOW..Threads window:elink.
  64. :li.:link reftype=hd res=&HELP_REG_WINDOW..Register window:elink.
  65. :eul.
  66.  
  67. .************************************************************************
  68. .* Command window
  69. .************************************************************************
  70. :h1 res=&HELP_CMD_WINDOW..Help for command window
  71. :i1 id='cmd'.pmgdb command window
  72. :lm margin=1.
  73. :p.
  74. The command window of :hp2.pmgdb:ehp2. shows GDB's output. You can
  75. type GDB commands in the command window. Select
  76. :link reftype=hd res=&HPM_CMD_HISTORY..History:elink. from the
  77. :link reftype=hd res=&HPM_CMD_FILEMENU..File:elink. menu to
  78. edit the command. If you close the command
  79. window, :hp2.pmgdb:ehp2. will be terminated.
  80. :p.
  81. In addition to a :link reftype=hd res=&HELP_TUTORIAL..tutorial:elink.,
  82. help is available on the following topics&colon.
  83. :p.
  84. :ul.
  85. :li.:link reftype=hd res=&HPM_CMD_FILEMENU..File menu:elink.
  86. :li.:link reftype=hd res=&HPM_CMD_EDITMENU..Edit menu:elink.
  87. :li.:link reftype=hd res=&HPM_CMD_RUNMENU..Run menu:elink.
  88. :li.:link reftype=hd res=&HPM_CMD_BRKPTMENU..Breakpoints menu:elink.
  89. :li.:link reftype=hd res=&HPM_CMD_OPTIONSMENU..Options menu:elink.
  90. :li.:link reftype=hd res=&HPM_CMD_WINMENU..Windows menu:elink.
  91. :li.:link reftype=hd res=&HPM_CMD_HELPMENU..Help menu:elink.
  92. :li.:link reftype=hd res=&HELP_CMD_KEYS..Keys in the command window:elink.
  93. :eul.
  94.  
  95. .************************************************************************
  96. .* File
  97. .************************************************************************
  98. :h2 res=&HPM_CMD_FILEMENU..Help for File
  99. :i2 refid='cmd'.File menu
  100. :i1 id='cmd.file'.File menu choices (command window)
  101. :lm margin=1.
  102. :p.
  103. The File menu contains the following choices&colon.
  104. :parml compact.
  105. :pt.:link reftype=hd res=&HPM_CMD_OPEN_EXEC..Open program file:elink.
  106. :pd.Open a program file.
  107. :pt.:link reftype=hd res=&HPM_CMD_OPEN_CORE..Open core file:elink.
  108. :pd.Open a core dump file.
  109. :pt.:link reftype=hd res=&HPM_OPEN_SOURCE..Open a source file:elink.
  110. :pd.Open a source file.
  111. :pt.:link reftype=hd res=&HPM_CMD_STARTUP..Startup:elink.
  112. :pd.Set command line arguments and other startup options.
  113. :pt.:link reftype=hd res=&HPM_RESTART..Restart:elink.
  114. :pd.Restart the program.
  115. :pt.:link reftype=hd res=&HPM_WHERE..Where:elink.
  116. :pd.Show current location of execution.
  117. :pt.:link reftype=hd res=&HPM_EXIT..Exit:elink.
  118. :pd.Terminate :hp2.pmgdb:ehp2..
  119. :eparml.
  120.  
  121. .************************************************************************
  122. .* Open program file
  123. .************************************************************************
  124. :h3 res=&HPM_CMD_OPEN_EXEC..Help for Open program file
  125. :i2 refid='cmd.file'.Open program file
  126. :i2 refid='pmgdb'.Open program file
  127. :i2 refid='pmgdb'.Program file
  128. :lm margin=1.
  129. :p.
  130. Use this choice to open a program file, that is, to specify the program
  131. to be debugged (debuggee).
  132.  
  133. .************************************************************************
  134. .* Open core file
  135. .************************************************************************
  136. :h3 res=&HPM_CMD_OPEN_CORE..Help for Open core file
  137. :i2 refid='cmd.file'.Open core file
  138. :i2 refid='pmgdb'.Open core file
  139. :i2 refid='pmgdb'.core file
  140. :lm margin=1.
  141. :p.
  142. Use this choice to open a core dump file.
  143.  
  144. .************************************************************************
  145. .* Open source file
  146. .************************************************************************
  147. :h3 res=&HPM_OPEN_SOURCE..Help for Open source file
  148. :i2 refid='cmd.file'.Open source file
  149. :i2 refid='pmgdb'.Open source file
  150. :i2 refid='pmgdb'.Source file
  151. :lm margin=1.
  152. :p.
  153. Use this choice to open a source file.  If the source file is already
  154. loaded, the window for that source file will be displayed.  Otherwise,
  155. the source file will be loaded and displayed in a new window.
  156.  
  157. .************************************************************************
  158. .* Startup
  159. .************************************************************************
  160. :h3 res=&HPM_CMD_STARTUP..Help for Startup
  161. :i2 refid='cmd.file'.Startup
  162. :i2 refid='pmgdb'.Startup
  163. :i2 refid='pmgdb'.Command line arguments for debuggee
  164. :lm margin=1.
  165. :p.
  166. Use this choice to specify startup options. 
  167. This choice opens the
  168. :link reftype=hd res=&HPD_STARTUP..Startup:elink. dialog box.
  169. You can enter the command line options and select whether the
  170. VIO window of the debuggee should be closed after termination of the
  171. debuggee.
  172.  
  173. .************************************************************************
  174. .* Restart
  175. .************************************************************************
  176. :h3 res=&HPM_RESTART..Help for Restart
  177. :i2 refid='cmd.file'.Restart
  178. :i2 refid='pmgdb'.Restart
  179. :lm margin=1.
  180. :p.
  181. Use this choice to restart the debuggee.  If the debuggee is running,
  182. it will be stopped and restarted.  If the debuggee is not running, it
  183. will be started.  The debugger keeps any breakpoints.  If no
  184. breakpoints are set (or all breakpoints are disabled), a breakpoint
  185. will be set on &tt.main&ett.
  186.  
  187. .************************************************************************
  188. .* Where
  189. .************************************************************************
  190. :h3 res=&HPM_WHERE..Help for Where
  191. :i2 refid='cmd.file'.Where
  192. :i2 refid='pmgdb'.Where
  193. :lm margin=1.
  194. :p.
  195. Use this choice to show the current location of execution.  If source
  196. code is available for that location, the appropriate source file will
  197. be displayed with the current line highlighted.
  198.  
  199. .************************************************************************
  200. .* Exit
  201. .************************************************************************
  202. :h3 res=&HPM_EXIT..Help for Exit
  203. :i2 refid='cmd.file'.Exit
  204. :i2 refid='pmgdb'.Exit
  205. :lm margin=1.
  206. :p.
  207. Use this choice to terminate :hp2.pmgdb:ehp2..  If a debuggee is running,
  208. it will be terminated.  :hp2.GDB:ehp2. will also be terminated.
  209.  
  210. .************************************************************************
  211. .* Edit
  212. .************************************************************************
  213. :h2 res=&HPM_CMD_EDITMENU..Help for Edit
  214. :i2 refid='cmd'.Edit menu
  215. :i1 id='cmd.edit'.Edit menu choices (command window)
  216. :lm margin=1.
  217. :p.
  218. The Edit menu contains the following choices&colon.
  219. :parml compact.
  220. :pt.:link reftype=hd res=&HPM_CMD_COMPLETE..Complete:elink.
  221. :pd.Command completion.
  222. :pt.:link reftype=hd res=&HPM_CMD_HISTORY..History:elink.
  223. :pd.Select, edit, and repeat a previously issued command.
  224. :eparml.
  225.  
  226. .************************************************************************
  227. .* Complete
  228. .************************************************************************
  229. :h3 res=&HPM_CMD_COMPLETE..Help for Complete
  230. :i2 refid='cmd.edit'.Complete
  231. :i2 refid='pmgdb'.Complete
  232. :lm margin=1.
  233. :p.
  234. Use this choice to complete the command typed in the command window.
  235. If there is more than one possible completion, a popup window will
  236. show all available completions.  Select one of those choices to
  237. complete the command.
  238.  
  239. .************************************************************************
  240. .* History
  241. .************************************************************************
  242. :h3 res=&HPM_CMD_HISTORY..Help for History
  243. :i2 refid='cmd.edit'.History
  244. :i2 refid='pmgdb'.History
  245. :lm margin=1.
  246. :p.
  247. Use this choice to select and edit a command from a list of all previously
  248. issued commands or to edit the current command.  This choice opens the
  249. :link reftype=hd res=&HPD_HISTORY..History:elink. dialog box.
  250.  
  251. .************************************************************************
  252. .* Run
  253. .************************************************************************
  254. :h2 res=&HPM_CMD_RUNMENU..Help for Run
  255. :i2 refid='pmgdb'.Run menu (command window)
  256. :i1 id='cmd.run'.Run menu choices
  257. :lm margin=1.
  258. :p.
  259. The Run menu contains the following choices&colon.
  260. :parml compact.
  261. :pt.:link reftype=hd res=&HPM_GO..Go:elink.
  262. :pd.Continue (or start) program.
  263. :pt.:link reftype=hd res=&HPM_STEPOVER..Step over:elink.
  264. :pd.Step program, proceeding through subroutine calls.
  265. :pt.:link reftype=hd res=&HPM_STEPINTO..Step into:elink.
  266. :pd.Step program until it reaches a different source line.
  267. :pt.:link reftype=hd res=&HPM_FINISH..Finish:elink.
  268. :pd.Execute until selected stack frame returns.
  269. :pt.:link reftype=hd res=&HPM_ISTEPOVER..Insn step over:elink.
  270. :pd.Step one instruction, proceeding through subroutine calls.
  271. :pt.:link reftype=hd res=&HPM_ISTEPINTO..Insn step into:elink.
  272. :pd.Step one instruction.
  273. :eparml.
  274.  
  275. .************************************************************************
  276. .* Go
  277. .************************************************************************
  278. :h3 res=&HPM_GO..Help for Go
  279. :i2 refid='cmd.run'.Go
  280. :i2 refid='pmgdb'.Go
  281. :i2 refid='pmgdb'.Continue program
  282. :i2 refid='pmgdb'.Start program
  283. :lm margin=1.
  284. :p.
  285. Use this choice to let the program run until a breakpoint is hit or a
  286. signal occurs.  If the program has not yet been started, it will be
  287. started and a breakpoint will be set on &tt.main&ett.  if no
  288. breakpoints are set (or all breakpoints are disabled).
  289.  
  290. .************************************************************************
  291. .* Step over
  292. .************************************************************************
  293. :h3 res=&HPM_STEPOVER..Help for Step over
  294. :i2 refid='cmd.run'.Step over
  295. :i2 refid='pmgdb'.Step over
  296. :lm margin=1.
  297. :p.
  298. Use this choice to step the program, proceeding through subroutine calls.
  299. Subroutine calls are treated as one instruction.  If there are no subroutine
  300. calls, this choice is equivalent to
  301. :link reftype=hd res=&HPM_STEPINTO..Step into:elink..
  302.  
  303. .************************************************************************
  304. .* Step into
  305. .************************************************************************
  306. :h3 res=&HPM_STEPINTO..Help for Step into
  307. :i2 refid='cmd.run'.Step into
  308. :i2 refid='pmgdb'.Step into
  309. :lm margin=1.
  310. :p.
  311. Use this choice to step the program until it reaches a different source
  312. line.  See also
  313. :link reftype=hd res=&HPM_STEPOVER..Step over:elink..
  314.  
  315. .************************************************************************
  316. .* Finish
  317. .************************************************************************
  318. :h3 res=&HPM_FINISH..Help for Finish
  319. :i2 refid='cmd.run'.Finish
  320. :i2 refid='pmgdb'.Finish
  321. :lm margin=1.
  322. :p.
  323. Use this choice to execute the program until the selected stack frame
  324. returns.  That is, this choice finishes a subroutine call, stopping
  325. at the location from which the subroutine was called.  The returned value
  326. is printed in the command window.
  327.  
  328. .************************************************************************
  329. .* Insn step over
  330. .************************************************************************
  331. :h3 res=&HPM_ISTEPOVER..Help for Insn step over
  332. :i2 refid='cmd.run'.Insn step over
  333. :i2 refid='pmgdb'.Insn step over
  334. :lm margin=1.
  335. :p.
  336. Use this choice to step one instruction of the program. Subroutine
  337. calls are treated as one instruction. If the instruction is not
  338. a subroutine call, this choice is equivalent to
  339. :link reftype=hd res=&HPM_ISTEPINTO..Insn step into:elink..
  340.  
  341. .************************************************************************
  342. .* Insn step into
  343. .************************************************************************
  344. :h3 res=&HPM_ISTEPINTO..Help for Insn step into
  345. :i2 refid='cmd.run'.Insn step into
  346. :i2 refid='pmgdb'.Insn step into
  347. :lm margin=1.
  348. :p.
  349. Use this choice to step one instruction of the program.  See also
  350. :link reftype=hd res=&HPM_ISTEPOVER..Insn step over:elink..
  351.  
  352. .************************************************************************
  353. .* Breakpoints
  354. .************************************************************************
  355. :h2 res=&HPM_CMD_BRKPTMENU..Help for Breakpoints
  356. :i2 refid='cmd'.Breakpoints menu
  357. :i1 id='cmd.brkpt'.Breakpoints menu choices (command window)
  358. :lm margin=1.
  359. :p.
  360. The Breakpoints menu contains the following choices&colon.
  361. :parml compact.
  362. :pt.:link reftype=hd res=&HPM_BRKPT_LINE..On line:elink.
  363. :pd.Set a breakpoint on a line.
  364. :pt.:link reftype=hd res=&HPM_BRKPT_LIST..List:elink.
  365. :pd.Open the breakpoints window.
  366. :eparml.
  367.  
  368. .************************************************************************
  369. .* On line
  370. .************************************************************************
  371. :h3 res=&HPM_BRKPT_LINE..Help for On line
  372. :i2 refid='cmd.brkpt'.On line
  373. :i2 refid='pmgdb'.On line
  374. :i2 refid='pmgdb'.Breakpoint, on line
  375. :lm margin=1.
  376. :p.
  377. Use this choice to set a breakpoint on a line of the source code.
  378. This choice opens the
  379. :link reftype=hd res=&HPD_BRKPT_LINE..Line Breakpoint:elink. dialog box.
  380. :p.
  381. You can also set or clear a breakpoint by double clicking with the
  382. first mouse button on the line number in a source window.
  383.  
  384. .************************************************************************
  385. .* List
  386. .************************************************************************
  387. :h3 res=&HPM_BRKPT_LIST..Help for List
  388. :i2 refid='cmd.brkpt'.List
  389. :i2 refid='pmgdb'.List
  390. :i2 refid='pmgdb'.Breakpoint, list
  391. :lm margin=1.
  392. :p.
  393. Use this choice to open the breakpoints window which shows all the
  394. breakpoints.
  395.  
  396. .************************************************************************
  397. .* Options
  398. .************************************************************************
  399. :h2 res=&HPM_CMD_OPTIONSMENU..Help for Options
  400. :i2 refid='cmd'.Options menu
  401. :i1 id='cmd.options'.Options menu choices
  402. :lm margin=1.
  403. :p.
  404. The Options menu contains the following choices&colon.
  405. :parml compact.
  406. :pt.:link reftype=hd res=&HPM_PMDEBUGMODE..PM debugging mode:elink.
  407. :pd.Select the mode for debugging PM applications.
  408. :pt.:link reftype=hd res=&HPM_CMD_ANNOTATE..Annotate:elink.
  409. :pd.Print annotations.
  410. :pt.:link reftype=hd res=&HPM_CMD_FONT..Font:elink.
  411. :pd.Select font.
  412. :eparml.
  413.  
  414. .************************************************************************
  415. .* PM debugging mode
  416. .************************************************************************
  417. :h3 res=&HPM_PMDEBUGMODE..Help for PM debugging mode
  418. :i2 refid='cmd.options'.PM debugging mode
  419. :i2 refid='pmgdb'.PM debugging mode
  420. :lm margin=1.
  421. :p.
  422. Use this choice to select the mode for debugging PM applications.
  423. Synchronous mode should be selected before starting a Presentation
  424. Manager application, otherwise the Presentation Manager will hang,
  425. requiring a reboot to recover.  In Synchronous mode, only windows of
  426. :hp2.pmgdb:ehp2. and of the program being debugged can be made active;
  427. all other windows cannot be used.
  428. :hp2.pmgdb:ehp2. attempts to set Synchronous mode automatically when
  429. a PM program is loaded.  This choice opens the
  430. :link reftype=hd res=&HPD_PMDEBUGMODE..PM debugging mode:elink. dialog box.
  431.  
  432. .************************************************************************
  433. .* Annotate
  434. .************************************************************************
  435. :h3 res=&HPM_CMD_ANNOTATE..Help for Annotate
  436. :i2 refid='cmd.options'.Annotate
  437. :i2 refid='pmgdb'.Annotate
  438. :lm margin=1.
  439. :p.
  440. Use this choice to turn on printing of GDB's annotations.  This us
  441. used for debugging :hp2.pmgdb:ehp2..
  442.  
  443. .************************************************************************
  444. .* Font
  445. .************************************************************************
  446. :h3 res=&HPM_CMD_FONT..Help for Font
  447. :i2 refid='cmd.options'.Font
  448. :i2 refid='pmgdb'.Font
  449. :lm margin=1.
  450. :p.
  451. Use this choice to select a font for all windows of :hp2.pmgdb:ehp2..
  452. You can change the font of a single window by dragging a font from the
  453. Font Palette and dropping it on a :hp2.pmgdb:ehp2. window.
  454.  
  455. .************************************************************************
  456. .* Windows
  457. .************************************************************************
  458. :h2 res=&HPM_CMD_WINMENU..Help for Windows
  459. :i2 refid='cmd'.Windows menu
  460. :i1 id='cmd.win'.Windows menu choices
  461. :lm margin=1.
  462. :p.
  463. The Windows menu contains the following choices&colon.
  464. :parml compact.
  465. :pt.:link reftype=hd res=&HPM_WIN_SRCS..Source files:elink.
  466. :pd.Show the source files window.
  467. :pt.:link reftype=hd res=&HPM_WIN_BRK..Breakpoints:elink.
  468. :pd.Show the breakpoints window.
  469. :pt.:link reftype=hd res=&HPM_WIN_DSP..Display:elink.
  470. :pd.Show the display window.
  471. :pt.:link reftype=hd res=&HPM_WIN_THR..Threads:elink.
  472. :pd.Show the threads window.
  473. :pt.:link reftype=hd res=&HPM_WIN_REG..Register:elink.
  474. :pd.Show the register window.
  475. :eparml.
  476.  
  477. .************************************************************************
  478. .* Source files
  479. .************************************************************************
  480. :h3 res=&HPM_WIN_SRCS..Help for Source files
  481. :i2 refid='cmd.win'.Source files
  482. :i2 refid='pmgdb'.Source files
  483. :lm margin=1.
  484. :p.
  485. Use this choice to show the source files window.
  486.  
  487. .************************************************************************
  488. .* Breakpoints
  489. .************************************************************************
  490. :h3 res=&HPM_WIN_BRK..Help for Breakpoints
  491. :i2 refid='cmd.win'.Breakpoints
  492. :i2 refid='pmgdb'.Breakpoints
  493. :lm margin=1.
  494. :p.
  495. Use this choice to show the breakpoints window.
  496.  
  497. .************************************************************************
  498. .* Display
  499. .************************************************************************
  500. :h3 res=&HPM_WIN_DSP..Help for Display
  501. :i2 refid='cmd.win'.Display
  502. :i2 refid='pmgdb'.Display
  503. :lm margin=1.
  504. :p.
  505. Use this choice to show the display window.
  506.  
  507. .************************************************************************
  508. .* Threads
  509. .************************************************************************
  510. :h3 res=&HPM_WIN_THR..Help for Threads
  511. :i2 refid='cmd.win'.Threads
  512. :i2 refid='pmgdb'.Threads
  513. :lm margin=1.
  514. :p.
  515. Use this choice to show the threads window.
  516.  
  517. .************************************************************************
  518. .* Register
  519. .************************************************************************
  520. :h3 res=&HPM_WIN_REG..Help for Register
  521. :i2 refid='cmd.win'.Register
  522. :i2 refid='pmgdb'.Register
  523. :lm margin=1.
  524. :p.
  525. Use this choice to show the register window.
  526.  
  527. .************************************************************************
  528. .* Help
  529. .************************************************************************
  530. :h2 res=&HPM_CMD_HELPMENU..Help for Help
  531. :i2 refid='cmd'.Help menu
  532. :i1 id='cmd.help'.Help menu choices
  533. :lm margin=1.
  534. :p.
  535. The Help menu contains the following choices&colon.
  536. :parml compact.
  537. :pt.:link reftype=hd res=&HPM_HELP_HELP..Help for help:elink.
  538. :pd.Display help for help.
  539. :pt.:link reftype=hd res=&HPM_HELP_EXT..Extended help:elink.
  540. :pd.Display extended help.
  541. :pt.:link reftype=hd res=&HPM_HELP_KEYS..Keys help:elink.
  542. :pd.Display help about keys.
  543. :pt.:link reftype=hd res=&HPM_HELP_INDEX..Help index:elink.
  544. :pd.Display the help index.
  545. :pt.:link reftype=hd res=&HPM_HELP_CONTENTS..Help index:elink.
  546. :pd.Display the help contents.
  547. :pt.:link reftype=hd res=&HPM_TUTORIAL..Tutorial:elink.
  548. :pd.Display tutorial.
  549. :pt.:link reftype=hd res=&HPM_CMD_ABOUT..About:elink.
  550. :pd.Display copyright information.
  551. :eparml.
  552.  
  553. .************************************************************************
  554. .* Help for Help
  555. .************************************************************************
  556. :h3 res=&HPM_HELP_HELP..Help for Help
  557. :i2 refid='cmd.help'.Help for Help
  558. :lm margin=1.
  559. :p.
  560. Use this choice to get online help for help.
  561.  
  562. .************************************************************************
  563. .* Extended help
  564. .************************************************************************
  565. :h3 res=&HPM_HELP_EXT..Help for Extended help
  566. :i2 refid='cmd.help'.Extended help
  567. :lm margin=1.
  568. :p.
  569. Use this choice to get online help
  570. for :hp2.pmgdb:ehp2.. You can also press the :hp2.F1:ehp2. key
  571. to get online help.
  572.  
  573. .************************************************************************
  574. .* Keys help
  575. .************************************************************************
  576. :h3 res=&HPM_HELP_KEYS..Help for Keys help
  577. :i2 refid='cmd.help'.Keys help
  578. :lm margin=1.
  579. :p.
  580. Use this choice to get online help for :hp2.pmgdb:ehp2. keys.
  581.  
  582. .************************************************************************
  583. .* Help index
  584. .************************************************************************
  585. :h3 res=&HPM_HELP_INDEX..Help for Help index
  586. :i2 refid='cmd.help'.Help for Help index
  587. :lm margin=1.
  588. :p.
  589. Use this choice to display the help index.
  590.  
  591. .************************************************************************
  592. .* Help contents
  593. .************************************************************************
  594. :h3 res=&HPM_HELP_CONTENTS..Help for Help contents
  595. :i2 refid='cmd.help'.Help for Help contents
  596. :lm margin=1.
  597. :p.
  598. Use this choice to display the table of contents for online help.
  599.  
  600. .************************************************************************
  601. .* Tutorial
  602. .************************************************************************
  603. :h3 res=&HPM_TUTORIAL..Help for Tutorial
  604. :i2 refid='cmd.help'.Tutorial
  605. :lm margin=1.
  606. :p.
  607. Use this choice to display the :hp2.pmgdb:ehp2.
  608. :link reftype=hd res=&HELP_TUTORIAL..tutorial:elink..
  609.  
  610. .************************************************************************
  611. .* About
  612. .************************************************************************
  613. :h3 res=&HPM_CMD_ABOUT..Help for About
  614. :i2 refid='cmd.help'.About
  615. :i2 refid='pmgdb'.Author
  616. :i2 refid='pmgdb'.Copyright
  617. :lm margin=1.
  618. :p.
  619. Use this choice to display copyright information
  620. about :hp2.pmgdb:ehp2..
  621.  
  622. .************************************************************************
  623. .* Keys help (command window)
  624. .************************************************************************
  625. :h1 res=&HELP_CMD_KEYS..Keys help (command window)
  626. :i1 id='cmd.keys'.Keys (command window)
  627. :lm margin=1.
  628. :p.
  629. You can use the following keys in the command window&colon.
  630. :dl tsize=20 compact.
  631. :dt.Backspace:dd.Delete one character to the left.
  632. :dt.Up arrow:dd.Fetch the previous command from the command history.
  633. :dt.Down arrow:dd.Fetch the next command from the command history.
  634. :dt.Page Up:dd.Scroll down by one window.
  635. :dt.Page Down:dd.Scroll up by one window.
  636. :dt.Ctrl+Page Up:dd.Scroll down right by one window.
  637. :dt.Ctrl+Page Down:dd.Scroll left by one window.
  638. :edl.
  639. :p.
  640. Accelerator keys are missed out in the list above.
  641.  
  642. .************************************************************************
  643. .* Source window
  644. .************************************************************************
  645. :h1 res=&HELP_SRC_WINDOW..Help for source window
  646. :i1 id='src'.pmgdb source window
  647. :lm margin=1.
  648. :p.
  649. The source windows of :hp2.pmgdb:ehp2. show the source code of the
  650. application being debugged.  There may be multiple source windows,
  651. one for each source file.  Closing a source window doesn't terminate
  652. :hp2.pmgdb:ehp2..
  653. :p.
  654. Help is available on the following topics&colon.
  655. :p.
  656. :ul.
  657. :li.:link reftype=hd res=&HPM_SRC_FILEMENU..File menu:elink.
  658. :li.:link reftype=hd res=&HPM_SRC_VIEWMENU..View menu:elink.
  659. :li.:link reftype=hd res=&HPM_SRC_RUNMENU..Run menu:elink.
  660. :li.:link reftype=hd res=&HPM_SRC_BRKPTMENU..Breakpoints menu:elink.
  661. :li.:link reftype=hd res=&HPM_SRC_DSPMENU..Display menu:elink.
  662. :li.:link reftype=hd res=&HPM_SRC_OPTIONSMENU..Options menu:elink.
  663. :li.:link reftype=hd res=&HPM_SRC_WINMENU..Windows menu:elink.
  664. :li.:link reftype=hd res=&HPM_SRC_HELPMENU..Help menu:elink.
  665. :li.:link reftype=hd res=&HELP_SRC_KEYS..Keys in a source window:elink.
  666. :eul.
  667.  
  668. .************************************************************************
  669. .* File
  670. .************************************************************************
  671. :h2 res=&HPM_SRC_FILEMENU..Help for File
  672. :i2 refid='src'.File menu
  673. :i1 id='src.file'.File menu choices (source window)
  674. :lm margin=1.
  675. :p.
  676. The File menu contains the following choices&colon.
  677. :parml compact.
  678. :pt.:link reftype=hd res=&HPM_OPEN_SOURCE..Open a source file:elink.
  679. :pd.Open a source file.
  680. :pt.:link reftype=hd res=&HPM_RESTART..Restart:elink.
  681. :pd.Restart the program.
  682. :pt.:link reftype=hd res=&HPM_WHERE..Where:elink.
  683. :pd.Show current location of execution.
  684. :pt.:link reftype=hd res=&HPM_EXIT..Exit:elink.
  685. :pd.Terminate :hp2.pmgdb:ehp2..
  686. :eparml.
  687.  
  688. .************************************************************************
  689. .* View
  690. .************************************************************************
  691. :h2 res=&HPM_SRC_VIEWMENU..Help for View
  692. :i2 refid='src'.View menu
  693. :i1 id='src.view'.View menu choices (source window)
  694. :lm margin=1.
  695. :p.
  696. The View menu contains the following choices&colon.
  697. :parml compact.
  698. :pt.:link reftype=hd res=&HPM_SRC_FIND..Find:elink.
  699. :pd.Search for a regular expression.
  700. :pt.:link reftype=hd res=&HPM_SRC_FINDNEXT..Find next:elink.
  701. :pd.Search for next occurrence.
  702. :pt.:link reftype=hd res=&HPM_SRC_FINDPREV..Find previous:elink.
  703. :pd.Search for previous occurrence.
  704. :pt.:link reftype=hd res=&HPM_SRC_GOTO..Go to line:elink.
  705. :pd.Show a line specified by line number.
  706. :eparml.
  707.  
  708. .************************************************************************
  709. .* Find
  710. .************************************************************************
  711. :h3 res=&HPM_SRC_FIND..Help for Find
  712. :i2 refid='src.view'.Find
  713. :i2 refid='pmgdb'.Find
  714. :lm margin=1.
  715. :p.
  716. Use this choice to search the source file for a regular expression.
  717. This choice opens the
  718. :link reftype=hd res=&HPD_FIND..Find:elink. dialog box.
  719. The search starts at the beginning of the file.
  720. See also :link reftype=hd res=&HPM_SRC_FINDNEXT..Find next:elink.
  721. and :link reftype=hd res=&HPM_SRC_FINDPREV..Find previous:elink..
  722.  
  723. .************************************************************************
  724. .* Find next
  725. .************************************************************************
  726. :h3 res=&HPM_SRC_FINDNEXT..Help for Find next
  727. :i2 refid='src.view'.Find next
  728. :i2 refid='pmgdb'.Find next
  729. :lm margin=1.
  730. :p.
  731. Use this choice to search for the next occurrence of a regular expression.
  732. The search continues from the line following the line containing the
  733. previously found match.
  734. See also :link reftype=hd res=&HPM_SRC_FIND..Find:elink.
  735. and :link reftype=hd res=&HPM_SRC_FINDPREV..Find previous:elink..
  736.  
  737. .************************************************************************
  738. .* Find previous
  739. .************************************************************************
  740. :h3 res=&HPM_SRC_FINDPREV..Help for Find previous
  741. :i2 refid='src.view'.Find previous
  742. :i2 refid='pmgdb'.Find previous
  743. :lm margin=1.
  744. :p.
  745. Use this choice to search for the previous occurrence of a regular expression.
  746. The search continues from the line preceding the line containing the
  747. previously found match.
  748. See also :link reftype=hd res=&HPM_SRC_FIND..Find:elink.
  749. and :link reftype=hd res=&HPM_SRC_FINDNEXT..Find next:elink..
  750.  
  751. .************************************************************************
  752. .* Go to line
  753. .************************************************************************
  754. :h3 res=&HPM_SRC_GOTO..Help for Go to line
  755. :i2 refid='src.view'.Go to line
  756. :i2 refid='pmgdb'.Go to line
  757. :lm margin=1.
  758. :p.
  759. Use this choice to show a line of the current source file
  760. specified by line number.  This choice opens the
  761. :link reftype=hd res=&HPD_GOTO..Go to line:elink. dialog box.
  762.  
  763. .************************************************************************
  764. .* Run
  765. .************************************************************************
  766. :h2 res=&HPM_SRC_RUNMENU..Help for Run
  767. :i2 refid='pmgdb'.Run menu (source window)
  768. :i1 id='src.run'.Run menu choices
  769. :lm margin=1.
  770. :p.
  771. The Run menu contains the following choices&colon.
  772. :parml compact.
  773. :pt.:link reftype=hd res=&HPM_GO..Go:elink.
  774. :pd.Continue (or start) program.
  775. :pt.:link reftype=hd res=&HPM_STEPOVER..Step over:elink.
  776. :pd.Step program, proceeding through subroutine calls.
  777. :pt.:link reftype=hd res=&HPM_STEPINTO..Step into:elink.
  778. :pd.Step program until it reaches a different source line.
  779. :pt.:link reftype=hd res=&HPM_FINISH..Finish:elink.
  780. :pd.Execute until selected stack frame returns.
  781. :pt.:link reftype=hd res=&HPM_ISTEPOVER..Insn step over:elink.
  782. :pd.Step one instruction, proceeding through subroutine calls.
  783. :pt.:link reftype=hd res=&HPM_ISTEPINTO..Insn step into:elink.
  784. :pd.Step one instruction.
  785. :pt.:link reftype=hd res=&HPM_SRC_UNTIL..Until:elink.
  786. :pd.Execute until the program reaches the selected line.
  787. :pt.:link reftype=hd res=&HPM_SRC_JUMP..Jump:elink.
  788. :pd.Jump to the selected line.
  789. :eparml.
  790.  
  791. .************************************************************************
  792. .* Until
  793. .************************************************************************
  794. :h3 res=&HPM_SRC_UNTIL..Help for Until
  795. :i2 refid='src.run'.Until
  796. :i2 refid='pmgdb'.Until
  797. :lm margin=1.
  798. :p.
  799. Use this choice to let the program run until it reaches the selected line.
  800. Click with the first mouse button on a line number in a source window to
  801. select a line.
  802.  
  803. .************************************************************************
  804. .* Jump
  805. .************************************************************************
  806. :h3 res=&HPM_SRC_JUMP..Help for Jump
  807. :i2 refid='src.run'.Jump
  808. :i2 refid='pmgdb'.Jump
  809. :lm margin=1.
  810. :p.
  811. Use this choice to jump to the selected line.  Execution will continue
  812. from that line.  Click with the first mouse button on a line number in
  813. a source window to select a line.
  814.  
  815. .************************************************************************
  816. .* Breakpoints
  817. .************************************************************************
  818. :h2 res=&HPM_SRC_BRKPTMENU..Help for Breakpoints
  819. :i2 refid='src'.Breakpoints menu
  820. :i1 id='src.brkpt'.Breakpoints menu choices (source window)
  821. :lm margin=1.
  822. :p.
  823. The Breakpoints menu contains the following choices&colon.
  824. :parml compact.
  825. :pt.:link reftype=hd res=&HPM_BRKPT_LINE..On line:elink.
  826. :pd.Set a breakpoint on a line.
  827. :pt.:link reftype=hd res=&HPM_BRKPT_LIST..List:elink.
  828. :pd.Open the breakpoints window.
  829. :eparml.
  830.  
  831. .************************************************************************
  832. .* Display
  833. .************************************************************************
  834. :h2 res=&HPM_SRC_DSPMENU..Help for Display
  835. :i2 refid='src'.Display menu
  836. :i1 id='src.dsp'.Display menu choices
  837. :lm margin=1.
  838. :p.
  839. The Display menu contains the following choices&colon.
  840. :parml compact.
  841. :pt.:link reftype=hd res=&HPM_DSP_ADD..Add:elink.
  842. :pd.Add a display.
  843. :pt.:link reftype=hd res=&HPM_SRC_DSP_SHOW..Show:elink.
  844. :pd.Show the display window.
  845. :eparml.
  846.  
  847. .************************************************************************
  848. .* Show
  849. .************************************************************************
  850. :h3 res=&HPM_SRC_DSP_SHOW..Help for Show
  851. :i2 refid='src.dsp'.Show
  852. :i2 refid='pmgdb'.Show
  853. :lm margin=1.
  854. :p.
  855. Use this choice to show the display window.
  856.  
  857. .************************************************************************
  858. .* Options
  859. .************************************************************************
  860. :h2 res=&HPM_SRC_OPTIONSMENU..Help for Options
  861. :i2 refid='src'.Options menu
  862. :i1 id='src.options'.Options menu choices
  863. :lm margin=1.
  864. :p.
  865. The Options menu contains the following choices&colon.
  866. :parml compact.
  867. :pt.:link reftype=hd res=&HPM_PMDEBUGMODE..PM debugging mode:elink.
  868. :pd.Select the mode for debugging PM applications.
  869. :eparml.
  870.  
  871. .************************************************************************
  872. .* Windows
  873. .************************************************************************
  874. :h2 res=&HPM_SRC_WINMENU..Help for Windows
  875. :i2 refid='src'.Windows menu
  876. :i1 id='src.win'.Windows menu choices (source window)
  877. :lm margin=1.
  878. :p.
  879. The Windows menu contains the following choices&colon.
  880. :parml compact.
  881. :pt.:link reftype=hd res=&HPM_WIN_CMD..Command:elink.
  882. :pd.Show the command window.
  883. :pt.:link reftype=hd res=&HPM_WIN_SRCS..Source files:elink.
  884. :pd.Show the source files window.
  885. :pt.:link reftype=hd res=&HPM_WIN_BRK..Breakpoints:elink.
  886. :pd.Show the breakpoints window.
  887. :pt.:link reftype=hd res=&HPM_WIN_DSP..Display:elink.
  888. :pd.Show the display window.
  889. :pt.:link reftype=hd res=&HPM_WIN_THR..Threads:elink.
  890. :pd.Show the threads window.
  891. :pt.:link reftype=hd res=&HPM_WIN_REG..Register:elink.
  892. :pd.Show the register window.
  893. :eparml.
  894.  
  895. .************************************************************************
  896. .* Command
  897. .************************************************************************
  898. :h3 res=&HPM_WIN_CMD..Help for Command
  899. :i2 refid='src.win'.Command
  900. :i2 refid='pmgdb'.Command
  901. :lm margin=1.
  902. :p.
  903. Use this choice to show the command window.
  904.  
  905. .************************************************************************
  906. .* Help
  907. .************************************************************************
  908. :h2 res=&HPM_SRC_HELPMENU..Help for Help
  909. :i2 refid='src'.Help menu
  910. :i1 id='src.help'.Help menu choices
  911. :lm margin=1.
  912. :p.
  913. The Help menu contains the following choices&colon.
  914. :parml compact.
  915. :pt.:link reftype=hd res=&HPM_HELP_HELP..Help for help:elink.
  916. :pd.Display help for help.
  917. :pt.:link reftype=hd res=&HPM_HELP_EXT..Extended help:elink.
  918. :pd.Display extended help.
  919. :pt.:link reftype=hd res=&HPM_HELP_KEYS..Keys help:elink.
  920. :pd.Display help about keys.
  921. :pt.:link reftype=hd res=&HPM_HELP_INDEX..Help index:elink.
  922. :pd.Display the help index.
  923. :pt.:link reftype=hd res=&HPM_HELP_CONTENTS..Help index:elink.
  924. :pd.Display the help contents.
  925. :eparml.
  926.  
  927. .************************************************************************
  928. .* Keys help (source window)
  929. .************************************************************************
  930. :h1 res=&HELP_SRC_KEYS..Keys help (source window)
  931. :i1 id='src.keys'.Keys (source window)
  932. :lm margin=1.
  933. :p.
  934. You can use the following keys in a source window&colon.
  935. :dl tsize=20 compact.
  936. :dt.Up arrow:dd.Scroll down by one line.
  937. :dt.Down arrow:dd.Scroll up by one line.
  938. :dt.Page Up:dd.Scroll down by one window.
  939. :dt.Page Down:dd.Scroll up by one window.
  940. :dt.Left:dd.Scroll left by one character (average character width).
  941. :dt.Right:dd.Scroll right by one character (average character width).
  942. :dt.Ctrl+Page Up:dd.Scroll down right by one window.
  943. :dt.Ctrl+Page Down:dd.Scroll left by one window.
  944. :edl.
  945. :p.
  946. Accelerator keys are missed out in the list above.
  947.  
  948. .************************************************************************
  949. .* Source files window
  950. .************************************************************************
  951. :h1 res=&HELP_SRCS_WINDOW..Help for source files window
  952. :i1 id='srcs'.pmgdb source files window
  953. :lm margin=1.
  954. :p.
  955. The source files window of :hp2.pmgdb:ehp2. lists the names of
  956. all source files for modules compiled with debugging enabled.
  957. Double clicking with the first mouse button on a file name will show
  958. an existing source window or open a new source window for that file.
  959. Closing the source files window doesn't terminate :hp2.pmgdb:ehp2..
  960. :p.
  961. Help is available on the following topics&colon.
  962. :p.
  963. :ul.
  964. :li.:link reftype=hd res=&HPM_SRCS_FILEMENU..File menu:elink.
  965. :li.:link reftype=hd res=&HPM_SRCS_WINMENU..Windows menu:elink.
  966. :li.:link reftype=hd res=&HPM_SRCS_HELPMENU..Help menu:elink.
  967. :li.:link reftype=hd res=&HELP_SRCS_KEYS..Keys in the source files
  968. window:elink.
  969. :eul.
  970.  
  971. .************************************************************************
  972. .* File
  973. .************************************************************************
  974. :h2 res=&HPM_SRCS_FILEMENU..Help for File
  975. :i2 refid='srcs'.File menu
  976. :i1 id='srcs.file'.File menu choices (source files window)
  977. :lm margin=1.
  978. :p.
  979. The File menu contains the following choices&colon.
  980. :parml compact.
  981. :pt.:link reftype=hd res=&HPM_EXIT..Exit:elink.
  982. :pd.Terminate :hp2.pmgdb:ehp2..
  983. :eparml.
  984.  
  985. .************************************************************************
  986. .* Windows
  987. .************************************************************************
  988. :h2 res=&HPM_SRCS_WINMENU..Help for Windows
  989. :i2 refid='srcs'.Windows menu
  990. :i1 id='srcs.win'.Windows menu choices (source files window)
  991. :lm margin=1.
  992. :p.
  993. The Windows menu contains the following choices&colon.
  994. :parml compact.
  995. :pt.:link reftype=hd res=&HPM_WIN_CMD..Command:elink.
  996. :pd.Show the command window.
  997. :pt.:link reftype=hd res=&HPM_WIN_BRK..Breakpoints:elink.
  998. :pd.Show the breakpoints window.
  999. :pt.:link reftype=hd res=&HPM_WIN_DSP..Display:elink.
  1000. :pd.Show the display window.
  1001. :pt.:link reftype=hd res=&HPM_WIN_THR..Threads:elink.
  1002. :pd.Show the threads window.
  1003. :pt.:link reftype=hd res=&HPM_WIN_REG..Register:elink.
  1004. :pd.Show the register window.
  1005. :eparml.
  1006.  
  1007. .************************************************************************
  1008. .* Help
  1009. .************************************************************************
  1010. :h2 res=&HPM_SRCS_HELPMENU..Help for Help
  1011. :i2 refid='srcs'.Help menu
  1012. :i1 id='srcs.help'.Help menu choices
  1013. :lm margin=1.
  1014. :p.
  1015. The Help menu contains the following choices&colon.
  1016. :parml compact.
  1017. :pt.:link reftype=hd res=&HPM_HELP_HELP..Help for help:elink.
  1018. :pd.Display help for help.
  1019. :pt.:link reftype=hd res=&HPM_HELP_EXT..Extended help:elink.
  1020. :pd.Display extended help.
  1021. :pt.:link reftype=hd res=&HPM_HELP_KEYS..Keys help:elink.
  1022. :pd.Display help about keys.
  1023. :pt.:link reftype=hd res=&HPM_HELP_INDEX..Help index:elink.
  1024. :pd.Display the help index.
  1025. :pt.:link reftype=hd res=&HPM_HELP_CONTENTS..Help index:elink.
  1026. :pd.Display the help contents.
  1027. :eparml.
  1028.  
  1029. .************************************************************************
  1030. .* Keys help (source files window)
  1031. .************************************************************************
  1032. :h1 res=&HELP_SRCS_KEYS..Keys help (source files window)
  1033. :i1 id='srcs.keys'.Keys (source files window)
  1034. :lm margin=1.
  1035. :p.
  1036. You can use the following keys in the source files window&colon.
  1037. :dl tsize=20 compact.
  1038. :edl.
  1039. :p.
  1040. Accelerator keys are missed out in the list above.
  1041.  
  1042. .************************************************************************
  1043. .* Breakpoints window
  1044. .************************************************************************
  1045. :h1 res=&HELP_BRK_WINDOW..Help for breakpoints window
  1046. :i1 id='brk'.pmgdb breakpoints window
  1047. :lm margin=1.
  1048. :p.
  1049. The breakpoints window of :hp2.pmgdb:ehp2. shows all the breakpoints.
  1050. For each breakpoint, the following values are displayed&colon.
  1051. :dl tsize=12 compact.
  1052. :dt.No:dd.The number of the breakpoint as maintained by GDB.  Modifying
  1053. a breakpoint may change its number
  1054. :dt.Ena:dd.y if the breakpoint is enabled, n if the breakpoint is disabled
  1055. :dt.Address:dd.Address of the breakpoint
  1056. :dt.Source:dd.Source file for the breakpoint address
  1057. :dt.Line:dd.Line number for the breakpoint address
  1058. :dt.Disp:dd.Disposition of the breakpoint: `keep' means that the breakpoint
  1059. remains enabled when hit, `dis' means that the breakpoint will be disabled
  1060. when hit, `del' means that the breakpoint will be deleted when hit.
  1061. :dt.Ign:dd.Ignore count.  The breakpoint will be ignored this many
  1062. times.
  1063. :dt.Cond:dd.Condition.  This expression is evaluated whenever the
  1064. breakpoint is hit; the breakpoint breaks only if the expression is true.
  1065. :edl.
  1066. :p.
  1067. You can toggle the enabled state of a breakpoint by double clicking
  1068. with the first mouse button on the value in the `Ena' column.  You can
  1069. view the source code at the breakpoint by double clicking on the value
  1070. in the `Source' or `Line' column.
  1071. Closing the breakpoints window doesn't terminate :hp2.pmgdb:ehp2..
  1072. :p.
  1073. Help is available on the following topics&colon.
  1074. :p.
  1075. :ul.
  1076. :li.:link reftype=hd res=&HPM_BRK_FILEMENU..File menu:elink.
  1077. :li.:link reftype=hd res=&HPM_BRK_EDITMENU..Edit menu:elink.
  1078. :li.:link reftype=hd res=&HPM_BRK_BRKPTMENU..Breakpoints menu:elink.
  1079. :li.:link reftype=hd res=&HPM_BRK_WINMENU..Windows menu:elink.
  1080. :li.:link reftype=hd res=&HPM_BRK_HELPMENU..Help menu:elink.
  1081. :li.:link reftype=hd res=&HELP_BRK_KEYS..Keys in the breakpoints window:elink.
  1082. :eul.
  1083.  
  1084. .************************************************************************
  1085. .* File
  1086. .************************************************************************
  1087. :h2 res=&HPM_BRK_FILEMENU..Help for File
  1088. :i2 refid='brk'.File menu
  1089. :i1 id='brk.file'.File menu choices (breakpoints window)
  1090. :lm margin=1.
  1091. :p.
  1092. The File menu contains the following choices&colon.
  1093. :parml compact.
  1094. :pt.:link reftype=hd res=&HPM_EXIT..Exit:elink.
  1095. :pd.Terminate :hp2.pmgdb:ehp2..
  1096. :eparml.
  1097.  
  1098. .************************************************************************
  1099. .* Edit
  1100. .************************************************************************
  1101. :h2 res=&HPM_BRK_EDITMENU..Help for Edit
  1102. :i2 refid='brk'.Edit menu
  1103. :i1 id='brk.edit'.Edit menu choices (breakpoints window)
  1104. :lm margin=1.
  1105. :p.
  1106. The Edit menu contains the following choices&colon.
  1107. :parml compact.
  1108. :pt.:link reftype=hd res=&HPM_BRK_MODIFY..Modify:elink.
  1109. :pd.Modify the selected breakpoint.
  1110. :pt.:link reftype=hd res=&HPM_BRK_ENABLE..Enable:elink.
  1111. :pd.Enable the selected breakpoint.
  1112. :pt.:link reftype=hd res=&HPM_BRK_DISABLE..Disable:elink.
  1113. :pd.Disable the selected breakpoint.
  1114. :pt.:link reftype=hd res=&HPM_BRK_DELETE..Delete:elink.
  1115. :pd.Delete the selected breakpoint.
  1116. :eparml.
  1117.  
  1118. .************************************************************************
  1119. .* Modify
  1120. .************************************************************************
  1121. :h3 res=&HPM_BRK_MODIFY..Help for Modify
  1122. :i2 refid='brk.edit'.Modify
  1123. :i2 refid='pmgdb'.Modify breakpoint
  1124. :lm margin=1.
  1125. :p.
  1126. Use this choice to modify the selected breakpoint.  Click with the
  1127. first mouse button select a breakpoint.
  1128.  
  1129. .************************************************************************
  1130. .* Enable
  1131. .************************************************************************
  1132. :h3 res=&HPM_BRK_ENABLE..Help for Enable
  1133. :i2 refid='brk.edit'.Enable
  1134. :i2 refid='pmgdb'.Enable
  1135. :lm margin=1.
  1136. :p.
  1137. Use this choice to enable the selected breakpoint.  Click with the
  1138. first mouse button select a breakpoint.
  1139.  
  1140. .************************************************************************
  1141. .* Disable
  1142. .************************************************************************
  1143. :h3 res=&HPM_BRK_DISABLE..Help for Disable
  1144. :i2 refid='brk.edit'.Disable
  1145. :i2 refid='pmgdb'.Disable breakpoint
  1146. :lm margin=1.
  1147. :p.
  1148. Use this choice to disable the selected breakpoint.  Click with the
  1149. first mouse button select a breakpoint.
  1150.  
  1151. .************************************************************************
  1152. .* Delete
  1153. .************************************************************************
  1154. :h3 res=&HPM_BRK_DELETE..Help for Delete
  1155. :i2 refid='brk.edit'.Delete
  1156. :i2 refid='pmgdb'.Delete breakpoint
  1157. :lm margin=1.
  1158. :p.
  1159. Use this choice to delete the selected breakpoint.  Click with the
  1160. first mouse button select a breakpoint.
  1161.  
  1162. .************************************************************************
  1163. .* Breakpoints
  1164. .************************************************************************
  1165. :h2 res=&HPM_BRK_BRKPTMENU..Help for Breakpoints
  1166. :i2 refid='brk'.Breakpoints menu
  1167. :i1 id='brk.brkpt'.Breakpoints menu choices (breakpoints window)
  1168. :lm margin=1.
  1169. :p.
  1170. The Breakpoints menu contains the following choices&colon.
  1171. :parml compact.
  1172. :pt.:link reftype=hd res=&HPM_BRKPT_LINE..On line:elink.
  1173. :pd.Set a breakpoint on a line.
  1174. :pt.:link reftype=hd res=&HPM_BRK_REFRESH..Refresh:elink.
  1175. :pd.Refresh the window contents.
  1176. :eparml.
  1177.  
  1178. .************************************************************************
  1179. .* Refresh
  1180. .************************************************************************
  1181. :h3 res=&HPM_BRK_REFRESH..Help for Refresh
  1182. :i2 refid='brk.brkpt'.Refresh
  1183. :i2 refid='pmgdb'.Refresh (breakpoints window)
  1184. :lm margin=1.
  1185. :p.
  1186. Use this choice to refresh the contents of the breakpoints window.
  1187. Due to shortcomings in GDB, :hp2.pmgdb:ehp2. does not always automatically
  1188. update the breakpoints window to reflect changes of the breakpoints.
  1189. For instance, the ignore count is not updated when the debuggee stops.
  1190.  
  1191. .************************************************************************
  1192. .* Windows
  1193. .************************************************************************
  1194. :h2 res=&HPM_BRK_WINMENU..Help for Windows
  1195. :i2 refid='brk'.Windows menu
  1196. :i1 id='brk.win'.Windows menu choices (breakpoints window)
  1197. :lm margin=1.
  1198. :p.
  1199. The Windows menu contains the following choices&colon.
  1200. :parml compact.
  1201. :pt.:link reftype=hd res=&HPM_WIN_CMD..Command:elink.
  1202. :pd.Show the command window.
  1203. :pt.:link reftype=hd res=&HPM_WIN_SRCS..Source files:elink.
  1204. :pd.Show the source files window.
  1205. :pt.:link reftype=hd res=&HPM_WIN_DSP..Display:elink.
  1206. :pd.Show the display window.
  1207. :pt.:link reftype=hd res=&HPM_WIN_THR..Threads:elink.
  1208. :pd.Show the threads window.
  1209. :pt.:link reftype=hd res=&HPM_WIN_REG..Register:elink.
  1210. :pd.Show the register window.
  1211. :eparml.
  1212.  
  1213. .************************************************************************
  1214. .* Help
  1215. .************************************************************************
  1216. :h2 res=&HPM_BRK_HELPMENU..Help for Help
  1217. :i2 refid='brk'.Help menu
  1218. :i1 id='brk.help'.Help menu choices
  1219. :lm margin=1.
  1220. :p.
  1221. The Help menu contains the following choices&colon.
  1222. :parml compact.
  1223. :pt.:link reftype=hd res=&HPM_HELP_HELP..Help for help:elink.
  1224. :pd.Display help for help.
  1225. :pt.:link reftype=hd res=&HPM_HELP_EXT..Extended help:elink.
  1226. :pd.Display extended help.
  1227. :pt.:link reftype=hd res=&HPM_HELP_KEYS..Keys help:elink.
  1228. :pd.Display help about keys.
  1229. :pt.:link reftype=hd res=&HPM_HELP_INDEX..Help index:elink.
  1230. :pd.Display the help index.
  1231. :pt.:link reftype=hd res=&HPM_HELP_CONTENTS..Help index:elink.
  1232. :pd.Display the help contents.
  1233. :eparml.
  1234.  
  1235. .************************************************************************
  1236. .* Keys help (breakpoints window)
  1237. .************************************************************************
  1238. :h1 res=&HELP_BRK_KEYS..Keys help (breakpoints window)
  1239. :i1 id='brk.keys'.Keys (breakpoints window)
  1240. :lm margin=1.
  1241. :p.
  1242. You can use the following keys in the breakpoints window&colon.
  1243. :dl tsize=20 compact.
  1244. :edl.
  1245. :p.
  1246. Accelerator keys are missed out in the list above.
  1247.  
  1248. .************************************************************************
  1249. .* Display window
  1250. .************************************************************************
  1251. :h1 res=&HELP_DSP_WINDOW..Help for display window
  1252. :i1 id='dsp'.pmgdb display window
  1253. :lm margin=1.
  1254. :p.
  1255. The display window of :hp2.pmgdb:ehp2. shows all the displays.
  1256. For each display, the following values are displayed&colon.
  1257. :dl tsize=12 compact.
  1258. :dt.No:dd.The number of the display as maintained by GDB.  Modifying
  1259. a display may change its number
  1260. :dt.Ena:dd.y if the display is enabled, n if the display is disabled
  1261. :dt.Fmt:dd.Format to be used for displaying the value
  1262. :dt.Expr:dd.Expression to be evaluated
  1263. :dt.Value:dd.Value of the expression (if the display is enabled)
  1264. :edl.
  1265. :p.
  1266. You can toggle the enabled state of a display by double clicking
  1267. with the first mouse button on the value in the `Ena' column.  You can
  1268. modify a display by double clicking on the value
  1269. in the `Fmt' or `Expr' column.
  1270. Closing the display window doesn't terminate :hp2.pmgdb:ehp2..
  1271. :p.
  1272. Help is available on the following topics&colon.
  1273. :p.
  1274. :ul.
  1275. :li.:link reftype=hd res=&HPM_DSP_FILEMENU..File menu:elink.
  1276. :li.:link reftype=hd res=&HPM_DSP_EDITMENU..Edit menu:elink.
  1277. :li.:link reftype=hd res=&HPM_DSP_WINMENU..Windows menu:elink.
  1278. :li.:link reftype=hd res=&HPM_DSP_HELPMENU..Help menu:elink.
  1279. :li.:link reftype=hd res=&HELP_DSP_KEYS..Keys in the display window:elink.
  1280. :eul.
  1281.  
  1282. .************************************************************************
  1283. .* File
  1284. .************************************************************************
  1285. :h2 res=&HPM_DSP_FILEMENU..Help for File
  1286. :i2 refid='dsp'.File menu
  1287. :i1 id='dsp.file'.File menu choices (display window)
  1288. :lm margin=1.
  1289. :p.
  1290. The File menu contains the following choices&colon.
  1291. :parml compact.
  1292. :pt.:link reftype=hd res=&HPM_EXIT..Exit:elink.
  1293. :pd.Terminate :hp2.pmgdb:ehp2..
  1294. :eparml.
  1295.  
  1296. .************************************************************************
  1297. .* Edit
  1298. .************************************************************************
  1299. :h2 res=&HPM_DSP_EDITMENU..Help for Edit
  1300. :i2 refid='dsp'.Edit menu
  1301. :i1 id='dsp.edit'.Edit menu choices (display window)
  1302. :lm margin=1.
  1303. :p.
  1304. The Edit menu contains the following choices&colon.
  1305. :parml compact.
  1306. :pt.:link reftype=hd res=&HPM_DSP_ADD..Add:elink.
  1307. :pd.Add a display.
  1308. :pt.:link reftype=hd res=&HPM_DSP_MODIFY..Modify:elink.
  1309. :pd.Modify the selected display.
  1310. :pt.:link reftype=hd res=&HPM_DSP_ENABLE..Enable:elink.
  1311. :pd.Enable the selected display.
  1312. :pt.:link reftype=hd res=&HPM_DSP_DISABLE..Disable:elink.
  1313. :pd.Disable the selected display.
  1314. :pt.:link reftype=hd res=&HPM_DSP_FORMAT..Format:elink.
  1315. :pd.Change format for selected display.
  1316. :pt.:link reftype=hd res=&HPM_DSP_DELETE..Delete:elink.
  1317. :pd.Delete the selected display.
  1318. :pt.:link reftype=hd res=&HPM_DSP_DEREFERENCE..Dereference:elink.
  1319. :pd.Display the value pointed to by a pointer.
  1320. :pt.:link reftype=hd res=&HPM_DSP_ENABLE_ALL..Enable all:elink.
  1321. :pd.Enable all displays.
  1322. :pt.:link reftype=hd res=&HPM_DSP_DISABLE_ALL..Disable all:elink.
  1323. :pd.Disable all displays.
  1324. :pt.:link reftype=hd res=&HPM_DSP_DELETE_ALL..Delete all:elink.
  1325. :pd.Delete all displays.
  1326. :eparml.
  1327.  
  1328. .************************************************************************
  1329. .* Add
  1330. .************************************************************************
  1331. :h3 res=&HPM_DSP_ADD..Help for Add
  1332. :i2 refid='dsp.dsp'.Add
  1333. :i2 refid='pmgdb'.Add display
  1334. :lm margin=1.
  1335. :p.
  1336. Use this choice to add a display.  This choice opens the
  1337. :link reftype=hd res=&HPD_DISPLAY..Display:elink. dialog box.
  1338. You can also double click with the first mouse button on a variable
  1339. in a source window to add it to the display window.
  1340.  
  1341. .************************************************************************
  1342. .* Modify
  1343. .************************************************************************
  1344. :h3 res=&HPM_DSP_MODIFY..Help for Modify
  1345. :i2 refid='dsp.edit'.Modify
  1346. :i2 refid='pmgdb'.Modify display
  1347. :lm margin=1.
  1348. :p.
  1349. Use this choice to modify the selected display.  This choice opens the
  1350. :link reftype=hd res=&HPD_DISPLAY..Display:elink. dialog box.  Click with the
  1351. first mouse button select a display.
  1352.  
  1353. .************************************************************************
  1354. .* Enable
  1355. .************************************************************************
  1356. :h3 res=&HPM_DSP_ENABLE..Help for Enable
  1357. :i2 refid='dsp.edit'.Enable
  1358. :i2 refid='pmgdb'.Enable display
  1359. :lm margin=1.
  1360. :p.
  1361. Use this choice to enable the selected display.  Click with the
  1362. first mouse button select a display.
  1363.  
  1364. .************************************************************************
  1365. .* Disable
  1366. .************************************************************************
  1367. :h3 res=&HPM_DSP_DISABLE..Help for Disable
  1368. :i2 refid='dsp.edit'.Disable
  1369. :i2 refid='pmgdb'.Disable display
  1370. :lm margin=1.
  1371. :p.
  1372. Use this choice to disable the selected display.  Click with the
  1373. first mouse button select a display.
  1374.  
  1375. .************************************************************************
  1376. .* Format
  1377. .************************************************************************
  1378. :h3 res=&HPM_DSP_FORMAT..Help for Format
  1379. :i2 refid='dsp.edit'.Format
  1380. :i2 refid='pmgdb'.Format
  1381. :lm margin=1.
  1382. :p.
  1383. Use this choice to change the format of the selected display.  Click with the
  1384. first mouse button select a display.
  1385.  
  1386. .************************************************************************
  1387. .* Delete
  1388. .************************************************************************
  1389. :h3 res=&HPM_DSP_DELETE..Help for Delete
  1390. :i2 refid='dsp.edit'.Delete
  1391. :i2 refid='pmgdb'.Delete display
  1392. :lm margin=1.
  1393. :p.
  1394. Use this choice to delete the selected display.  Click with the
  1395. first mouse button select a display.
  1396.  
  1397. .************************************************************************
  1398. .* Dereference
  1399. .************************************************************************
  1400. :h3 res=&HPM_DSP_DEREFERENCE..Help for Dereference
  1401. :i2 refid='dsp.edit'.Dereference
  1402. :i2 refid='pmgdb'.Dereference
  1403. :lm margin=1.
  1404. :p.
  1405. Use this choice to replace the selected display with one which shows
  1406. the object pointed to by the display's value.  This can be done only
  1407. if the selected display shows a pointer.  Click with the first mouse
  1408. button select a display.
  1409. :note.The value is dereferenced in the current context, not in the
  1410. context which was active when the display was created.
  1411.  
  1412. .************************************************************************
  1413. .* Enable all
  1414. .************************************************************************
  1415. :h3 res=&HPM_DSP_ENABLE_ALL..Help for Enable all
  1416. :i2 refid='dsp.edit'.Enable all
  1417. :i2 refid='pmgdb'.Enable all
  1418. :lm margin=1.
  1419. :p.
  1420. Use this choice to enable all displays.
  1421.  
  1422. .************************************************************************
  1423. .* Disable all
  1424. .************************************************************************
  1425. :h3 res=&HPM_DSP_DISABLE_ALL..Help for Disable all
  1426. :i2 refid='dsp.edit'.Disable all
  1427. :i2 refid='pmgdb'.Disable all
  1428. :lm margin=1.
  1429. :p.
  1430. Use this choice to disable all displays.
  1431.  
  1432. .************************************************************************
  1433. .* Delete all
  1434. .************************************************************************
  1435. :h3 res=&HPM_DSP_DELETE_ALL..Help for Delete all
  1436. :i2 refid='dsp.edit'.Delete all
  1437. :i2 refid='pmgdb'.Delete all
  1438. :lm margin=1.
  1439. :p.
  1440. Use this choice to delete all displays.
  1441.  
  1442. .************************************************************************
  1443. .* Windows
  1444. .************************************************************************
  1445. :h2 res=&HPM_DSP_WINMENU..Help for Windows
  1446. :i2 refid='dsp'.Windows menu
  1447. :i1 id='dsp.win'.Windows menu choices (display window)
  1448. :lm margin=1.
  1449. :p.
  1450. The Windows menu contains the following choices&colon.
  1451. :parml compact.
  1452. :pt.:link reftype=hd res=&HPM_WIN_CMD..Command:elink.
  1453. :pd.Show the command window.
  1454. :pt.:link reftype=hd res=&HPM_WIN_SRCS..Source files:elink.
  1455. :pd.Show the source files window.
  1456. :pt.:link reftype=hd res=&HPM_WIN_BRK..Breakpoints:elink.
  1457. :pd.Show the breakpoints window.
  1458. :pt.:link reftype=hd res=&HPM_WIN_THR..Threads:elink.
  1459. :pd.Show the threads window.
  1460. :pt.:link reftype=hd res=&HPM_WIN_REG..Register:elink.
  1461. :pd.Show the register window.
  1462. :eparml.
  1463.  
  1464. .************************************************************************
  1465. .* Help
  1466. .************************************************************************
  1467. :h2 res=&HPM_DSP_HELPMENU..Help for Help
  1468. :i2 refid='dsp'.Help menu
  1469. :i1 id='dsp.help'.Help menu choices
  1470. :lm margin=1.
  1471. :p.
  1472. The Help menu contains the following choices&colon.
  1473. :parml compact.
  1474. :pt.:link reftype=hd res=&HPM_HELP_HELP..Help for help:elink.
  1475. :pd.Display help for help.
  1476. :pt.:link reftype=hd res=&HPM_HELP_EXT..Extended help:elink.
  1477. :pd.Display extended help.
  1478. :pt.:link reftype=hd res=&HPM_HELP_KEYS..Keys help:elink.
  1479. :pd.Display help about keys.
  1480. :pt.:link reftype=hd res=&HPM_HELP_INDEX..Help index:elink.
  1481. :pd.Display the help index.
  1482. :pt.:link reftype=hd res=&HPM_HELP_CONTENTS..Help index:elink.
  1483. :pd.Display the help contents.
  1484. :eparml.
  1485.  
  1486. .************************************************************************
  1487. .* Keys help (display window)
  1488. .************************************************************************
  1489. :h1 res=&HELP_DSP_KEYS..Keys help (display window)
  1490. :i1 id='dsp.keys'.Keys (display window)
  1491. :lm margin=1.
  1492. :p.
  1493. You can use the following keys in the display window&colon.
  1494. :dl tsize=20 compact.
  1495. :edl.
  1496. :p.
  1497. Accelerator keys are missed out in the list above.
  1498.  
  1499. .************************************************************************
  1500. .* Threads window
  1501. .************************************************************************
  1502. :h1 res=&HELP_THR_WINDOW..Help for threads window
  1503. :i1 id='thr'.pmgdb threads window
  1504. :lm margin=1.
  1505. :p.
  1506. The threads window of :hp2.pmgdb:ehp2. shows all threads.
  1507. For each thread, the following values are displayed&colon.
  1508. :dl tsize=12 compact.
  1509. :dt.TID:dd.The thread ID
  1510. :dt.Ena:dd.y if the thread is enabled, n if the thread is disabled
  1511. :edl.
  1512. :p.
  1513. You can toggle the enabled state of a thread by double clicking
  1514. with the first mouse button on the value in the `Ena' column.
  1515. Closing the threads window doesn't terminate :hp2.pmgdb:ehp2..
  1516. :p.
  1517. Help is available on the following topics&colon.
  1518. :p.
  1519. :ul.
  1520. :li.:link reftype=hd res=&HPM_THR_FILEMENU..File menu:elink.
  1521. :li.:link reftype=hd res=&HPM_THR_EDITMENU..Edit menu:elink.
  1522. :li.:link reftype=hd res=&HPM_THR_WINMENU..Windows menu:elink.
  1523. :li.:link reftype=hd res=&HELP_THR_KEYS..Keys in the threads window:elink.
  1524. :eul.
  1525.  
  1526. .************************************************************************
  1527. .* File
  1528. .************************************************************************
  1529. :h2 res=&HPM_THR_FILEMENU..Help for File
  1530. :i2 refid='thr'.File menu
  1531. :i1 id='thr.file'.File menu choices (threads window)
  1532. :lm margin=1.
  1533. :p.
  1534. The File menu contains the following choices&colon.
  1535. :parml compact.
  1536. :pt.:link reftype=hd res=&HPM_EXIT..Exit:elink.
  1537. :pd.Terminate :hp2.pmgdb:ehp2..
  1538. :eparml.
  1539.  
  1540. .************************************************************************
  1541. .* Edit
  1542. .************************************************************************
  1543. :h2 res=&HPM_THR_EDITMENU..Help for Edit
  1544. :i2 refid='thr'.Edit menu
  1545. :i1 id='thr.edit'.Edit menu choices (threads window)
  1546. :lm margin=1.
  1547. :p.
  1548. The Edit menu contains the following choices&colon.
  1549. :parml compact.
  1550. :pt.:link reftype=hd res=&HPM_THR_ENABLE..Enable (thaw):elink.
  1551. :pd.Enable (thaw) the selected thread.
  1552. :pt.:link reftype=hd res=&HPM_THR_DISABLE..Disable (freeze):elink.
  1553. :pd.Disable (freeze) the selected thread.
  1554. :pt.:link reftype=hd res=&HPM_THR_SWITCH..Switch to:elink.
  1555. :pd.Switch to the selected thread.
  1556. :eparml.
  1557.  
  1558. .************************************************************************
  1559. .* Enable
  1560. .************************************************************************
  1561. :h3 res=&HPM_THR_ENABLE..Help for Enable
  1562. :i2 refid='thr.edit'.Enable
  1563. :i2 refid='pmgdb'.Enable thread
  1564. :lm margin=1.
  1565. :p.
  1566. Use this choice to enable the selected thread.  Click with the
  1567. first mouse button select a thread.
  1568.  
  1569. .************************************************************************
  1570. .* Disable
  1571. .************************************************************************
  1572. :h3 res=&HPM_THR_DISABLE..Help for Disable
  1573. :i2 refid='thr.edit'.Disable
  1574. :i2 refid='pmgdb'.Disable thread
  1575. :lm margin=1.
  1576. :p.
  1577. Use this choice to disable the selected thread.  Click with the
  1578. first mouse button select a thread.
  1579.  
  1580. .************************************************************************
  1581. .* Switch to
  1582. .************************************************************************
  1583. :h3 res=&HPM_THR_SWITCH..Help for Switch to
  1584. :i2 refid='thr.edit'.Switch to
  1585. :i2 refid='pmgdb'.Switch to thread
  1586. :lm margin=1.
  1587. :p.
  1588. Use this choice to switch to the selected thread.  Click with the
  1589. first mouse button select a thread.  You can also switch to a thread
  1590. by double clicking on the thread ID (TID).
  1591.  
  1592. .************************************************************************
  1593. .* Windows
  1594. .************************************************************************
  1595. :h2 res=&HPM_THR_WINMENU..Help for Windows
  1596. :i2 refid='thr'.Windows menu
  1597. :i1 id='thr.win'.Windows menu choices (threads window)
  1598. :lm margin=1.
  1599. :p.
  1600. The Windows menu contains the following choices&colon.
  1601. :parml compact.
  1602. :pt.:link reftype=hd res=&HPM_WIN_CMD..Command:elink.
  1603. :pd.Show the command window.
  1604. :pt.:link reftype=hd res=&HPM_WIN_SRCS..Source files:elink.
  1605. :pd.Show the source files window.
  1606. :pt.:link reftype=hd res=&HPM_WIN_BRK..Breakpoints:elink.
  1607. :pd.Show the breakpoints window.
  1608. :pt.:link reftype=hd res=&HPM_WIN_DSP..Display:elink.
  1609. :pd.Show the display window.
  1610. :pt.:link reftype=hd res=&HPM_WIN_REG..Register:elink.
  1611. :pd.Show the register window.
  1612. :eparml.
  1613.  
  1614. .************************************************************************
  1615. .* Keys help (threads window)
  1616. .************************************************************************
  1617. :h1 res=&HELP_THR_KEYS..Keys help (threads window)
  1618. :i1 id='thr.keys'.Keys (threads window)
  1619. :lm margin=1.
  1620. :p.
  1621. You can use the following keys in the threads window&colon.
  1622. :dl tsize=20 compact.
  1623. :edl.
  1624. :p.
  1625. Accelerator keys are missed out in the list above.
  1626.  
  1627. .************************************************************************
  1628. .* Register window
  1629. .************************************************************************
  1630. :h1 res=&HELP_REG_WINDOW..Help for register window
  1631. :i1 id='reg'.pmgdb register window
  1632. :lm margin=1.
  1633. :p.
  1634. The register window of :hp2.pmgdb:ehp2. shows the values of the
  1635. CPU registers. Closing the register window doesn't terminate
  1636. :hp2.pmgdb:ehp2..
  1637. :p.
  1638. Help is available on the following topics&colon.
  1639. :p.
  1640. :ul.
  1641. :li.:link reftype=hd res=&HPM_REG_FILEMENU..File menu:elink.
  1642. :li.:link reftype=hd res=&HPM_REG_VIEWMENU..View menu:elink.
  1643. :li.:link reftype=hd res=&HPM_REG_WINMENU..Windows menu:elink.
  1644. :li.:link reftype=hd res=&HELP_REG_KEYS..Keys in the register window:elink.
  1645. :eul.
  1646.  
  1647. .************************************************************************
  1648. .* File
  1649. .************************************************************************
  1650. :h2 res=&HPM_REG_FILEMENU..Help for File
  1651. :i2 refid='reg'.File menu
  1652. :i1 id='reg.file'.File menu choices (register window)
  1653. :lm margin=1.
  1654. :p.
  1655. The File menu contains the following choices&colon.
  1656. :parml compact.
  1657. :pt.:link reftype=hd res=&HPM_EXIT..Exit:elink.
  1658. :pd.Terminate :hp2.pmgdb:ehp2..
  1659. :eparml.
  1660.  
  1661. .************************************************************************
  1662. .* View
  1663. .************************************************************************
  1664. :h2 res=&HPM_REG_VIEWMENU..Help for View
  1665. :i2 refid='reg'.View menu
  1666. :i1 id='reg.view'.View menu choices (register window)
  1667. :lm margin=1.
  1668. :p.
  1669. The View menu contains the following choices&colon.
  1670. :parml compact.
  1671. :pt.:link reftype=hd res=&HPM_REG_REFRESH..Refresh:elink.
  1672. :pd.Refresh the window contents.
  1673. :eparml.
  1674.  
  1675. .************************************************************************
  1676. .* Refresh
  1677. .************************************************************************
  1678. :h3 res=&HPM_REG_REFRESH..Help for Refresh
  1679. :i2 refid='reg.view'.Refresh
  1680. :i2 refid='pmgdb'.Refresh (register window)
  1681. :lm margin=1.
  1682. :p.
  1683. Use this choice to refresh the contents of the register window.
  1684. :hp2.pmgdb:ehp2. does not automatically update the register window
  1685. to reflect modifications of the register values done with GDB commands.
  1686.  
  1687. .************************************************************************
  1688. .* Windows
  1689. .************************************************************************
  1690. :h2 res=&HPM_REG_WINMENU..Help for Windows
  1691. :i2 refid='reg'.Windows menu
  1692. :i1 id='reg.win'.Windows menu choices (register window)
  1693. :lm margin=1.
  1694. :p.
  1695. The Windows menu contains the following choices&colon.
  1696. :parml compact.
  1697. :pt.:link reftype=hd res=&HPM_WIN_CMD..Command:elink.
  1698. :pd.Show the command window.
  1699. :pt.:link reftype=hd res=&HPM_WIN_SRCS..Source files:elink.
  1700. :pd.Show the source files window.
  1701. :pt.:link reftype=hd res=&HPM_WIN_BRK..Breakpoints:elink.
  1702. :pd.Show the breakpoints window.
  1703. :pt.:link reftype=hd res=&HPM_WIN_DSP..Display:elink.
  1704. :pd.Show the display window.
  1705. :pt.:link reftype=hd res=&HPM_WIN_THR..Threads:elink.
  1706. :pd.Show the threads window.
  1707. :eparml.
  1708.  
  1709. .************************************************************************
  1710. .* Keys help (register window)
  1711. .************************************************************************
  1712. :h1 res=&HELP_REG_KEYS..Keys help (register window)
  1713. :i1 id='reg.keys'.Keys (register window)
  1714. :lm margin=1.
  1715. :p.
  1716. You can use the following keys in the register window&colon.
  1717. :dl tsize=20 compact.
  1718. :edl.
  1719. :p.
  1720. Accelerator keys are missed out in the list above.
  1721.  
  1722. .************************************************************************
  1723. .* PM debugging mode
  1724. .************************************************************************
  1725. :h1 res=&HPD_PMDEBUGMODE..Help for PM debugging mode dialog box
  1726. :i2 refid='pmgdb'.PM debugging mode dialog box
  1727. :lm margin=1.
  1728. :p.
  1729. Select the :hp8.Synchronous mode:ehp8. checkbox to enable
  1730. Synchronous mode.  Synchronous mode is required for debugging PM
  1731. applications and must be selected before starting a PM application,
  1732. otherwise the Presentation Manager will hang, requiring a reboot to
  1733. recover.  In Synchronous mode, only windows of :hp2.pmgdb:ehp2. and
  1734. of the program being debugged can be made active; all other windows
  1735. cannot be used.  :hp2.pmgdb:ehp2. attempts to set Synchronous mode
  1736. automatically when a PM program is loaded.
  1737.  
  1738. .************************************************************************
  1739. .* Line breakpoint
  1740. .************************************************************************
  1741. :h1 res=&HPD_BRKPT_LINE..Help for Line Breakpoint dialog box
  1742. :i2 refid='pmgdb'.Line Breakpoint dialog box
  1743. :lm margin=1.
  1744. :p.
  1745. This dialog box is used for adding or modifying a line breakpoint.
  1746. A line breakpoint is a breakpoint in a source line of the program.
  1747. :p.
  1748. Enter the name of the source file and the line number in that source file
  1749. in the :hp8.Source file:ehp8. and :hp8.Line:ehp8. fields, respectively.
  1750. :p.
  1751. A non-zero :hp8.Ignore count:ehp8. causes the breakpoint to not stop
  1752. the program until it has been reached this many times.  If this
  1753. field is empty or contains zero, the program is stopped the first time
  1754. it reaches the breakpoint.  Each time a breakpoint is reached, the ignore
  1755. count is decremented by one (unless it's already zero); if the ignore
  1756. count becomes zero (or was zero before), the breakpoint stops the program.
  1757. :p.
  1758. You can enter an expression in the :hp8.Condition:ehp8. field; that
  1759. expression will be evaluated each time the breakpoint is hit (unless
  1760. its ignore count is still non-zero); if it evaluates to false, the
  1761. breakpoint is ignored.  That is, the breakpoint stops the program only
  1762. if the expression evaluates to true at the time the breakpoint is hit.
  1763. See the :hp2.GDB:ehp2. manual for details on expressions.
  1764. :p.
  1765. Breakpoints can be disabled by unchecking the :hp8.Enable:ehp8.
  1766. checkbox.  Disabled breakpoints are ignored.  Instead of deleting
  1767. breakpoints which you may need again later, you should disable them.
  1768. :p.
  1769. In the :hp8.Disposition:ehp8. field, you can select what to do with a
  1770. breakpoint when it stops the program&colon.
  1771. :dl tsize=20 compact.
  1772. :dt.&tt.del&ett.:dd.delete the breakpoint
  1773. :dt.&tt.dis&ett.:dd.disable the breakpoint
  1774. :dt.&tt.keep&ett.:dd.keep the breakpoint (default)
  1775. :edl.
  1776. :p.
  1777. This can be used to define temporary breakpoints.
  1778.  
  1779. .************************************************************************
  1780. .* Startup
  1781. .************************************************************************
  1782. :h1 res=&HPD_STARTUP..Help for Startup dialog box
  1783. :i2 refid='pmgdb'.Startup dialog box
  1784. :lm margin=1.
  1785. :p.
  1786. This dialog box is used for setting startup options.
  1787. You can enter command line arguments for the debuggee
  1788. in the :hp8.Arguments:ehp8. field.
  1789. :p.
  1790. By default, the VIO window of the debuggee stays open after termination
  1791. of the debuggee, so that you can view the debuggee's output.  You
  1792. have to close that window manually.  If :hp8.Close window after exit:ehp8.
  1793. is checked, the VIO window will be closed automatically on termination
  1794. of the debuggee.
  1795. :p.
  1796. Use the :hp8.OK:ehp8. button to accept the settings, use the
  1797. :hp8.Run:ehp8. button to accept the settings and start the program.
  1798. If no breakpoints are set (or all breakpoints are disabled), a
  1799. breakpoint will be set on &tt.main&ett. if the :hp8.Run:ehp8. button
  1800. is selected.
  1801.  
  1802. .************************************************************************
  1803. .* Display
  1804. .************************************************************************
  1805. :h1 res=&HPD_DISPLAY..Help for Display dialog box
  1806. :i2 refid='pmgdb'.Display dialog box
  1807. :lm margin=1.
  1808. :p.
  1809. This dialog box is used to add or modify a display.
  1810. :p.
  1811. Enter the expression to be displayed in the :hp8.Expression:ehp8.
  1812. field.  See the :hp2.GDB:ehp2. manual for details on expressions.
  1813. :p.
  1814. Select a display format in the :hp8.Format:ehp8. field.
  1815. :p.
  1816. For some formats, the number of items to be displayed can be entered
  1817. in the :hp8.Count:ehp8. field.
  1818. :p.
  1819. Displays can be disabled by unchecking the :hp8.Enable:ehp8.
  1820. checkbox.  The values of disabled displays are not displayed.
  1821. Instead of deleting displays which you may need again later, you should
  1822. disable them.
  1823.  
  1824. .************************************************************************
  1825. .* Go to line
  1826. .************************************************************************
  1827. :h1 res=&HPD_GOTO..Help for Go to line dialog box
  1828. :i2 refid='pmgdb'.Go to line dialog box
  1829. :lm margin=1.
  1830. :p.
  1831. Enter a line number in the :hp8.Line:ehp8. field.
  1832.  
  1833. .************************************************************************
  1834. .* Find
  1835. .************************************************************************
  1836. :h1 res=&HPD_FIND..Help for Find dialog box
  1837. :i2 refid='pmgdb'.Find dialog box
  1838. :lm margin=1.
  1839. :p.
  1840. Enter the regular expression to be searched for in the :hp8.Regexp:ehp8.
  1841. field.
  1842.  
  1843. .************************************************************************
  1844. .* History
  1845. .************************************************************************
  1846. :h1 res=&HPD_HISTORY..Help for History dialog box
  1847. :i2 refid='pmgdb'.History dialog box
  1848. :lm margin=1.
  1849. :p.
  1850. In this dialog box, you can select and/or edit one of the commands
  1851. previously entered.
  1852.  
  1853. .************************************************************************
  1854. .* Tutorial
  1855. .************************************************************************
  1856. :h1 res=&HELP_TUTORIAL..pmgdb tutorial
  1857. :i2 refid='pmgdb'.Tutorial
  1858. :i1 id='tut'.Tutorial
  1859. :lm margin=1.
  1860. :p.
  1861. :ol.
  1862. :li.If not already done, compile the &tt.sieve&ett. sample program
  1863. for debugging&colon.
  1864. :cgraphic.
  1865. cd \emx\samples
  1866. gcc -g sieve.c:ecgraphic.
  1867. :li.Start :hp2.pmgdb:ehp2. in the directory containing the source code
  1868. of the program to debug (debuggee).  Specify the program and its command
  1869. line arguments on the command line of :hp2.pmgdb:ehp2.&colon.
  1870. :cgraphic.
  1871. cd \emx\samples
  1872. pmgdb sieve 100
  1873. :ecgraphic.
  1874. :p.
  1875. That is, just prepend &tt.pmgdb&ett. to the command line.
  1876. :li.:hp2.pmgdb:ehp2. will come up with two windows&colon.
  1877. the :link reftype=hd res=&HELP_CMD_WINDOW..command window:elink.,
  1878. titled `&tt.pmgdb - sieve&ett.', and the 
  1879. :link reftype=hd res=&HELP_SRCS_WINDOW..Source files window:elink..
  1880. The command window shows :hp2.GDB:ehp2.'s welcome message and the
  1881. :hp2.GDB:ehp2. prompt.  The Source Files window lists all the source
  1882. files of the debuggee.  For this sample session, that's just
  1883. &tt.sieve.c&ett..  The source file which contains the &tt.main&ett.
  1884. function is highlighted (grey background).  You can view a source
  1885. file by double clicking on a file name in the Source files window
  1886. (click on the file name, not on the blank space after the file name).
  1887. However we don't need to do this now.
  1888. :li.Run the program by selecting :link reftype=hd res=&HPM_GO..Go:elink.
  1889. from the :link reftype=hd res=&HPM_CMD_RUNMENU..Run menu:elink..
  1890. Note that the command window shows that a breakpoint has been hit&colon.
  1891. :cgraphic.
  1892. Breakpoint 1, main (argc=2, argv=0x282ffcc) at sieve.c&colon.76
  1893. :ecgraphic.
  1894. :p.
  1895. That breakpoint has been set automatically by :hp2.pmgdb:ehp2..
  1896. Moreover, a
  1897. :link reftype=hd res=&HELP_SRC_WINDOW..Source window:elink.
  1898. has popped up.  The first executable line of the &tt.main&ett. function
  1899. has black background.  The line where the debuggee has been stopped
  1900. is marked this way.  Moreover, the line number has a red background; this
  1901. means that a breakpoint is set on that line.
  1902. :li.Now let's set a breakpoint on the &tt.isqrt&ett. function.
  1903. Either type
  1904. :cgraphic.
  1905. b isqrt
  1906. :ecgraphic.
  1907. :p.
  1908. in the command window or double click on the line number of line 45
  1909. (the first executable line of the function).
  1910. Let the program continue execution.  (Remember?  Go...)
  1911. :li.While stepping through &tt.isqrt&ett. we want to watch the
  1912. values of the variables &tt.l&ett., &tt.r&ett., and &tt.x&ett.
  1913. in :hp2.pmgdb:ehp2.'s
  1914. :link reftype=hd res=&HELP_DSP_WINDOW..Display window:elink..
  1915. This is done by double clicking on any instance of &tt.l&ett.,
  1916. &tt.r&ett., and &tt.x&ett. in the source code (:hp2.GDB:ehp2. uses
  1917. dynamic scoping, that is, it uses those variables which are visible at
  1918. the time the display is defined.  Other debuggers use static scoping,
  1919. that is, they use the source code context in which the display
  1920. is defined.)  The Display window should become visible automatically.
  1921. Move and/or resize the windows so that you can see both the Display
  1922. window and the source window.  The two most important columns of
  1923. the Display window are :hp8.Expr:ehp8. (the expression being displayed,
  1924. for instance, a variable) and :hp8.Value:ehp8. (the value of the
  1925. expression).  Note that the Display window
  1926. shows garbage for the &tt.l&ett. and &tt.r&ett. variables.  This
  1927. is because these variables have not yet been initialized, so they
  1928. indeed contain garbage.
  1929. :li.Now let's execute some lines of C code (single step).
  1930. There are two operations for stepping lines of source code&colon.
  1931. :link reftype=hd res=&HPM_STEPOVER..Step over:elink.
  1932. and :link reftype=hd res=&HPM_STEPINTO..Step into:elink.,
  1933. both available in the
  1934. :link reftype=hd res=&HPM_CMD_RUNMENU..Run menu:elink..
  1935. The first one does not step into function calls, treating function
  1936. calls as one statement.  The second one does step into function calls.
  1937. As &tt.isqrt&ett. does not call any functions, there's no difference
  1938. between the two here.  Step over five lines of source code by hitting
  1939. the &tt.o&ett. key or &tt.i&ett. key five times while the source window
  1940. has the focus.  Note how the values of &tt.l&ett. and &tt.r&ett. become valid.
  1941. :li.In addition to the three variables, we want to watch the value
  1942. of the expression `&tt.m*m&ett.'.  Select
  1943. :link reftype=hd res=&HPM_DSP_ADD..Add:elink. from the
  1944. :link reftype=hd res=&HPM_SRC_DSPMENU..Display menu:elink.
  1945. and type `&tt.m*m&ett.' in the :hp8.Expression:ehp8. field
  1946. of the dialog box and hit Return or click the :hp8.OK:ehp8. button.
  1947. Note that the expression and its value have been added to the Display
  1948. window.  You can also add displays by using :hp2.GDB:ehp2.'s &tt.display&ett.
  1949. command&colon.
  1950. :cgraphic.
  1951. disp m*m
  1952. :ecgraphic.
  1953. :p.
  1954. Continue stepping some (say, 20) source lines and watch the Display window.
  1955. :li.To let &tt.isqrt&ett. run to its end and stop at the place where
  1956. it has been called, select
  1957. :link reftype=hd res=&HPM_FINISH..Finish:elink. from the
  1958. :link reftype=hd res=&HPM_CMD_RUNMENU..Run menu:elink.
  1959. or hit the &tt.f&ett. key.  The return value is displayed in
  1960. the command window.  Note that the program is stopped in
  1961. the line containing the call to &tt.isqrt&ett., not on the line after.
  1962. This is because there's still some code of that line not yet executed.
  1963. As examining &tt.sqrt_size&ett. shows, the return value of &tt.isqrt&ett.
  1964. has not yet been assigned to that variable.  If you don't want to
  1965. clutter the Display window with values which you want to examine only
  1966. once, use :hp2.GDB:ehp2.'s &tt.print&ett. command in the
  1967. command window&colon.
  1968. :cgraphic.
  1969. p sqrt_size
  1970. :ecgraphic.
  1971. :p.
  1972. Hit the &tt.o&ett. key to execute the rest of the code of that line.
  1973. :li.Now we want to trace through the code of &tt.main&ett. which
  1974. prints the result.  That code starts at line 113.  This time, we
  1975. don't set a breakpoint.  Instead, select line 113 by clicking once
  1976. on the line number of that line.  (You can scroll to an arbitrary line by
  1977. selecting :link reftype=hd res=&HPM_SRC_GOTO..Go to line:elink.
  1978. from the :link reftype=hd res=&HPM_SRC_VIEWMENU..View menu:elink.
  1979. and typing the line number.)  Then, either select
  1980. :link reftype=hd res=&HPM_SRC_UNTIL..Until:elink. from the
  1981. :link reftype=hd res=&HPM_CMD_RUNMENU..Run menu:elink.
  1982. or hit the &tt.u&ett. key.  This operations works by setting
  1983. a temporary breakpoint, which will vanish after completion of
  1984. the operation.  Therefore, the line number does not have a red
  1985. background.  This time, we do not want to step into functions
  1986. (such as &tt.printf&ett.), therefore use the &tt.o&ett. key
  1987. to step over the lines.  If you're tired, hit the &tt.g&ett. key.
  1988. After stepping the last line, :hp2.GDB:ehp2. will say
  1989. :cgraphic.
  1990. Program exited normally.
  1991. :ecgraphic.
  1992. :p.
  1993. in the command window.  Note that the window in which &tt.sieve.exe&ett.
  1994. was running won't go away automatically; the title changed
  1995. to
  1996. :cgraphic.
  1997. Completed&colon. sieve.exe
  1998. :ecgraphic.
  1999. :p.
  2000. and you have to close it manually.  The application window will
  2001. be closed automatically if you select :hp8.Close window after exit:ehp8..
  2002. in the dialog box popped up by selecting 
  2003. :link reftype=hd res=&HPM_CMD_STARTUP..Startup:elink.
  2004. from the :link reftype=hd res=&HPM_CMD_FILEMENU..File menu:elink.
  2005. before starting the program.
  2006. :eol.
  2007.  
  2008. :euserdoc.
  2009.