fpc/rtl/wince
2006-06-13 08:15:35 +00:00
..
wininc *wince: 2006-06-13 07:22:47 +00:00
classes.pp + TWndMethod 2006-05-01 18:04:48 +00:00
dos.pp * DOS<->Win filetime conversion was fixed. 2005-10-16 10:28:10 +00:00
dynlibs.inc * varutils,variants,dynlibs units are built now for wince. 2005-10-07 16:45:48 +00:00
Makefile - Removed need of assembler startup files for wince. Now compiler directly creates .pdata section needed for arm-wince exception handling. 2006-06-02 08:36:25 +00:00
Makefile.fpc - Removed need of assembler startup files for wince. Now compiler directly creates .pdata section needed for arm-wince exception handling. 2006-06-02 08:36:25 +00:00
messages.pp + Added SysUtils, Classes, Messages units for WinCE. 2005-09-02 12:03:22 +00:00
readme-winceapi-port + Added WinCE API port readme 2005-08-23 06:46:22 +00:00
readme.txt * readme.txt changes. 2005-10-19 07:21:58 +00:00
sockets.pp +arm/wince more rtl units : winsock, sockets 2005-12-27 15:37:15 +00:00
system.pp - Removed need of assembler startup files for wince. Now compiler directly creates .pdata section needed for arm-wince exception handling. 2006-06-02 08:36:25 +00:00
sysutils.pp *fix fileopen (please OS2,EMX maintainers have a look) 2006-06-13 08:15:35 +00:00
tthread.inc * fixed leaking of TThread 2006-05-14 09:15:09 +00:00
varutils.pp * varutils,variants,dynlibs units are built now for wince. 2005-10-07 16:45:48 +00:00
windows.pp wince 2006-05-15 08:22:30 +00:00
winres.inc * Forgot to add winres.inc in previous commit. 2005-09-27 18:23:23 +00:00
winsock2.pp *wince : winsock2 2006-05-12 16:05:55 +00:00
winsock.pp +arm/wince more rtl units : winsock, sockets 2005-12-27 15:37:15 +00:00

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

WinCE port
==========

WinCE port is quite complete and usable. The port was started and maintained by Yury Sidorov. Oliver (Oro06) ported WinCE API headers.

Status
------
* The 2.1.x compiler has compiler support WinCE.
* ARM and i386 (old WinCE emulator) CPUs are supported.
* The following platforms are supported: 
  * Pocket PC 2002  WinCE version: 3.0 
  * Pocket PC 2003  WinCE version: 4.20 
  * Pocket PC 2003 Second Edition  WinCE version: 4.21 
* Base units are complete.
* Windows unit is almost complete. Delphi compatible declarations is not ready.

Building
--------
* You need cross binutils for arm-wince, get them fromftp://ftp.freepascal.org/pub/fpc/contrib/cross/arm-wince-binutils.zip for Win32.
* Extract them to some dir in the path on your machine.
* Get the 2.1 source repository from SVN: http://www.freepascal.org/develop.html#svn
* Go to fpc/compiler and execute: 
  make cycle CPU_TARGET=arm OS_TARGET=wince

You should end with the units compiled to fpc/rtl/units/arm-wince and a ppccrossarm.exe in fpc/compiler. Copy them to locations fitting your fpc installation.

WinCE port notes
----------------
* chdir procedure always produces an error (WinCE does not support setting of current directory).
* All file/dir paths must be absolute (started with \).
* WinCE is unicode OS. All string parameters to API calls must be PWideChar.
* WinCE does not have support for environment strings.
* WinCE does not have support for console applications by default. But you can install console support by yourself. Please note that FPC creates GUI applications for WinCE target by default. To create console application you should use -WC compiler switch or put {$APPTYPE CONSOLE} directive to source code.<br>To enable console in WinCE install one of the following programs:

  - PocketCMD by SymbolicTools. It is recommended solution. Get it here: http://www.symbolictools.de/public/pocketconsole/applications/PocketCMD

  - PPC Command Shell from Microsoft Windows Mobile Developer Power Toys. Get it here: http://www.microsoft.com/downloads/details.aspx?FamilyID=74473fd6-1dcc-47aa-ab28-6a2b006edfe9&displaylang=en

PPC Command Shell have less features than PocketCMD. Also it have some issues. One of them - a new console window is opened even if an application is started from a console command prompt.

Links
-----
* WinCE Port page at Free Pascal Wiki: http://www.freepascal.org/wiki/index.php/WinCE_port
* Useful WinCE info: http://www.rainer-keuchel.de/documents.html

Contacts
--------
Write any questions regarding WinCE port to Yury Sidorov yury_sidorov@mail.ru