|
|
|
The emulator provides a full target environment, which runs under Windows on a PC. It enables development to be substantially PC-based. Only the final development stages focus on the target hardware. The only exception to this rule is for low level programming, where target hardware must be directly accessed, such as programming for a physical device driver.
The emulator is provided in two variants, one, called WINSCW, for development with Metrowerks CodeWarrior for Symbian OS, and one, called WINS, for development with Microsoft Visual C++.
Note that for EKA1-based releases of Symbian OS, the emulator is a single-process environment, unlike the target environments, which are multi-process. For many GUI applications, this difference is transparent, as each process is emulated by a Windows thread. There are, however, issues regarding launching some executables, such as console applications and servers. For more information, see the C++ build tools documentation.
For EKA2-based releases, the emulator can simulate multiple Symbian OS processes, although as they are running in a single Windows process, they do not have memory protection from each other.
This documentation provides the information developers need to use the emulator. It does not contain information relating to any particular user interface.
The emulator includes many features which enhance its usability:
Function key mappings to emulate real device hardware conditions not on a PC, e.g. power off.
Special debug keys for GUI applications.
Excellent debugging support. When a thread is panicked, the debugger provides comprehensive information about the panic.
Flexible reconfiguration of the mapping of the Symbian OS file system onto the PC.
Comprehensive configuration either from the command line, or using initialisation scripts. For example, to change the screen size and greyscale/colour depth.
Full integration with the Windows run time environment providing support for comms, Internet, and IrDA through the host PC.
Configuration settings available for the location of virtual drives.
Support for international PC keyboard variants.