INtime SDK Help
Developing INtime Applications
INtime SDK v7 > Using INtime Software > Developing INtime Applications

Contents

Typically, you develop both Windows and RT source code as shown in this illustration. The remainder of this topic details each step. This topic also describes INtime software's sample applications.

Create project

To develop RT applications using INtime software, you must have INtime installed on your system, and a supported version of Microsoft Visual Studio running. Supported versions include:

Note that INtime cannot be integrated with the Community/Express editions of Visual Studio versions. However, the Community edition of Visual Studio 2013 and later is compatible with INtime add-ins.

Before creating the project, decide how to set it up. Typical structures for INtime applications include:

An INtime application typically results in a minimum of one Windows executable (a .DLL or .EXE file) and one RT executable (an .RTA file).

Develop Windows source code

To develop the Windows portion of an INtime application, use Microsoft Visual Studio as you normally would:

  1. With Microsoft Visual Studio running, select a standard application wizard. Use the wizard to build the Windows portion of your INtime application.
  2. You need to add the include path $(INtime)\nt\lib\ to the linker and add the ntx.lib. Most probably also ntxext.lib and ntxbrow.lib. The compiler needs to find the headers in $(INtime)\nt\include
  3. Use the Microsoft Visual Studio's editor to edit the generated code and link the application.
  4. When editing your Windows source code, use the NTX calls provided with INtime software to access RT functionality.
  5. Debug with the debugger included as part of Microsoft Visual Studio.

Adding the INtime RT Client Browser to your INtime application

The INtime RT Client Browser (INBROW.OCX) is an ActiveX control that you can add to your INtime applications. Add the browser using the Microsoft Visual Studio menu. The Node Browser then displays as an available control on the Controls Toolbar. Add the control to the dialog you desire. For information about including ActiveX controls in projects, see the Microsoft Visual Studio documentation.

Once in your project, the control offers these functions:

Function Description
GetCurrentName Obtains the name of the item highlighted in the INtime RT Client Browser.
GetCurrentState Obtains the state of the item highlighted in the INtime RT Client Browser. Valid states include:
0 Not an INtime node
1 ACTIVE; RT nodes the browser currently can communicate with.
2 OFFLINE; RT nodes the browser has but cannot currently communicate with.
3 CONFIG; RT nodes the browser has not communicated with. These nodes may not exist.
4 DISCONNECTED; RT nodes that are disconnected.
GetMask Indicates which RT nodes display in the INtime RT Client Browser.
SetCurrentName Not supported.
SetCurrentState Not supported.
SetMask Specify a mask that defines which RT nodes to display, as a combination of:
1 Show ACTIVE nodes.
2 Show OFFLINE nodes.
4 Show CONFIG nodes.
8 Do not show LOCAL nodes.
16 Only show LOCAL nodes.
32 Show DISCONNECTED nodes.

If not explicitly set, the mask is 0x27, which means one of the following:

  • ACTIVE: RT nodes the browser currently can communicate with.
  • OFFLINE: RT nodes the browser has but cannot currently communicate with.
  • CONFIG: RT nodes the browser has not communicated with. These nodes may not exist.
  • DISCONNECTED: RT nodes that are disconnected.
SetSelected Identifies which INtime node to select in the Browser window when you specify a pointer to a string that contains a node name. This function returns TRUE if the name is valid and selected; otherwise it returns FALSE.

Develop RT source code

To develop the RT portion of an INtime application, use the INtime wizards available in Microsoft Visual Studio. The INtime wizards guide you through the decisions required to develop the RT portion of an INtime application and generate the corresponding code framework which you fine-tune in Microsoft Visual Studio's editor.

You can choose to develop your application using the native INtime API, which is a fully-featured RTOS API, or else you can choose to develop against the IWIN32 API, a WIN32-compatible API with some extensions for real-time programming, which may make application development quicker when porting code from Windows. You can find a porting guide from migrating WIndows code to INtime IWIN32 here.

You can select one of these INtime wizards:

Run the INtime Application wizard

To create the RT portion of an INtime application:

  1. Select what you want to generate:
    • An empty project (the wizard simply sets up the correct compiler and linker settings for you). If you select this option, go to step 4.
    • A simple "Hello World" application (the wizard creates a simple source file and adds it to the project). If you select this option, go to step 4.
    • A minimal iwin32 application (the wizard creates a project with one source file, set up to use iwin32 API calls). If you select this option, go to step 4.
    • A full-featured INtime application. If you select this option, continue to the next step.
  2. Add elements to your process:
    1. Select one or more elements from the main screen to add to your RT application:
      • Mailbox or semaphore server thread
      • Thread that operates at a regular interval
      • Interrupt handling
      • Shared memory allocation
      • Client thread
        Note: For detailed information about the fields on these screens, see the RT process wizard Help.
    2. Click the Add element button. That element's detail screen displays.
    3. Specify element parameter values.
    4. When satisfied with an element's settings, click the OK button. The wizard's main screen displays again.
  3. (Optional) Change the global process settings:
    1. Select the -global option from the main screen.
      Note: You must click in the Name column to access this detail screen.
    2. Specify global process values.
    3. When satisfied with the global settings, click the OK button. The wizard's main screen displays again.
      Note: If you don't access this screen now, the wizard prompts you to verify global settings before generating the process.
  4. Generate the process: The wizard creates a project from the settings you specified.
    1. Click the Generate Process button. If you did not access the Global settings screen, the wizard prompts you to edit or accept the global process settings. The wizard then displays the New Project Information screen and prompts you to verify the process information.
    2. Click the OK button. The wizard creates a process from the settings you specified. A process may include these files:
      • Main file (which has the project name) with a .C or .CPP extension; for example: TEST.C.
      • INtime project file TEST.intp, c project file TEST.vcproj, and solution file TEST.sln.
      • Project header file with a .H extension.
      • Utility function file, UTIL.C.
      • A C source file with a .C extension for each thread.
      • A text file called README.TXT that describes each generated file.

Running the INtime Application Add-in wizard

The INtime Application Add-in wizard can be used only for a project generated by the INtime Application wizard with the C++ and Full-Featured options selected. To start it, select Tools>TenAsys INtime C++ wizard.

To modify an existing process:

  1. Add elements to your process:
    1. Select one or more elements from the main screen to add to your RT application:
      • Mailbox or semaphore server thread
      • Thread that operates at a regular interval
      • Interrupt handling
      • Shared memory allocation
      • Client thread
        Note: For detailed information about the fields on these screens, see the INtime Application wizard Help.
    2. Click the Add element button. That element's detail screen displays.
    3. Specify element parameter values.
    4. When satisfied with an element's settings, click the OK button. The wizard's main screen displays again and a message indicates what the wizard added to the process.
  2. When you are satisfied with your additions, click the Close button to exit the wizard.

Running the INtime Shared Library wizard

The INtime Shared Library wizard generates the framework for a Real-time shared library. The code generated illustrates how to export both function and variable names, and also initializes the project settings to correctly generate an RSL.

The generated files include:

The main file contains an RslMain function which you can modify, if required. A default RslMain function is linked if this function is deleted from the source file.

Running the INtime Static Library wizard

The INtime Static Library wizard generates a project that builds a static library fit for linking into INtime projects. After running the wizard, the library is empty. Add files as necessary. Successfully building a static library project results in a LIB file that can be linked into other projects.

The difference between a static and a shared library is that code and data from a static library is added to an executable file at link time, whereas code and data from a shared library is added only when the executable file loads. With a shared library, the shared code can be updated without rebuilding the executable file, but use of a shared library involves some minor overhead.

Use of 3rd-Part Libraries

In certain cases, 3rd-party static libraries developed for WIndows may also be linked to INtime applications. These libraries must have no external dependencies on Windows system calls and other libraries, and must not reference DLLs.

An example of such a library would be the Intel Performance Primitives libraries (see this link for details).

C++ versions, include paths and libraries

The C++ implementation has changed as the capabilities of the Visual Studio compilers has been upgraded. The map of different library versions to Visual Studio/Platform Toolset versions is as follows:

For detailed settings, see the sections below for each Visual Studio / Platform Toolchain.

Compile

Use Microsoft Visual Studio to compile and link the application. The RT portion of INtime applications requires certain project settings. If you use INtime wizards to develop the RT portion of your application, the wizards will set up your project properly. Settings vary, depending on whether you configured Microsoft Visual Studio to build a debug or a release version.

To view and verify settings required by INtime software, select Microsoft Visual Studio's Build>Settings menu option.

Note:   Only required RT portion settings are listed. You can enter the values you want in fields for which no setting is listed.

Visual Studio settings vary, depending on the version you use. Go to the appropriate section to see the settings for your version.

Note:   The settings for each version apply specifically to the Platform Toolchain version in use, rather than the Visual Studio version. For example you can create a project in Visual Studio 2017 but specify the Platform Toolchain version from Visual Studio 2015 (v140). The settings must be made for toolset v140 in this case.

Visual Studio 2022 / Platform Toolset v143 settings

Note: VS2022 defaults to build C++23 modules (as of version 17.6.2) which is not supported at this time by INtime. To compile, please set the C++ language property "Build ISO C++23 Standard Library Modules" to "No", or set the advanced property "Compile As" to "Compile as C Code (/TC)" with a .c source.
Note: These settings have been updated for INtime SDK 7 and later versions.
General
Debug Release Field Value
X X Target Extension rta or rsl
X X Platform Toolset Visual Studio 2022 (v143)
X X Use of MFC Use Standard Windows Libraries
X X Character Set Not Set
X X Common Language Runtime support No Common Language Runtime support
X X WIndows Store App Support No

Debugging
Debug Release Field Value
X X Debugger to launch INtimeDebugger
X X Command Arguments command line arguments to be passed to the RTA
only used when starting the RTA through Visual Studio
X X RSL debug process path of an RTA to load when debugging an RSL project
only used when starting the RTA through Visual Studio
X X Attach to process No: create the RSL debug process;
Yes: attach to the already running RSL debug process
only used when starting the RTA through Visual Studio

C/C++ (Remove any reference to cpp17 include path)
Debug Release Category Field Value
X X General Additional Include Directories

Must include:
%INTIME%rt\include\cpp20 (if using C++)
%INTIME%rt\include\network7 (if using networking)
%INTIME%rt\include
(in that order)

X Debug Information Format Program Database
X X Preprocessor Preprocessor definitions

__C99__ (in the platform defaults)
__INTIME__ (in the platform defaults)
__INTIME_CPP20 (if using C++)
_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS (if using C++)_SILENCE_BOGUS_WARNINGS (if using C++)
_HAS_NAMESPACE (if using C++)
_HAS_FEATURES_REMOVED_IN_CXX20
UNICODE and _UNICODE (if using wide-character strings)

X X Ignore Standard Include Files Yes
X X Code Generation Security Check Yes for Debug configuration,
No for Release configuration
X X Advanced Compile as Compile as C++ Code (/TP) (if you choose C++)

Linker
Debug Release Category Field Value
X X General Version

21076.20052 (do not use XM mode by default)
21076.20053 (use XM mode by default)

X X Enable Incremental Linking No
X X Additional Library Directories Must include %INTIME%rt\lib
X X Input Additional Dependencies

vshelper17.lib
clib.lib
rt.lib
pcibus.lib
netlib.lib  (if using networking)
(mathsp17.lib is built into the CPP20 support RSL)

X cpplib20d.lib (for C++, Debug)
X cpplib20r.lib (for C++, Release)
X X Ignore All Default Libraries Yes
X X System Subsystem: Console
X X Heap Reserve Size 0 (zero) which sets this value to the maximum pool size (in bytes)
X X Heap Commit Size 0 (zero) which sets this value to the minimum pool size (in bytes)
X X Stack Reserve Size Virtual segment (size in bytes)
X X Stack Commit Size Stack size for the main thread (in bytes)

In the list of object/library modules, the following choices depend on other settings:

  1. For C++ projects that use the INtime RT classes, add rtpp17d.lib for the debug version and rtpp17.lib for the release version.
  2. For C++ projects, add cpplib17.lib.
INtime Properties
Debug Release Field Value
X X INtime Node The INtime node where to debug this application
X X Pool minimum minimum pool size in bytes; zero means the loader calculates minimum required
X X Pool maximum maximum pool size in bytes; zero means no limit
X X Virtual segment size virtual segment size in bytes (maximum process address range in XM mode)
X X Initial thread stack size Stack size for the main thread in bytes
X X Object directory size number of entries in the object directory;
only used when starting the RTA through Visual Studio
X X Allow execution in data segment yes: executing code in a data segment is OK;
no: trying to execute code in a data segment causes a fault
only used when starting the RTA through Visual Studio
X X Use XM mode (Applies to applications only) Create this RTA so it creates an XM process by default.


Visual Studio 2019 / Platform Toolset v142 settings

Note: These settings have been updated for INtime SDK 6.4.19245.1 and later versions.
General
Debug Release Field Value
X X Target Extension rta or rsl
X X Platform Toolset Visual Studio 2019 (v142)
X X Use of MFC Use Standard Windows Libraries
X X Character Set Not Set
X X Common Language Runtime support No Common Language Runtime support
X X WIndows Store App Support No

Debugging
Debug Release Field Value
X X Debugger to launch INtimeDebugger
X X Command Arguments command line arguments to be passed to the RTA
only used when starting the RTA through Visual Studio
X X RSL debug process path of an RTA to load when debugging an RSL project
only used when starting the RTA through Visual Studio
X X Attach to process No: create the RSL debug process;
Yes: attach to the already running RSL debug process
only used when starting the RTA through Visual Studio

C/C++
Debug Release Category Field Value
X X General Additional Include Directories

Must include:
%INTIME%rt\include\cpp20 (if using C++)
%INTIME%rt\include\network7 (if using networking)
%INTIME%rt\include
(in that order)

X Debug Information Format Program Database
X X Preprocessor Preprocessor definitions

__C99__ (in the platform defaults)
__INTIME__ (in the platform defaults)
__INTIME_CPP20 (if using C++)
_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS (if using C++)_SILENCE_BOGUS_WARNINGS (if using C++)
_HAS_NAMESPACE (if using C++)
UNICODE and _UNICODE (if using wide-character strings)

X X Ignore Standard Include Files Yes
X X Code Generation Security Check Yes for Debug configuration,
No for Release configuration
X X Advanced Compile as Compile as C++ Code (/TP) (if you choose C++)

Linker
Debug Release Category Field Value
X X General Version

21076.20052 (do not use XM mode by default)
21076.20053 (use XM mode by default)

X X Enable Incremental Linking No
X X Additional Library Directories Must include %INTIME%rt\lib
X X Input Additional Dependencies

rt.lib
pcibus.lib
netlib.lib    (if using networking)
clib.lib
vshelper17.lib

X rtpp17d.lib cpplib17d.lib (for C++, Debug)
X rtpp17.lib cpplib17.lib (for C++, Release)
X X Ignore All Default Libraries Yes
X X System Subsystem: Console
X X Heap Reserve Size 0 (zero) which sets this value to the maximum pool size (in bytes)
X X Heap Commit Size 0 (zero) which sets this value to the minimum pool size (in bytes)
X X Stack Reserve Size Virtual segment (size in bytes)
X X Stack Commit Size Stack size for the main thread (in bytes)

In the list of object/library modules, the following choices depend on other settings:

  1. For C++ projects that use the INtime RT classes, add rtpp17d.lib for the debug version and rtpp17.lib for the release version.
  2. For C++ projects, add cpplib17.lib.
INtime Properties
Debug Release Field Value
X X INtime Node The INtime node where to debug this application
X X Pool minimum minimum pool size in bytes; zero means the loader calculates minimum required
X X Pool maximum maximum pool size in bytes; zero means no limit
X X Virtual segment size virtual segment size in bytes (maximum process address range in XM mode)
X X Initial thread stack size Stack size for the main thread in bytes
X X Object directory size number of entries in the object directory;
only used when starting the RTA through Visual Studio
X X Allow execution in data segment yes: executing code in a data segment is OK;
no: trying to execute code in a data segment causes a fault
only used when starting the RTA through Visual Studio
X X Use XM mode (Applies to applications only) Create this RTA so it creates an XM process by default.


Visual Studio 2017 / Platform Toolset v141 settings

Note: These settings have been updated for INtime SDK 6.3.19060.1 and later versions.
General
Debug Release Field Value
X X Target Extension rta or rsl
X X Platform Toolset Visual Studio 2017 (v141)
X X Use of MFC Use Standard Windows Libraries
X X Character Set Not Set
X X Common Language Runtime support No Common Language Runtime support
X X WIndows Store App Support No

Debugging
Debug Release Field Value
X X Debugger to launch INtimeDebugger
X X Command Arguments command line arguments to be passed to the RTA
only used when starting the RTA through Visual Studio
X X RSL debug process path of an RTA to load when debugging an RSL project
only used when starting the RTA through Visual Studio
X X Attach to process No: create the RSL debug process;
Yes: attach to the already running RSL debug process
only used when starting the RTA through Visual Studio

C/C++
Debug Release Category Field Value
X X General Additional Include Directories

Must include:
%INTIME%rt\include\cpp17 (if using C++)
%INTIME%rt\include\network7 (if using networking)
%INTIME%rt\include
(in that order)

X Debug Information Format Program Database
X X Preprocessor Preprocessor definitions

__C99__ (in the platform defaults)
__INTIME__ (in the platform defaults)
__INTIME_CPP17 (if using C++)
_SILENCE_ALL_CXX17_DEPRECATION_WARNINGS (if using C++)
_HAS_NAMESPACE (if using C++)
UNICODE and _UNICODE (if using wide-character strings)

X X Ignore Standard Include Files Yes
X X Code Generation Security Check Yes for Debug configuration,
No for Release configuration
X X Advanced Compile as Compile as C++ Code (/TP) (if you choose C++)

Linker
Debug Release Category Field Value
X X General Version

21076.20052 (do not use XM mode by default)

21076.20053 (use XM mode by default)

X X Enable Incremental Linking No
X X Additional Library Directories Must include %INTIME%rt\lib
X X Input Additional Dependencies

rt.lib
pcibus.lib
netlib.lib    (if using networking)
clib.lib
vshelper17.lib

X rtpp17d.lib cpplib17d.lib (for C++, Debug)
X rtpp17.lib cpplib17.lib (for C++, Release)
X X Ignore All Default Libraries Yes
X X System Subsystem: Console
X X Heap Reserve Size 0 (zero) which sets this value to the maximum pool size (in bytes)
X X Heap Commit Size 0 (zero) which sets this value to the minimum pool size (in bytes)
X X Stack Reserve Size Virtual segment (size in bytes)
X X Stack Commit Size Stack size for the main thread (in bytes)

In the list of object/library modules, the following choices depend on other settings:

  1. For C++ projects that use the INtime RT classes, add rtpp17d.lib for the debug version and rtpp17.lib for the release version.
  2. For C++ projects, add cpplib17.lib.
INtime Properties
Debug Release Field Value
X X INtime Node The INtime node where to debug this application
X X Pool minimum minimum pool size in bytes; zero means the loader calculates minimum required
X X Pool maximum maximum pool size in bytes; zero means no limit
X X Virtual segment size virtual segment size in bytes (maximum process address range in XM mode)
X X Initial thread stack size Stack size for the main thread in bytes
X X Object directory size number of entries in the object directory;
only used when starting the RTA through Visual Studio
X X Allow execution in data segment yes: executing code in a data segment is OK;
no: trying to execute code in a data segment causes a fault
only used when starting the RTA through Visual Studio
X X Use XM mode (Applies to applications only) Create this RTA so it creates an XM process by default.


Visual Studio 2015 / Platform Toolset v140 settings

General
Debug Release Field Value
X X Target Extension rta or rsl
X X Platform Toolset Visual Studio 2015 (v140)
X X Use of MFC Use Standard Windows Libraries
X X Use of ATL Not using ATL
X X Character Set Not Set
X X Common Language Runtime support No Common Language Runtime support
X X WIndows Store App Support No

Debugging
Debug Release Field Value
X X Debugger to launch INtimeDebugger
X X Command Arguments command line arguments to be passed to the RTA
only used when starting the RTA through Visual Studio
X X RSL debug process path of an RTA to load when debugging an RSL project
only used when starting the RTA through Visual Studio
X X Attach to process No: create the RSL debug process;
Yes: attach to the already running RSL debug process
only used when starting the RTA through Visual Studio

C/C++
Debug Release Category Field Value
X X General Additional Include Directories

Must include:

%INTIME%rt\include\cpp11 (if using C++)
%INTIME%rt\include\network7 (if using networking)
%INTIME%rt\include
(in that order)

X Debug Information Format Program Database
X X Preprocessor Preprocessor definitions

__C99__ (if in the platform defaults)
__INTIME__ (if in the platform defaults)

__INTIME_CPP11 (if using C++11)
_HAS_NAMESPACE (if using C++11)
UNICODE and _UNICODE (if using wide-character strings)

X X Ignore Standard Include Files Yes
X X Code Generation Security Check Yes for Debug configuration,
No for Release configuration
X X Advanced Compile as Compile as C++ Code (/TP) (if you choose C++)

Linker
Debug Release Category Field Value
X X General Version

21076.20052 (do not use XM mode by default)

21076.20053 (use XM mode by default)

X X Enable Incremental Linking No
X X Additional Library Directories Must include %INtime%rt\lib
X X Input Additional Dependencies

rt.lib
pcibus.lib
netlib.lib
clib.lib
vshelper.lib

X rtpp11d.lib cpplib11.lib (for C++, Debug)
X rtpp11.lib cpplib11.lib (for C++, Release)
X X Ignore All Default Libraries Yes
X X System Subsystem: Console
X X Heap Reserve Size 0 (zero) which sets this value to the maximum pool size (in bytes)
X X Heap Commit Size 0 (zero) which sets this value to the minimum pool size (in bytes)
X X Stack Reserve Size Virtual segment (size in bytes)
X X Stack Commit Size Stack size for the main thread (in bytes)

In the list of object/library modules, the following choices depend on other settings:

  1. For C++ projects that use the INtime RT classes, add rtpp11d.lib for the debug version and rtpp11.lib for the release version.
  2. For C++ projects, add cpplib11.lib.
INtime Properties
Debug Release Field Value
X X INtime Node The INtime node where to debug this application
X X Pool minimum minimum pool size in bytes; zero means the loader calculates minimum required
X X Pool maximum maximum pool size in bytes; zero means no limit
X X Virtual segment size virtual segment size in bytes (maximum process address range in XM mode)
X X Initial thread stack size Stack size for the main thread in bytes
X X Object directory size number of entries in the object directory;
only used when starting the RTA through Visual Studio
X X Allow execution in data segment yes: executing code in a data segment is OK;
no: trying to execute code in a data segment causes a fault
only used when starting the RTA through Visual Studio
X X Use XM mode (Applies to applications only) Create this RTA so it creates an XM process by default.


Visual Studio 2013 / Platform Toolset v120 settings

General
Debug Release Field Value
X X Target Extension rta or rsl
X X Platform Toolset Visual Studio 2013 (v120)
X X Use of MFC Use Standard Windows Libraries
X X Use of ATL Not using ATL
X X Character Set Not Set
X X Common Language Runtime support No Common Language Runtime support
X X WIndows Store App Support No

Debugging
Debug Release Field Value
X X Debugger to launch INtimeDebugger
X X Command Arguments command line arguments to be passed to the RTA
only used when starting the RTA through Visual Studio
X X RSL debug process path of an RTA to load when debugging an RSL project
only used when starting the RTA through Visual Studio
X X Attach to process No: create the RSL debug process;
Yes: attach to the already running RSL debug process
only used when starting the RTA through Visual Studio

C/C++
Debug Release Category Field Value
X X General Additional Include Directories

Must include:
%INTIME%rt\include\cpp07 (if using C++)
%INTIME%rt\include\network7 (if using networking)
%INtime%rt\include (in that order)

X Debug Information Format Program Database (recommended for Debug configuration only)
X X Preprocessor Preprocessor definitions __C99__ (is in the platform defaults)
__INTIME__ (is in the platform defaults)
__INTIME_CPP07 (if you choose C++)
__CPP_LIB_DLL_V1 (if you choose C++)
_HAS_NAMESPACE (if you choose C++)
UNICODE and _UNICODE (if using wide-character strings)
X X Ignore Standard Include Files Yes
X X Code Generation Security Check Yes for Debug configuration,
No for Release configuration
X X Advanced Compile as Compile as C++ Code (/TP) (if you choose C++)

Linker
Debug Release Category Field Value
X X General Version

21076.20052 (do not use XM mode by default)

21076.20053 (use XM mode by default)

X X Enable Incremental Linking No
X X Additional Library Directories Must include %INtime%rt\lib
X X Input Additional Dependencies

rt.lib
pcibus.lib
netlib.lib
clib.lib
vshelper.lib

X rtpp07d.lib cpplib07.lib (for C++, Debug)
X rtpp07.lib cpplib07.lib (for C++, Release)
X X Ignore All Default Libraries Yes
X X System Subsystem: Console
X X Heap Reserve Size 0 (zero) which sets this value to the maximum pool size (in bytes)
X X Heap Commit Size 0 (zero) which sets this value to the minimum pool size (in bytes)
X X Stack Reserve Size Virtual segment (size in bytes)
X X Stack Commit Size Stack size for the main thread (in bytes)

In the list of object/library modules, the following choices depend on other settings:

  1. For C++ projects that use the INtime RT classes, add rtppd.lib for the debug version and rtpp.lib for the release version.
  2. For C++ projects, add cpplib.lib.
INtime Properties
Debug Release Field Value
X X INtime Node The INtime node where to debug this application
X X Pool minimum minimum pool size in bytes; zero means the loader calculates minimum required
X X Pool maximum maximum pool size in bytes; zero means no limit
X X Virtual segment size virtual segment size in bytes (maximum process address range in XM mode)
X X Initial thread stack size Stack size for the main thread in bytes
X X Object directory size number of entries in the object directory;
only used when starting the RTA through Visual Studio
X X Allow execution in data segment yes: executing code in a data segment is OK;
no: trying to execute code in a data segment causes a fault
only used when starting the RTA through Visual Studio
X X Use XM mode (Applies to applications only) Create this RTA so it creates an XM process by default.


Visual Studio 2012 / Platform Toolset v110 settings

General
Debug Release Field Value
X X Target Extension rta or rsl
X X Platform Toolset Visual Studio 11 (v110)
X X Use of MFC Use Standard Windows Libraries
X X Use of ATL Not using ATL
X X Character Set Not Set (Unicode not supported)
X X Common Language Runtime support No Common Language Runtime support
X X WIndows Store App Support No

Debugging
Debug Release Field Value
X X Debugger to launch INtimeDebugger
X X Command Arguments command line arguments to be passed to the RTA
only used when starting the RTA through Visual Studio
X X RSL debug process path of an RTA to load when debugging an RSL project
only used when starting the RTA through Visual Studio
X X Attach to process No: create the RSL debug process;
Yes: attach to the already running RSL debug process
only used when starting the RTA through Visual Studio

C/C++
Debug Release Category Field Value
X X General Additional Include Directories Must include %INTIME%rt\include\cpp07 and %INtime%rt\include (in that order)
X Debug Information Format Program Database (recommended for Debug configuration only)
X X Preprocessor Preprocessor definitions __C99__ (is in the platform defaults)
__INTIME__ (is in the platform defaults)
__INTIME_CPP07 (if you choose C++)
__CPP_LIB_DLL_V1 (if you choose C++)
_HAS_NAMESPACE (if you choose C++)
UNICODE and _UNICODE (if using wide-character strings)
X X Ignore Standard Include Files Yes
X X Code Generation Security Check Yes for Debug configuration,
No for Release configuration
X X Advanced Compile as Compile as C++ Code (/TP) (if you choose C++)

Linker
Debug Release Category Field Value
X X General Version 21076.20052
X X Enable Incremental Linking No
X X Additional Library Directories Must include %INtime%rt\lib
X X Input Additional Dependencies rt.lib
pcibus.lib
netlib.lib
clib.lib
vshelper.lib
X rtpp07d.lib cpplib07.lib (for C++, Debug)
X rtpp07.lib cpplib07.lib (for C++, Release)
X X Ignore All Default Libraries Yes
X X System Subsystem: Console
X X Heap Reserve Size 0 (zero) which sets this value to the maximum pool size (in bytes)
X X Heap Commit Size 0 (zero) which sets this value to the minimum pool size (in bytes)
X X Stack Reserve Size Virtual segment (size in bytes)
X X Stack Commit Size Stack size for the main thread (in bytes)

In the list of object/library modules, the following choices depend on other settings:

  1. For C++ projects that use the INtime RT classes, add rtppd.lib for the debug version and rtpp.lib for the release version.
  2. For C++ projects, add cpplib.lib.
INtime Properties
Debug Release Field Value
X X INtime Node The INtime node where to debug this application
X X Pool minimum minimum pool size in bytes; zero means the loader calculates minimum required
X X Pool maximum maximum pool size in bytes; zero means no limit
X X Virtual segment size virtual segment size in bytes (maximum process address range in XM mode)
X X Initial thread stack size Stack size for the main thread in bytes
X X Object directory size number of entries in the object directory;
only used when starting the RTA through Visual Studio
X X Allow execution in data segment yes: executing code in a data segment is OK;
no: trying to execute code in a data segment causes a fault
only used when starting the RTA through Visual Studio
X X Use XM mode (Applies to applications only) Create this RTA so it creates an XM process by default.



See Also

References