HelpScribble project file.
10
YNQ`bsg-1N4PNO9R
0
1
CCIDE Help


LADSoft
TRUE


1
BrowseButtons()
0
TRUE

FALSE
31
10
Scribble10
index




Writing



FALSE
33
{\rtf1\ansi\ansicpg1252\deff0{\fonttbl{\f0\fnil\fcharset0 Arial;}}
{\colortbl ;\red0\green0\blue255;\red0\green128\blue0;\red128\green0\blue0;}
\viewkind4\uc1\pard\cf1\lang1033\b\fs32 Welcome to CCIDE help
\par 
\par \cf0\b0\fs20 CCIDE is an integrated development environment taylored to use with the CC386 toolset.  It supports most functionality of the toolset; however it is not a standalone program.  To accomplish its tasks it usually spawns an appropriate tool from the toolset, such as the compiler or linker.  However output from spawned tools is integrated into the environment error window.
\par 
\par Note that many menu functions have corresponding hot keys; this documentation will not describe the hot keys.  To locate what the hot keys are for a given item, pull down the menu item and look for a hot-key description to the right of the menu item description.
\par 
\par CCIDE has full support for docking windows; most windows may be docked anywhere on the screen.  Toolbars may as well.
\par 
\par General information to help you get started:
\par 
\par \tab\cf2\strike CCIDE General Information\cf3\strike0\{linkID=12\}
\par \cf0 
\par CCIDE has the following general functions:
\par 
\par \tab\cf2\strike Configurable Integrated editor\cf3\strike0\{linkID=20\}\cf0 
\par \tab\cf2\strike Project window, with integrated make facility\cf3\strike0\{linkID=30\}\cf0 
\par \tab\cf2\strike Error windows\cf3\strike0\{linkID=40\}\cf0 
\par \tab I\cf2\strike ntegrated debugger\cf3\strike0\{linkID=50\}\cf0 
\par \tab\cf2\strike Debugging windows\cf3\strike0\{linkID=60\}\cf0 
\par \tab\cf2\strike Find In Files (grep\cf3\strike0\{linkID=70\}\cf0 )
\par \tab\cf2\strike Find and Replace\cf3\strike0\{linkID=75\}
\par \cf0\tab\cf2\strike Bookmarks\cf3\strike0\{linkID=80\}\cf0 
\par \tab\cf2\strike Configurable platform help\cf3\strike0\{linkID=90\}\cf0 
\par \tab\cf2\strike Browse information\cf3\strike0\{linkID=100\}
\par \tab\cf2\strike Printing\cf3\strike0\{linkID=110\}
\par \tab\cf2\strike Toolbars\cf3\strike0\{linkID=115\}
\par \tab\cf2\strike Hotkeys\cf3\strike0\{linkID=200\}
\par 
\par \cf1\b\fs32 For licensing information, look here:
\par \tab\cf2\b0\strike\fs20 GPL Copyright Information\cf3\strike0\{linkID=15\}\cf2\strike 
\par }
12
Scribble12
Getting Started




Writing



FALSE
16
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Getting Started\cf0\b0\f1\fs20 
\par 
\par \f0 CCIDE is a project - based system.  That means to do anything significant other than simply editing files (such as compiling or debugging) a project must first be set up.  The project has information about TARGETS, which are executable or DLL files that are going to be created or debugged.  A list of sources files is associated with each target; when attempting to create the target CCIDE will apply the appropriate tool to each source file to compile it, then link the results together to create the target.  Optionally, CCIDE will maintain a list of dependency files with each source file and automatically rebuild all related source files when one of the depencency files changes.
\par 
\par This version of CCIDE does not allow specification of custom build rules.
\par 
\par The list of souce files may be any combination of C language files, Assembly language files, RC files, and libraries.  CCIDE will automatically apply the compiler, the assembler, the resource compiler, or the linker depending on the file name extension of the source file.  If the MAKE option is selected, only files which have changed, or whose dependencies have changed, will be recompiled.  If the BUILD ALL option is selected CCIDE will rebuild all files irregardless of what has changed.
\par 
\par Creating a project is a three-step process.  First, the NEW PROJECT menu item in the projects menu is selected.  A dialog comes up prompting for the project name.  Generally the project file should go in the same directory as the sources, although this is not an absolute requirement.  But it is easier to move things to new directories later if there is a need, if the project directory is somewhat related to the source directory.
\par 
\par After creating the project, a target has to be created.  To create a target select the ADD TARGET menu option in the projects menu.  Then type in the name of an EXE file you want to be working on.
\par 
\par Once the target is created, right-click on the target and a menu will come up.  Press the ADD FILES button on this menu and it will give a dialog for adding files.  If you already have files, select them (it is possible to do multi-selection) otherwise type in the name of a new file to create and the IDE will open a new file window for you. Once the dialog goes away the project is complete.  Select SAVE PROJECT on the projects menu to save it, then it can be built and debugged.  To build it select MAKE or BUILD ALL from the BUILD menu; or you can compile single files when they have the focus by selecting COMPILE FILE.\f1 
\par }
15
Scribble15
Copyright




Writing



FALSE
351
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;\red0\green0\blue0;}
\viewkind4\uc1\pard\cf1\fs20  \cf2                    GNU GENERAL PUBLIC LICENSE
\par                        Version 2, June 1991
\par 
\par  Copyright (C) 1989, 1991 Free Software Foundation, Inc.
\par      59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
\par  Everyone is permitted to copy and distribute verbatim copies
\par  of this license document, but changing it is not allowed.
\par 
\par                             Preamble
\par 
\par   The licenses for most software are designed to take away your
\par freedom to share and change it.  By contrast, the GNU General Public
\par License is intended to guarantee your freedom to share and change free
\par software--to make sure the software is free for all its users.  This
\par General Public License applies to most of the Free Software
\par Foundation's software and to any other program whose authors commit to
\par using it.  (Some other Free Software Foundation software is covered by
\par the GNU Library General Public License instead.)  You can apply it to
\par your programs, too.
\par 
\par   When we speak of free software, we are referring to freedom, not
\par price.  Our General Public Licenses are designed to make sure that you
\par have the freedom to distribute copies of free software (and charge for
\par this service if you wish), that you receive source code or can get it
\par if you want it, that you can change the software or use pieces of it
\par in new free programs; and that you know you can do these things.
\par 
\par   To protect your rights, we need to make restrictions that forbid
\par anyone to deny you these rights or to ask you to surrender the rights.
\par These restrictions translate to certain responsibilities for you if you
\par distribute copies of the software, or if you modify it.
\par 
\par   For example, if you distribute copies of such a program, whether
\par gratis or for a fee, you must give the recipients all the rights that
\par you have.  You must make sure that they, too, receive or can get the
\par source code.  And you must show them these terms so they know their
\par rights.
\par 
\par   We protect your rights with two steps: (1) copyright the software, and
\par (2) offer you this license which gives you legal permission to copy,
\par distribute and/or modify the software.
\par 
\par   Also, for each author's protection and ours, we want to make certain
\par that everyone understands that there is no warranty for this free
\par software.  If the software is modified by someone else and passed on, we
\par want its recipients to know that what they have is not the original, so
\par that any problems introduced by others will not reflect on the original
\par authors' reputations.
\par 
\par   Finally, any free program is threatened constantly by software
\par patents.  We wish to avoid the danger that redistributors of a free
\par program will individually obtain patent licenses, in effect making the
\par program proprietary.  To prevent this, we have made it clear that any
\par patent must be licensed for everyone's free use or not licensed at all.
\par 
\par   The precise terms and conditions for copying, distribution and
\par modification follow.
\par 
\par 
\par                     GNU GENERAL PUBLIC LICENSE
\par    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
\par 
\par   0. This License applies to any program or other work which contains
\par a notice placed by the copyright holder saying it may be distributed
\par under the terms of this General Public License.  The "Program", below,
\par refers to any such program or work, and a "work based on the Program"
\par means either the Program or any derivative work under copyright law:
\par that is to say, a work containing the Program or a portion of it,
\par either verbatim or with modifications and/or translated into another
\par language.  (Hereinafter, translation is included without limitation in
\par the term "modification".)  Each licensee is addressed as "you".
\par 
\par Activities other than copying, distribution and modification are not
\par covered by this License; they are outside its scope.  The act of
\par running the Program is not restricted, and the output from the Program
\par is covered only if its contents constitute a work based on the
\par Program (independent of having been made by running the Program).
\par Whether that is true depends on what the Program does.
\par 
\par 
\par 
\par   1. You may copy and distribute verbatim copies of the Program's
\par source code as you receive it, in any medium, provided that you
\par conspicuously and appropriately publish on each copy an appropriate
\par copyright notice and disclaimer of warranty; keep intact all the
\par notices that refer to this License and to the absence of any warranty;
\par and give any other recipients of the Program a copy of this License
\par along with the Program.
\par 
\par You may charge a fee for the physical act of transferring a copy, and
\par you may at your option offer warranty protection in exchange for a fee.
\par 
\par   2. You may modify your copy or copies of the Program or any portion
\par of it, thus forming a work based on the Program, and copy and
\par distribute such modifications or work under the terms of Section 1
\par above, provided that you also meet all of these conditions:
\par 
\par     a) You must cause the modified files to carry prominent notices
\par     stating that you changed the files and the date of any change.
\par 
\par     b) You must cause any work that you distribute or publish, that in
\par     whole or in part contains or is derived from the Program or any
\par     part thereof, to be licensed as a whole at no charge to all third
\par     parties under the terms of this License.
\par 
\par     c) If the modified program normally reads commands interactively
\par     when run, you must cause it, when started running for such
\par     interactive use in the most ordinary way, to print or display an
\par     announcement including an appropriate copyright notice and a
\par     notice that there is no warranty (or else, saying that you provide
\par     a warranty) and that users may redistribute the program under
\par     these conditions, and telling the user how to view a copy of this
\par     License.  (Exception: if the Program itself is interactive but
\par     does not normally print such an announcement, your work based on
\par     the Program is not required to print an announcement.)
\par 
\par 
\par These requirements apply to the modified work as a whole.  If
\par identifiable sections of that work are not derived from the Program,
\par and can be reasonably considered independent and separate works in
\par themselves, then this License, and its terms, do not apply to those
\par sections when you distribute them as separate works.  But when you
\par distribute the same sections as part of a whole which is a work based
\par on the Program, the distribution of the whole must be on the terms of
\par this License, whose permissions for other licensees extend to the
\par entire whole, and thus to each and every part regardless of who wrote it.
\par 
\par Thus, it is not the intent of this section to claim rights or contest
\par your rights to work written entirely by you; rather, the intent is to
\par exercise the right to control the distribution of derivative or
\par collective works based on the Program.
\par 
\par In addition, mere aggregation of another work not based on the Program
\par with the Program (or with a work based on the Program) on a volume of
\par a storage or distribution medium does not bring the other work under
\par the scope of this License.
\par 
\par   3. You may copy and distribute the Program (or a work based on it,
\par under Section 2) in object code or executable form under the terms of
\par Sections 1 and 2 above provided that you also do one of the following:
\par 
\par     a) Accompany it with the complete corresponding machine-readable
\par     source code, which must be distributed under the terms of Sections
\par     1 and 2 above on a medium customarily used for software interchange; or,
\par 
\par     b) Accompany it with a written offer, valid for at least three
\par     years, to give any third party, for a charge no more than your
\par     cost of physically performing source distribution, a complete
\par     machine-readable copy of the corresponding source code, to be
\par     distributed under the terms of Sections 1 and 2 above on a medium
\par     customarily used for software interchange; or,
\par 
\par     c) Accompany it with the information you received as to the offer
\par     to distribute corresponding source code.  (This alternative is
\par     allowed only for noncommercial distribution and only if you
\par     received the program in object code or executable form with such
\par     an offer, in accord with Subsection b above.)
\par 
\par The source code for a work means the preferred form of the work for
\par making modifications to it.  For an executable work, complete source
\par code means all the source code for all modules it contains, plus any
\par associated interface definition files, plus the scripts used to
\par control compilation and installation of the executable.  However, as a
\par special exception, the source code distributed need not include
\par anything that is normally distributed (in either source or binary
\par form) with the major components (compiler, kernel, and so on) of the
\par operating system on which the executable runs, unless that component
\par itself accompanies the executable.
\par 
\par If distribution of executable or object code is made by offering
\par access to copy from a designated place, then offering equivalent
\par access to copy the source code from the same place counts as
\par distribution of the source code, even though third parties are not
\par compelled to copy the source along with the object code.
\par 
\par 
\par   4. You may not copy, modify, sublicense, or distribute the Program
\par except as expressly provided under this License.  Any attempt
\par otherwise to copy, modify, sublicense or distribute the Program is
\par void, and will automatically terminate your rights under this License.
\par However, parties who have received copies, or rights, from you under
\par this License will not have their licenses terminated so long as such
\par parties remain in full compliance.
\par 
\par   5. You are not required to accept this License, since you have not
\par signed it.  However, nothing else grants you permission to modify or
\par distribute the Program or its derivative works.  These actions are
\par prohibited by law if you do not accept this License.  Therefore, by
\par modifying or distributing the Program (or any work based on the
\par Program), you indicate your acceptance of this License to do so, and
\par all its terms and conditions for copying, distributing or modifying
\par the Program or works based on it.
\par 
\par   6. Each time you redistribute the Program (or any work based on the
\par Program), the recipient automatically receives a license from the
\par original licensor to copy, distribute or modify the Program subject to
\par these terms and conditions.  You may not impose any further
\par restrictions on the recipients' exercise of the rights granted herein.
\par You are not responsible for enforcing compliance by third parties to
\par this License.
\par 
\par   7. If, as a consequence of a court judgment or allegation of patent
\par infringement or for any other reason (not limited to patent issues),
\par conditions are imposed on you (whether by court order, agreement or
\par otherwise) that contradict the conditions of this License, they do not
\par excuse you from the conditions of this License.  If you cannot
\par distribute so as to satisfy simultaneously your obligations under this
\par License and any other pertinent obligations, then as a consequence you
\par may not distribute the Program at all.  For example, if a patent
\par license would not permit royalty-free redistribution of the Program by
\par all those who receive copies directly or indirectly through you, then
\par the only way you could satisfy both it and this License would be to
\par refrain entirely from distribution of the Program.
\par 
\par If any portion of this section is held invalid or unenforceable under
\par any particular circumstance, the balance of the section is intended to
\par apply and the section as a whole is intended to apply in other
\par circumstances.
\par 
\par It is not the purpose of this section to induce you to infringe any
\par patents or other property right claims or to contest validity of any
\par such claims; this section has the sole purpose of protecting the
\par integrity of the free software distribution system, which is
\par implemented by public license practices.  Many people have made
\par generous contributions to the wide range of software distributed
\par through that system in reliance on consistent application of that
\par system; it is up to the author/donor to decide if he or she is willing
\par to distribute software through any other system and a licensee cannot
\par impose that choice.
\par 
\par This section is intended to make thoroughly clear what is believed to
\par be a consequence of the rest of this License.
\par 
\par 
\par   8. If the distribution and/or use of the Program is restricted in
\par certain countries either by patents or by copyrighted interfaces, the
\par original copyright holder who places the Program under this License
\par may add an explicit geographical distribution limitation excluding
\par those countries, so that distribution is permitted only in or among
\par countries not thus excluded.  In such case, this License incorporates
\par the limitation as if written in the body of this License.
\par 
\par   9. The Free Software Foundation may publish revised and/or new versions
\par of the General Public License from time to time.  Such new versions will
\par be similar in spirit to the present version, but may differ in detail to
\par address new problems or concerns.
\par 
\par Each version is given a distinguishing version number.  If the Program
\par specifies a version number of this License which applies to it and "any
\par later version", you have the option of following the terms and conditions
\par either of that version or of any later version published by the Free
\par Software Foundation.  If the Program does not specify a version number of
\par this License, you may choose any version ever published by the Free Software
\par Foundation.
\par 
\par   10. If you wish to incorporate parts of the Program into other free
\par programs whose distribution conditions are different, write to the author
\par to ask for permission.  For software which is copyrighted by the Free
\par Software Foundation, write to the Free Software Foundation; we sometimes
\par make exceptions for this.  Our decision will be guided by the two goals
\par of preserving the free status of all derivatives of our free software and
\par of promoting the sharing and reuse of software generally.
\par 
\par                             NO WARRANTY
\par 
\par   11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
\par FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
\par OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
\par PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
\par OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
\par MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
\par TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
\par PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
\par REPAIR OR CORRECTION.
\par 
\par   12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
\par WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
\par REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
\par INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
\par OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
\par TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
\par YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
\par PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
\par POSSIBILITY OF SUCH DAMAGES.
\par 
\par                      END OF TERMS AND CONDITIONS
\par 
\par 
\par             How to Apply These Terms to Your New Programs
\par 
\par   If you develop a new program, and you want it to be of the greatest
\par possible use to the public, the best way to achieve this is to make it
\par free software which everyone can redistribute and change under these terms.
\par 
\par   To do so, attach the following notices to the program.  It is safest
\par to attach them to the start of each source file to most effectively
\par convey the exclusion of warranty; and each file should have at least
\par the "copyright" line and a pointer to where the full notice is found.
\par 
\par     <one line to give the program's name and a brief idea of what it does.>
\par     Copyright (C) 19yy  <name of author>
\par 
\par     This program is free software; you can redistribute it and/or modify
\par     it under the terms of the GNU General Public License as published by
\par     the Free Software Foundation; either version 2 of the License, or
\par     (at your option) any later version.
\par 
\par     This program is distributed in the hope that it will be useful,
\par     but WITHOUT ANY WARRANTY; without even the implied warranty of
\par     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
\par     GNU General Public License for more details.
\par 
\par     You should have received a copy of the GNU General Public License
\par     along with this program; if not, write to the Free Software
\par     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
\par 
\par 
\par Also add information on how to contact you by electronic and paper mail.
\par 
\par If the program is interactive, make it output a short notice like this
\par when it starts in an interactive mode:
\par 
\par     Gnomovision version 69, Copyright (C) 19yy name of author
\par     Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
\par     This is free software, and you are welcome to redistribute it
\par     under certain conditions; type `show c' for details.
\par 
\par The hypothetical commands `show w' and `show c' should show the appropriate
\par parts of the General Public License.  Of course, the commands you use may
\par be called something other than `show w' and `show c'; they could even be
\par mouse-clicks or menu items--whatever suits your program.
\par 
\par You should also get your employer (if you work as a programmer) or your
\par school, if any, to sign a "copyright disclaimer" for the program, if
\par necessary.  Here is a sample; alter the names:
\par 
\par   Yoyodyne, Inc., hereby disclaims all copyright interest in the program
\par   `Gnomovision' (which makes passes at compilers) written by James Hacker.
\par 
\par   <signature of Ty Coon>, 1 April 1989
\par   Ty Coon, President of Vice
\par 
\par This General Public License does not permit incorporating your program into
\par proprietary programs.  If your program is a subroutine library, you may
\par consider it more useful to permit linking proprietary applications with the
\par library.  If this is what you want to do, use the GNU Library General
\par Public License instead of this License.
\par \cf0\f1 
\par }
20
Scribble20
Editor




Writing



FALSE
64
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;\red0\green128\blue0;\red128\green0\blue0;}
\viewkind4\uc1\pard\cf1\b\fs32 Editor\cf0\b0\f1\fs20 
\par 
\par \f0 The editor is a colorizing editor with basic functionality similar to an EDIT control, and various extended functionality added to support various IDE functionality.  It can colorize for only the C language.  \cf2\strike Configuration\cf3\strike0\{linkID=120\}\cf0  of basic functionality is supported.
\par 
\par When one or more files are opened for editing, a series of tabs at the top of the client area will show a list of all open files, and allow easy navigation to a given file.
\par 
\par The following items are available on the main menu, under the FILE subheading:
\par 
\par \tab New
\par \tab\tab Create a new file
\par \tab Open
\par \pard\fi-1420\li1420\tab\tab Open an existing file.  A dialog will come up asking for its name
\par \pard\tab Save
\par \tab\tab Save the file.
\par \tab Save As
\par \tab\tab Ask for a new file name, then save the file
\par \tab Close
\par \tab\tab Close the file.  It will prompt you if it needs to be saved
\par \tab Recent Files
\par \tab\tab Clicking this brings up a list of recent files to select from
\par 
\par The Edit menu has the following settings:
\par 
\par \tab Undo
\par \tab\tab Undo the last operation.
\par \tab Cut/Copy/Paste
\par \pard\fi-1440\li1440\tab\tab This is standard windows functionality.  The Clipboard is supported.
\par \tab Find 
\par \tab\tab Find a string
\par \tab Find Next
\par \tab\tab Find next occurrence of a string
\par \tab Replace
\par \tab\tab Replace a string
\par \pard\tab To Upper Case
\par \pard\fi-1420\li1420\tab\tab The selected text in the edit window is converted to upper case
\par \tab To Lower Case
\par \tab\tab The selected text in the edit window is converted to lower case
\par \tab Select all
\par \tab\tab Select the entire text
\par \pard\tab Goto Line
\par \tab\tab A dialog will be displayed, asking for a line number to position to
\par \f1 
\par \f0\tab 
\par The right-click menu has the following settings:
\par 
\par \tab Save file
\par \tab\tab This saves the file in the current window
\par \tab Cut/Copy/Paste
\par \pard\fi-1440\li1440\tab\tab This is standard windows functionality.  The Clipboard is supported.
\par \pard\tab Toggle Bookmark
\par \tab\tab The line the cursor is on will have its bookmark turned on or off
\par \tab Goto Line
\par \tab\tab A dialog will be displayed, asking for a line number to position to
\par \tab Toggle Breakpoint
\par \pard\fi-1420\li1420\tab\tab The line the cursor is on will have its breakpoint status turned on or off
\par \pard\tab Run To Cursor
\par \pard\fi-1420\li1420\tab\tab When in debug mode, the program will run until it reaches the cursor position
\par \pard\tab Add To Watch
\par \pard\fi-1440\li1440\tab\tab When in debug mode, the variable name under the cursor will be added to the watch window
\par \pard 
\par Pressing CTRL-F1 will bring up help for the word under the cursor.  What words actually have help depends largely on the help file installed
\par }
30
Scribble30
Project Window




Writing



FALSE
66
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;\red0\green128\blue0;\red128\green0\blue0;}
\viewkind4\uc1\pard\cf1\b\fs32 Project Window\cf0\b0\f1\fs20 
\par 
\par \f0 The project window shows a list of targets to build.  Each target is an EXE or DLL file.  Underneath each target is a list of all the source files which are required to make the target.  Clicking on a file opens up an edit window for that file.  When a build is requested, CCIDE parses through the list of files to see which ones have changed, and spawns an appropriate compiler for each one.
\par 
\par The following items are available on the main menu, under the PROJECTS subheading:
\par 
\par \tab New Project
\par \tab\tab This closes the current project and starts a new one
\par \tab Open Project
\par \tab\tab This opens an existing project
\par \tab Save Project
\par \tab\tab This saves the current project to disk, if it has changed
\par \tab Close Project
\par \tab\tab This closes the current project
\par \tab Add Target
\par \tab\tab This adds brings up a dialog, and adds a new target (exe file or DLL) to the project window
\par 
\par 
\par The following items are available on the main menu, under the BUILD subheading:
\par 
\par \tab Compile File
\par \tab\tab This compiles the file in the currently selected edit window
\par \tab Make
\par \tab\tab This compiles all source files which have changed
\par \tab Build All
\par \tab\tab This compiles every source file in the project window, regardless of whether it has changed or not.
\par \tab Generate Make File
\par \tab\tab This takes the project and generates a make file  for use with the command line tools.
\par 
\par The following items are available on the main menu, under the FILE subheading:
\par 
\par \tab Recent Projects
\par \tab\tab This brings up a list of recent projects to select from
\par 
\par The following items are available on the Project window right-click menu:
\par 
\par \tab Add File
\par \tab\tab When a target or file is selected, this will allow a new source file to be added under the given target
\par \tab Remove File
\par \tab\tab Removes the selected source file
\par \tab Add Target
\par \tab\tab Adds a new target to the window
\par \tab Remove Target
\par \tab\tab Removes the selected target from the window
\par \tab Calculate Dependencies
\par \tab\tab Calculates a list of all dependent files, to be used for build purposes
\par \tab Compile File
\par \tab\tab This compiles the file in the currently selected edit window
\par \tab Make
\par \tab\tab This compiles all source files which have changed
\par \tab Build All
\par \tab\tab This compiles every source file in the project window, regardless of whether it has changed or not.
\par \tab Open File
\par \tab\tab When a source file is selected, open it up.  This is the same as double-clicking on the source.
\par \tab Properties
\par \tab\tab Brings up the \cf2\strike Target Properties\cf3\strike0\{linkID=130\}\cf0  pane for the selected target.
\par 
\par The following items are available on the Editor tab of the main properties window.  Select the FILE menu, then PROPERTIES to get to this window.
\par 
\par \tab Backup Project
\par \tab\tab Selecting this will force the project to be backed up any time it is saved.
\par \f1 
\par \f0 Additionally, when a source file is selected in the target window, pressing ENTER will open the file in an edit window.\f1 
\par }
40
Scribble40
Error Windows




Writing



FALSE
14
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Error Windows\cf0\b0\f1\fs20 
\par 
\par \f0 The Error window has four tabs.   The tabs will generally auto-select themselves when information is being displayed in them, or they can be manually selected at any time.
\par 
\par The Error tab gives information about the compile in progress; errors and general status can be viewed here.  Clicking on an error line will bring up that line in an edit window.
\par 
\par The Debug tab gives information about the debug status, such as what DLLs and THREADs are starting or ending.  It also displays messages from the program that are sent via the OutputDebugString API function.
\par 
\par The Find In Files 1 tab is the main output window for results of grep operations.
\par 
\par The Find In Files 2 tab is similar; the output of grep operations are sent to this window when the 'output to window 2' box is clicked on the Find In Files dialog.\f1 
\par }
50
Scribble50
Integrated Debugger




Writing



FALSE
38
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;\red0\green128\blue0;\red128\green0\blue0;}
\viewkind4\uc1\pard\cf1\b\fs32 Integrated Debugger\cf0\b0\f1\fs20 
\par 
\par \f0 The debugger is a full-featured debugger.  Providing that the executable is compiled in such a way as to enable debug information, all features are available once the debugger has started.  Note that in this version of the IDE, breakpoints may be set while the debugger is stopped; this allows the possibility of setting breakpoints before the program starts.
\par 
\par To start the debugger, open the Debug menu and press Start Debugging.  At this point the program will start, and run until it hits a breakpoint.  If the Break In Winmain box is checked on the debug pane of the \cf2\strike Target Properties\cf3\strike0\{linkID=130\}\cf0  dialog, the program will stop at the beginning of main() or WinMain().  An arrow will appear next to the line the programs stops at as a visual queue as to where it is.
\par 
\par Note that when the debugger stops on a function declaration, the stack is not set up yet.  Therefore, it is not possible to accurately determine where the function's variables are;  this is primarily an issue when using the DUMP window.
\par 
\par The following items are available on the Debug menu:
\par 
\par \tab Start Debugging
\par \tab\tab Starts the debugger
\par \tab Stop Debugging
\par \tab\tab Stops the debugger
\par \tab Run
\par \tab\tab Starts the program if it is at a breakpoint
\par \tab Stop
\par \tab\tab Stops the program if it is running.  This inserts an artificial breakpoint long enough to get the program to stop.
\par \tab Toggle Breakpoint
\par \tab\tab Toggles the breakpoint at the selected line into the opposite state
\par \tab Remove Breakpoints
\par \tab\tab Removes all breakpoints
\par 
\par The following items are available on the right-click menu in the Editor menu:
\par 
\par \tab Toggle Breakpoint
\par \tab\tab Toggle the breakpoint marker at the current line
\par \tab Run To Cursor:
\par \tab\tab Run the program and stop at the position the cursor is at
\par \tab Add To Watch
\par \tab\tab Add the variable under the cursor to the watch window
\par 
\par A variety of debug properties exist on the properties pane of the \cf2\strike Target Properties\cf3\strike0\{linkID=130\}\cf0  dialog.
\par 
\par \f1 
\par }
60
Scribble60
Debugging Windows




Writing



FALSE
22
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;\red0\green128\blue0;\red128\green0\blue0;}
\viewkind4\uc1\pard\cf1\b\fs32 Debugging Windows\cf0\b0\f1\fs20 
\par 
\par \f0 CCIDE has several ancilliary windows used for helping to debug.  Most of these windows are available by selecting VIEW from the main menu, then selecting DEBUG WINDOWS.  However the register window is actually in the project pane.
\par 
\par Note that when you stop the debugger, CCIDE will make a list of which debugging windows were open and then close them.  It will reopen them again at the same position the next time the debugger is started.
\par 
\par The debugging windows are as follows:
\par 
\par \tab\cf2\strike Watch Window\cf3\strike0\{linkID=140\}\cf0 
\par \tab\tab Shows the value of variables
\par \tab\cf2\strike Assembly Window\cf3\strike0\{linkID=150\}\cf0 
\par \tab\tab Shows an assembly language listing 
\par \tab\cf2\strike Memory Window\cf3\strike0\{linkID=160\}\cf0 
\par \tab\tab Shows a memory dump
\par \tab\cf2\strike Stack Window\cf3\strike0\{linkID=170\}\cf0 
\par \tab\tab Shows a backtrace of the stack
\par \tab\cf2\strike Threads Window\cf3\strike0\{linkID=180\}\cf0 
\par \tab\tab Shows a list of threads
\par \tab\cf2\strike Register Window\cf3\strike0\{linkID=190\}\cf0\f1 
\par }
70
Scribble70
Find in Files




Writing



FALSE
23
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Find in Files\cf0\b0\f1\fs20 
\par 
\par \f0 The Find In Files menu item is on the Editor menu.  When it pressed it brings up a dialog box which controls the process of locating strings in files.  Strings that are found will be displayed in one of the panes of the error window.  Also, a visual indication is given to the left of the edit window as to which lines in the file match the expression.
\par 
\par The Find In Files dialog has the following options:
\par 
\par \tab Find What
\par \tab\tab type the item that is to be found
\par \tab File Type
\par \tab\tab select a file type
\par \tab In Directory
\par \tab\tab select a directory to search in
\par \tab Regular Expressions
\par \tab\tab determines wether to use a direct search or regular expressions
\par \tab Match Case
\par \tab\tab determines whether the search is case-insensitive
\par \tab Output to Window 2
\par \tab\tab normally output goes to Find In Files 1 pane of the error window;  Checking this selects Find In Files 2 pane for the output.
\par 
\par Using Find In files implicitly spawns the command-line GREP program.\f1 
\par }
75
Scribble75
Find and Replace




Writing



FALSE
36
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;\red0\green128\blue0;\red128\green0\blue0;}
\viewkind4\uc1\pard\cf1\b\fs32 Find and Replace\cf0\b0\f1\fs20 
\par 
\par \f0 CCIDE uses a variation of the standard windows find and replace dialog boxes.  The main difference is that the CCIDE version of the dialog has an option to allow \cf2\strike regular expression\cf3\strike0\{linkID=250\}\cf0  matching.
\par 
\par The Find dialog has the following options:
\par 
\par \tab Match Whole Word Only
\par \tab\tab makes sure that any match made matches an entire word
\par \tab Match Case
\par \tab\tab allows for the possibility of case sensitive or case insensitive matches
\par \tab Regular Expressions
\par \tab\tab turns on regular expression matching
\par \tab Direction
\par \tab\tab Allows the find operation to go either forward or backward through the file.
\par 
\par The Find dialog has the following buttons:
\par 
\par \tab Find Next
\par \tab\tab Finds the next match
\par \tab Cancel
\par \tab\tab Exits the dialog
\par 
\par You can also find text by hitting the ENTER key, and exit by hitting ESC.
\par 
\par The replace dialog has similar options, except the direction option does not exist and all matches are in the forward direction.
\par 
\par The replace dialog has the following additional keys:
\par 
\par \tab Replace
\par \tab\tab Replace the selected text and find the next match
\par \tab Replace all
\par \tab\tab Replace all occurrences of the text.
\par \tab\f1 
\par }
80
Scribble80
Bookmarks




Writing



FALSE
26
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Bookmarks\cf0\b0\f1\fs20 
\par 
\par \f0 Bookmarks are used to mark positions in the text for easy traversal.  They may be turned on and off.  A visual indication is given to the left of the editor window as to which lines have bookmarks.
\par 
\par The following items are available under the View menu, the Bookmarks item:
\par 
\par \tab Toggle Bookmark
\par \tab\tab Toggles the bookmark setting for the current line
\par \tab Next Bookmark
\par \tab\tab Traverse to the next bookmark
\par \tab Previous Bookmark
\par \tab\tab Traverses to the previous bookmark
\par \tab Show Bookmarks
\par \tab\tab Shows a list of bookmarks; allows one to be chosen
\par \tab Remove Bookmarks
\par \tab\tab Removes all bookmarks
\par 
\par The following items are available on the right-click menu of the Edit Windows:
\par 
\par \tab Toggle Bookmark
\par \tab\tab Toggles the bookmark setting for the current line
\par 
\par \f1 
\par }
90
Scribble90
Platform Help




Writing



FALSE
19
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Platform Help\cf0\b0\f1\fs20 
\par 
\par \f0 CCIDE is configurable to use one of several help files to give help for the Windows API and/or the C language.  When a help file is configured, highlighting a function and pressing 'CTRL-F1' will bring up a window showing help for the given item, if any is available.
\par 
\par To access the setup for the help, press the Properties menu item under the File menu.  The general properties dialog will come up; select the Install pane.
\par 
\par Three types of help files are available.  The recommended help file is the Platform SDK help; it gives a good balance between having enough content but not too much.
\par 
\par \tab MSDN help
\par \pard\fi-1420\li1420\tab\tab If MSDN is installed and this item selected, CCIDE will find it and use it for help needs.  This help file is primarily for WIN32 but has a lot of extraneous information which may create difficulty in finding things.
\par \pard 
\par \tab Platform SDK help
\par \pard\li1440\tx1440 If the Platform SDK is installed and this item selected, CCIDE will find it and use it.  The Platform SDK is similar to the MSDN help, but cuts out a lot of information not directly related to the WIN32 API and the C Language.  The platform SDK is part of a free download from microsoft.
\par \pard 
\par \tab Specified Path
\par \pard\fi-1440\li1440\tab\tab Selecting this item specifies that a WinHelp format file is to be used.  The path to the file must be specified.  For example the HELP files that ship with borland products (or the Freely available winhelp file on the borland site) may be used.  Note that only one WinHelp file may be configured at a time; for example the Borland help file for the C language may be installed, or the Borland help file for the WIN32 API may be installed, but not both.\f1 
\par }
100
Scribble100
Browse information




Writing



FALSE
25
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Browse information\cf0\b0\f1\fs20 
\par 
\par \f0 CCIDE will allow source code browsing.  Placing a cursor on a variable or structure name, the pressing Browse To on the View menu under the Browse menu will browse to the variable or structure declaration.  Pressing Browse Back will browse back to the original position in the file.
\par 
\par The browse function requires compiler support and must be enabled.  After enabling it, the project must be recompiled with the Build All option.
\par Browsing is only possible within C language files and headers.  Note that the browse information file (which is handled in the background) may become very large for large programs.
\par 
\par To enable browsing, Select Properties from the File menu, then select the general tab and select the Browse Information box.  Then recompile the project using the Build All option.
\par 
\par The following menu items are on the Browse menu under the View menu:
\par 
\par \tab Browse To
\par \tab\tab Browse to the variable or structure declaration
\par \tab Browse Back
\par \tab\tab Browse back to the last position shown
\par 
\par The following items are on the General tab of the Properties dialog box:
\par 
\par \tab Browse Information
\par \tab\tab Select this to incorporate browse information
\par 
\par \f1 
\par }
110
Scribble110
Printing




Writing



FALSE
6
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Printing\cf0\b0\f1\fs20 
\par 
\par \f0 CCIDE will print source files on the printer.  It uses standard windows drivers.   Selecting an edit window, the pressing Print on the Files menu will cause that window to be printed.\f1 
\par }
115
Scribble115
Toolbars




Writing



FALSE
13
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;\red0\green128\blue0;\red128\green0\blue0;}
\viewkind4\uc1\pard\cf1\b\fs32 Toolbars\cf0\b0\f1\fs20 
\par 
\par \f0 CCIDE has three toolbars.  In general the items on the toolbar also appear in the menus.  The toolbars are customizable; pressing shift and clicking on an item will allow you to drag the item elsewhere on the tool bar, or drag it off the toolbar.  Double clicking on part of the toolbar will bring up a customization dialog.  This dialog will allow you to rearrange the buttons on the toolbar.  The reset button on this dialog will restore the toolbar to its initial state.
\par 
\par For more information consult the following topics:
\par 
\par \tab\cf2\strike Edit Toolbar\cf3\strike0\{linkID=210\}\cf0 
\par \tab\cf2\strike Build Toolbar\cf3\strike0\{linkID=220\}\cf0 
\par \tab\cf2\strike Debug Toolbar\cf3\strike0\{linkID=220\}\cf0 
\par 
\par }
120
Scribble120
Editor Configuration




Writing



FALSE
32
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Editor Configuration\cf0\b0\f1\fs20 
\par 
\par \f0 Editor configuration is reached by selecting the FILE menu item, then the PROPERTIES menu item.  The resulting property sheet will have editor settings on its first pane.  The following settings are available:
\par 
\par \tab Tabs
\par \tab\tab Select the tab spacing
\par \tab Use Spaces For Tabs
\par \tab\tab Select that when the tab key is pressed, spaces should be used instead of tab characters
\par \tab Background
\par \tab\tab Select the edit window background color
\par \tab Text
\par \tab\tab Select the edit window text basic color
\par \tab Keyword
\par \tab\tab Select the edit window text color for C language keywords
\par \tab Comment
\par \tab\tab Select the edit window text color for comments
\par \tab String\tab 
\par \tab\tab Select the edit window text color for strings
\par \tab Escape
\par \tab\tab Select the edit window text color for preprocessor directives
\par \tab Number
\par \tab\tab Select the edit window text color for numbers
\par \tab Backup Files
\par \tab\tab Select this to force files to be backed up
\par \tab Backup Project
\par \tab\tab Select this to force projects to be backed up
\par \tab Select Font
\par \tab\tab This will bring up a standard font selection dialog.  When the dialog closes, the selected font will be applied to all edit windows.\f1 
\par 
\par }
125
Scribble125
General Configuration




Writing



FALSE
10
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;\red0\green128\blue0;\red128\green0\blue0;}
\viewkind4\uc1\pard\cf1\b\fs32 General Configuration\cf0\b0\f1\fs20 
\par 
\par \f0 The general configuration dialog is for general IDE properties.  At present the following properties
\par may be altered:
\par 
\par Browse Information\tab Checking this box will cause the tools to create a browse
\par \pard\li2160 information file the next time the project is compiled.  With a browse information file, the program is able to locate definitions for functions, structures, and variables with the press of a key.  More information about browse information may be found in the \cf2\strike Browse Information\cf3\strike0\{linkID=100\}\cf0  page.\f1 
\par }
127
Scribble127
Install Configuration




Writing



FALSE
18
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Install Configuration\cf0\b0\f1\fs20 
\par 
\par \f0 The install configuration screen allows installation of a help file.  It also allows modification of the path CCIDE will use to locate the tools.  In general the latter path should not be modified unless you know what you are doing.
\par 
\par Help file\tab\tab 
\par \pard\li1640 CCIDE can use one of three help file formats.  It accesses the files automatically when CTRL-F1 is pressed, to allow help for the keyword under the cursor to appear.
\par 
\par The formats are as follows:
\par 
\par MSDN - select this if microsoft MSDN is installed on the computer.
\par Platform SDK - select this if the platform SDK is installed on the computer.
\par WINHELP - select this if a WINHELP file is to be used for keyword lookups.
\par 
\par \pard Install Path
\par \pard\li1620 This setting shows the path which CCIDE and the other tools are installed on.\f1 
\par }
130
Scribble130
Target Properties




Writing



FALSE
63
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Target Properties\cf0\b0\f1\fs20 
\par 
\par \f0 The target properites property sheet has three dialogs related to setting up the build/debug settings for the target.
\par 
\par General Properties pane:
\par 
\par \tab This pane holds the general build settings for the target.  The following settings are supported:
\par 
\par \tab\tab Build Type
\par \tab\tab\tab Selects the type of executable file.  Values are as follows:
\par \tab\tab\tab\tab Windows Console
\par \tab\tab\tab\tab\tab makes a windows console mode program
\par \tab\tab\tab\tab Windows GUI
\par \tab\tab\tab\tab\tab makes a windowing program
\par \tab\tab\tab\tab Windows DLL
\par \tab\tab\tab\tab\tab makes a windows DLL
\par \tab\tab\tab\tab MSDOS executable
\par \tab\tab\tab\tab\tab makes a DOS/DPMI executable
\par \tab\tab\tab\tab Library
\par \tab\tab\tab\tab\tab makes a library
\par \tab\tab Map File
\par \tab\tab\tab Select this if a map file is to be generated
\par \tab\tab Debug Information
\par \tab\tab\tab Select this if debug information is to be generated
\par \tab\tab Compile via ASM
\par \tab\tab\tab Selected this to compile to assembly code, and assemble the result
\par \tab\tab Auto Select Target
\par \tab\tab\tab Select this to have CCIDE auto-select the first target when it needs a target and one is not selected
\par \tab\tab use CRTDLL.DLL
\par \pard\fi-2140\li2140\tab\tab\tab Select this to compile against the WIN32 CRTDLL.DLL file.  The use of this shared library can significantly decrease size of windows executeables
\par \pard\tab\tab Include path
\par \pard\fi-2160\li2160\tab\tab\tab Selects the path settings to be used for finding included files.  The setting may consist of multiple paths seperated by a semicolon
\par \pard\tab\tab Output Path
\par \tab\tab\tab Selects the path where output files will be placed
\par 
\par Debug pane:
\par 
\par \tab This pane holds debugger settings for the target.  The following settings are supported:
\par 
\par \tab\tab Break in winmain
\par \tab\tab\tab Set this to stop at the beginning of the program
\par \tab\tab Break at DLL Entry point
\par \tab\tab\tab Set this to stop at the beginning of debugable dlls
\par \tab\tab Stop before exception handling
\par \tab\tab\tab Set this to abort when an exception is handled.  Reset it to cause the standard exception handling be considered
\par \tab\tab Tool tips
\par \tab\tab\tab Set this if tool tips are to be displayed while browsing source files in debug mode
\par 
\par Tool options pane:
\par 
\par \tab This pane lets you customize options for the various tools that are used to compile code.  In general nothing needs to be set here.
\par 
\par \tab\tab Compiler
\par \tab\tab\tab Sets options for the compiler
\par \tab\tab Assembler
\par \tab\tab\tab Sets options for the assembler
\par \tab\tab Linker
\par \tab\tab\tab Sets options for the linker
\par \tab\tab Librarian
\par \tab\tab\tab Sets options for the librarian\f1 
\par }
140
Scribble140
Watch Window




Writing



FALSE
22
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;\red0\green128\blue0;\red128\green0\blue0;}
\viewkind4\uc1\pard\cf1\b\fs32 Watch Window\cf0\b0\f1\fs20 
\par 
\par \f0 The watch window shows the value of variables, and optionally allows them to be modified.  It is updated automatically each time the program stops at a break point.
\par 
\par There are two ways to get a variable into the watch window.  First, while debugging right-click on a variable and select 'Add To Watch' from the editor right-click menu.  Second, right click in the watch window and select Add To Watch, and a dialog will appear allowing a variable name to be entered.  If the latter method is used, CCIDE will also evaluate any generic \cf2\strike expressions\cf3\strike0\{linkID=240\}\cf0  typed into the dialog and display the results in the watch window.
\par 
\par When a value is displayed, clicking on the value will open an edit window.  Typing a new value will cause that value to be written to the target memory.
\par 
\par The following options are available on the right-click menu in the watch window:
\par 
\par \tab Add To Watch
\par \tab\tab Prompts for a variable name to add to the watch window
\par \tab Delete From Watch
\par \tab\tab Deletes the selected item from the watch window
\par 
\par The following options are available on the right-click menu in the edit window:
\par 
\par \tab Add To Watch
\par \tab\tab Automatically add the variable under the cursor to the watch window.\f1 
\par }
150
Scribble150
Assembly Window




Writing



FALSE
12
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;\red0\green128\blue0;\red128\green0\blue0;}
\viewkind4\uc1\pard\cf1\b\fs32 Assembly Window\cf0\b0\f1\fs20 
\par 
\par \f0 This window shows assembly language instructions for the program.  Generally it will start at the position the breakpoint is at.  However if focus is set to the window, then the 'goto' toolbar item (or CTRL-G) will bring up a dialog allowing the address to be changed.  A number can be entered here, or the name of a variable.  It is also possible to type a complete \cf2\strike expression\cf3\strike0\{linkID=240\}\cf0  into this box and have it evaluated.
\par 
\par In the assembly window, disassembled instructions will be shown in blue and commentary will be shown in green.  Common commentary is the name of the function which begins at the current address, or the module and line number of the code which starts at the current address.
\par 
\par While the assembly window has focus, the up and down arrows and page up and page down keys will allow navigation through the disassembly.  As a convenience, pressing the HOME key will result in the disassembly window showing the line at which the program counter is currently stopped.
\par 
\par Note that the disassembly is currently not solid; there may be some bugs.\f1 
\par }
160
Scribble160
Memory Window




Writing



FALSE
12
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;\red0\green128\blue0;\red128\green0\blue0;}
\viewkind4\uc1\pard\cf1\b\fs32 Memory Window\cf0\b0\f1\fs20 
\par 
\par \f0 The memory window shows a dump of memory.  It is automatically updated whenever the program stops at a breakpoint.
\par 
\par On the left is the hex value of each byte; on the right is the ASCII values.
\par 
\par At the top is a small window which is used to tell what memory should be viewed.  An address can be entered here, or the name of a variable.  It is also possible to type a complete \cf2\strike expression\cf3\strike0\{linkID=240\}\cf0  into this box and have it evaluated.
\par 
\par When the memory portion of the window has keyboard focus, a black cursor will appear over one of the values.  The cursor may be moved around to select a value by using the arrow keys.  Typing in a Hexadecimal digit will turn the cursor to blue; a second digit can be typed at this time.  While the cursor is blue, the ESCAPE key will void the edit function and return the cursor to black, or the ENTER key will accept the new value and attempt to write it to the program's memory space.  If successful the display will update with a black cursor and show the new value; if the new value cannot be written then a dialog will appear to inform you of the problem.
\par }
170
Scribble170
Stack Window




Writing



FALSE
6
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Stack Window\cf0\b0\f1\fs20 
\par 
\par \f0 The stack window shows a backtrace of all functions that were called on the way to hitting the current breakpoint.  It shows the function address and the name when it is available.\f1 
\par }
180
Scribble180
Threads Window




Writing



FALSE
6
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Threads Window\cf0\b0\f1\fs20 
\par 
\par \f0 The threads window shows currently active threads.  It shows the address each thread is at, and the name of the function it is in when available.\f1 
\par }
190
Scribble190
Register Window




Writing



FALSE
14
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Register Window\cf0\b0\f1\fs20 
\par 
\par \f0 The register window shows information about the CPU registers.  It has three sections.
\par 
\par The Arithmetic section shows information about the basic register set used for memory and mathematics operations.
\par 
\par The Control section shows information about registers used in CPU control, such as the program counter and stack pointer.
\par 
\par The Floating Point section shows information about the floating point registers.
\par \f1 
\par 
\par }
200
Scribble200
Hot Keys




Writing



FALSE
99
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Hot Keys\cf0\b0\f1\fs20 
\par 
\par \f0 Many of the CCIDE functions may be performed with alternate key sequences.  This page gives a list of the key sequences and what they do.
\par 
\par For general functions, the following key sequences are in effect:
\par 
\par CTRL-F\tab\tab Bring up the Find dialog
\par CTRL-G\tab\tab Bring up a dialog which selects a line number to position to in the current window
\par CTRL-H\tab\tab Bring up the Replace dialog
\par F1\tab\tab General help (this help file)
\par F2\tab\tab Goes to the next bookmark
\par SHIFT-F2\tab Goes to the previous bookmark
\par CTRL-F2\tab Shows the bookmark window, you select a bookmark to position to
\par ALT-F2\tab\tab Toggles bookmark status for the current line
\par F3\tab\tab Find next functionality
\par SHIFT-F4\tab Tiles the windows
\par CTRL-F4\tab Close the current window
\par F5\tab\tab Start the debugger and/or run the program
\par SHIFT-F5\tab Stop the debugger
\par CTRL-F5\tab Run to the line the cursor is on
\par ALT-F5\tab\tab Stop the program
\par F7\tab\tab Make the parts of the program that are not up to date
\par SHIFT-F7\tab Build the entire program
\par SHIFT-F8\tab Bring up a dialog which selects a line number to position to in the current window
\par F9\tab\tab Set a breakpoint at the current line
\par F10\tab\tab Step over the current line
\par F11\tab\tab Step into the current line
\par ALT-F11\tab Step out of the current function
\par F12\tab\tab Browse to the definition of the selected word 
\par \tab\tab The browse option must be turned on
\par SHIFT-F12\tab Browse back to the previous position
\par 
\par In addition the following sequences have special meaning in the editor:
\par 
\par CTRL-C\tab\tab Copy selection to clipboard
\par CTRL-S\tab\tab Save the file in the current edit window
\par CTRL-V\tab\tab Paste clipboard to cursor position.  This overwrites the selection if there is one
\par CTRL-X\tab\tab Copy the selection to the clipboard, and cut it from the text
\par CTRL-Z\tab\tab Undo the last operation
\par CTRL-F1\tab Specific help for word under cursor
\par BACKSPACE\tab Delete the character preceding the cursor
\par DELETE\tab Delete the character at the cursor
\par END\tab\tab Move the cursor to the end of the line
\par CTRL-END\tab Move the cursor to the end of the file
\par HOME\tab\tab Move the cursor to the beginning of the line
\par CTRL-HOME\tab Move the cursor to the beginning of the file
\par INSERT\tab\tab toggles the insert mode between INSERT and OVERWRITE
\par PAGE DOWN\tab Move the cursor down one page
\par PAGE UP\tab Move the cursor up one page
\par TAB\tab\tab insert tabs or spaces to the next tab position, depending on the edit mode
\par SHIFT-TAB\tab delete tabs or spaces left of the cursor, to the next tab position\f1 
\par \f0 DOWN ARROW
\par UP ARROW
\par LEFT ARROW
\par RIGHT ARROW
\par \tab\tab These keys allow navigation through the text
\par CTRL-RIGHT ARROW move one word to the right
\par CTRL-LEFT ARROW move one word to the left
\par 
\par The following keys have special meaning in the project window:
\par 
\par DOWN ARROW
\par UP ARROW
\par LEFT ARROW
\par RIGHT ARROW
\par \tab\tab These keys allow navigation through the list
\par 
\par CTRL-INSERT  expand a node
\par CTRL-DELETE collapse a node
\par ENTER open the file corresponding to the node
\par 
\par The following keys have special meaning in the assembly window:
\par 
\par DOWN ARROW
\par UP ARROW
\par LEFT ARROW
\par RIGHT ARROW
\par PAGE-UP
\par PAGE-DOWN
\par \tab\tab These keys allow navigation through the list
\par 
\par CTRL-G\tab Enter an address to position to
\par 
\par The following keys have special meaning in the dump window:
\par 
\par LEFT ARROW
\par RIGHT ARROW
\par DOWN ARROW
\par UP ARROW
\par PAGE-UP
\par PAGE-DOWN
\par \tab\tab These keys allow navigation through the memory
\par 0-9, A-F
\par \pard\li1440 These keys let you enter a new value.  The cursor will turn blue while text is being modified
\par \pard RETURN\tab Accept a new value and program it into memory
\par \pard\fi-1420\li1420 ESCAPE\tab Discard the new value and show the original value (does not work once RETURN is pressed)
\par }
210
Scribble210
Edit Toolbar




Writing



FALSE
44
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Edit Toolbar\cf0\b0\f1\fs20 
\par 
\par \f0 The Edit toolbar has controls which are commonly used when working with source files.
\par \f1 
\par \f0 The Edit toolbar has the following options:
\par 
\par \tab New
\par \tab\tab Create a new file
\par \tab Open
\par \tab\tab Prompt for a file name to open, then open it in the edit window
\par \tab Save
\par \tab\tab Save the current file
\par \tab Print\tab 
\par \tab\tab Print the current file
\par 
\par \tab Cut
\par \tab\tab Cut the selection to the clipboard
\par \tab Copy
\par \tab\tab Copy the selection to the clipboard
\par \tab Paste
\par \tab\tab Paste the clipboard at the current cursor position
\par \tab Undo
\par \tab\tab Undo the last thing done
\par 
\par \tab Find
\par \tab\tab Prompt for text to find in the current file
\par \tab Find Next
\par \tab\tab Find the next occurance of text
\par \tab Replace
\par \tab\tab Replace text
\par \tab Find In Files
\par \tab\tab Find text in files
\par 
\par \tab Goto
\par \pard\fi-1440\li1440\tab\tab Goto a specific line number.  May also be used to position to an address in the DUMP an ASM windows.
\par 
\par \pard\tab To Upper Case
\par \pard\fi-1420\li1420\tab\tab The selected text in the edit window is converted to upper case
\par \tab To Lower Case
\par \tab\tab The selected text in the edit window is converted to lower case
\par \pard\f1 
\par }
220
Scribble220
Build Toolbar




Writing



FALSE
17
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Build Toolbar\cf0\b0\f1\fs20 
\par 
\par \f0 The Build toolbar has controls for things that are commonly done while compiling and linking programs.
\par \f1 
\par \f0 The Build toolbar has the following options:
\par 
\par \tab Compile File
\par \tab\tab Compile the current edit window
\par \tab Make
\par \tab\tab Perform a make operation, selectively compiling and linking only what has changed
\par \tab Build
\par \tab\tab Build the entire project without regard for what has changed
\par 
\par \f1 
\par }
230
Scribble230
Debug Toolbar




Writing



FALSE
30
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Debug Toolbar\cf0\b0\f1\fs20 
\par 
\par \f0 The Debug toolbar has controls which are useful during debugging of a program.
\par \f1 
\par \f0 The Debug toolbar has the following options:
\par 
\par \tab Start/Stop debugging
\par \tab\tab Start debugging, or stop it if it is already starting
\par 
\par \tab Breakpoint
\par \tab\tab Toggle breakpoint at the current line
\par 
\par \tab Stop Program
\par \tab\tab If the program is running, stop it by inserting a temporary breakpoint
\par 
\par \tab Run
\par \tab\tab Run the program some more; will stop at the next breakpoint encountered
\par \tab Run To
\par \tab\tab Run to the current cursor position
\par 
\par \tab Step In
\par \tab\tab Step into a subroutine
\par \tab Step Over
\par \tab\tab Step over a subroutine
\par \tab Step Out
\par \tab\tab Step until the exit point of a subroutine\f1 
\par 
\par }
240
Scribble240
Expressions




Writing



FALSE
14
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Expressions\cf0\b0\f1\fs20 
\par 
\par \f0 When adding a variable to the watch window with the watch window dialog, or specifying an address in the memory window edit control, it is possible to type expressions into the dialog and have them evaluated.
\par 
\par The expression evaluator knows most of the operators of the C language.  It is also possible to type-cast expressions, to tell the watch window how to display the results of expressions.
\par 
\par In general, when a variable name is typed into the dialog, that is taken to mean the address of the variable.  However when variables are used in expressions, what happens depends on the type of the variable.  If it is a basic type such as int or short, the value is fetched and used in the expression, and the result becomes a constant.  However if it is a structured type such as struct or union, or an array value, the address is still used in the expression.  Normal C language rules
\par apply for such things; for adding constants to structure addresses results in moving further along
\par in an array of the structures, instead of simply offsetting the base address of the structure.
\par 
\par Each expression will be completely re-evaluated each time the program stops at a breakpoint.\f1 
\par }
250
Scribble250
Regular Expressions




Writing



FALSE
59
{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Arial;}{\f1\fnil Arial;}}
{\colortbl ;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\b\fs32 Regular Expressions\cf0\b0\f1\fs20 
\par 
\par \f0 CCIDE supports regular expressions in the query boxes of the find and replace dialogs.  The regular expression operators are a subset of those used by the EMACS editor.  In general characters have their normal meanings, but there are a few special characters that can be used.
\par 
\par Regular expressions work by taking a list of operators with generic meanings and trying to match parts of the source text (the edit file).  If all the operators taken together in sequence match some string in the source text, the find operation is successful.
\par 
\par \tab .\tab matches any single character
\par \tab *\tab matches one or more occurences of the preceding character
\par \tab +\tab matches zero or more occurences of the preceding character
\par \tab ?\tab matches exactly zero or one occurrences of the preceding character
\par \tab ^\tab matches beginning of line
\par \tab $\tab matches end of line
\par \tab [ and ]\tab define a list of characters which can match present character
\par \pard\fi-1420\li1420\tab\tab between the brackets can be placed either a list of letters, any of which matches the current character, or the name of a character class which is matched against the current character.  The format for a character class is:
\par 
\par \pard\li1420 [:classname:]
\par 
\par for example [[:alpha:]] matches any letter.  The class names follow the macros found in ctype.h:  the following class names are valid:
\par 
\par alpha\tab\tab matches a letter
\par upper\tab\tab matches an upper case letter
\par lower\tab\tab matches a lower case letter
\par digit\tab\tab matches a digit
\par alnum\tab\tab matches a letter or digit
\par xdigit\tab\tab matches a hexadecimal digit
\par space\tab\tab matches any whitespace character, e.g. spaces,
\par \tab\tab\tab newlines, tabs, formfeeds 
\par print\tab\tab matches any printable character
\par punct\tab\tab matches punctuation characters
\par graph\tab\tab matches non-space printable characters
\par cntrl\tab\tab matches control characters
\par blank\tab\tab matches space and tab
\par \pard\fi-1420\li1420 
\par \pard 
\par \tab |\tab alternator, an 'or' operator
\par \pard\fi-1440\li1440\tab\\\tab escape character.  When it precedes a special character, it quotes that character.  When used with other characters it can cause special matching functions to occur
\par \pard\tab 
\par The escape sequences are as follows:
\par 
\par \tab\\b\tab matches a word boundary
\par \tab\\B\tab matches inside a word
\par \tab\\w\tab matches word constituents
\par \tab\\W\tab matches non-word constituents
\par \tab\\<\tab matches beginning of word
\par \tab\\>\tab matches end of word
\par \tab\\`\tab matches beginning of buffer
\par \tab\\'\tab matches end of buffer
\par \tab\\( and \\)\tab define a group to be indexed in back-reference and replace operations
\par \tab\\\{ and \\\} interval operators
\par \pard\fi-1440\li1440\tab\tab for example: "a\{2,4\} matches from 2 to 4 'a' characters.  less than two or greater than four characters don't match
\par \pard\tab\\digit\tab back-reference operator... references a parenthesized group
\par 
\par In the replace field most of the above sequences have no effect.  The following sequences have special meaning:
\par 
\par \tab\\digit\tab reference a parenthesized group specified in the find window
\par \tab\\\tab quote the next character\f1 
\par }
0
0
0
0
6
*InternetLink
16711680
Courier New
0
10
1
....
0
0
0
0
0
0
*ParagraphTitle
-2147483640
Arial
0
11
1
B...
0
0
0
0
0
0
*PopupLink
-2147483640
Arial
0
8
1
....
0
0
0
0
0
0
*PopupTopicTitle
16711680
Arial
0
10
1
B...
0
0
0
0
0
0
*TopicText
-2147483640
Arial
0
10
1
....
0
0
0
0
0
0
*TopicTitle
16711680
Arial
0
16
1
B...
0
0
0
0
0
0
