OPL Wizard is a freeware tool for OPL programming.
It is aimed to help
the OPL community develop to Epoc and Symbian OS. OPL Wizard
comprises statistics tools, aiding tools to convert OPL
code and reformatting tools.
Description
Current features of OPL Wizard
(v1.00):
opening of text files in Unicode
format, ASCII-DOS and ASCII-Unix
browsing with many options (full
screen and zoom mode, find, go
to
line, show cursor coordinates, etc)
statistics
reports about the OPL source code, in multi-line and
CSV
formats, with approx. 20 fields (like number of lines, procedures,
variables, IF, WHILE, procedure calls to/from, etc)
OPL convert tool that helps the conversion of OPL/nOPL+
source code from EPOC32 to Nokia 9200
Series, EPOC32 to UIQ
and Nokia 9200 to UIQ (Series
60, Series 90, etc. in the future) by inserting 'REM' comments pointing
to the parts of the code which need rewriting or verification
saving of the statistics results in
Unicode or ASCII-DOS format
As OPL Wizard is written in OPL, it
is slow for making the statistics report of an OPL source code, the
speed is approx. 30 lines per second of source code (for each pass) on
a Nokia 9200 Series Communicator. The OPL converting tool reads the
source code at a speed of approx. 800 lines*rules per second on a Nokia
9200 machine, so using a converting rule file with 350 rules, the
converting of an OPL source code with 1000 lines takes approx. 7
minutes. An UIQ smartphone has 3 times this speed, so it shall take 2
minutes. Such speed is greatly increased if
you are running the OPL SDK on a (fast) PC computer.
Read the 13 KB
ReadMe.txt (for Nokia 92xx) for additional documentation.
The OPL converting rules files are
text files (ASCII-DOS, ASCII-Unix or Unicode) composed by comments and
rules, for example : # This line is a comment because
it begins with '#' \Mod&: (System.OPX)
Mod&:(left&,right&) -> SyMod&:(left&,right&)
Syntax :
the rule text has to be in a line starting with '\', and all
characters
until the end of line (including spaces) are used in the search, that
matches whole words only (so 'myMod&:' is not matched)
if the rule text does not use '"' (quotation marks) then the
search will exclude any strings from the source code line
after the '\' line follows the rule description lines that are
inserted
in 'REM' lines to create the converted source code
if you want to disable some rule, just edit the converting rules
file
and put some "#" in the beginning of each disabled line
Epoc32
(ER5) -> Nokia 9200
Read the "\System\Apps\OPLWizard\RulesEpoc32toNokia9200.txt"
(39 KB) converting rules file for a complete example.
It is expected to include all
constants and functions changes from OPXes and the OPL core. Unicode,
help and screen size changes are not covered. Current version has 348
rules, released on 16/03/2004.
Epoc32
(ER5) -> UIQ
The "\System\Apps\OPLWizard\RulesEpoc32toUIQ.txt" (39 KB)
converting rules file is a preliminary version based on
"RulesEpoc32toNokia9200.txt" with some changes and additions covering
UIQ issues. It is
expected to include
all constants and functions changes from OPXes and the OPL core.
Unicode, help and interface design changes are not covered. Current
version has 355 rules, released on 16/03/2004.
Nokia
9200 -> UIQ
The "\System\Apps\OPLWizard\RulesNokia9200toUIQ.txt" (4 KB)
converting rules file shows the main issues for porting to UIQ using
the current UIQ-OPL-DevPack-2004-02-23. Look at the bug list of OPL for
UIQ available on OPL Wiki and SourceForge
Symbian OS
OPL sites. Interface design changes between Nokia 9200 and UIQ are
not addressed by OPL Wizard. Current version
has 20 rules, released on 16/03/2004.
The author hopes that the OPL developers will create other converting
rules files as well as improve the existing ones and send them to be
included in the OPL Wizard distribution.
Learning OPL for Symbian OS
I suggest the :
download of the "9200-OPL-DevPack-2003-01-01" OPL SDK from the SourceForge Symbian OS
OPL site because it includes the "Crystal v6.00 OPL Porting Guide"
documentation as well as Epoc32 (ER5) OPL documentation in Win32 help
format
use of the last OPL SDK to develop Nokia 9200, Series 60 or UIQ
OPL programs
study of the documentation and the "DemoOPL" example from the OPL
SDK
study of the "EventCore" OPL skeleton from the FreEpoc site