Keycorp Limited
 



r.a.d.menu is empty. Please, specify correct XML data file in the ContentFile property, populate the menu at run-time or define menu structure inline.
D:\WebRoot\MCMS\KeycorpCms_V2\Site\KC
r.a.d.menu is empty. Please, specify correct XML data file in the ContentFile property, populate the menu at run-time or define menu structure inline.
D:\WebRoot\MCMS\KeycorpCms_V2\Site\KC
Home  /  Support  /  I.D.E.E.A  / I.D.E.E.A FAQs

Overview


Summary
 




     
BitMap Editor: saving part of a bitmap as a header file is not available.
It is only possible to save the entire bitmap as a header file. Cut and paste to a new smaller bitmap to save part of the original larger bitmap as a header file.
 
     
Attempting to build the Remote Application from the supplied source code results in "error : 'c_OLDLAN' : undeclared identifier."
In the remote application project, replace the ID_HibOldLan section of hib_id.h with the following code: #define c_OLDLAN 30 #define C_OLDLAN ((WORD)c_OLDLAN << CLASS_POS) #define ID_HibOldLanGetVersion (L_HIB | C_OLDLAN | (CALL_MASK & 0x0000)) #define ID_HibOldLanInit (L_HIB | C_OLDLAN | (CALL_MASK & 0x0001)) #define ID_HibOldLanOpenChannel (L_HIB | C_OLDLAN | (CALL_MASK & 0x0002)) #define ID_HibOldLanConnectHost (L_HIB | C_OLDLAN | (CALL_MASK & 0x0003)) #define ID_HibOldLanAsyncPutString (L_HIB | C_OLDLAN | (CALL_MASK & 0x0004)) #define ID_HibOldLanAsyncPutChar (L_HIB | C_OLDLAN | (CALL_MASK & 0x0005)) #define ID_HibOldLanAsyncGetString (L_HIB | C_OLDLAN | (CALL_MASK & 0x0006)) #define ID_HibOldLanAsyncGetChar (L_HIB | C_OLDLAN | (CALL_MASK & 0x0007)) #define ID_HibOldLanPutFrame (L_HIB | C_OLDLAN | (CALL_MASK & 0x0008)) #define ID_HibOldLanGetFrame (L_HIB | C_OLDLAN | (CALL_MASK & 0x0009)) #define ID_HibOldLanFlushTxRx (L_HIB | C_OLDLAN | (CALL_MASK & 0x000A)) #define ID_HibOldLanGetConfig (L_HIB | C_OLDLAN | (CALL_MASK & 0x000B)) #define ID_HibOldLanGetExtStatus (L_HIB | C_OLDLAN | (CALL_MASK & 0x000C)) #define ID_HibOldLanGetStatus (L_HIB | C_OLDLAN | (CALL_MASK & 0x000D)) #define ID_HibOldLanDropLine (L_HIB | C_OLDLAN | (CALL_MASK & 0x000E)) #define ID_HibOldLanCloseChannel (L_HIB | C_OLDLAN | (CALL_MASK & 0x000F)) #define ID_HibOldLanExtConnectHost (L_HIB | C_OLDLAN | (CALL_MASK & 0x0010)) #define ID_HibOldLanAnswerCall (L_HIB | C_OLDLAN | (CALL_MASK & 0x0011))
 
     
Inconsistency between I.D.E.E.A. and terminals when setting environment variables [REF:CPR1165]
There is an inconsistency to do with "WORD" type environment variables which leads to a number of problems:1. The same user code produces different results when run under IDEEA and on a terminal2. Appman is incorrectly setting Power Off time out (DPT) and Activity Timeout (DBT) timeout values based on the incorrect format of data being downloaded from IDEEA.3. It is not clear how "WORD" type environment variables should be entered in IDEEA settings (ie how is a binary value of 0x0006 to be entered). Context sensitive help or instructions should be available when entering these values.4. The default values for DPT and DBT provided in IDEEA appear to be incorrectly interpreted by Appman as a setting of "0" seconds turns out to be 50:00 minutes on the terminal (K78). Ideea version is 4.2.2Appman version is 2.18The results from the same code run from IDEEA and the k78 are: RUN FROM IDEEADPT:x0000DBT:x3C00 RUN FROM A K78DPT:x30303030DBT:x30303630 The following is the code used to demonstrate this (full module attached): ERRNO AppPowerUp(FLAG fFastPowerOn){ ERRNO xErr; BYTE bEnvVarLen; BYTE bEnvVar[10]; TEXT tEnvName[4];... strcpy( tEnvName, "DPT" ); bEnvVarLen = sizeof( bEnvVar ); xErr = ApmGetEnvVar( tEnvName, (BPTR)&bEnvVar, (BPTR)&bEnvVarLen ); DebugHexStream( D1_OUTPUT_INFO_MSG, tEnvName, bEnvVar, bEnvVarLen ); strcpy( tEnvName, "DBT" ); bEnvVarLen = sizeof( bEnvVar ); xErr = ApmGetEnvVar( tEnvName, (BPTR)&bEnvVar, (BPTR)&bEnvVarLen ); DebugHexStream( D1_OUTPUT_INFO_MSG, tEnvName, bEnvVar, bEnvVarLen );
 
     
When building an application in I.D.E.E.A. the "region application_code is full" appears (I.D.E.E.A. v4.0 or later) [REF:CPR1395]
Linking W:\POSAPPK23\MainApp\Build\GCC\MainApp ... C:\Ideea4\Embedded\Tools\Cygnus\BIN\ld.exe -mh8300s --warn-common --warn-once --cref -LC:\Ideea4\Embedded\Tools\Cygnus\LIB\h8300s/int32/ -T W:\POSAPPK23\MainApp\Build\GCC\MainApp.LD -o W:\POSAPPK23\MainApp\Build\GCC\MainApp.hex -Map W:\POSAPPK23\MainApp\Build\GCC\MainApp.map/Ideea4/Embedded/Tools/Cygnus/BIN/ld.exe: region application_code is full (W:\POSAPPK23\MainApp\Build\GCC\MainApp.hex section .romdata)NMAKE : U1077: 'javascript:void(null);' : return code '0x1'Stop. *** The process failed! A work-around is available as follows: A. In I.D.E.E.A. with the project loaded, click on Tools->Memory Configurator.B. Make note of the application name with a red "X" next to it.C Make note of the Code Segment end address for the app on the LINE BEFORE the item with a red X. You must manually change the code segment start address for item in B so that it starts after the value obtained in step C. D. To change the start address press cancel from the memory configurator.E. Click Embedded->Settings->[Build] then on the left column on the Build window click on the app noted in step B.F. Change the value of "Code:". This value should be the number from step C rounded up to the nearest 0x010000. For example if value from C was 0x07BA72 then here enter 0x080000. G. Save.H. Click on your main project node in the I.D.E.E.A. window.I. Click on Embedded -> Batch Build.J. Click Tools->Memory Configurator (again).K. Click Auto configure.L. Repeat steps G to I.
 
     
SrvPrnSelectInternationalCharSet( SRVPRN_UNICODE ) returns ERR_SRVPRN_NOT_SUPPORTED [REF:CPR1429]
Although I.D.E.E.A.’S Online help (Components->Services->SrvPrn->Developer’s Guide ->Using Fonts->International Languages/Symbols) states “To use the Unicode codings, the function SrvPrnSelectInternationalCharSet should be called with an argument of SRVPRN_UNICODE” this function returns 0x664F (ERR_SRVPRN_NOT_SUPPORTED) when called as described. This function has not had support added for SRVPRN_UNICODE and therefore should not be used with this value for the parameter.
 
     
When I print a bitmap with SrvPrnPrintBitmap on a K78-2xx the printer occasionally prints strange characters and corrupts the image [REF:CPR940]
The workaround is to send "\x01D\x02F\x001" to the printer before printing the bitmap (to reduce the print speed) and then "\x001D\x02F\x005" after printing the bitmap (to restore the default print speed).For example:#ifdef K78 SrvPrnPrintString( "\x01D\x02F\x001" );#endifeStatus = SrvPrnPrintBitmap( (BPTR)bpMyLogo, (384 - MYLOGO_WIDTH)/2, 0, MYLOGO_WIDTH, MYLOGO_HEIGHT );#ifdef K78 SrvPrnPrintString( "\x01D\x02F\x005" );#endif
 
     
SrvNet: using a protocol stack incorporating IRDA can result in overflow error.
The IRDA protocol is currently limited to messages under 175 bytes in length. Larger messages result in an overflow error. No workaround available.
 
     
Physical COM ports not showing up in the download options.
If a COM port is currently in use by another application, then IDEEA cannot access it. This is why actual ports on your PC may not show up in the download options box. Ensure no other application is using the port or had used it and failed to release it back to the operating system.
 
     
GCC compiler/linker files contain contradictory information.
The GCC linker generates a map file showing the location and size of data/code associated with the application build. Output appears to be incorrect when blocks of code/data are explicitly reserved. The map file always displays two addresses with the second one being twice the size of the first. The double size address can be ignored.
 
     
For AppMan Applications and Applets, the path to the DLLs which were specified in the Options/AppMan Tab are not being loaded from a saved eep file in the registry.
You need to manually register the information. Use the following procedure to do this:1. Open the project file. ( Applet or Appman Application). 2. Go to the Embedded > Options > AppMan Tab.3. Record the Path to DLLs. 4. Use the registry editor, type the Path to DLLs in HKEY_CLASSES_ROOT\IDEEA\FILES\DLLS\Path.
 
     
The Applet Construction box fails to register all functions in the applet_tif.c file
In some circumstances the Generate Interface File button on the Applet Construction box will not generate an applet_tif.c file that contains all the functions you specify. The problem is due to a function prototype going over more than one line and/ or contain tabs. Modify the header files used so each function prototype is only on one line and contains no tabs.
 
     
Opening a previously saved project file results in I.D.E.E.A. shutting down or I.D.E.E.A. unable to open the file. [I.D.E.E.A. v3.0 only]
This occurs after switching back and forth between different projects during the one session. Install Service Pack One for Version 3 to fix this problem.
 
     
K71V-887 lacks the RSA configuration that is in the actual terminal.
The settings can be changed in the registry. Do not change registry settings unless you are certain the changes are necessary. The information is correct for Windows 98. Under HKEY_CLASSES_ROOT->IDEEA->DEVICES->K71V-887 add a key called RSA. In this key, add a new string value called KeySpaceSize. Set the value of KeySpaceSize to 1024.
 
     
Magnetic Card library and upgrading versions.
During an upgrade, any virtual magnetic cards you have stored will be lost. Record the information before upgrading.
 
     
I can't compile my application into a HEX file and Notepad displays just a blank page? [I.D.E.E.A. v3.3 or earlier]
This indicates a basic problem with the IAR compiler trying to compile your application. The details of the problem will logged in a file ‘C:\ERRORS.OUT’. Some of the other problems users may face in the process of generating embedded applications are listed below: The IAR (for DOS) compiler fails because of spaces in directories or file names. It also fails to handle long file names. Please do not use any directory or file with spaces or files with long names. The user may pin point problems when error messages about files (with names trimmed of the original files) not being found occur while generating the embedded application. Redirection (which is used in the generation of embedded applications) sometimes fails if your Visual C++ project file (*.mak or *.mdp) file resides on a network directory. This consequently leads to the failure in the generation of the embedded application. To counter this problem check your project files (not necessarily your source code) resides on the local drive.
 
     
How do I close the About box?
Simply click on it with either of the two mouse buttons.
 
     
How do I print from the LMON (Line Monitor) plug-in?
There are currently three options, the last of which is quite messy but nevertheless provided as a last resort. In the future, a feature will be added to be able to print directly from the Line Monitor plug-in. 1. Save the output as a Windows Metafile and using a metafile viewer, print out the contents of the file. 2. If only a small amount of information is required - say one screen of data - then screen dumps can capture the data screen of the line monitor and these can then be pasted into another document and printed out. 3. Save the file as a text file. This is very messy because quite a bit of garbage is saved in the text file as well.
 
     
How do I create bitmaps to be used in my code?
You can use BITMAP EDITOR which is a tool available with I.D.E.E.A. to create your bitmap. Launch the BITMAP EDITOR from the ‘Tools’ menu. You can then draw a bitmap using the drawing tools provided. Then from the BITMAP EDITOR ‘Tools’ menu you can save the bitmap to a .H header file, which will contain the bitmap in the form of a structure of bytes which can then be used directly in your source code.
 
     
How do I write my own plug-in? [I.D.E.E.A. v3.3 or earlier]
If you need to write your own customized plug-in the support to do this can be found in the UTILS\PLUG-IN.DEV directory.
 
     
How do I use REMOTE plug-in for smartcard and HDLC communication?
Smartcards calls are only available at the driver level with I.D.E.E.A. Also due to the wide variety of smartcards available in the market, I.D.E.E.A. cannot simulate all of them, so it has the facility to access smartcards through a "REMOTE" connection to a real Keycorp product which acts as a smartcard reader. The "REMOTE" connection is achieved through the PC’s serial port to the Keycorp product acting as a smartcard reader. The REMOTE Plug-in is configured through the ‘Configure, Plug-In’ menu, choosing REMOTE from the list of plug-ins and saying ‘Yes’ when asked to setup the application. The REMOTE setup dialog box asks for the serial port number of your PC on which the connection is to be setup. The baud rate currently needs to be set to 19200 baud. Also then check the smartcard channels that your application is going to address. Please note these channels will have to be available on your virtual product. After the REMOTE plug-in is setup, you will need to add the plug-in in your smartcard component configuration to enable it. Smartcard communication traffic can then be viewed in the browser windows that appear for each enabled channel whilst an I.D.E.E.A. simulation session is running. To use the REMOTE plug-in for HDLC communication, the REMOTE plug-in needs to be added to the UART channel that will handle HDLC on the virtual product in the topology. Also the real Keycorp Product that is driven by the REMOTE plug-in needs to support HDLC on one of it’s UART channels for it to work.
 
     
What is a K23PMK2 or K23PMKII?
This indicates a K23 PIN Pad "mark 2" which is has a faster clock speed and can address more memory (4mb FLASH standard) than the previous "mark 1" product. The following products numbers are "mark 2" PIN Pads: K23P-100, K23P-101, K23P-221, K23P-222, K23P-223, K23P-300, K23P-301, K23P-302, K23P-304, K23P-305, K23P-321, K23P-322, K23P-323, K23P-325, K23P-999
 
     
How many registered functions can be handled by Appman?
Each application or applet can have a maximum of 32 functions registered. As the maximum number of applications and applets that Appman allows is 16, overall the maximum is 512 service functions registered with Appman.
 
     
Can I replicate a project into a sub-directory of the original project directory [IDEEA V3.0 and 3.3]?
No, the project replicator would attempt to copy the new sub-directory as part of the original. The project replicator loops until running out of resources. E.g. trying to replicate from C:\parent to C:\parent\child would result in C:\parent\child\child\child\child etc.
 
     
How do I ensure the make file is updated after modifying files in the Visual C(tm) project?
Under Options - Build : tick the "export makefile when saving project file" option. This needs to be done only once after Visual C++(tm) is installed. This makes sure mak file is automatically updated when the files included in Visual C(tm) project is modified. It will slow saving the Visual C(tm) project but ensure generating embedded file.
 
     
Why does my application require different amounts of memory to store data when it is compiled for different targets?
The IAR, GCC and Visual C compilers may store enumerated types in different quantities of memory. This can lead to applications requiring different amounts of memory to store data depending upon the compiler used. For example, consider this type definition taken from the smartcard driver: typedef enum { DRVSCT_ISO_COMPLIANT, DRVSCT_EMV_COMPLIANT } DRVSCT_COMPLIANCE; type_size = sizeof(DRVSCT_ISO_COMPLIANT); When the GCC or Visual C compilers are used, the value in type_size will be 4. When the IAR compiler is used, the value will be 1.
 
     
How do I show/hide the Project Window or Toolbar?
Select from the main menu ‘View, Project’. If the Project option is checked then the Project Window would be visible otherwise not. A quicker way is to right click on the project window and choose hide on the pop-up menu. For the toolbar select the View, Toolbar option. The toolbar is visible if the Toolbar option is checked and not visible if it is unchecked.
 
     
Compiles using GCC
When Novell Client is installed, it places "Z:." into the path environment variable. If this directory is not at the end of the path, it causes GCC to search the network for the specified files. This is a problem if the source file is located on your local drive. Modify the path so that "Z:." appears at the end. Installing new software can also cause this problem if the new installation appends a new set of directories to the existing path. A deterioration in performance could be linked to the "Z:." directory not appearing at the end of the path environment variable. Modify the path so that "Z:." appears at the end.
 
     
Using the right mouse button in the project window.
Select the makefile in the project window and then right click and hold down the right mouse button. The location of the makefile will be displayed in a small balloon window.
 
     
Adding more than one item to your project.
You can add more than one makefile to your project by using the "Add Item" option from the File menu. This means that you can have the ability to make more than one application from within your project. This is particularly useful if you have more than one application which will be running under Application Manager on a terminal because you do not have to have separate projects for each application.
 
     
How do I access the configuration data if I have more than one component of the same type on a particular device?
Each component within a device (LED, LCD, MCR etc) has a configuration structure and a function call which enables you to access the configuration details from I.D.E.E.A. Some of products have more than one component of a particular type. If this is the case then the configuration structure has as a member, a pointer to the list of configuration data for each component. To access this with C code do the following (taking LED as an example): 1. Call the HibLedGetNoOfLeds function to determine how many LED's there are on the device. 2. Allocate enough memory for the individual HIBLEDDEV structures and assign the psHibLedDevConfig pointer to point to this allocated memory. 3. Call the HibLedGetConfig with the address of the HIBLEDCONFIG structure. 4. To access the individual structures either use [i] (where i is the index into the LED structure) as if accessing an array or increment the pointer to access the appropriate LED using the psHibLedDevConfig pointer. 5. Don't forget to free the memory which has been allocated to hold the configuration data.
 
     
How do I get extra copies of the manuals, CD, dongles, etc?
You can log the request via email through the Keycorp support area or ring the Keycorp support desk.
 
     
How often does this FAQ change?
The document is modified periodically and will be posted with new entries to the Keycorp web site quarterly at a minimum. If you have registered your email address details to our Keycorp I.D.E.E.A. support area you will be notified of a new entry to the Keycorp FAQ area of the website.
 
     
How do I move or copy my source files and Microsoft® Visual C/C++™ project to a different directory?
For I.D.E.E.A. v3.3 or earlier: Use the project replicator to move your project to a different directory. It will correctly set up the relative paths to your source files. Refer to the I.D.E.E.A. manual or online help for information on the project replicator tool. Refer also to special note below. I.D.E.E.A. v4.0 or later: Simply copy the contents to a new directory or rename the directory. Refer also to special note below. Special Note: The Microsoft® Visual C/C++™ project file may still refer to the "old" directory in which case edit the Microsoft Developer Studio File which has a file extension of .dsp in the BUILD directory of your project. Make a backup copy of the .dsp file before making any changes.
 
     
How do I increase the width that the simulator printer can print at?
This can be achieved by going into the I.D.E.E.A. ‘Configure, Plug-In’ menu. A dialog box will appear. Choose ‘Printer’ from the drop down list box listing the various Plug-Ins. Then press ‘OK’. A message box will appear asking you if you want to setup the application. On choosing ‘Yes’ the Printer setup dialog box will appear, allowing you to change the width.
 
     
What if picture colours get spoilt on running IDEEA?
This error occurs when the computer's hardware or software configuration is unable to cater for the palette needed to display the bitmaps used by the VisualUI component of IDEEA. For IDEEA to run properly there are two conditions; first check a Super VGA colour adapter along with a compatible monitor is being used, and second the display settings cater for a 16 bit colour palette.
 
     
What is the difference between a debug session and a non-debug session? [I.D.E.E.A. v3.3 or earlier]
Right clicking on a virtual product in a topology, brings up a choice for DEBUG or not. For a non-debug session you need to configure the product to run a compiled application to be run during the simulated session. This is done by specifying the name of a executable file in the ‘Embedded Application’ field in the Configure product dialog box. For a debug session, you need to start up the simulate session, with the DEBUG option set on. This will not start up any application for that node, and you then have the facility to manually start up a debug session using Microsoft® Visual C/C++™, setup your break-points, etc. and step through your application as it executes.
 
 

For details about any information on this page, please click here to send an email to TechnicalSupport@keycorp.net