62
•
_EPOC_DRIVE_
statement in
.ini
file maps drives additional to
c:
,
d:
and
z:
•
better support for just-in-time debugging of EPOC panics
•
international keyboard variants are now supported (previously, US and UK keyboards
were mapped correctly; everything else was mapped to UK)
•
fascia bitmap filename must match
.ini
filename
•
other improvements to path handling
•
the graphics emulator has been renamed from
wsexe.exe
to
epoc.exe
(strictly a
WSERV change rather than E32)
Improvements and fixes to WINC including
•
in narrow builds only, it is possible to redirect console output to stdout
•
can write to
z:\
instead of treating it as read-only (a hangover from WINS)
•
default directory is now the current Windows directory on invocation, not
c:\
: this
makes writing DOS batch files to call WINC utilities very much more straightforward
(another hangover from WINS)
•
no memory limits (yet another hangover from WINS)
The emulator’s new flexible directory structure enables you to run the emulator (and applications
built for it) from any directory. However, these changes are not yet reflected in the C++ toolset,
so that the C++ SDK must still be installed using the old directory structure.
8.5.3.1.4 Tools
Wide-ranging changes to
makmake
to support new system facilities including:
•
deb/rel interoperability:
.def
files are now identical for both debug and release builds,
and hence no longer have
-d
suffixes for debug builds
•
support for Unicode projects:
-u
flag passed to
rcomp
,
UNICODEUID
statement
added
•
AUTOUID
processing is now compulsory, therefore old
#pragma data_seg
directives must be removed from C++ source files
•
__SYMBIAN32__
macro is now added to all builds
•
EXEDLL
processing is improved
•
support for limited writeable static added for restricted purposes
•
support for more “EPOC” targets — ie, those running native on hardware, rather than
under an OS such as Win32 — than MARM, and consequent renaming of some
statements eg
STACKSIZE
which were only allowed within
START MARM
blocks, to
EPOCSTACKSIZE
which are allowed anywhere (but are ignored for
non-machine builds).
•
EPOCPROCESSPRIORITY
and
EPOCFIXEDPROCESS
parameters
now allowed for
.exe
s (they are passed through to
petran
), for OEM use
•
source directory now searched for user include files
•
FIRSTOBJECT
allows
eexe
or
edll
to be replaced by any specified object file
•
support for app, LDD, PDD, FSY by creating
.def
file automatically
•
multiple resource file support through
LANG
,
RESOURCE
and
SYSTEMRESOURCE
statements
As a result, all EPOC
.mmp
files must be changed. The impact on applications is lowest (mainly
AUTOUID
), while that on some kernel-side or system objects is higher.
evalid
tool added to compare EPOC binaries — executables, DLLs, resource files etc — to
check certain types of build compatibility.
evalid
runs on Windows NT only.
rombuild
and
petran
, as well as
makmake
, have been altered to support dual-variant ROMs,
fixed processes and writeable static data, and some tidying up. As a result,
.oby
files used for
ROM building have changed substantially.