Series 60 Emulators
Development, debugging and initial testing of Series 60 applications is usually carried out on a PC-hosted emulator that provides a Microsoft Windows-based implementation of a Series 60 device. In most cases you will discover that the emulator-based development process closely mimics the operation of an application running on a real device; so that the majority of your development work can take place even before hardware is available. The exact appearance of the emulator may vary from the figures provided and will depend on the target platform you are working with, the version of Series 60 you are using, and the selected IDE. For example, the fascia bitmap may have been changed to closely resemble a particular Series 60 device from a Licensee. In addition, buttons and other interaction elements may be moved or added to emulate the configuration of a manufacturer's actual device. Also, the applications available on the emulator will depend on the platform version and the device manufacturer's preferences.
Some differences between an emulator and a real device cannot be overcome. Real Series 60 devices will have hardware accessories such as cameras and other features such as vibration feedback. Thus, at some point, hardware will be necessary for development and testing. In addition, PC-based emulators do not accurately mimic issues of precise timing, application performance and memory management.
For PC-based development, the edit/compile/build cycle is based on a Microsoft Windows-hosted development toolset. However, instead of linking and building against Win32 or MFC libraries, developers link and build against the headers and PC-format libraries installed by the Series 60 SDK. The resulting Windows-format binary executable is then run under the PC-hosted emulator.
During development, the project file for the specific IDE manages all linking and building details. It also ensures that all outputs from the build, and other required resources, such as application resource files, are built into the appropriate location for running or debugging under the emulator.
Referring to Figure 1-2, the Series 60 display is logically divided into three areas: status pane, main pane and control pane. (See the "Series 60 UI Style Guide" provided with the Series 60 SDK documentation for a comprehensive description of user interface elements and standards.)
Figure 1-2. Series 60 emulator.
The status pane is the graduated (blue, on the emulator) bar near the top of the screen plus the area above it. The main pane is the middle section of the screen between the status pane and the soft key labels at the bottom of the screen. The control pane is the area immediately below the main pane and includes the soft key labels.
The status pane may display information for the current application, as well as general information about the device status, such as the signal strength and battery charge. It is visible in most situations, but sometimes it may be hidden. Many games, for example, will use the whole screen.
The main pane is the principal area of the screen where an application can display its data. Typically, this area, also referred to as the client rectangle, is fully occupied by an application's data display.
The control pane occupies the bottom part of the screen and displays the labels associated with the two soft keys and a scroll indicator when required. Like the status pane, the control pane can also be hidden at times. In such situations it is within Series 60 style guidelines to have the user assume the availability of the Options menu (the default label for the left soft key), even though it may not be visible. (See the "Nokia Series 60 Games UI Style Guide" provided with the Series 60 SDK documentation.)
The two buttons below the control pane are the left and right soft keys and are used to select the currently associated Options menu or labeled action. The four-way navigation key will scroll up, down, left, right, or will select if pressed (clicked) in the center.
You can interact with the emulator via the PC mouse or cursor keys for navigation around the objects on the display. It is possible to use mouse clicks to select folders and other displayed objects directly rather than via clicking on the four-way navigation key (on the emulator only). For data entry the PC keyboard can be used, or you may click on the twelve-way keypad on the emulator fascia. Therefore the interaction with the emulator is close to, but not exactly the same as, using a real Series 60 devicethere is no pen input on a real device, so all movement and selection is through cursor (joystick) navigation.