Table of Contents Preface Chapter 1 Supported Files Dedicated Library and Utility 1.1.1 System Library 1.1.2 SIPanel Library 1.1.3 I/O Bootup Library 1.1.4 File Transfer Utility 1.1.5 File Check Utility Chapter 2 Development Environment Chapter 3 System Library Overview Details of Function CA_BacklightOn CA_BacklightOff CA_BacklightCheck...
Page 3
Method of Describing Pathname Conditions at Communication Partner 7.8.1 Rules of Naming File and Directory Pathname Setting Up Registry 7.9.1 Setting Up Items 7.9.2 Setting Up Registry with User Application 7.10 Termination Codes 7.11 Log File 7.12 Precautions 7.13 Details of Command and Option FLCE /Y FLCE /S FLCE /R...
PA-2400W (hereinafter referred to as "H/PC", which stands for Handheld PC). The PA-2400W uses the Windows CE operating system (Ver. 2.11), and uses the Win32 API functions to generate user application programs. However, more functions may be required if generating a business application, etc.
Starts up the SIPanel. Displays the SIPanel on the LCD screen or erases it from the screen. Checks the condition of connection between PA-2400W and I/O Box, and acquires a result of the status. Execution file Shortcut for PA-2400W-to-PA-2400W communication...
Page 6
SIPanel, you need to replace them. Each library function or utility command can be made available to the user when the DLL/EXE file is copied into the Windows directory on the PA-2400W (see the figure below). Host PC...
Enables or disables power on event notification. Acquires the status of enable/disable power on event notification. Description Starts up the SIPanel. Displays the SIP or erases it from the LCD screen. Description Monitoring the connection status of PA-2400W with I/O Box Page Page Page...
2. Development Environment Your own application program can be developed by implementing the CASIO’s dedicated library functions and utility commands listed in the previous pages under the following software development environment. Microsoft Visual C/C++ version 6.0 Microsoft Windows CE Toolkit for Visual C/C++ 6.0...
OFF supplement control, power-ON control with alarm, etc. These functions to be described in the next pages are developed only for the PA-2400W and therefore not guaranteed for use with other hardware platforms. Also, please note that it is not a Windows CE general-...
During an event of low battery, the backlight still can be turned on. However, because of inrush current at a time of turning on the backlight, the power of PA-2400W may be turned off. Always observe the battery condition before activation of the backlight.
Title Turns off the backlight. C Language Interface Calling Sequence BOOL CA_BacklightOff() Parameters None Return Values TRUE : Normal end Header #include <CasioSys.h> Remarks This function can turn off the backlight which is turned on by a keyboard operation. CA_BacklightOff Function...
Title Acquires the status of the backlight if it is set to on or off. C Language Interface Calling Sequence BOOL CA_BacklightCheck() Parameters None Return Values TRUE : Backlight is on. FALSE : Backlight is off. Header #include <CasioSys.h> Remarks Function CA_BacklightCheck...
Title Turns off the power after access to an installed card is complete. C Language Interface Calling Sequence BOOL SyncPowerOff() Parameters None Return Values TRUE : Normal end. Header #include <CasioSys. h> Remarks SyncPowerOff Function...
Title Disables power-off with the power button. This setting is cleared when the power is turned on. C Language Interface Calling Sequence BOOL DisablePowerOff() Parameters None Return Values TRUE : Normal end. Header #include <CasioSys. h> Remarks DisablePowerOff Function...
Title Enables the power to be turned off with the power button. C Language Interface Calling Sequence BOOL EnablePowerOff() Parameters None Return Values TRUE : Normal end. Header #include <CasioSys. h> Remarks EnablePowerOff Function...
Title Acquires the status of “enable/disable the power to be turned off with the power button”. C Language Interface Calling Sequence BOOL StatusPowerOff() Parameters None Return Values FALSE : Disable “the power to be turned off with the power button.” TRUE : Enable “the power to be turned off with the power button.”...
Title Resets the counter of APO time. By calling this function before elapse of the APO time set at the control panel, APO can be disabled. C Language Interface Calling Sequence BOOL ApoCountReset() Parameters None Return Values TRUE : Normal end. Header #include <CasioSys.
Title Resets the system. After this function is called, a worm-bootup is performed. C Language Interface Calling Sequence void SoftReset() Parameters None Return Values None Header #include <CasioSys. h> Remarks When this function is called, a warm-bootup is immediately performed. This will cause file and data being accessed to be erased.
Title Enables or disables “the automatic power-on to be activated with the alarm”. C Language Interface Calling Sequence BOOL SetPowerOnAlarm ( BOOL bMode); Parameters BOOL bMode FALSE TRUE Return Values TRUE FALSE Header #include <CasioSys. h> Remarks Related operations to the “automatic power-on” after this function is implemented are as follows. Table 3.1 Setup of Setup at Control...
Title Acquires the status of “automatic power-on with the alarm” if it is disabled or enabled. C Language Interface Calling Sequence BOOL GetPowerOnAlarm() Parameters None Return Values TRUE : Enable “automatic power-on with the alarm”. FALSE : Disable “automatic power-on with the alarm”. Header #include <CasioSys.
Title Sets “power-on event notification” enabled or disabled. C Language Interface Calling Sequence BOOL SetPowerEventStat( BOOL bMode) Parameters BOOL bMode TRUE FALSE Return Values TRUE FALSE Header #include <CasioSys. h> Remarks Settings by using this function remain active even after a RESET is performed. Function : Enable “power-on event notification”.
Title Acquires the status of “power-on event notification” if it is enabled or disabled. C Language Interface Calling Sequence BOOL GetPowerEventStat() Parameters None Return Values TRUE : Enable notification. FALSE : Disable notification. Header #include <CasioSys. h> Remarks GetPowerEventStat Function...
4. SIPanel Library 4.1 Overview In this chapter, the SIPanel which is executed on the Windows CE Ver.2.11 (on PA-2400W), and the DLL (Dynamic Link Library) which is called from a user application are described. Fig. 4.1 System configuration (Windows CE Ver. 2.11)
By having the registry values to be re-written, a user created program to start up the SIPanel can be also possible when the SIP button at upper-left corner of the PA-2400W is pushed. Or, if you wish to disable the startup, delete the values of Key name above.
4.4 Details of Function Title Initiation of the SIPanel Initiates the SIPanel in the non-display mode. If it has already been initiated, it will be displayed as specified by the parameters. C Language Interface Calling Sequence int SIP_ExecutePanel (LPCTSTR lpParam) Parameters LPCTSTR lpParam: Pointer to the parameters string.
Title Display/Non-display of the SIPanel Sets the SIPanel to display mode or non-display mode. C Language Interface Calling Sequence int SIP_ShowPanel (int iCmdShow) Parameters int iCmdShow SIP_SHOW SIP_HIDE Return Values SIP_NOT_FOUND : SIPanel is not initiated. SIP_SHOW SIP_HIDE Header #include <SIPanel. h> Function : Displays the SIPanel if it is in the non-display mode.
Page 29
Sample program to start up the SIPanel This is a source program of SipTsr.exe which must be used together with “CallSip.exe”. // SipTsr.cpp : Defines the entry point for the application. // #include “stdafx. h” #include “SIPanel. h” TCHAR ClassName[] = TEXT(“SipTsr”); // ***************************************************************************************// // WndProc // ***************************************************************************************//...
Page 30
if (hWnd == 0) return (FALSE); if (lsWindow(hWnd) != TRUE) return (FALSE); return(TRUE); // ****************************************************************************************// // WinMain // ****************************************************************************************// int WINAPI WinMain( HINTANCE hInstance. MSG msg; HWND hWnd; long lResult; HKEY hKeyResult; TCHAR TsrName[] = TEXT(“SipTsr.exe”); if ( hWnd = FindWindow( ClassName, NULL)) { SIP_ExecutePanel( TEXT(“”));...
Page 31
Sample program of application software for business use Install “SipTsr.exe”, and execute the following program. // CallSip.cpp : Defines the entry point for the application.// #include <Winuser.h> #include "stdafx.h" #define IDC_BTN_TEN #define IDC_BTN_TEXT #define IDC_EDIT HINSTANCE hInst; TCHAR ClassName[] = TEXT( "CallSip"); TCHAR ClassName_TSR[] = TEXT("SipTsr");...
4.5 SIPANEL.EXE 4.5.1 Overview Initiate SIPANEL.EXE and call SIPANEL.DLL to control the SIPanel. The SIPanel will be initiated in the non-display mode. If it has already been initiated, it will be displayed as specified by the command line options. If it has already been displayed, it will be set to non-display and all parameters other than /Q will be ignored.
This library supports only one function, iobox_chk(). The iobox_chk() function monitors and detects, for a specified period, whether PA-2400W is mounted on I/O Box, and returns the result (mounting detected, timeout error, or error). Each time this function is used, it is necessary to also execute "Permit interrupt, Wait for interrupt and time-out, and Prohibit interrupt".
Title This function monitors the connection and mounting status of PA-2400W terminal on I/O Box for a specified period of time and returns a result of it. When the power of I/O Box is turned off, the status is considered as improper connection of PA-2400W with I/O Box.
During the wait time, it is possible to dispatch another task. Therefore, there are two ways of usage as stated below. Sequential Mode This mode is to call the function and check if the PA-2400W is connected to I/O Box. After a confirmation on the session establishment, the process continue to a next job. Place PA-2400W on I/O Box.
Sample Program This sample program is created with the method of “Multiple-Thread Mode” under development environment of Visual C++ 5.0 plus and Windows CE SDK/DDK. It introduces the IOBOX1.C program and its reference sources, and shows a list of environment variables. // windows ce iobox sample file #include <windows.h>...
Page 39
InitCommonControls(); // Initialize common controls - command bar hInst = hInstance; // Save handle to create command bar hWnd = CreateWindow(szAppName, szTitle, WS_OVERLAPPED, 100, WINDOW_WIDTH/2, WINDOW_HEIGHT/2, NULL, NULL, hInstance, NULL); ShowWindow(hWnd, SW_SHOW); UpdateWindow(hWnd); while ( GetMessage(&msg, NULL, 0, 0)) TranslateMessage(&msg); DispatchMessage(&msg);...
Page 40
case WM_PAINT: hdc = BeginPaint(hWnd, &ps); GetClientRect(hWnd, &rect); rect.top += CommandBar_Height(hWndCB); DrawText(hdc, TEXT("Hello Windows CE!"), -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER); EndPaint(hWnd, &ps); return 0; case WM_LBUTTONDOWN: h = CreateThread(NULL, 0, ( LPTHREAD_START_ROUTINE)ioProc, NULL, 0, ( LPDWORD)&ThreadID); return 0; case WM_USER: switch( ( int)uParam) { case 0:...
Page 41
default: return (DefWindowProc(hWnd, message, uParam, lParam)); return (0); VOID ioProc() int ret; ret=iobox_chk( INFINITE); ret=iobox_chk( 5*1000); PostMessage( hWnd, WM_USER, ret, 0L); // End of Hello Windows CE program. // Wait for infinite // Wait for 5 seconds...
6. Registry of Libraries In this chapter, registries which are used by the libraries of System and SIPanel are described. The I/O Startup Library does not use any registry. 6.1 System Library The System Library uses the following registries. The values of each registry are automatically updated by dedicated API functions.
7. File Transfer Utility 7.1 Overview This file utility performs file transfer either between a host PC and PA-2400W or between two PA-2400W terminals. The dedicated upload/download utility (LMWIN) must run on the host PC. As a result, functions that can be implemented by this utility depend on the upload/download utility dedicated for the host PC, as well as the file transfer protocol used between two FLCEs.
7.2 List of Supported Commands Among file transmission protocol, this file transfer utility (FLCE) can support the following specific commands. Table 7.1 List of supported commands File transmission File reception File append File/directory delete File mode/update Directory creation Time setup Time request Message display Buzzer ON...
7.3 Use of FLCE The FLCE is an execution program, and there are two methods for the use. FLCE individually FLCE as child-process in user application In the individual use mode, it can be started up by a shortcut in which necessary parameters are set as argument.
7.5 Restrictions The file transfer utility (FLCE) is subject to the following restrictions: The FLCE does not support communication with a 3-pin interface or PCMCIA card. The COM1 port and IrDA port cannot be used concurrently because they must use the same hardware. Before initiating the FLCE, terminate the other program that is using the COM1 or IrDA port.
7.6 Communication Commands Operational specifications for the FLCE should be made by initiating an appropriate command together with the following arguments. A maximum of twenty commands can be described at one time, and they will be processed sequentially in the order in which they are described. If a command encounters an error, communication is immediately terminated from the error and subsequent commands will no longer be processed.
If the communication partner (PC, etc.) runs under an OS that requires drive letter specification, and if the PA-2400W needs to describe the pathname of file or directory on the partner side, always attach an appropriate drive letter.
Page 49
Reference: Windows CE has no concept of a drive letter. Accordingly, an additional drive is assigned a directory directly under the root directory. Example Internal RAM “My Documents” “General directory “Storage Card” "My Documents" Internal RAM Internal RAM Internal RAM PC card Internal RAM...
7.8 Conditions at Communication Partner 7.8.1 Rules of Naming File and Directory Pathname Specify the pathname of file or directory at the communication partner according to the naming rules of communication partner-side OS. Table 7.4 Communication partner Windows95 /Windows NT Windows CE : Specification permitted X : Results in invalid pathname and termination from error if specified.
7.9 Setting Up Registry By rewriting values in the registry it is possible to modify the default values of commands’ parameters for communication environment, etc. However, use the command line argument (/Y) to specify the communication line or baud rate during normal use. Use this registry setup only if the default values require modification.
7.9.2 Setting Up Registry with User Application Modify the registry as required from your application while referencing the following sample program. /***********************************************/ /* Registry Registration Program /***********************************************/ #include <windows.h> #include <string.h> #include <commctrl.h> int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow ) HKEY hKey1;...
(i.e. outside the standard protocol) to the software used on the communication partner side. For information about these codes refer to the Upload/Download Manual of PA-2400W. Passing of termination code A termination code will be returned as a return value from Winmain. Upper-level programs should reference this return value using the “GetExitCodeProcess()”...
Page 55
Resetting the power is specified from the partner station. Communication is terminated because the break key is pressed on the PA-2400W (local station) or partner station. Data anomaly (data error occurred on the communication line). Non-existent file is specified.
7.11 Log File The FLCE will create a log file to record communication logs. Log File Name The current log file name is fixed to "FLCE.LOG". This specification cannot be modified. Therefore, if the current log file needs to be stored, use another file name.
To avoid this close the folder that was opened by the Explorer and that contains the file to be transmitted before initiating the file transfer utility. Otherwise create a folder, other than the one opened by the Explorer, for file reception. If attempting PA-2400W-to-PA-2400W communication always use the CASIO AC adaptor to power.
Combinations other than those described above are not permitted and will cause a parameter error. Mode "H" - PA-2400W-to-PA-2400W command specification mode (Session-wait timeout is 1 minute.) This option is used by one side which specifies the operation command when performing communication between two PA-2400Ws.
File pathnames will be processed in order from the left of the command line. If any of the file pathnames to be transmitted do not exist on the PA-2400W side, the FLCE is immediately terminated by an error, and file pathnames placed at the right of that pathname will no longer be transmitted.
FLCE /R "a:\12\*.dat" "d:\casio\*.*" "\casio data\" This transfers all files under the "12" directory of drive A: of the communication partner side which have a "dat" extension and all files under the "casio" of drive D: to the "casio data" directory of the PA-2400W.
Title This command transfers the contents of file that exists on the PA-2400W and specified by the append file pathname to the communication partner side of PA-2400W, and append the contents to file that exists on the communication partner side.
FLCE /D "a:\12\*.dat" "b:\casio\970613.dat" This deletes files under "a:\12\*.dat" and "b:\casio\970613.dat" of the communication partner side. FLCE /DR "a:\casio\" This deletes all files and directories under the "a:\casio\" directory of the communication partner side. Command ] can be omitted.) FLCE /D...
Name the destination path in accordance with the naming rules of the communication partner-side Startup Examples FLCE /N "a:\ 12\kk.dat" "a:\casio\" This moves the "a:\12\kk.dat" file on the communication partner side to the "a:\casio\" directory. FLCE /N "a:\12\kk.dat" "a:\casio\sj.dat" This modifies the "a:\12\kk.dat" file on the communication partner side to the "a:\casio\sj.dat"...
Title This command transfers the system date and time of the PA-2400W to the communication partner side for setting. Transmitted date and time is a local time. Depending on the line condition, a few seconds of error may result. C Language Interface...
If starting up the PA-2400W with this mode, only the /Y command can be specified. (If this is done, the normal mode instead of the idle start mode is entered. In other cases, if script file name is specified, a parameter error results and the function is terminated.)
Meaning of the status A : A command currently running or requested is displayed. B : In addition to the displayed content in A above, file or directory that is being processed in the PA-2400W is displayed. C : In addition to the displayed content in A above, the progress of file being transmitted is displayed.
LMWIN. The update option enables file transmission only if a file to be transmitted by the PA-2400W is not existed at the communication partner side of PA-2400W. The verification of files can be done by verifying date/time of both the files. If the file to be transmitted has a newer date/time than that of the file at the communication partner side, or the same file is not existed in the communication partner side, the file transmission can be possible.
One time retry operation can recover from most of error states. 7.15.3 Restriction When you download a file to the PA-2400W where the same file exists, set up newer date time/date into the file before downloading it. This will avoid unnecessary retry operation which is started up by the time/date verification function.
List file comparison Note: Widows CE can check if the FCHKCE.EXE has been transferred to PA-2400W or not. However, if there is any broken part of the file in the header, the program may run without showing error indication. Description Generates a list file required for file checks (at file transmission side).
8.3 Operation Method This File Check Utility is to check if a file has been correctly copied to other PA-2400W or not. In this chapter, operating method to copy a file from PC to PA-2400W via RS-232C interface is described.
Page 71
Specify a file (to be copied) in script file and creation of list file (FCHK.LOG) in the same script file. Create list file on the transmission side of PA-2400W by using the File Check utility. FCHK /G /SC <Script file name> <Destination directory name>...
Observe the following rules for drive letters if describing pathnames: Specify a pathname on the PA-2400W so it begins with the root directory (of My Handheld PC) and do not include a drive letter.
FCHKCE^/C^"\casio data\" Example of Incorrect Startup (no /G or /C option): FCHKCE "\casio data\data1.dat" "\casio data\data2.dat" "d:\data\" "\casio data\" Uppercase and lowercase characters can be used for commands and options. The order in which options other than /G or /C is specified does not matter.
8.6.1 Generation of List File If the names of files to be transferred (copied) from PA-2400W are specified, this command will create a list of files to be transferred (copied) and a list file that contains the checksum data calculated from all the files to be transferred.
8.6.2 Comparison by List File With this command the following comparison will be made: Comparison between the file information transferred (copied) by the PA-2400W (parent machine) and the contents of the list file (FCHK.LOG). Comparison between the checksum data of the list file and the result of checksum calculation performed again for the list file.
8.7 Format of List File The format of list file to be generated with the file check utility is shown below. < FCHKLOG> :: = <FILENO> <FILEINFO> <FILECHECKSUM> <LISTCHECKSUM> null <FILENO> :: = FILE_NO= <dec_num> <LS> <FILEINFO> :: = <INFO> <LS> <INFO>...
8.8 Syntax Analysis of Script File If a script file name is specified when generating a list file, the syntax of the script file is analyzed as follows before generating the list file. The specifications of the script file syntax is given below. <SCRIPT FILE>...
Error Messages/Codes Table 8.3 Code Message The making of list file completed. The contents of list file agreed. Specified pathname not found. The list file making error. FCHK.LOG not found. The contents of list file didn’t agree. (The pathname discords) The contents of list file didn’t agree.
8.10 Restriction Because of the limitation from Windows CE some of the files contained in the “\Windows\ folder cannot ” be duplicated. As a result, they will not be listed in the list file.
Title If the names of files to be transferred (copied) from the PA-2400W are specified, this command will create a list of files to be transferred (copied) and a list file that contains the checksum data calculated from all the files to be transferred.
Page 82
And, create list file in the “\casio\ FCHKCE /G /SC “\casio\fchkce.scr” “\casio\“ This creates list file in the "\casio\" directory of the transmission side of PA-2400W by following content of script file “fchkce.scr” in the "\casio\" directory of the transmission side.
65,001 or greater will cause error and force the utility to be terminated. Startup Example FCHKCE /C “\casio data\“ This checks all transferred files by following content of list file in the “\casio data\“ directory of the transmission side of PA-2400W. Command ] can be omitted.)