sl@0
|
1 |
Version 1.00.103
|
sl@0
|
2 |
===================================
|
sl@0
|
3 |
Released into: GT Mainline 578
|
sl@0
|
4 |
Built against: GT Mainline 574b ALL VARIENTS
|
sl@0
|
5 |
Released by: Franco Bellu
|
sl@0
|
6 |
Uses: EUSER ESOCK INSOCK IMUT INETPROTUTIL BAFL
|
sl@0
|
7 |
For debug, add: FLOGGER EFSRV
|
sl@0
|
8 |
For tests, add: HTTPTESTUTILS, C32
|
sl@0
|
9 |
Changelist: xxx
|
sl@0
|
10 |
Website: http://lon-wapbuild01.INTRA/HTTP_Project/
|
sl@0
|
11 |
|
sl@0
|
12 |
|
sl@0
|
13 |
Summary
|
sl@0
|
14 |
=======
|
sl@0
|
15 |
|
sl@0
|
16 |
|
sl@0
|
17 |
|
sl@0
|
18 |
Defects Fixed
|
sl@0
|
19 |
=============
|
sl@0
|
20 |
* Fixed defect SAM-54WFUN : " String pool does not return an error when a string cannot be found in a string table using StringF() method "
|
sl@0
|
21 |
* Fixed defect BEU-55CND8 "using the CStringPoolImplementation from an empty string causes an access violation "
|
sl@0
|
22 |
* Fixed defect CLE-536M4D "String pool comparison operators should ASSERT_DEBUG check for use of multiple table "
|
sl@0
|
23 |
|
sl@0
|
24 |
API Changes
|
sl@0
|
25 |
===========
|
sl@0
|
26 |
None
|
sl@0
|
27 |
|
sl@0
|
28 |
Other Significant Changes
|
sl@0
|
29 |
=========================
|
sl@0
|
30 |
None
|
sl@0
|
31 |
|
sl@0
|
32 |
|
sl@0
|
33 |
Known Issues
|
sl@0
|
34 |
============
|
sl@0
|
35 |
None
|
sl@0
|
36 |
|
sl@0
|
37 |
|
sl@0
|
38 |
-----------
|
sl@0
|
39 |
Version 1.00.102
|
sl@0
|
40 |
================
|
sl@0
|
41 |
Tim and Arun, 3 July 2001
|
sl@0
|
42 |
|
sl@0
|
43 |
CR for BAFL and LocE32: allow customizable language downgrade paths to be specified as
|
sl@0
|
44 |
part of the locale.
|
sl@0
|
45 |
|
sl@0
|
46 |
Version 1.00.101
|
sl@0
|
47 |
================
|
sl@0
|
48 |
Made by Kevin, 11 August 1999
|
sl@0
|
49 |
|
sl@0
|
50 |
Requires RCOMP 318 because of the BC break in the handling of TEXT16 resources.
|
sl@0
|
51 |
|
sl@0
|
52 |
Added TResourceReader::AlignCountedPtr16 which returns the counted string length and
|
sl@0
|
53 |
adjusts the pointer past both the length byte and any additional padding byte. The value
|
sl@0
|
54 |
of the padding byte is checked with an __ASSERT_DEBUG(): the wrong value will cause a
|
sl@0
|
55 |
panic with code EBafPanicUnicodeTextPaddingError (=14).
|
sl@0
|
56 |
|
sl@0
|
57 |
Added AlignCountedPtr16 calls to the functions which read a Unicode descriptor from
|
sl@0
|
58 |
a resource.
|
sl@0
|
59 |
|
sl@0
|
60 |
TResourceReader::ReadHBufC16L()
|
sl@0
|
61 |
TResourceReader::ReadTPtrC16()
|
sl@0
|
62 |
TResourceReader::ReadTPtrC16(TInt aIndex,const TDesC8* aBuffer)
|
sl@0
|
63 |
|
sl@0
|
64 |
Modified T_RSC.CPP to correct the r_text_signature check which discriminated between a Unicode
|
sl@0
|
65 |
resource file and an 8-bit resource file: the RCOMP padding algorithm puts in an additional
|
sl@0
|
66 |
padding byte, which is now checked. Used _LIT() for the resource file names and arranged to build
|
sl@0
|
67 |
the TRSC resource via the T_RSC.MMP file.
|
sl@0
|
68 |
|
sl@0
|
69 |
Extended T_RSREAD.CPP to test resources and arrays which contains a mixture of 8 and 16 bit text,
|
sl@0
|
70 |
organised to test zero-length strings and Unicode strings with both odd and even alignment.
|
sl@0
|
71 |
Added the TRSC resource to the T_RSREAD.MMP file for good measure, and get the resource file name
|
sl@0
|
72 |
from the shared T_RSC.H include file.
|
sl@0
|
73 |
|
sl@0
|
74 |
Modified BLD.INF to mark T_CLINE as a manual test and T_LIBT as a supporting DLL.
|
sl@0
|
75 |
|
sl@0
|
76 |
NB ALSO INCLUDES CHANGES MADE IN RELEASE 100 WHICH ARE NOT DOCUMENTED HERE
|
sl@0
|
77 |
|
sl@0
|
78 |
|
sl@0
|
79 |
Version 1.00.091
|
sl@0
|
80 |
================
|
sl@0
|
81 |
Made by DavidK, 27 May 1999
|
sl@0
|
82 |
|
sl@0
|
83 |
Uses as 090. Identical release to 090 apart from wins urel and Marm variants also built.
|
sl@0
|
84 |
|
sl@0
|
85 |
Version 1.00.090
|
sl@0
|
86 |
================
|
sl@0
|
87 |
Made By DavidK, 26 May 1999
|
sl@0
|
88 |
|
sl@0
|
89 |
Uses E32/156, F32/122, STORE/050, E32UTILS/019,
|
sl@0
|
90 |
E32TOOLS/095, E32TOOLP/098, EIKTOOLS 133
|
sl@0
|
91 |
|
sl@0
|
92 |
Renamed the class BaflFileSortTable to CBaflFileSortTable so source incompatible but BC with 089
|
sl@0
|
93 |
(which was a frozen deffile version of 088)
|
sl@0
|
94 |
Intended for use with the first public release of Uikon.
|
sl@0
|
95 |
|
sl@0
|
96 |
Version 1.00.088
|
sl@0
|
97 |
================
|
sl@0
|
98 |
Made by MarcoS, 29 April 1999
|
sl@0
|
99 |
|
sl@0
|
100 |
Uses E32/156, F32/122, STORE/050, E32UTILS/019,
|
sl@0
|
101 |
E32TOOLS/095, E32TOOLP/098, EIKTOOLS 128
|
sl@0
|
102 |
|
sl@0
|
103 |
The sound staff has been moved from Bafl to form a new component: BaflSnd.
|
sl@0
|
104 |
|
sl@0
|
105 |
Most of the utilities defined on EikUtils (Eikon) have been transferred
|
sl@0
|
106 |
to BaflUtils (Bafl).
|
sl@0
|
107 |
|
sl@0
|
108 |
|
sl@0
|
109 |
Version 1.00.087
|
sl@0
|
110 |
================
|
sl@0
|
111 |
Made by ChrisD, 4 December 1998
|
sl@0
|
112 |
|
sl@0
|
113 |
Uses E32/156, F32/122, STORE/050, E32UTILS/019,
|
sl@0
|
114 |
E32TOOLS/095, E32TOOLP/098, EIKTOOLS 128
|
sl@0
|
115 |
|
sl@0
|
116 |
Minor source changes for boilerplating Symbian copyright text.
|
sl@0
|
117 |
MNT command changed to use new version of E32TOOLP (098) and
|
sl@0
|
118 |
valid command modified to use new evalid command for validation.
|
sl@0
|
119 |
ROM building scripts updated so ROM could be built.
|
sl@0
|
120 |
|
sl@0
|
121 |
Built using VC5 and Service Pack 3. Release tested on the following
|
sl@0
|
122 |
variants:
|
sl@0
|
123 |
|
sl@0
|
124 |
wins/deb marm/deb
|
sl@0
|
125 |
wins/rel marm/rel
|
sl@0
|
126 |
wins/udeb marm/udeb
|
sl@0
|
127 |
wins/urel marm/urel
|
sl@0
|
128 |
|
sl@0
|
129 |
All tests passed on a PB rack. Note that test code T_SNDDA will fail
|
sl@0
|
130 |
under WINS on PC's without a soundcard.
|
sl@0
|
131 |
|
sl@0
|
132 |
Version 1.00.086
|
sl@0
|
133 |
================
|
sl@0
|
134 |
Made by MattM 28 October 1998
|
sl@0
|
135 |
|
sl@0
|
136 |
Uses E32/156, F32/122, STORE/050, E32UTILS/019,
|
sl@0
|
137 |
E32TOOLS/095, E32TOOLS/096, EIKTOOLS 128
|
sl@0
|
138 |
|
sl@0
|
139 |
Changed Unicode third UID on BAFL.DLL
|
sl@0
|
140 |
Changed Unicode second UID on clipboard file
|
sl@0
|
141 |
|
sl@0
|
142 |
Version 1.00.085
|
sl@0
|
143 |
================
|
sl@0
|
144 |
(Made by SimonC, 29 September 1998)
|
sl@0
|
145 |
|
sl@0
|
146 |
Uses E32/125, F32/095, STORE/047, E32UTILS/019,
|
sl@0
|
147 |
E32TOOLS/092, E32TOOLS/091, EIKTOOLS 128
|
sl@0
|
148 |
|
sl@0
|
149 |
Backwards but not forwards compatible with 078
|
sl@0
|
150 |
Built using VC5. .PDBs are incompatible with VC4
|
sl@0
|
151 |
|
sl@0
|
152 |
1) Changed RResourceFile::ConfirmSignatureL() to always confirm resource
|
sl@0
|
153 |
file signatures on the assumption that no-one can possibly be using version
|
sl@0
|
154 |
003 files any longer (they were superceded two years ago) and the existing
|
sl@0
|
155 |
resource layout and structures are fixed now for as long as we support BC.
|
sl@0
|
156 |
|
sl@0
|
157 |
2) Added RResourceFile::SignatureL() which returns the signature of the
|
sl@0
|
158 |
resource file. This shouldn't be required by anyone or anything other than
|
sl@0
|
159 |
Eikon.
|
sl@0
|
160 |
|
sl@0
|
161 |
3) Changed const TUint KBaflCharTruncation in BAUTILS.H to a const TUint to
|
sl@0
|
162 |
prevent a VC5 warning.
|
sl@0
|
163 |
|
sl@0
|
164 |
Note that test code T_SNDDA will fail in wins builds on pcs without a sound card
|
sl@0
|
165 |
|
sl@0
|
166 |
|
sl@0
|
167 |
|
sl@0
|
168 |
Version 1.00.078
|
sl@0
|
169 |
================
|
sl@0
|
170 |
(Made by SimonC, 16 Mar 1998)
|
sl@0
|
171 |
|
sl@0
|
172 |
Uses E32/125, F32/095, STORE/047, E32UTILS/019,
|
sl@0
|
173 |
E32TOOLS/092, E32TOOLS/091, EIKTOOLS 125
|
sl@0
|
174 |
|
sl@0
|
175 |
No source changes - rebuilt with E32 125 et al
|
sl@0
|
176 |
|
sl@0
|
177 |
Changed *.IBY to support unicode ROMs and reflect recent E32 changes
|
sl@0
|
178 |
|
sl@0
|
179 |
All WINS and MARM release releases entirely forward compatible
|
sl@0
|
180 |
MARM Debug releases are incompatible
|
sl@0
|
181 |
|
sl@0
|
182 |
|
sl@0
|
183 |
|
sl@0
|
184 |
Version 1.00.077
|
sl@0
|
185 |
================
|
sl@0
|
186 |
(Made by SimonC, 9 Dec 1997)
|
sl@0
|
187 |
|
sl@0
|
188 |
Uses E32/107, F32/074, STORE/043, E32TOOLS/082, EIKTOOLS 123
|
sl@0
|
189 |
|
sl@0
|
190 |
Backward but not forward compatible with 076
|
sl@0
|
191 |
|
sl@0
|
192 |
From MartinT
|
sl@0
|
193 |
In bacline.*, class CCommandLineArguments(), which gives Count() and
|
sl@0
|
194 |
Arg() functions whose purpose is similar to argv and argc parsing in
|
sl@0
|
195 |
conventional C/C++ programming. This class is mainly intended for WINC
|
sl@0
|
196 |
programs which, unlike most regular EPOC32 programs, actively use their
|
sl@0
|
197 |
command-line arguments.
|
sl@0
|
198 |
|
sl@0
|
199 |
From SimonC
|
sl@0
|
200 |
Converted to MAKMAKE and moved building verbs from MNT.CMD to EBLD.BAT
|
sl@0
|
201 |
|
sl@0
|
202 |
|
sl@0
|
203 |
Version 1.00.076
|
sl@0
|
204 |
================
|
sl@0
|
205 |
(Made by DavidW, 28 May 1997)
|
sl@0
|
206 |
|
sl@0
|
207 |
Uses E32/107, F32/074, STORE/043, E32TOOLS/067
|
sl@0
|
208 |
|
sl@0
|
209 |
Completely BC with 075
|
sl@0
|
210 |
|
sl@0
|
211 |
Built with Platform 001 releases
|
sl@0
|
212 |
|
sl@0
|
213 |
Size of BAFL.DLL: 28,432 bytes (ARMREL)
|
sl@0
|
214 |
35,568 bytes (ARMDEB)
|
sl@0
|
215 |
|
sl@0
|
216 |
MNT VALID works on a clean drive
|
sl@0
|
217 |
|
sl@0
|
218 |
1) Upgraded to Platform 001 releases
|
sl@0
|
219 |
|
sl@0
|
220 |
2) Fixed SW3-868: Resource language file look-up fails to find a
|
sl@0
|
221 |
*.R01 file (though, as is often the cases with "simple fixes", the
|
sl@0
|
222 |
fix wasn't quite so simple after all!)
|
sl@0
|
223 |
|
sl@0
|
224 |
3) Fixed SW3-827 by adding MAP files to the releasable file lists
|
sl@0
|
225 |
|
sl@0
|
226 |
4) The advent of EChangesSystemTime in E32 106 had the side-effect
|
sl@0
|
227 |
of breaking a very restrictive test in Bafl test code T_CNTF. This
|
sl@0
|
228 |
could be viewed as highlighting a non-BC feature in the E32 changes;
|
sl@0
|
229 |
but it's already been decided that we can live with this (no real app
|
sl@0
|
230 |
ought to be making a test like that in T_CNTF). This test code has
|
sl@0
|
231 |
now been improved to avoid this problem (and, hopefully, to make it
|
sl@0
|
232 |
immune against any future additions to the TChanges enum)
|
sl@0
|
233 |
|
sl@0
|
234 |
5) Fixed a problem with building the test code in ARMDEB (shown up
|
sl@0
|
235 |
when there was no prior build of the test code in ARMREL)
|
sl@0
|
236 |
|
sl@0
|
237 |
|
sl@0
|
238 |
Version 1.00.075
|
sl@0
|
239 |
================
|
sl@0
|
240 |
(Made by DavidW, 8 May 1997)
|
sl@0
|
241 |
|
sl@0
|
242 |
Uses E32/101, F32/069, STORE/042, E32TOOLS/063
|
sl@0
|
243 |
|
sl@0
|
244 |
**Almost** completely compatible with 074
|
sl@0
|
245 |
|
sl@0
|
246 |
**IMPORTANT** See note about "descriptor arrays" below
|
sl@0
|
247 |
|
sl@0
|
248 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
249 |
ARM release, debug, unicode release and unicode debug
|
sl@0
|
250 |
|
sl@0
|
251 |
Size of BAFL.DLL: 28,420 bytes (ARMREL)
|
sl@0
|
252 |
35,556 bytes (ARMDEB)
|
sl@0
|
253 |
|
sl@0
|
254 |
MartinB has pointed out that the API of the descriptor array classes
|
sl@0
|
255 |
has one real drawback to it: the MdcaPoint() functions were returning
|
sl@0
|
256 |
|
sl@0
|
257 |
const TDesC&
|
sl@0
|
258 |
|
sl@0
|
259 |
whereas there are many advantages to them instead returning
|
sl@0
|
260 |
|
sl@0
|
261 |
TPtrC
|
sl@0
|
262 |
|
sl@0
|
263 |
For example, this causes real problems for the Shell, and has in the
|
sl@0
|
264 |
past caused real problems with the printer model name array in Eikon
|
sl@0
|
265 |
|
sl@0
|
266 |
After prolonged discussions with MartinB, Bill, and Geert and myself,
|
sl@0
|
267 |
we decided to "do the right thing" and *** break API compatibility
|
sl@0
|
268 |
*** to that extent. This will avoid much lurking death in the
|
sl@0
|
269 |
future, to do with temporary variables disappearing as the stack
|
sl@0
|
270 |
unwinds, etc.
|
sl@0
|
271 |
|
sl@0
|
272 |
All code that uses descriptor arrays - whether of the MDesCArray or
|
sl@0
|
273 |
CDesCArray or whatever type - should be recompiled. That should be
|
sl@0
|
274 |
the only change necessary.
|
sl@0
|
275 |
|
sl@0
|
276 |
Note however that if you previously assigned the result of an
|
sl@0
|
277 |
MdcaPoint operation to a
|
sl@0
|
278 |
|
sl@0
|
279 |
const TDesC&
|
sl@0
|
280 |
|
sl@0
|
281 |
reference variable on the stack in some code, you should now change
|
sl@0
|
282 |
this code to assign it to a
|
sl@0
|
283 |
|
sl@0
|
284 |
TPtrC
|
sl@0
|
285 |
|
sl@0
|
286 |
variable instead.
|
sl@0
|
287 |
|
sl@0
|
288 |
*** Note that because the operator[] function of CDesCArray is
|
sl@0
|
289 |
defined as being equivalent to its MdcaPoint() function, you may need
|
sl@0
|
290 |
some care to find these cases.
|
sl@0
|
291 |
|
sl@0
|
292 |
All EXPORTed functions retain their same ordinal values.
|
sl@0
|
293 |
|
sl@0
|
294 |
|
sl@0
|
295 |
Version 1.00.074
|
sl@0
|
296 |
================
|
sl@0
|
297 |
(Made by DavidW, 7 May 1997)
|
sl@0
|
298 |
|
sl@0
|
299 |
Uses E32/101, F32/069, STORE/042, E32TOOLS/063
|
sl@0
|
300 |
|
sl@0
|
301 |
Completely compatible with 073
|
sl@0
|
302 |
|
sl@0
|
303 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
304 |
ARM release, debug, unicode release and unicode debug
|
sl@0
|
305 |
|
sl@0
|
306 |
Size of BAFL.DLL: 28,284 bytes (ARMREL)
|
sl@0
|
307 |
35,440 bytes (ARMDEB)
|
sl@0
|
308 |
|
sl@0
|
309 |
From AndrewT:
|
sl@0
|
310 |
-------------
|
sl@0
|
311 |
1. Fixed a potential bug with "change leakage" in
|
sl@0
|
312 |
CEnvironmentChangeNotifier, when a change happening between
|
sl@0
|
313 |
the beginning and the end of a RunL could go undetected
|
sl@0
|
314 |
|
sl@0
|
315 |
Removed the source-code dependency on the EChangesAll enum,
|
sl@0
|
316 |
which makes the source code build compatible with E32 105
|
sl@0
|
317 |
(and with any further changes to this enum that E32 might
|
sl@0
|
318 |
introduce in a future version)
|
sl@0
|
319 |
|
sl@0
|
320 |
Updated test code to match.
|
sl@0
|
321 |
|
sl@0
|
322 |
|
sl@0
|
323 |
Version 1.00.073
|
sl@0
|
324 |
================
|
sl@0
|
325 |
(Made by DavidW, 6 May 1997)
|
sl@0
|
326 |
|
sl@0
|
327 |
Uses E32/101, F32/069, STORE/042, E32TOOLS/063
|
sl@0
|
328 |
|
sl@0
|
329 |
Backwards binary compatible with 072, but not forwards
|
sl@0
|
330 |
|
sl@0
|
331 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
332 |
ARM release, debug, unicode release and unicode debug
|
sl@0
|
333 |
|
sl@0
|
334 |
Size of BAFL.DLL: 28,284 bytes (ARMREL)
|
sl@0
|
335 |
35,440 bytes (ARMDEB)
|
sl@0
|
336 |
|
sl@0
|
337 |
1. New header file BAERRHAN.H, defining the interface of an
|
sl@0
|
338 |
abstract "error handler"
|
sl@0
|
339 |
|
sl@0
|
340 |
New function CBaActiveScheduler::LeaveForErrorHandler
|
sl@0
|
341 |
which takes a const CBaErrorHandler* pointer
|
sl@0
|
342 |
|
sl@0
|
343 |
The implementor of the DisplayError function in the concrete
|
sl@0
|
344 |
subclass of CBaActiveScheduler (or something to which that
|
sl@0
|
345 |
delegates, eg the implementor of CEikonEnv::HandleError) must
|
sl@0
|
346 |
follow the contract that -
|
sl@0
|
347 |
|
sl@0
|
348 |
- when the Leave has unwound, the CBaErrorHandler object gets
|
sl@0
|
349 |
sent a HandleError() function. This function is declared
|
sl@0
|
350 |
pure virtual at the CBaErrorHandler level.
|
sl@0
|
351 |
|
sl@0
|
352 |
There are two parameters to this function - a reference to an
|
sl@0
|
353 |
"error text" descriptor, and one to a "context text"
|
sl@0
|
354 |
descriptor. The function can fill these in with text that
|
sl@0
|
355 |
the environment will then display.
|
sl@0
|
356 |
|
sl@0
|
357 |
The HandleError() function should return one of
|
sl@0
|
358 |
|
sl@0
|
359 |
EAlertDisplay - use the standard alert dialog
|
sl@0
|
360 |
EInfoDisplay - use an info message
|
sl@0
|
361 |
(context text will be ignored)
|
sl@0
|
362 |
ENoDisplay - no display required
|
sl@0
|
363 |
(both text buffers will be ignored)
|
sl@0
|
364 |
EErrorNotHandled - fall back to standard processing
|
sl@0
|
365 |
|
sl@0
|
366 |
Some test code for CBaErrorHandler has been added to T_SCHED
|
sl@0
|
367 |
|
sl@0
|
368 |
** Note that this BAERRHAN.H is an enhancement to the copy of
|
sl@0
|
369 |
this file provisionally contained in EIKON 183. In order to
|
sl@0
|
370 |
move up to BAFL 073, you must also move up to EIKON 184
|
sl@0
|
371 |
|
sl@0
|
372 |
2. Removed the last remaining scare comments from BAFL source code
|
sl@0
|
373 |
|
sl@0
|
374 |
3. Provided explicit enumeration for all the panics in BAFLPAN.H
|
sl@0
|
375 |
|
sl@0
|
376 |
4. Tweak to T_RSC test code to cope with the file copied from
|
sl@0
|
377 |
ROM to RAM nowadays ending up as read-only (bad news if you
|
sl@0
|
378 |
want to run the test more than once)
|
sl@0
|
379 |
|
sl@0
|
380 |
*** Known limitation - the test code fails to build cleanly for
|
sl@0
|
381 |
Unicode (WINS) and so several of the test apps fail. No problems
|
sl@0
|
382 |
with any of the Narrow builds or test code, though
|
sl@0
|
383 |
|
sl@0
|
384 |
|
sl@0
|
385 |
|
sl@0
|
386 |
Version 0.06.072
|
sl@0
|
387 |
================
|
sl@0
|
388 |
(Made by AjThoelke, 30 April 1997)
|
sl@0
|
389 |
|
sl@0
|
390 |
1. Uses E32/101, F32/069, STORE/042, E32TOOLS/063
|
sl@0
|
391 |
|
sl@0
|
392 |
Backwards binary compatible with 071, but not forwards:
|
sl@0
|
393 |
|
sl@0
|
394 |
Build against 072 only if you use CSoundPlayer::PlayTone() or
|
sl@0
|
395 |
SoundUtilities::PlayTone()
|
sl@0
|
396 |
Build against 071 if you use CClipboard::Clear()
|
sl@0
|
397 |
Otherwise build against 069
|
sl@0
|
398 |
|
sl@0
|
399 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
400 |
ARM release, debug, unicode release and unicode debug
|
sl@0
|
401 |
|
sl@0
|
402 |
Size of BAFL.DLL: 28,252 bytes (ARMREL)
|
sl@0
|
403 |
35,392 bytes (ARMDEB)
|
sl@0
|
404 |
|
sl@0
|
405 |
From Brendan
|
sl@0
|
406 |
|
sl@0
|
407 |
1. Fixed SW-4266. Incorrect assert in matcher code.
|
sl@0
|
408 |
|
sl@0
|
409 |
From DavidW
|
sl@0
|
410 |
|
sl@0
|
411 |
2. Fixed SW-4477. KErrLeaveNoAlert is passed on to
|
sl@0
|
412 |
CBaActiveScheduler::DisplayError() for EIKON to cancel busy messages.
|
sl@0
|
413 |
|
sl@0
|
414 |
From AndrewT
|
sl@0
|
415 |
|
sl@0
|
416 |
3. Fixed SW-4619. Sound files are not assumed to have the default extension
|
sl@0
|
417 |
".snd".
|
sl@0
|
418 |
|
sl@0
|
419 |
Note for ROM builders: Alarm samples in Z:\System\Alarms\ should not have
|
sl@0
|
420 |
the extension ".snd" any more. They will still work, but the public
|
sl@0
|
421 |
alarm name will be reported as "Soft Bells.snd" rather than "Soft Bells"
|
sl@0
|
422 |
for example. (The files released as BAFL ALARMS have not changed their
|
sl@0
|
423 |
names and still have a .snd extension)
|
sl@0
|
424 |
|
sl@0
|
425 |
4. Fixed SW-4610. Ensure that the sample is left in a valid state when
|
sl@0
|
426 |
trying to complete the recording when in a Disk Full situation.
|
sl@0
|
427 |
|
sl@0
|
428 |
5. Implemented SW-4007. Two new services are provided by BAFL.
|
sl@0
|
429 |
|
sl@0
|
430 |
void CSoundPlayer::PlayTone(TInt aFrequency,TTimeIntervalMicroSeconds32 aDuration,TInt aAmplitude)
|
sl@0
|
431 |
|
sl@0
|
432 |
This makes the player play a sine-wave generated tone on the sound
|
sl@0
|
433 |
device at the frequency and amplitude specified for aDuration.
|
sl@0
|
434 |
Completion is notified via the observer as for other CSoundPlayer
|
sl@0
|
435 |
Play... services.
|
sl@0
|
436 |
|
sl@0
|
437 |
TInt SoundUtilities::PlayTone(TInt aFrequency,TTimeIntervalMicroSeconds32 aDuration,
|
sl@0
|
438 |
TInt aAmplitude,TDeviceVolume aVolume)
|
sl@0
|
439 |
|
sl@0
|
440 |
This service opens and configures the sound device and plays a sine-wave
|
sl@0
|
441 |
generated tone as specified, then closes the device. The function only
|
sl@0
|
442 |
returns after the tone has finished playing.
|
sl@0
|
443 |
|
sl@0
|
444 |
The TDeviceVolume parameter maps onto the sound device volume settings.
|
sl@0
|
445 |
Experimenting with the device volume and amplitude values is recommended
|
sl@0
|
446 |
for getting a good tone volume...
|
sl@0
|
447 |
|
sl@0
|
448 |
|
sl@0
|
449 |
Version 0.06.071
|
sl@0
|
450 |
================
|
sl@0
|
451 |
(Made by AjThoelke, 24 April 1997)
|
sl@0
|
452 |
|
sl@0
|
453 |
1. Uses E32/099, F32/069, STORE/042, E32TOOLS/063
|
sl@0
|
454 |
|
sl@0
|
455 |
Backwards binary compatible with 070, but not forwards
|
sl@0
|
456 |
|
sl@0
|
457 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
458 |
ARM release, debug, unicode release and unicode debug
|
sl@0
|
459 |
|
sl@0
|
460 |
Size of BAFL.DLL: 27,748 bytes (ARMREL)
|
sl@0
|
461 |
34,844 bytes (ARMDEB)
|
sl@0
|
462 |
|
sl@0
|
463 |
2. Added new exported function
|
sl@0
|
464 |
|
sl@0
|
465 |
static TInt CClipboard::Clear(RFs&);
|
sl@0
|
466 |
|
sl@0
|
467 |
This will clear the clipboard of its contents. Initially it will
|
sl@0
|
468 |
try to do this by truncating the file, if this fails then it will
|
sl@0
|
469 |
attempt to delete the file. I the clipboard cannot be cleared the
|
sl@0
|
470 |
error is returned
|
sl@0
|
471 |
|
sl@0
|
472 |
|
sl@0
|
473 |
Version 0.06.070
|
sl@0
|
474 |
================
|
sl@0
|
475 |
(Made by AjThoelke, 22 April 1997)
|
sl@0
|
476 |
|
sl@0
|
477 |
1. Uses E32/099, F32/069, STORE/042, E32TOOLS/063
|
sl@0
|
478 |
|
sl@0
|
479 |
Binary compatible with 069
|
sl@0
|
480 |
|
sl@0
|
481 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
482 |
ARM release, debug, unicode release and unicode debug
|
sl@0
|
483 |
|
sl@0
|
484 |
Size of BAFL.DLL: 27,564 bytes (ARMREL)
|
sl@0
|
485 |
34,656 bytes (ARMDEB)
|
sl@0
|
486 |
|
sl@0
|
487 |
2. Fixed SW-3879. Over-aggressive asserts have been modified to handle
|
sl@0
|
488 |
abort states in CSoundData objects, and more graceful handling of
|
sl@0
|
489 |
serious file server failures (i.e. not panicing).
|
sl@0
|
490 |
|
sl@0
|
491 |
|
sl@0
|
492 |
Version 0.06.069
|
sl@0
|
493 |
================
|
sl@0
|
494 |
(Made by AjThoelke, 16 April 1997)
|
sl@0
|
495 |
|
sl@0
|
496 |
1. Uses E32/098, F32/068, STORE/042, E32TOOLS/063
|
sl@0
|
497 |
|
sl@0
|
498 |
Binary compatible with 068
|
sl@0
|
499 |
|
sl@0
|
500 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
501 |
ARM release, debug, unicode release and unicode debug
|
sl@0
|
502 |
|
sl@0
|
503 |
Size of BAFL.DLL: 27,504 bytes (ARMREL)
|
sl@0
|
504 |
34,572 bytes (ARMDEB)
|
sl@0
|
505 |
|
sl@0
|
506 |
2. New Uid scheme adopted for MARM releasables. For MARM, requires
|
sl@0
|
507 |
E32 098 for anything other than narrow release.
|
sl@0
|
508 |
|
sl@0
|
509 |
3. Refixed SW-2836. The relevant parties have been beaten into submission:
|
sl@0
|
510 |
|
sl@0
|
511 |
a) F32 will not report changes when the first 16 bytes of a file
|
sl@0
|
512 |
are touched.
|
sl@0
|
513 |
|
sl@0
|
514 |
b) The clipboard has reverted to the 065 behaviour: try to open,
|
sl@0
|
515 |
if that succeeds truncate the file and carry on, if it fails
|
sl@0
|
516 |
replace the file.
|
sl@0
|
517 |
|
sl@0
|
518 |
c) The Shell will hold off from scanning for a short delay
|
sl@0
|
519 |
before checking what's happened to allow files to have their
|
sl@0
|
520 |
header written before the Shell interrogates their type.
|
sl@0
|
521 |
|
sl@0
|
522 |
d) Components which are too slow even for this should be using a
|
sl@0
|
523 |
temporary file to write to in the first place, and rename it to
|
sl@0
|
524 |
the final destination once it is good (and typed). Temporary
|
sl@0
|
525 |
files do not cause change notification.
|
sl@0
|
526 |
|
sl@0
|
527 |
4. Revert following failure on CSoundData has been added to CommitHeaderL(),
|
sl@0
|
528 |
ExternalizeL() and SaveL(). Previously a seek would have been required
|
sl@0
|
529 |
to force it to revert.
|
sl@0
|
530 |
|
sl@0
|
531 |
|
sl@0
|
532 |
Version 0.06.068
|
sl@0
|
533 |
================
|
sl@0
|
534 |
(Made by AjThoelke, 14 April 1997)
|
sl@0
|
535 |
|
sl@0
|
536 |
1. Uses E32/097, F32/067, STORE/041
|
sl@0
|
537 |
|
sl@0
|
538 |
Binary compatible with 067
|
sl@0
|
539 |
|
sl@0
|
540 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
541 |
ARM release, debug, unicode release and unicode debug
|
sl@0
|
542 |
|
sl@0
|
543 |
Size of BAFL.DLL: 27,364 bytes (ARMREL)
|
sl@0
|
544 |
34,452 bytes (ARMDEB)
|
sl@0
|
545 |
|
sl@0
|
546 |
2. Fixed the T_SNDDA bug. I had been testing against BC test executables,
|
sl@0
|
547 |
which did not pick up that the constant KSoundDataChunkLength had been
|
sl@0
|
548 |
mangled (8 instead of 800). This would have also caused CSoundSampler
|
sl@0
|
549 |
and CSoundPlayer to be broken.
|
sl@0
|
550 |
|
sl@0
|
551 |
|
sl@0
|
552 |
Version 0.06.067
|
sl@0
|
553 |
================
|
sl@0
|
554 |
(Made by DavidW, 13 April 1997)
|
sl@0
|
555 |
|
sl@0
|
556 |
1. Uses E32/097, F32/067, STORE/041
|
sl@0
|
557 |
|
sl@0
|
558 |
*Not* binary compatible with any previous version
|
sl@0
|
559 |
(But source compatible with 065)
|
sl@0
|
560 |
|
sl@0
|
561 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
562 |
ARM release, debug, unicode release and unicode debug
|
sl@0
|
563 |
|
sl@0
|
564 |
Size of BAFL.DLL: 27,364 bytes (ARMREL)
|
sl@0
|
565 |
34,452 bytes (ARMDEB)
|
sl@0
|
566 |
|
sl@0
|
567 |
2. Consolidated some code from CONE's CCoeActiveScheduler into
|
sl@0
|
568 |
BAFL's CBaActiveScheduler (shame it will never make it all
|
sl@0
|
569 |
the way into CActiveScheduler)
|
sl@0
|
570 |
|
sl@0
|
571 |
Virtual function DisplayError() defined in CBaActiveScheduler
|
sl@0
|
572 |
no implementation at BAFL level
|
sl@0
|
573 |
|
sl@0
|
574 |
The CActiveScheduler function Error() now has the following
|
sl@0
|
575 |
implementation in BAFL:
|
sl@0
|
576 |
|
sl@0
|
577 |
EXPORT_C void CBaActiveScheduler::Error(TInt aError) const
|
sl@0
|
578 |
{
|
sl@0
|
579 |
if (aError==KLeaveExit)
|
sl@0
|
580 |
User::Leave(KLeaveExit);
|
sl@0
|
581 |
if (aError==KLeaveWithoutAlert)
|
sl@0
|
582 |
return;
|
sl@0
|
583 |
DisplayError(aError);
|
sl@0
|
584 |
}
|
sl@0
|
585 |
|
sl@0
|
586 |
New function DisplayExtendedError(), as follows
|
sl@0
|
587 |
|
sl@0
|
588 |
EXPORT_C void CBaActiveScheduler::DisplayExtendedError(TUid aComponent,TInt aErrorNumber)
|
sl@0
|
589 |
{ // static
|
sl@0
|
590 |
CBaActiveScheduler* pS=((CBaActiveScheduler*)CActiveScheduler::Current());
|
sl@0
|
591 |
pS->iExtendedError.iInformation=EFalse;
|
sl@0
|
592 |
pS->iExtendedError.iComponent=aComponent;
|
sl@0
|
593 |
pS->iExtendedError.iErrorNumber=aErrorNumber;
|
sl@0
|
594 |
pS->DisplayError(KErrExtended);
|
sl@0
|
595 |
}
|
sl@0
|
596 |
|
sl@0
|
597 |
The difference between DisplayExtendedError() and eg
|
sl@0
|
598 |
ExtendedLeave() is that the former calls Leave first, and
|
sl@0
|
599 |
relies on the Error() function being called later.
|
sl@0
|
600 |
Whereas the former calls the Error() function directly,
|
sl@0
|
601 |
and is then free eg to retry the current operation.
|
sl@0
|
602 |
|
sl@0
|
603 |
So, the assumption is that the Error() function will be
|
sl@0
|
604 |
implemented "with wait".
|
sl@0
|
605 |
|
sl@0
|
606 |
3. New test app T_SCHED testing the CBaActiveScheduler class
|
sl@0
|
607 |
|
sl@0
|
608 |
4. Put two virtual Reserved_xxx() functions into CBaActiveScheduler
|
sl@0
|
609 |
|
sl@0
|
610 |
5. Changed KUidBaflDll from 0x10000043 to 0x100004e to avoid a clash
|
sl@0
|
611 |
|
sl@0
|
612 |
6. Fixed the MNT VALID verb
|
sl@0
|
613 |
|
sl@0
|
614 |
7. Known limitations
|
sl@0
|
615 |
|
sl@0
|
616 |
* the way DEF files get archived for WINS looks wrong
|
sl@0
|
617 |
|
sl@0
|
618 |
* test code T_SNDDA hangs under ARM (and runs horribly horribly
|
sl@0
|
619 |
slowly under WINS) - note this is true in 066 too and isn't
|
sl@0
|
620 |
anything I have introduced
|
sl@0
|
621 |
|
sl@0
|
622 |
|
sl@0
|
623 |
Version 0.06.066
|
sl@0
|
624 |
================
|
sl@0
|
625 |
(Made by AjThoelke, 11 April 1997)
|
sl@0
|
626 |
|
sl@0
|
627 |
1. Uses E32/097, F32/067, STORE/041
|
sl@0
|
628 |
|
sl@0
|
629 |
To all known purposes: Binary compatible with 065.
|
sl@0
|
630 |
|
sl@0
|
631 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
632 |
ARM release, debug, unicode release and unicode debug
|
sl@0
|
633 |
|
sl@0
|
634 |
2. The protected interface of CSoundData, CSoundSampler and CSoundPlayer
|
sl@0
|
635 |
has been privatised. This is for future BC purposes, and they couldn't
|
sl@0
|
636 |
usefully be derived from anyway.
|
sl@0
|
637 |
|
sl@0
|
638 |
3. System file and path names within BAFL (e.g. the clipboard) now use
|
sl@0
|
639 |
capitalised names.
|
sl@0
|
640 |
|
sl@0
|
641 |
4. CSoundSampler is now using a block length of 800 samples (previously
|
sl@0
|
642 |
400). This means that samples recorded with BAFL 066 will not be
|
sl@0
|
643 |
playable with 065, but older samples will play happily on 066.
|
sl@0
|
644 |
|
sl@0
|
645 |
5. CSoundSampler has gained TInt Volume() and void SetVolume(TInt).
|
sl@0
|
646 |
These squeeze an extra bit of data into the persistent data of a sound
|
sl@0
|
647 |
sample: the player/sampler do not utilise this information, it is
|
sl@0
|
648 |
provided for the RECORD app.
|
sl@0
|
649 |
|
sl@0
|
650 |
The limitation is that the repeat count is limited to 65535 (big deal
|
sl@0
|
651 |
eh?), and the volume stored must be in the range 0-65535.
|
sl@0
|
652 |
|
sl@0
|
653 |
6. Unfixed SW-2836. The file system now reports changes even if the header
|
sl@0
|
654 |
of a file is re-written so the scheme in place was not effective.
|
sl@0
|
655 |
Clipboard is still being replaced every time now.
|
sl@0
|
656 |
|
sl@0
|
657 |
|
sl@0
|
658 |
Version 0.06.065
|
sl@0
|
659 |
================
|
sl@0
|
660 |
(Made by AjThoelke, 9 April 1997)
|
sl@0
|
661 |
|
sl@0
|
662 |
1. Uses E32/096, F32/065, STORE/040
|
sl@0
|
663 |
|
sl@0
|
664 |
Binary compatible with 064 except for one thing (see 2).
|
sl@0
|
665 |
|
sl@0
|
666 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
667 |
ARM release, debug, unicode release and unicode debug
|
sl@0
|
668 |
|
sl@0
|
669 |
2. The two extended errors for clipboard use have been removed. This upsets
|
sl@0
|
670 |
the enum ordering in BAERROR.H and introduces an incompatibility if you
|
sl@0
|
671 |
use this enumeration. I understand this affects almost nobody: certainly
|
sl@0
|
672 |
no-one who has yet built against BAFL 064, and so have been advised to
|
sl@0
|
673 |
let this one slip in at this stage. So if you do include BAERROR.H, make
|
sl@0
|
674 |
sure you compile against 065 not 064.
|
sl@0
|
675 |
|
sl@0
|
676 |
3. All MARM releasables are pre-PETRAN'd, so get rid of your obey file
|
sl@0
|
677 |
UIDs for BAFL.
|
sl@0
|
678 |
|
sl@0
|
679 |
4. Sampled alarm sounds now live in \system\alarms\, previously
|
sl@0
|
680 |
\system\sounds\, as this better reflects what this directory is used
|
sl@0
|
681 |
for.
|
sl@0
|
682 |
|
sl@0
|
683 |
5. Fixed bug SW-2836. The clipboard now attempts to open the clipboard file
|
sl@0
|
684 |
and truncate it, rather than always replace it, in order to prevent the
|
sl@0
|
685 |
clipboard generate unecessary change notification.
|
sl@0
|
686 |
|
sl@0
|
687 |
6. Fixed bug SW-2721. If the clipboard store has no root stream when
|
sl@0
|
688 |
destroyed, the clipboard file is deleted. This handles any case of
|
sl@0
|
689 |
failure during copying to the clipboard. Note that the first thing that
|
sl@0
|
690 |
happens during a paste operation is that the current contents of the
|
sl@0
|
691 |
clipboard are discarded.
|
sl@0
|
692 |
|
sl@0
|
693 |
7. Modified the behaviour of the clipboard when trying to read when the
|
sl@0
|
694 |
clipboard does not exist, is being copied to, is corrupt or otherwise
|
sl@0
|
695 |
damaged. In all these situations an empty CClipboard object is returned
|
sl@0
|
696 |
from CClipboard::NewForReadingL[C](). More serious errors (or OOM) are
|
sl@0
|
697 |
reported as normal.
|
sl@0
|
698 |
|
sl@0
|
699 |
These situations are all considered to be equivalent to there being no
|
sl@0
|
700 |
data to paste from the clipboard, and will therefore be handled already
|
sl@0
|
701 |
by the code which attempts to find some suitable data type in the
|
sl@0
|
702 |
clipboard stream dictionary.
|
sl@0
|
703 |
|
sl@0
|
704 |
This has resulted in the two clipboard extended errors being no longer
|
sl@0
|
705 |
required.
|
sl@0
|
706 |
|
sl@0
|
707 |
8. New releasables:
|
sl@0
|
708 |
|
sl@0
|
709 |
WINSCPR contains DEF files for all WINS builds of compressor DLLs.
|
sl@0
|
710 |
EMARMCPR contains FRZ files for all MARM builds of compressor DLLs.
|
sl@0
|
711 |
|
sl@0
|
712 |
They require that the DLLs exports a function with the prototype:
|
sl@0
|
713 |
|
sl@0
|
714 |
CCompressorBase* NewCompressorL();
|
sl@0
|
715 |
|
sl@0
|
716 |
See the dummy compressors which are part of the BAFL source for examples
|
sl@0
|
717 |
of how to build them for WINS and ARM: WINS adds a /def option to the
|
sl@0
|
718 |
linker command line, MARM uses freeze file technology.
|
sl@0
|
719 |
|
sl@0
|
720 |
These releaseables are extracted to \epoc32\release\wins and
|
sl@0
|
721 |
epoc32\release\marm as part of MNT GETREL.
|
sl@0
|
722 |
|
sl@0
|
723 |
|
sl@0
|
724 |
Version 0.06.064
|
sl@0
|
725 |
================
|
sl@0
|
726 |
(Made by AjThoelke, 7 April 1997)
|
sl@0
|
727 |
|
sl@0
|
728 |
1. Uses E32/096, F32/065, STORE/040
|
sl@0
|
729 |
|
sl@0
|
730 |
Binary incompatible with 063.
|
sl@0
|
731 |
Source compatible with 063 with the exception of the CFindFileByType
|
sl@0
|
732 |
class.
|
sl@0
|
733 |
|
sl@0
|
734 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
735 |
ARM release, debug, unicode release and unicode debug
|
sl@0
|
736 |
|
sl@0
|
737 |
Further review for the purposes of binary compatibility issues and
|
sl@0
|
738 |
conversion from export to inline has resulted in more changes.
|
sl@0
|
739 |
|
sl@0
|
740 |
2. WINS builds are now link-by-ordinal.
|
sl@0
|
741 |
|
sl@0
|
742 |
3. MARM builds now incorporate type-safe linkage: BAFL's uid3 is 0x10000043.
|
sl@0
|
743 |
|
sl@0
|
744 |
4. Added CBaflUtils::NearestLanguageFile(RFs& aFs,TFileName& aFileName).
|
sl@0
|
745 |
This has been taken from the EIKON utility of the same name. The last
|
sl@0
|
746 |
two characters of the filename are replaced with the language code if
|
sl@0
|
747 |
such a file exists, otherwise the name is left unchanged.
|
sl@0
|
748 |
|
sl@0
|
749 |
5. CFindFileByType now has the following API:
|
sl@0
|
750 |
|
sl@0
|
751 |
CFindFileByType(RFs& aFs);
|
sl@0
|
752 |
~CFindFileByType();
|
sl@0
|
753 |
TInt FindFirst(const TDesC& aName,const TDesC& aDir,const TUidType& aType);
|
sl@0
|
754 |
TInt FindNext();
|
sl@0
|
755 |
const TEntry& Entry() const;
|
sl@0
|
756 |
const TParse& File() const;
|
sl@0
|
757 |
|
sl@0
|
758 |
Following construction, the object can be used for mulitple finding
|
sl@0
|
759 |
sessions.
|
sl@0
|
760 |
|
sl@0
|
761 |
To initiate a find, call FindFirst(): the name can have wild
|
sl@0
|
762 |
cards, any path information not in aName is taken from aDir. A file type
|
sl@0
|
763 |
is also specified in aType. For any Uids in aType which are not KNullUid,
|
sl@0
|
764 |
a matching file will have the same Uid in that position. i.e. to find
|
sl@0
|
765 |
document files use TUidType(KNullUid,KUidAppDllDoc).
|
sl@0
|
766 |
|
sl@0
|
767 |
FindFirst() returns KErrNone if it has found a match, FindNext() will
|
sl@0
|
768 |
continue to search for the next matching file. KErrNotFound is returned
|
sl@0
|
769 |
when there are no more matches, any other return is an error code.
|
sl@0
|
770 |
|
sl@0
|
771 |
When a matching file has been found, Entry() returns the TEntry for that
|
sl@0
|
772 |
file, and File() returns a TParse object containing the parsed full name
|
sl@0
|
773 |
for the file.
|
sl@0
|
774 |
|
sl@0
|
775 |
The following changes do not affect source compatibility:
|
sl@0
|
776 |
|
sl@0
|
777 |
6. CEnvironmentChangeNotifier now takes a const TCallback& in its NewL()
|
sl@0
|
778 |
and Set() members. Previously took TCallBack&.
|
sl@0
|
779 |
|
sl@0
|
780 |
7. Various exported functions are now inline as befits their purpose.
|
sl@0
|
781 |
|
sl@0
|
782 |
8. CDesC8Array constuctor is now protected, CDesC8ArrayFlat has a exported
|
sl@0
|
783 |
destructor to reduce extra vtable generation in any sub-classers. Ditto
|
sl@0
|
784 |
for CDesC8ArraySeg, and the unicode variants.
|
sl@0
|
785 |
|
sl@0
|
786 |
9. TLibAssoc has a general base class TLibAssocBase, to hold the common
|
sl@0
|
787 |
code, reducing the template generated code, and also removes the
|
sl@0
|
788 |
templated assertion (now in TLibAssocBase).
|
sl@0
|
789 |
|
sl@0
|
790 |
10. Improved the performance of the TResourceReader class.
|
sl@0
|
791 |
|
sl@0
|
792 |
11. Factored common code in RIncrMatcherBase to reduce code volume.
|
sl@0
|
793 |
|
sl@0
|
794 |
|
sl@0
|
795 |
Version 0.06.063
|
sl@0
|
796 |
================
|
sl@0
|
797 |
(Made by AjThoelke, 2 April 1997)
|
sl@0
|
798 |
|
sl@0
|
799 |
1. Uses E32/095, F32/064, STORE/040
|
sl@0
|
800 |
|
sl@0
|
801 |
Binary compatible with 062
|
sl@0
|
802 |
|
sl@0
|
803 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
804 |
ARM release and debug
|
sl@0
|
805 |
|
sl@0
|
806 |
Following full review of BAFL code, I have fixed some bugs (see below)
|
sl@0
|
807 |
and tidied some other code resulting in some code savings. There are a
|
sl@0
|
808 |
few outstanding binary-incompatible changes that are on the waiting list.
|
sl@0
|
809 |
|
sl@0
|
810 |
2. Fixed CEnvironmentChangeNotifier to close the RChangeNotifier when it is
|
sl@0
|
811 |
destroyed.
|
sl@0
|
812 |
|
sl@0
|
813 |
3. Fixed RTextBuf to use the delete [] operator as it is using the new []
|
sl@0
|
814 |
operator. Previously it was not using the array delete operator.
|
sl@0
|
815 |
|
sl@0
|
816 |
4. Major fixes to SoundUtilities: No non-leaving functions can now leave,
|
sl@0
|
817 |
no alloc heaven following failures at any stage, private static members
|
sl@0
|
818 |
are now local static to the source file and removed from the class
|
sl@0
|
819 |
declaration.
|
sl@0
|
820 |
|
sl@0
|
821 |
5. Fixed SW-2001. Duplicate names in the list of alarm sounds or samples
|
sl@0
|
822 |
are ignored. This matches the behaviour of CSoundPlayer: as soon as a
|
sl@0
|
823 |
viable sound is found which matches the name, it is played.
|
sl@0
|
824 |
|
sl@0
|
825 |
Note that this means it though may be possible to save an sample as an
|
sl@0
|
826 |
alarm called "Chimes", it'll never get played as an alarm while an
|
sl@0
|
827 |
algorithmic sound of the same name exists.
|
sl@0
|
828 |
|
sl@0
|
829 |
6. Revised code for CFindFileByType to attempt a reduction in stack usage
|
sl@0
|
830 |
by TFileName and TParse objects, to reduce code size, and to eliminate
|
sl@0
|
831 |
problems when handling failures.
|
sl@0
|
832 |
|
sl@0
|
833 |
7. Removed unecessary (inline) copy constructors from TCellRef and
|
sl@0
|
834 |
TRangeRef.
|
sl@0
|
835 |
|
sl@0
|
836 |
8. Included s32file.h into baclipb.h as CClipboard::Store() requires the
|
sl@0
|
837 |
derivation relationship between CFileStore and CStreamStore.
|
sl@0
|
838 |
|
sl@0
|
839 |
9. CClipboard::CopyToL(const TReal&) now commits the stream it has written.
|
sl@0
|
840 |
|
sl@0
|
841 |
10. The clipboard has been moved from the very strangely named
|
sl@0
|
842 |
c:\system\clipbd\main.sto to the somewhat more sensible sounding
|
sl@0
|
843 |
c:\system\data\clipboard
|
sl@0
|
844 |
|
sl@0
|
845 |
11. Beefed up CSoundData's handling of in-place sample files being corrupt
|
sl@0
|
846 |
or requiring truncation when opened or following (serious) failure.
|
sl@0
|
847 |
|
sl@0
|
848 |
|
sl@0
|
849 |
|
sl@0
|
850 |
Version 0.06.062
|
sl@0
|
851 |
================
|
sl@0
|
852 |
(Made by AjThoelke, 26 March 1997)
|
sl@0
|
853 |
|
sl@0
|
854 |
1. Uses E32/094, F32/063, STORE/038
|
sl@0
|
855 |
|
sl@0
|
856 |
Binary compatible with 061
|
sl@0
|
857 |
|
sl@0
|
858 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
859 |
ARM release and debug
|
sl@0
|
860 |
|
sl@0
|
861 |
2. Fixed a bug when recording to the end of a just-opened sample, which
|
sl@0
|
862 |
resulted in data loss, and end of file errors.
|
sl@0
|
863 |
|
sl@0
|
864 |
3. Correctly update the current position during recording when a compressor
|
sl@0
|
865 |
is in use.
|
sl@0
|
866 |
|
sl@0
|
867 |
4. Avoid a panic from CActive when abandoning the background indexing, and
|
sl@0
|
868 |
ensure the sampler restores its active priority as necessary.
|
sl@0
|
869 |
|
sl@0
|
870 |
5. Allow UseSeekIndexL to be called any number of times without causing
|
sl@0
|
871 |
stray signals, or other nasty problems.
|
sl@0
|
872 |
|
sl@0
|
873 |
|
sl@0
|
874 |
Version 0.06.061
|
sl@0
|
875 |
================
|
sl@0
|
876 |
(Made by AjThoelke, 26 March 1997)
|
sl@0
|
877 |
|
sl@0
|
878 |
1. Uses E32/094, F32/063, STORE/038
|
sl@0
|
879 |
|
sl@0
|
880 |
Binary compatible with 060 if you are not the RECORD app.
|
sl@0
|
881 |
|
sl@0
|
882 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
883 |
ARM release and debug
|
sl@0
|
884 |
|
sl@0
|
885 |
2. Renamed CSoundPlayerRecorder to CSoundSampler, similarly for its
|
sl@0
|
886 |
observer.
|
sl@0
|
887 |
|
sl@0
|
888 |
3. Fully construct the CTimer part of CSoundSampler, previously this
|
sl@0
|
889 |
caused a panic when playing a sample.
|
sl@0
|
890 |
|
sl@0
|
891 |
4. Added CSoundSampler::TruncateL() to truncate the sample to the current
|
sl@0
|
892 |
position.
|
sl@0
|
893 |
|
sl@0
|
894 |
5. Implemented a compressed sound data manager. This can use a temporary
|
sl@0
|
895 |
index to enable fast random seeking in the sample.
|
sl@0
|
896 |
|
sl@0
|
897 |
The default is not to have one, as it is not needed for playing sounds,
|
sl@0
|
898 |
enabling it will result in an index being built as the sound is
|
sl@0
|
899 |
played (and so can cause OOM errors while playing). Compressed samples
|
sl@0
|
900 |
do not allow random seeking without the index, only seeking to the
|
sl@0
|
901 |
beginning or end of the sample.
|
sl@0
|
902 |
|
sl@0
|
903 |
CSoundSampler::UseSeekIndexL() will enable the indexing, and will cause
|
sl@0
|
904 |
the sampler to build the index in the background, which is abandoned
|
sl@0
|
905 |
whenever another operation is started.
|
sl@0
|
906 |
|
sl@0
|
907 |
6. Generally improved the robustness of the sampler when recording
|
sl@0
|
908 |
terminates in resticted memory or disk space scenarios, and ordered the
|
sl@0
|
909 |
file header re-writes to maintain document integrity in the presence of
|
sl@0
|
910 |
failures.
|
sl@0
|
911 |
|
sl@0
|
912 |
|
sl@0
|
913 |
Version 0.06.060
|
sl@0
|
914 |
================
|
sl@0
|
915 |
(Made by AjThoelke, 25 March 1997)
|
sl@0
|
916 |
|
sl@0
|
917 |
1. Uses E32/094, F32/063, STORE/038
|
sl@0
|
918 |
|
sl@0
|
919 |
For most people: Binary compatible with 059.
|
sl@0
|
920 |
Binary incompatible if you use any of the functions
|
sl@0
|
921 |
|
sl@0
|
922 |
CSoundData::NewL(CStreamStore&,TStreamId);
|
sl@0
|
923 |
CSoundPlayerRecorder::NewL(MSoundPlayerRecorderObserver&,CStreamStore&,TStreamId);
|
sl@0
|
924 |
CSoundData::SaveToL(RFile&);
|
sl@0
|
925 |
CSoundPlayerRecorder::SaveToL(RFile&);
|
sl@0
|
926 |
|
sl@0
|
927 |
(This should only be the RECORD app).
|
sl@0
|
928 |
|
sl@0
|
929 |
2. The two NewL() functions above now take a const CStreamStore&.
|
sl@0
|
930 |
|
sl@0
|
931 |
3. The SaveTOL() functions have morphed into:
|
sl@0
|
932 |
|
sl@0
|
933 |
SaveL(RFile& aNewFile,TBool aUseNewFile=EFalse);
|
sl@0
|
934 |
|
sl@0
|
935 |
The sample is saved into the new file passed in. If aUseNewFile is true,
|
sl@0
|
936 |
then the sampler starts using the new file, and closes the old file. If
|
sl@0
|
937 |
false (the default) the new file is closed following this function.
|
sl@0
|
938 |
|
sl@0
|
939 |
On any failure, the new file is closed automatically.
|
sl@0
|
940 |
|
sl@0
|
941 |
4. Added CSoundPlayer::SoundType() returning TSoundType, which is one of
|
sl@0
|
942 |
ESoundAlgorithmic and ESoundSample. This reports the type of sound
|
sl@0
|
943 |
last played (or currently playing) using this object.
|
sl@0
|
944 |
|
sl@0
|
945 |
5. Exported SoundUtilities::SoundStreamIdL(CPersistentStore&) to extract
|
sl@0
|
946 |
the sound stream id from the stream dictionary in sound samples.
|
sl@0
|
947 |
|
sl@0
|
948 |
|
sl@0
|
949 |
Version 0.06.059
|
sl@0
|
950 |
================
|
sl@0
|
951 |
(Made by AjThoelke, 24 march 1997)
|
sl@0
|
952 |
|
sl@0
|
953 |
1. Uses E32/094, F32/063, STORE/038
|
sl@0
|
954 |
|
sl@0
|
955 |
Binary incompatible with 058.
|
sl@0
|
956 |
|
sl@0
|
957 |
WINS release, debug, unicode release and unicode debug
|
sl@0
|
958 |
ARM release and debug
|
sl@0
|
959 |
|
sl@0
|
960 |
The main thrust of this release is to re-engineer the sound services to:
|
sl@0
|
961 |
|
sl@0
|
962 |
* enable in-place recording of sound samples
|
sl@0
|
963 |
* modify the sound sample data format to improve seek performance
|
sl@0
|
964 |
* remove the TRequestStatus asynchronous API.
|
sl@0
|
965 |
|
sl@0
|
966 |
Meanwhile I have totally revamped the API for the CSoundPlayer,
|
sl@0
|
967 |
CSoundPlayerRecorder and CSoundData classes. Code which does not use any
|
sl@0
|
968 |
of the sound classes or utilities will not need any modification to use
|
sl@0
|
969 |
this new version of BAFL.
|
sl@0
|
970 |
|
sl@0
|
971 |
This release comes not entirely tested, and not entirely complete, in
|
sl@0
|
972 |
order to freeze the API now, rather than later. Binary compatible
|
sl@0
|
973 |
releases will be forth coming as the missing code is added and tested.
|
sl@0
|
974 |
|
sl@0
|
975 |
From NeilD
|
sl@0
|
976 |
|
sl@0
|
977 |
2. Transferred the utility EikThread::ExtractAppNameFromFullName(...)
|
sl@0
|
978 |
from EIKON to BAFL, now BaflUtils::ExtractAppNameFromFullName(...).
|
sl@0
|
979 |
This will be removed from EIKON as and when appropriate.
|
sl@0
|
980 |
|
sl@0
|
981 |
From AndrewT
|
sl@0
|
982 |
|
sl@0
|
983 |
3. CBulkData has been removed from the public API.
|
sl@0
|
984 |
|
sl@0
|
985 |
4. CSoundPlayer is similar to its previous API:
|
sl@0
|
986 |
|
sl@0
|
987 |
static CSoundPlayer* NewL(MSoundPlayerObserver& anObserver,RDevSound& aDev);
|
sl@0
|
988 |
void PlaySoundL(const TDesC& aName,RFs& aFs);
|
sl@0
|
989 |
void PlayFileL(const TDesC& aName,RFs& aFs);
|
sl@0
|
990 |
void PlayAlarm(const TDesC& aName);
|
sl@0
|
991 |
void PlayAlarm(TInt aAlarmIndex);
|
sl@0
|
992 |
void PlayFallBackAlarm();
|
sl@0
|
993 |
void Stop();
|
sl@0
|
994 |
TBool IsPlaying() const;
|
sl@0
|
995 |
|
sl@0
|
996 |
To replace the I/O Semaphore API for notification of completion, an
|
sl@0
|
997 |
MSoundPlayerObserver object is required. It's virtual PlayComplete(TInt)
|
sl@0
|
998 |
member is invoked when the player has finished playing any sound,
|
sl@0
|
999 |
passing any completion status as a parameter. Note that the player
|
sl@0
|
1000 |
still requires an active scheduler to be running to operate, but is no
|
sl@0
|
1001 |
longer itself an active object.
|
sl@0
|
1002 |
|
sl@0
|
1003 |
Playing alarm sounds is guaranteed to not fail. PlayAlarm(const TDesC&)
|
sl@0
|
1004 |
attempts to find an alarm of the given name and play it, otherwise the
|
sl@0
|
1005 |
fall-back alarm is played. PlayAlarm(TInt) is as before, playing the
|
sl@0
|
1006 |
alarm by index.
|
sl@0
|
1007 |
|
sl@0
|
1008 |
PlayFileL(...) will try to locate the named sound file and play it,
|
sl@0
|
1009 |
leaving on any error. PlaySoundL() will first try to find an alarm of
|
sl@0
|
1010 |
the given name, and if none is found will try to find the named sound
|
sl@0
|
1011 |
file, reporting an error if no such file exists.
|
sl@0
|
1012 |
|
sl@0
|
1013 |
Stop() will synchronously terminate the current sound playing, and will
|
sl@0
|
1014 |
not cause the observer to be notified.
|
sl@0
|
1015 |
|
sl@0
|
1016 |
IsPlaying() just reports whether a sound is currently being playing by
|
sl@0
|
1017 |
the object.
|
sl@0
|
1018 |
|
sl@0
|
1019 |
5. CSoundData API has totally changed. It supports embedded or in-place
|
sl@0
|
1020 |
sound samples. It no longer uses temporary file for temporary storage, but
|
sl@0
|
1021 |
a chunk instead. This means that spontaneous death will not eat up
|
sl@0
|
1022 |
precious disk (& memory) space.
|
sl@0
|
1023 |
|
sl@0
|
1024 |
The API is now expressed entirely in terms of byte positions within
|
sl@0
|
1025 |
the Alaw Sound sample, but provides conversion functions to and from
|
sl@0
|
1026 |
microseconds.
|
sl@0
|
1027 |
|
sl@0
|
1028 |
Uncompressed sound data now supports immediate seeking to any position
|
sl@0
|
1029 |
in the sample. The compressed data manager has not been implemented yet,
|
sl@0
|
1030 |
and, selecting a compressor will currently result in uncompressed data.
|
sl@0
|
1031 |
|
sl@0
|
1032 |
Recovery on failure and truncation of the sample in the face of OOM or
|
sl@0
|
1033 |
DiskFull errors are still being worked on, and have yet to be tested.
|
sl@0
|
1034 |
|
sl@0
|
1035 |
6. CSoundPlayerRecorder has had its API changed as well. It also uses an
|
sl@0
|
1036 |
observer, rather than I/O semaphore to mark completion of its services.
|
sl@0
|
1037 |
This class has not been tested yet.
|
sl@0
|
1038 |
|
sl@0
|
1039 |
7. CCompressorList has had some of its members name's changed.
|
sl@0
|
1040 |
Functionality is unchanged and still obvious.
|
sl@0
|
1041 |
|
sl@0
|
1042 |
|
sl@0
|
1043 |
Version 0.06.058
|
sl@0
|
1044 |
================
|
sl@0
|
1045 |
(Made by SteveG, 12-Mar-1997)
|
sl@0
|
1046 |
|
sl@0
|
1047 |
Uses
|
sl@0
|
1048 |
E32 (091)
|
sl@0
|
1049 |
F32 (060)
|
sl@0
|
1050 |
STORE (037)
|
sl@0
|
1051 |
|
sl@0
|
1052 |
1) Uses new sound driver functions for determining how many bytes have
|
sl@0
|
1053 |
been played, needed as the Record app now sets the sound drivers
|
sl@0
|
1054 |
buffer to 8000 bytes, and there will nearly always be 1 second of
|
sl@0
|
1055 |
sound remaining to be played when the end of the sample sound file
|
sl@0
|
1056 |
is reached
|
sl@0
|
1057 |
|
sl@0
|
1058 |
Version 0.05.057
|
sl@0
|
1059 |
================
|
sl@0
|
1060 |
(Made by SteveG, 04-Mar-1997)
|
sl@0
|
1061 |
|
sl@0
|
1062 |
Uses
|
sl@0
|
1063 |
E32 (090)
|
sl@0
|
1064 |
E32UTILS (008)
|
sl@0
|
1065 |
F32 (058)
|
sl@0
|
1066 |
STORE (036)
|
sl@0
|
1067 |
E32TOOLS (051)
|
sl@0
|
1068 |
EIKTOOLS (120)
|
sl@0
|
1069 |
RCOMP (313)
|
sl@0
|
1070 |
|
sl@0
|
1071 |
1) Fixed panic when cancelling sounds played by PlaySoundFileByName. This
|
sl@0
|
1072 |
was not initialising the iDevSound property
|
sl@0
|
1073 |
|
sl@0
|
1074 |
Version 0.05.056
|
sl@0
|
1075 |
================
|
sl@0
|
1076 |
(Made by SteveG, 03-Mar-1997)
|
sl@0
|
1077 |
|
sl@0
|
1078 |
Uses
|
sl@0
|
1079 |
E32 (090)
|
sl@0
|
1080 |
E32UTILS (008)
|
sl@0
|
1081 |
F32 (058)
|
sl@0
|
1082 |
STORE (036)
|
sl@0
|
1083 |
E32TOOLS (051)
|
sl@0
|
1084 |
EIKTOOLS (120)
|
sl@0
|
1085 |
RCOMP (313)
|
sl@0
|
1086 |
|
sl@0
|
1087 |
1) Altered the sound file format to store the uncompressed length of
|
sl@0
|
1088 |
each chunk, to speed up the seek functions. They no longer need
|
sl@0
|
1089 |
to read the chunk data in order to work out the duration of the
|
sl@0
|
1090 |
decompressed chunk
|
sl@0
|
1091 |
|
sl@0
|
1092 |
Version 0.05.055
|
sl@0
|
1093 |
================
|
sl@0
|
1094 |
(Made by DavidW, 02-Mar-1997)
|
sl@0
|
1095 |
|
sl@0
|
1096 |
Uses
|
sl@0
|
1097 |
E32 (090)
|
sl@0
|
1098 |
E32UTILS (008)
|
sl@0
|
1099 |
F32 (058)
|
sl@0
|
1100 |
STORE (036)
|
sl@0
|
1101 |
E32TOOLS (051)
|
sl@0
|
1102 |
EIKTOOLS (120)
|
sl@0
|
1103 |
RCOMP (313)
|
sl@0
|
1104 |
|
sl@0
|
1105 |
Not binary compatible with any predecessor
|
sl@0
|
1106 |
|
sl@0
|
1107 |
Size of BAFL.DLL: ArmRel 28,596 bytes, ArmDeb 32,036 bytes
|
sl@0
|
1108 |
|
sl@0
|
1109 |
1) Upgraded to the latest releases of all upstream components
|
sl@0
|
1110 |
|
sl@0
|
1111 |
2) Removed the TBoundedArray classes (and their test code)
|
sl@0
|
1112 |
|
sl@0
|
1113 |
3) Removed the box layout classes (and their test code)
|
sl@0
|
1114 |
|
sl@0
|
1115 |
4) Removed the function BaflUtils::ExtractMnemonic()
|
sl@0
|
1116 |
|
sl@0
|
1117 |
5) Removed the function TResourceReader::SetJustBuffer()
|
sl@0
|
1118 |
|
sl@0
|
1119 |
6) Brought the contents of \bafl\src\empty.cpp up to date
|
sl@0
|
1120 |
|
sl@0
|
1121 |
7) Removed all reference to the #define __BAFL_B6__ and removed all
|
sl@0
|
1122 |
code branches in which this macro was *not* defined
|
sl@0
|
1123 |
|
sl@0
|
1124 |
8) Added the class CBaActiveScheduler, containing code that ought to
|
sl@0
|
1125 |
migrate shortly into CActiveScheduler (and User and DThread). This
|
sl@0
|
1126 |
contains support for a grown-up error number system for the first
|
sl@0
|
1127 |
time. For further details, see the discussion in the EPOC32 Software
|
sl@0
|
1128 |
Design database on Notes
|
sl@0
|
1129 |
|
sl@0
|
1130 |
9) Moved the functions Exit() and LeaveNoAlert() from
|
sl@0
|
1131 |
CCoeActiveScheduler to CBaActiveScheduler (and slightly changed their
|
sl@0
|
1132 |
implementation, to avoid some theoretical problems)
|
sl@0
|
1133 |
|
sl@0
|
1134 |
10) Added the header file BAERROR.H containing Bafl-specific error
|
sl@0
|
1135 |
numbers, for the classes RResourceFile and CClipboard; improved the
|
sl@0
|
1136 |
code in BARSC.* and BACLIPB.* by taking advantage of this new scheme
|
sl@0
|
1137 |
|
sl@0
|
1138 |
11) Changed the TInt ConfirmSignature function of RResourceFile into
|
sl@0
|
1139 |
a void ConfirmSignatureL function instead. If the resource file
|
sl@0
|
1140 |
fails to have the expected signature, this function now does a custom
|
sl@0
|
1141 |
KUidBaflDll Leave with KErrBaflWrongResourceFileSignature
|
sl@0
|
1142 |
|
sl@0
|
1143 |
12) Changed the CClipboard class to do a custom KUidBaflDll Leave
|
sl@0
|
1144 |
with KErrBaflClipboardDoesNotExist in the case of (you guessed it)
|
sl@0
|
1145 |
the clipboard not existing. The Leave sets the "Information" bit, so
|
sl@0
|
1146 |
that the UI (ie Eikon level) should display an info message rather
|
sl@0
|
1147 |
than an alert dialog
|
sl@0
|
1148 |
|
sl@0
|
1149 |
13) Modified the test code T_CLIPB in line with the above changes.
|
sl@0
|
1150 |
|
sl@0
|
1151 |
Some limitations to report:
|
sl@0
|
1152 |
|
sl@0
|
1153 |
The WINS UREL version of T_SPYRC intermittently crashes inside an
|
sl@0
|
1154 |
ASSERT_DEBUG in the sound driver.
|
sl@0
|
1155 |
|
sl@0
|
1156 |
T_CELL gets lines 33-38 marked as "Unreachable code" when compiling
|
sl@0
|
1157 |
for Release mode under WINS.
|
sl@0
|
1158 |
|
sl@0
|
1159 |
I suspect the class CFindFileByType ought to be removed too, being
|
sl@0
|
1160 |
superseded by F32 functionality.
|
sl@0
|
1161 |
|
sl@0
|
1162 |
The T_BAFL.IBY hard-wires the location of T_RSC.RSC to a REL
|
sl@0
|
1163 |
directory, so it doesn't manage to build an ArmDeb ROM image unless
|
sl@0
|
1164 |
you've already built the ArmRel one.
|
sl@0
|
1165 |
|
sl@0
|
1166 |
I had real difficulties in persuading the NMAKE for the ArmDeb build
|
sl@0
|
1167 |
to run at all, and only got it to run when I deleted all files on the
|
sl@0
|
1168 |
drive and re-installed from the network. Something needs
|
sl@0
|
1169 |
investigating further here!
|
sl@0
|
1170 |
|
sl@0
|
1171 |
|
sl@0
|
1172 |
Version 0.05.054
|
sl@0
|
1173 |
================
|
sl@0
|
1174 |
(Made by MartinB, 28-Feb-1997)
|
sl@0
|
1175 |
|
sl@0
|
1176 |
Uses
|
sl@0
|
1177 |
E32 (089)
|
sl@0
|
1178 |
E32UTILS (006)
|
sl@0
|
1179 |
F32 (055)
|
sl@0
|
1180 |
STORE (035)
|
sl@0
|
1181 |
E32TOOLS (051)
|
sl@0
|
1182 |
EIKTOOLS (120)
|
sl@0
|
1183 |
RCOMP (313)
|
sl@0
|
1184 |
|
sl@0
|
1185 |
1) Changed ReadALawData() and Read() to take a TBool to indicate
|
sl@0
|
1186 |
whether to read the data or just perform a seek to the file
|
sl@0
|
1187 |
position that would result if that read took place. This is
|
sl@0
|
1188 |
used to dramatically decrease the time taken when seeking to
|
sl@0
|
1189 |
a time in a sample. SeekToTime() now calls ReadALawData passing
|
sl@0
|
1190 |
in EFalse to indicate not to read the data. However, if a
|
sl@0
|
1191 |
compressor is in use, then the read must take place and the
|
sl@0
|
1192 |
TBool argument is ignored. (SteveG)
|
sl@0
|
1193 |
|
sl@0
|
1194 |
2) Made some improvements to the TCellRef and TRangeRef classes. In
|
sl@0
|
1195 |
particular:
|
sl@0
|
1196 |
|
sl@0
|
1197 |
a) Inlined some functions
|
sl@0
|
1198 |
b) Default constructors no longer initialize values to zero.
|
sl@0
|
1199 |
c) Removed unnecessary operator=() functions.
|
sl@0
|
1200 |
|
sl@0
|
1201 |
|
sl@0
|
1202 |
Version 0.05.053
|
sl@0
|
1203 |
================
|
sl@0
|
1204 |
(Made by Natasha, 07-Feb-1997)
|
sl@0
|
1205 |
|
sl@0
|
1206 |
Uses
|
sl@0
|
1207 |
E32 (086)
|
sl@0
|
1208 |
E32UTILS (005)
|
sl@0
|
1209 |
F32 (050)
|
sl@0
|
1210 |
STORE (034)
|
sl@0
|
1211 |
E32TOOLS (051)
|
sl@0
|
1212 |
EIKTOOLS (119)
|
sl@0
|
1213 |
RCOMP (113)
|
sl@0
|
1214 |
|
sl@0
|
1215 |
From Natascha:
|
sl@0
|
1216 |
1) The new clipboard functions CopyToL(const TReal& aReal) and
|
sl@0
|
1217 |
PasteFromL(TReal& aReal) were mistakenly declared as IMPORT_C in the
|
sl@0
|
1218 |
source file - changed them to EXPORT_C.
|
sl@0
|
1219 |
|
sl@0
|
1220 |
|
sl@0
|
1221 |
Version 0.05.052
|
sl@0
|
1222 |
================
|
sl@0
|
1223 |
(Made by SteveG, 03-Feb-1997)
|
sl@0
|
1224 |
|
sl@0
|
1225 |
Uses
|
sl@0
|
1226 |
E32 (086)
|
sl@0
|
1227 |
E32UTILS (005)
|
sl@0
|
1228 |
F32 (050)
|
sl@0
|
1229 |
STORE (034)
|
sl@0
|
1230 |
E32TOOLS (051)
|
sl@0
|
1231 |
EIKTOOLS (119)
|
sl@0
|
1232 |
RCOMP (113)
|
sl@0
|
1233 |
|
sl@0
|
1234 |
From SteveG:
|
sl@0
|
1235 |
1) Changed ReadDataL() in BABUKDA.CPP to use the store functions
|
sl@0
|
1236 |
for copying to and from stores and files, rather than copying
|
sl@0
|
1237 |
256 bytes at a time in a tight loop. This increase dramatically
|
sl@0
|
1238 |
the speed of creating a temporary sample file and saving samples
|
sl@0
|
1239 |
(thanks to AndrewT for this)
|
sl@0
|
1240 |
|
sl@0
|
1241 |
Version 0.04.051
|
sl@0
|
1242 |
================
|
sl@0
|
1243 |
(Made by PeterJ, 30-Jan-1997)
|
sl@0
|
1244 |
|
sl@0
|
1245 |
Uses
|
sl@0
|
1246 |
E32 (086)
|
sl@0
|
1247 |
E32UTILS (005)
|
sl@0
|
1248 |
F32 (050)
|
sl@0
|
1249 |
STORE (034)
|
sl@0
|
1250 |
E32TOOLS (051)
|
sl@0
|
1251 |
EIKTOOLS (119)
|
sl@0
|
1252 |
RCOMP (113)
|
sl@0
|
1253 |
|
sl@0
|
1254 |
NOT binary compatible with BAFL 050.
|
sl@0
|
1255 |
|
sl@0
|
1256 |
|
sl@0
|
1257 |
BAFL.DLL is 36648 bytes long (release), 41164 (debug).
|
sl@0
|
1258 |
|
sl@0
|
1259 |
|
sl@0
|
1260 |
The box layout test code T_BLO is temporarily removed from the
|
sl@0
|
1261 |
rack list because it provokes an internal error in the current GCC
|
sl@0
|
1262 |
compiler.
|
sl@0
|
1263 |
|
sl@0
|
1264 |
|
sl@0
|
1265 |
|
sl@0
|
1266 |
|
sl@0
|
1267 |
From PeterJ:
|
sl@0
|
1268 |
CLEAN verb added to the MNT command set.
|
sl@0
|
1269 |
|
sl@0
|
1270 |
|
sl@0
|
1271 |
From NataschaK:
|
sl@0
|
1272 |
|
sl@0
|
1273 |
CClipboard member functions to copy/paste real numbers. These are included
|
sl@0
|
1274 |
to provide common functionality. There are architectural questions to answer
|
sl@0
|
1275 |
here. Is this the right place for such functionality? Should there be provision
|
sl@0
|
1276 |
for other low level data types?
|
sl@0
|
1277 |
|
sl@0
|
1278 |
|
sl@0
|
1279 |
|
sl@0
|
1280 |
From Brendan:
|
sl@0
|
1281 |
A. Changes to CSoundData
|
sl@0
|
1282 |
-------------------------
|
sl@0
|
1283 |
|
sl@0
|
1284 |
1) CSoundData::SeekToTime to take const reference argument (instead of const)
|
sl@0
|
1285 |
2) Added EBafPanicBulkDataNoDestination which is used rather than
|
sl@0
|
1286 |
EBafPanicBulkDataNoDataExist when no destination is specified in CopyDataToL()
|
sl@0
|
1287 |
3) Grouped similar functions in header for CBulkData
|
sl@0
|
1288 |
4) The function CBulkData::DeleteDataFromTheEnd(TInt aLength) now
|
sl@0
|
1289 |
checks for a -ve value of length.
|
sl@0
|
1290 |
Added TInt TruncateDataAt(TInt aPosition);
|
sl@0
|
1291 |
to delete data from a given offset from the start.
|
sl@0
|
1292 |
5) Added various private utility functions to CBulkData:
|
sl@0
|
1293 |
TBool DoesFileExist(const TDesC& aFullFileName) const;
|
sl@0
|
1294 |
void EnsurePathExistsL(const TDesC& aFullPath) const;
|
sl@0
|
1295 |
void MoveFileL(const TParseBase& aDest,const TParseBase& aSource);
|
sl@0
|
1296 |
TPtrC BulkDataTempFilePath() const;
|
sl@0
|
1297 |
TPtrC TemporaryFile() const;
|
sl@0
|
1298 |
void SetTemporaryFile(const TDesC& aName);
|
sl@0
|
1299 |
void InternalizeL(RReadStream& aStream);
|
sl@0
|
1300 |
6) CBulkData::SaveToNewStoreL now uses 1 TParse, instead of 2 TParses and a TFileName
|
sl@0
|
1301 |
7) CBulkData::SaveToNewStoreL renamed to MoveToNewStoreL()
|
sl@0
|
1302 |
It now deletes the old file if it was on the same drive as the new,
|
sl@0
|
1303 |
as well as if on different drives.
|
sl@0
|
1304 |
Note that this function will delete all data
|
sl@0
|
1305 |
under error circumstances.
|
sl@0
|
1306 |
8) Made internal use of CBulkData::IsReady... functions
|
sl@0
|
1307 |
9) CBulkData::DeleteDataFromTheEnd() and truncate now return KErrNotReady if
|
sl@0
|
1308 |
there is no data, rather than KErrNotFound.
|
sl@0
|
1309 |
|
sl@0
|
1310 |
B. Changes to CSoundData
|
sl@0
|
1311 |
-------------------------
|
sl@0
|
1312 |
|
sl@0
|
1313 |
1) Grouped similar functions in header for CSoundData
|
sl@0
|
1314 |
2) DataPlayTime renamed to SamplePlayLength
|
sl@0
|
1315 |
DataBeingreadTime renamed to CurrentPosition
|
sl@0
|
1316 |
3) Added TotalPlayLength which takes into account trailing silence and repeats
|
sl@0
|
1317 |
4) Added various private utility functions
|
sl@0
|
1318 |
TCompressorPtr DoCreateCompressorL(TUid aUid) const;
|
sl@0
|
1319 |
TTimeIntervalMicroSeconds AlawBytesToMicroSeconds(TInt aBytes) const;
|
sl@0
|
1320 |
TTimeIntervalMicroSeconds operator+(const TTimeIntervalMicroSeconds& aLeft,const TTimeIntervalMicroSeconds& aRight)
|
sl@0
|
1321 |
5) Set a maximum of KSoundDataMaxReadChunkPlayLengthBytes=10000000
|
sl@0
|
1322 |
for reading and writing chunks, to help check for corrupted data. This number should in fact never
|
sl@0
|
1323 |
exceed 1000.
|
sl@0
|
1324 |
|
sl@0
|
1325 |
C. Changes to CSoundPlayerRecorder
|
sl@0
|
1326 |
-----------------------------------
|
sl@0
|
1327 |
|
sl@0
|
1328 |
1) Grouped similar functions in header for CSoundPlayerRecorder
|
sl@0
|
1329 |
2) Extensive renaming of functions to clarify their roles.
|
sl@0
|
1330 |
Removed most ...SoundData.. from function names since this class
|
sl@0
|
1331 |
can no longer deals with any other kind of data.
|
sl@0
|
1332 |
3) Dropped IsSoundDataPresent since it was not being used anywhere
|
sl@0
|
1333 |
4) PrepareForUpdateL renamed PrepareForRecordL
|
sl@0
|
1334 |
5) SaveSoundDataTo becomes MoveSoundDataTo, since old data is deleted. Note that
|
sl@0
|
1335 |
the new store still needs to be opened before it can be used.
|
sl@0
|
1336 |
|
sl@0
|
1337 |
D. Changes to CSoundPlayer
|
sl@0
|
1338 |
---------------------------
|
sl@0
|
1339 |
|
sl@0
|
1340 |
1) Uses two new private functions
|
sl@0
|
1341 |
PlayAlarmSoundByName
|
sl@0
|
1342 |
PlaySoundFileByName
|
sl@0
|
1343 |
2) inlined PlayFallBackAlarmSound to use PlayAlarmSound
|
sl@0
|
1344 |
|
sl@0
|
1345 |
E. Changes to SoundUtilities
|
sl@0
|
1346 |
-----------------------------
|
sl@0
|
1347 |
|
sl@0
|
1348 |
1) SoundUtilities::Populate makes use the new CDescArray::InsertIsq functions
|
sl@0
|
1349 |
2) SoundUtilities::SoundFileByName no longer validates that a file contains
|
sl@0
|
1350 |
a sound data stream. This function is now provided separately. This is to
|
sl@0
|
1351 |
help solve a problem in which corrupted files could not be deleted.
|
sl@0
|
1352 |
3) Added function DoesFileContainSoundDataL which returns true if a sound data
|
sl@0
|
1353 |
stream was found (It can leave when creating a store or the root stream).
|
sl@0
|
1354 |
|
sl@0
|
1355 |
|
sl@0
|
1356 |
|
sl@0
|
1357 |
|
sl@0
|
1358 |
Version 0.04.050
|
sl@0
|
1359 |
================
|
sl@0
|
1360 |
(Made by PeterJ, January 1997)
|
sl@0
|
1361 |
|
sl@0
|
1362 |
Uses
|
sl@0
|
1363 |
E32 (085)
|
sl@0
|
1364 |
E32UTILS (005)
|
sl@0
|
1365 |
F32 (049)
|
sl@0
|
1366 |
STORE (033)
|
sl@0
|
1367 |
E32TOOLS (050)
|
sl@0
|
1368 |
EIKTOOLS (119)
|
sl@0
|
1369 |
RCOMP (113)
|
sl@0
|
1370 |
|
sl@0
|
1371 |
NOT binary compatible with BAFL 049.
|
sl@0
|
1372 |
|
sl@0
|
1373 |
This version was reput at 20:00 ish on 14-Jan-1997 with a bugfix
|
sl@0
|
1374 |
in the RResource class that caused it to unpredictably reject
|
sl@0
|
1375 |
a resource binary as corrupt.
|
sl@0
|
1376 |
|
sl@0
|
1377 |
Size of BAFL.DLL release is 35,736 (40,072 in debug version).
|
sl@0
|
1378 |
|
sl@0
|
1379 |
There remains an outstanding problem with the sound player that
|
sl@0
|
1380 |
shows up in the test code running under WINS only.
|
sl@0
|
1381 |
|
sl@0
|
1382 |
|
sl@0
|
1383 |
Changes
|
sl@0
|
1384 |
-------
|
sl@0
|
1385 |
|
sl@0
|
1386 |
From history:
|
sl@0
|
1387 |
1) Remove the following RResourceFile member functions which have been
|
sl@0
|
1388 |
deprecated for some time but were left around for binary compatibility.
|
sl@0
|
1389 |
|
sl@0
|
1390 |
TInt PositionToResourceL(TInt aResourceId,TInt &aDecodedLen) const;
|
sl@0
|
1391 |
void ReadResourceDataL(TDes8 &aDes,TInt aReadLen,TInt aDecodedLen) const;
|
sl@0
|
1392 |
(BARSC.H)
|
sl@0
|
1393 |
|
sl@0
|
1394 |
From Brendan:
|
sl@0
|
1395 |
2) template <class T>
|
sl@0
|
1396 |
inline TBool TLibAssoc<T>::IsNull()
|
sl@0
|
1397 |
|
sl@0
|
1398 |
is now a const function. (BALIBA.H)
|
sl@0
|
1399 |
|
sl@0
|
1400 |
3) added the following functions to CDesCArray (8 and 16 bit versions)
|
sl@0
|
1401 |
|
sl@0
|
1402 |
IMPORT_C TInt InsertIsqL(const TDesC8& aPtr
|
sl@0
|
1403 |
,TKeyCmpText aTextComparisonType=ECmpFolded);
|
sl@0
|
1404 |
IMPORT_C TInt InsertIsqAllowDuplicatesL(const TDesC8& aPtr
|
sl@0
|
1405 |
,TKeyCmpText aTextComparisonType=ECmpFolded);
|
sl@0
|
1406 |
IMPORT_C TInt FindIsq(const TDesC8& aPtr,TInt& aPos
|
sl@0
|
1407 |
,TKeyCmpText aTextComparisonType=ECmpFolded) const;
|
sl@0
|
1408 |
|
sl@0
|
1409 |
These allow the insertion in sequence of descriptors into an array,
|
sl@0
|
1410 |
and for finding the descriptors from a sorted array.
|
sl@0
|
1411 |
|
sl@0
|
1412 |
Note that this functionailty is already available for CPtrCArray variants.
|
sl@0
|
1413 |
The test T_PTRCA shows how this is done - it just requires that the user
|
sl@0
|
1414 |
create and use a : TKeyArrayFix key(0,{sort method});
|
sl@0
|
1415 |
|
sl@0
|
1416 |
|
sl@0
|
1417 |
T_DESCA has been modified to at call these functions and ensure that they
|
sl@0
|
1418 |
work. It does not stress test them.
|
sl@0
|
1419 |
|
sl@0
|
1420 |
T_PTRCA has been modified to show how to call the FindIsq and
|
sl@0
|
1421 |
InsertIsq functions.
|
sl@0
|
1422 |
|
sl@0
|
1423 |
|
sl@0
|
1424 |
From Simon Ch:
|
sl@0
|
1425 |
4) Added CClipboard::NewForReadingL(RFs& aFsSession). This is for use
|
sl@0
|
1426 |
by callers who don't know if the clipboard exists before they
|
sl@0
|
1427 |
attempt to paste. (BACLIPB.H) Test code added to T_CLIPB.
|
sl@0
|
1428 |
|
sl@0
|
1429 |
|
sl@0
|
1430 |
From AndrewT:
|
sl@0
|
1431 |
5) Modifications to allow resource data to be read out of ROM directly.
|
sl@0
|
1432 |
Affects BARSC and its test code and changes the RResourceFile class
|
sl@0
|
1433 |
signature slightly.
|
sl@0
|
1434 |
|
sl@0
|
1435 |
|
sl@0
|
1436 |
From PNJ:
|
sl@0
|
1437 |
6) Test code now compiles its own resources instead of using
|
sl@0
|
1438 |
stored resource objects. Affects T_RSC and T_RSREAD.
|
sl@0
|
1439 |
MNT procedure modified to get an explicit resource compiler
|
sl@0
|
1440 |
version. (may want to review the role of EIKTOOLS here).
|
sl@0
|
1441 |
|
sl@0
|
1442 |
7) Resource file test code now deals with both 8 and 16-bit
|
sl@0
|
1443 |
text strings generated by RCOMP 3.13 or higher.
|
sl@0
|
1444 |
|
sl@0
|
1445 |
|
sl@0
|
1446 |
|
sl@0
|
1447 |
|
sl@0
|
1448 |
|
sl@0
|
1449 |
|
sl@0
|
1450 |
Version 0.04.049
|
sl@0
|
1451 |
================
|
sl@0
|
1452 |
(Made by Brendan, 20 December 1996)
|
sl@0
|
1453 |
|
sl@0
|
1454 |
Uses
|
sl@0
|
1455 |
E32 (081)
|
sl@0
|
1456 |
E32UTILS (004)
|
sl@0
|
1457 |
F32 (045)
|
sl@0
|
1458 |
STORE (032)
|
sl@0
|
1459 |
E32TOOLS (049)
|
sl@0
|
1460 |
EIKTOOLS (119)
|
sl@0
|
1461 |
|
sl@0
|
1462 |
1) size Arm release
|
sl@0
|
1463 |
BAFL.DLL 35,000
|
sl@0
|
1464 |
2) Upgraded to new components. This release is not binary compatible,
|
sl@0
|
1465 |
and introduces the following new classes:
|
sl@0
|
1466 |
CFindFileByType,TLibAssoc<>,CSoundPlayer,CPtrCArray (and variants)
|
sl@0
|
1467 |
There are likely to be more changes in the sound utilities.
|
sl@0
|
1468 |
3) Incorporated a CSoundPlayer class from Julian, which is used to play sounds
|
sl@0
|
1469 |
by name. CSoundPlayerRecorder now only deals with file based sounds and not
|
sl@0
|
1470 |
algorithmic sounds.
|
sl@0
|
1471 |
- PlayByName() returns an error instead of leaving, to be consistent with the API
|
sl@0
|
1472 |
to algorithmic sounds.
|
sl@0
|
1473 |
4) Incorporate CFindFileByType from Julian, making some minor changes
|
sl@0
|
1474 |
to return the file name and extention of a found file and just the
|
sl@0
|
1475 |
file name (in TPtrC's).
|
sl@0
|
1476 |
5) Took advantage of CFindFileByType in the CSoundUtilities
|
sl@0
|
1477 |
6) Added CPtrCArray arrays - these are similar to CDesCArrays
|
sl@0
|
1478 |
but store an array of TPtrC's rather than the actual data.
|
sl@0
|
1479 |
- There is a CopyL function to copy any MdcaArray to a CPtrCArray.
|
sl@0
|
1480 |
- It can be used instead of CDesCArray in listboxes etc to reduce
|
sl@0
|
1481 |
duplicating memory, but care should be taken since it can
|
sl@0
|
1482 |
hold invalid data if the data that the TPtrC's point to, is deleted.
|
sl@0
|
1483 |
7) Added test code T_PTRCA for class CPtrCArray
|
sl@0
|
1484 |
8) TLibAssoc<T> class to be used synonomously with a pointer to the
|
sl@0
|
1485 |
library associated class (ie a pluggable component). It contains a RLibrary
|
sl@0
|
1486 |
and a pointer to the class that the library has created. When this
|
sl@0
|
1487 |
pointer class is "deleted"(Unload()), the library is unloaded after the
|
sl@0
|
1488 |
the class has been deleted - ensuring that the destructor of the class is still
|
sl@0
|
1489 |
around during the deletion. See the test code T_LIBA for examples of how
|
sl@0
|
1490 |
it can be used.
|
sl@0
|
1491 |
- use a "TLibAssoc" instance instead of "CLibraryClass*",
|
sl@0
|
1492 |
- call "TLibAssoc.Unload()" instead of "delete(CLibraryClass*);"
|
sl@0
|
1493 |
- call "TLibAssoc.IsNull()" instead if "CLibraryClass*==NULL"
|
sl@0
|
1494 |
- TLibAssoc can be used with CleanupStack::PushL() and PopAndDestroy() etc.
|
sl@0
|
1495 |
- TLibAssoc is safe to use in applications because it does not rely on an
|
sl@0
|
1496 |
active object to unload the libraries.
|
sl@0
|
1497 |
- TLibAssoc should not be used to unload the Dll inwhich the TLibAssoc class
|
sl@0
|
1498 |
is defined, because the executed code must be in a different executable.
|
sl@0
|
1499 |
9) Dropped CLibUnloader
|
sl@0
|
1500 |
10) Changed sound utilities to compare alarm sound names with a fold comparison
|
sl@0
|
1501 |
since the file server wouldnt distinguish between the files.
|
sl@0
|
1502 |
11) Provided public SoundUtilities::PopulateAlgorithmicSoundsL()
|
sl@0
|
1503 |
and SoundUtilities::PopulateAlarmSoundFilesL()
|
sl@0
|
1504 |
12) Minor changes to BASNDDA.CPP to prevent possible overlfow errors
|
sl@0
|
1505 |
in calculations
|
sl@0
|
1506 |
13) Minor changes to T_SNDUT.CPP to check that sound files correspond
|
sl@0
|
1507 |
to their names
|
sl@0
|
1508 |
14) Added TheSoundDev.FlushPlayBuffer() and TheSoundDev.FlushRecordBuffer()
|
sl@0
|
1509 |
to T_SNDDA to prevent it from failing with KErrInUse
|
sl@0
|
1510 |
From comments in the test code, it looks as though this test needs to be
|
sl@0
|
1511 |
revisisted.
|
sl@0
|
1512 |
|
sl@0
|
1513 |
Version 0.04.048
|
sl@0
|
1514 |
================
|
sl@0
|
1515 |
Made by Julian, 02-Dec-1996
|
sl@0
|
1516 |
|
sl@0
|
1517 |
Uses E32/079, E32UTILS/004, F32/044, STORE/032,
|
sl@0
|
1518 |
E32TOOLS/048, EIKTOOLS/119
|
sl@0
|
1519 |
|
sl@0
|
1520 |
BAFL ARM DLL sizes: 33148 (release) 37140 (debug)
|
sl@0
|
1521 |
|
sl@0
|
1522 |
Stay compatible with previous releases.
|
sl@0
|
1523 |
|
sl@0
|
1524 |
Use new E32/079 and upward components
|
sl@0
|
1525 |
|
sl@0
|
1526 |
From Julian:
|
sl@0
|
1527 |
============
|
sl@0
|
1528 |
|
sl@0
|
1529 |
1. Checking the drive of the saved file name is the same as the
|
sl@0
|
1530 |
temporary file's drive name in CBulkData::SaveToNewStoreL() function.
|
sl@0
|
1531 |
If they are not the same, the CFileMan's Copy() and Delete() functions
|
sl@0
|
1532 |
will be usedinstead of the RFs::Replace() function as Replace() function
|
sl@0
|
1533 |
couldn't replace files between different drives.
|
sl@0
|
1534 |
|
sl@0
|
1535 |
|
sl@0
|
1536 |
Version 0.04.047
|
sl@0
|
1537 |
================
|
sl@0
|
1538 |
Made by PeterJ, 02-Dec-1996
|
sl@0
|
1539 |
|
sl@0
|
1540 |
Uses E32/075, E32UTILS/004, F32/042, STORE/030,
|
sl@0
|
1541 |
E32TOOLS/048, EIKTOOLS/118
|
sl@0
|
1542 |
|
sl@0
|
1543 |
BAFL ARM DLL sizes: 32908 (release) 36908 (debug)
|
sl@0
|
1544 |
|
sl@0
|
1545 |
Main modifications to stay compatible with baser releases.
|
sl@0
|
1546 |
|
sl@0
|
1547 |
NB. The debug build test code tends to display some Store
|
sl@0
|
1548 |
notifier messages. This seems to be a common phenomenon.
|
sl@0
|
1549 |
|
sl@0
|
1550 |
The T_SNDDA test code seemed to hang once in the WINS release
|
sl@0
|
1551 |
build while supposedly playing a sound. Could not reproduce,
|
sl@0
|
1552 |
but the recent sound driver changes in E32/075 may be relevant.
|
sl@0
|
1553 |
|
sl@0
|
1554 |
From PeterJ:
|
sl@0
|
1555 |
============
|
sl@0
|
1556 |
|
sl@0
|
1557 |
1. BAFLVER.H once again reflects the release version numbers.
|
sl@0
|
1558 |
(Thanks to Brendan for pointing this out)
|
sl@0
|
1559 |
|
sl@0
|
1560 |
2. TRangeRef::TIter::InRange() is now declared const. (As pointed
|
sl@0
|
1561 |
out by Lane)
|
sl@0
|
1562 |
|
sl@0
|
1563 |
3. Instances of KNotFound return values replaced with KErrNotFound
|
sl@0
|
1564 |
instead. (In incremental matcher code)
|
sl@0
|
1565 |
Also instances of KErrDoesNotExist replaced with KErrNotFound.
|
sl@0
|
1566 |
(Bulk data code, sound player code)
|
sl@0
|
1567 |
|
sl@0
|
1568 |
4. Obey include files BASE.IBY and EWSRV.IBY updated to reflect
|
sl@0
|
1569 |
UID3 values now defined in E32. Note that the uid3 parameter
|
sl@0
|
1570 |
has to be in LOWER CASE before it can be recognised.
|
sl@0
|
1571 |
|
sl@0
|
1572 |
From DW2:
|
sl@0
|
1573 |
=========
|
sl@0
|
1574 |
|
sl@0
|
1575 |
1. CClipboard::Store() now returns a CStreamStore instead of a
|
sl@0
|
1576 |
CFileStore reference.
|
sl@0
|
1577 |
|
sl@0
|
1578 |
|
sl@0
|
1579 |
Version 0.04.046
|
sl@0
|
1580 |
================
|
sl@0
|
1581 |
Made by PeterJ, 23-Nov-1996
|
sl@0
|
1582 |
|
sl@0
|
1583 |
Uses E32/074, E32UTILS/003, F32/040, STORE/029,
|
sl@0
|
1584 |
E32TOOLS/045, EIKTOOLS/118
|
sl@0
|
1585 |
|
sl@0
|
1586 |
This is not binary compatible with 045.
|
sl@0
|
1587 |
|
sl@0
|
1588 |
Size of ARM BAFL.DLL: 32,896 (Release), 36,384 (Debug).
|
sl@0
|
1589 |
|
sl@0
|
1590 |
From PeterJ:
|
sl@0
|
1591 |
============
|
sl@0
|
1592 |
|
sl@0
|
1593 |
General modifications required to support the wide-character
|
sl@0
|
1594 |
build variant of BAFL. This functions in the WINS release but
|
sl@0
|
1595 |
not yet in the ARM release.
|
sl@0
|
1596 |
|
sl@0
|
1597 |
Excruciating details can be found in
|
sl@0
|
1598 |
|
sl@0
|
1599 |
file:////sentinel-main/upeterj/japan/notes/code_modifications.html#BAFL_046
|
sl@0
|
1600 |
|
sl@0
|
1601 |
In summary:
|
sl@0
|
1602 |
|
sl@0
|
1603 |
1) Base address of the WINS BAFL.DLL changed from 61000000 to
|
sl@0
|
1604 |
40100000 to conform with MartinB's new allocation scheme.
|
sl@0
|
1605 |
|
sl@0
|
1606 |
2) Various minor corrections where generic descriptors were being
|
sl@0
|
1607 |
used to refer to non-text data.
|
sl@0
|
1608 |
|
sl@0
|
1609 |
3) TResourceReader class member functions that were defined in terms
|
sl@0
|
1610 |
of generic descriptors have been extended to provide explicit
|
sl@0
|
1611 |
8 and 16-bit data member functions. The caller must decide which ones
|
sl@0
|
1612 |
to use depending on whether they are meant to be reading text or
|
sl@0
|
1613 |
binary data. Functions affected are:
|
sl@0
|
1614 |
|
sl@0
|
1615 |
ReadHBufCL, ReadTPtrC, ReadDesCArrayL.
|
sl@0
|
1616 |
|
sl@0
|
1617 |
4) The CDesCArray and MDesCArray classes were defined in terms of 8-bit
|
sl@0
|
1618 |
buffers only. This family now has explicit 8 and 16-bit variants:
|
sl@0
|
1619 |
|
sl@0
|
1620 |
CDesC8Array, CDesC16Array, MDesC8Array and MDesC16Array.
|
sl@0
|
1621 |
|
sl@0
|
1622 |
5) Minor test code changes. T_RSC has a new compare function to allow it
|
sl@0
|
1623 |
to compare 8-bit resource strings with internally defined text descriptors.
|
sl@0
|
1624 |
T_RSREAD modified to use explicit 8-bit resource strings. This will be
|
sl@0
|
1625 |
revisited when the resource compiler supports Unicode strings. UIDs for the
|
sl@0
|
1626 |
dummy compressor files are now assigned in the make file instead of in
|
sl@0
|
1627 |
the MNT command file.
|
sl@0
|
1628 |
|
sl@0
|
1629 |
6) Changes to MNT.CMD to support Unicode variants of BAFL. Later versions
|
sl@0
|
1630 |
of BAFL should now be released with MNT BLDUREL and MNT BLDUDEB steps
|
sl@0
|
1631 |
and the test code exercised after building with MNT BTSTUREL and BTSTUDEB.
|
sl@0
|
1632 |
|
sl@0
|
1633 |
|
sl@0
|
1634 |
|
sl@0
|
1635 |
Version 0.03.045
|
sl@0
|
1636 |
================
|
sl@0
|
1637 |
Made by DavidW, 11 Nov 1996
|
sl@0
|
1638 |
|
sl@0
|
1639 |
Uses E32/074, E32UTILS/003, F32/040, STORE/029,
|
sl@0
|
1640 |
E32TOOLS/045, EIKTOOLS/118
|
sl@0
|
1641 |
|
sl@0
|
1642 |
Retains binary compatibility with 044
|
sl@0
|
1643 |
|
sl@0
|
1644 |
Size of BAFL.DLL (ARM):
|
sl@0
|
1645 |
31,132 bytes (Release), 34,368 (Debug)
|
sl@0
|
1646 |
|
sl@0
|
1647 |
Re-put at 11am 12th Nov, with:
|
sl@0
|
1648 |
|
sl@0
|
1649 |
*) the class originally called CBaflChangeNotifier renamed to
|
sl@0
|
1650 |
CEnvironmentChangeNotifier, on the suggestion of MartinT
|
sl@0
|
1651 |
|
sl@0
|
1652 |
*) improved T_CNTF test code, from Brenda
|
sl@0
|
1653 |
|
sl@0
|
1654 |
*) an update to use the latest version of all system components (not
|
sl@0
|
1655 |
strictly necessary, except for MARMD ROMs on Proteas with 8Mb of RAM)
|
sl@0
|
1656 |
|
sl@0
|
1657 |
|
sl@0
|
1658 |
From DavidW:
|
sl@0
|
1659 |
------------
|
sl@0
|
1660 |
1) Added some timing tests for resource file lookup in T_RSREAD
|
sl@0
|
1661 |
|
sl@0
|
1662 |
2) Altered the way the RResourceFile class reads resources, to do a
|
sl@0
|
1663 |
seek-and-read together, rather than a seek followed by a separate
|
sl@0
|
1664 |
read. This resulted in a 30% speed improvement
|
sl@0
|
1665 |
|
sl@0
|
1666 |
3) The two functions ReadResourceDataL() and PositionToResourceL()
|
sl@0
|
1667 |
of RResourceFile have been withdrawn from the public API (although
|
sl@0
|
1668 |
empty implementations remain until the next API thaw)
|
sl@0
|
1669 |
|
sl@0
|
1670 |
4) Switched to EIKTOOLS/118 and therefore now default to doing a
|
sl@0
|
1671 |
MARMD release as well as a MARM one (whereas previously the default
|
sl@0
|
1672 |
was not to do one)
|
sl@0
|
1673 |
|
sl@0
|
1674 |
5) Simplified ..\tsrc\bld.cmd to use setwhat.cmd
|
sl@0
|
1675 |
|
sl@0
|
1676 |
Note that the steps required to build and test a new version of
|
sl@0
|
1677 |
Bafl are now
|
sl@0
|
1678 |
|
sl@0
|
1679 |
MNT BLD followed by BTST then RTST for the Ascii Debug variant
|
sl@0
|
1680 |
|
sl@0
|
1681 |
MNT BLDREL / BTSTREL / RTSTREL for the Ascii Release variant
|
sl@0
|
1682 |
|
sl@0
|
1683 |
MNT ARMREL / ATSTREL / BLDIMG / REPRO for Gcc Release
|
sl@0
|
1684 |
|
sl@0
|
1685 |
MNT ARMDEB / ATSTDEB / BLDIMD / REPROD for Gcc Debug
|
sl@0
|
1686 |
|
sl@0
|
1687 |
Then MNT PUTREL as usual to release it.
|
sl@0
|
1688 |
|
sl@0
|
1689 |
Note that if you are in a binary compatible phase, you need to rename
|
sl@0
|
1690 |
|
sl@0
|
1691 |
BAFL.DEF -> BAFL.FRZ *and* BAFLD.DEF -> BAFLD.FRZ
|
sl@0
|
1692 |
|
sl@0
|
1693 |
before doing the PUTSRC.
|
sl@0
|
1694 |
|
sl@0
|
1695 |
From Brendan:
|
sl@0
|
1696 |
-------------
|
sl@0
|
1697 |
6) New class CEnvironmentChangeNotifier in the new module BACNTF.*;
|
sl@0
|
1698 |
this is an active object that executes a TCallBack when a change in
|
sl@0
|
1699 |
TLocale is detected through RChangeNotifier. Midnight rollover is
|
sl@0
|
1700 |
notified in the same way
|
sl@0
|
1701 |
|
sl@0
|
1702 |
7) New test code T_CNTF for the CEnvironmentChangeNotifier class,
|
sl@0
|
1703 |
testing that the callback gets called when locale is changed and
|
sl@0
|
1704 |
after midnight crossover.
|
sl@0
|
1705 |
|
sl@0
|
1706 |
|
sl@0
|
1707 |
Version 0.01.044
|
sl@0
|
1708 |
================
|
sl@0
|
1709 |
Made by JulianL, 06 Nov 1996
|
sl@0
|
1710 |
|
sl@0
|
1711 |
Uses E32/072, E32UTILS/002, F32/038, STORE/028,
|
sl@0
|
1712 |
E32TOOLS/045, EIKTOOLS/114
|
sl@0
|
1713 |
|
sl@0
|
1714 |
Completely binary compatible with 043
|
sl@0
|
1715 |
|
sl@0
|
1716 |
From Julian:
|
sl@0
|
1717 |
------------
|
sl@0
|
1718 |
1) Fix bug in CSoundPlayerAndRecorder::PlaySoundByName() function
|
sl@0
|
1719 |
so that it can play the same name again. Also the
|
sl@0
|
1720 |
CSoundPlayerAndRecorder's Cancel() operation will close the store
|
sl@0
|
1721 |
which holds the alarm sound opened by the above fountion.
|
sl@0
|
1722 |
|
sl@0
|
1723 |
|
sl@0
|
1724 |
Version 0.01.043
|
sl@0
|
1725 |
================
|
sl@0
|
1726 |
Made by DavidW, 29 October 1996
|
sl@0
|
1727 |
|
sl@0
|
1728 |
Uses E32/072, E32UTILS/002, F32/038, STORE/028,
|
sl@0
|
1729 |
E32TOOLS/045, EIKTOOLS/114
|
sl@0
|
1730 |
|
sl@0
|
1731 |
Upgraded to E32/072 et al.
|
sl@0
|
1732 |
Note the dependency on E32UTILS for the first time.
|
sl@0
|
1733 |
|
sl@0
|
1734 |
Size of BAFL.DLL (ARM):
|
sl@0
|
1735 |
30,660 bytes (Release), 33,764 (Debug)
|
sl@0
|
1736 |
|
sl@0
|
1737 |
Re-put at 12:15pm 4/11/96 including MARMD releaseables; modest
|
sl@0
|
1738 |
changes were required in the *.?BY and *.CMD files to support this:
|
sl@0
|
1739 |
|
sl@0
|
1740 |
*) the value of EXEUID now has to be passed in as a #define to
|
sl@0
|
1741 |
PREP, rather than being hard-wired in the BAFL.OBY file)
|
sl@0
|
1742 |
|
sl@0
|
1743 |
*) MNT GETE32UTILS needed some lines adding to it, to fetch the
|
sl@0
|
1744 |
MARMD components too
|
sl@0
|
1745 |
|
sl@0
|
1746 |
From DavidW:
|
sl@0
|
1747 |
------------
|
sl@0
|
1748 |
1) Converted to the new WINS directory structure. All INSTxxx verbs
|
sl@0
|
1749 |
in the MNT.CMD are history
|
sl@0
|
1750 |
|
sl@0
|
1751 |
2) Removed the template class MArray<T> as over-complicated for what
|
sl@0
|
1752 |
it achieved; replaced MArray<TDesC> with MArrayDesC, and renamed the
|
sl@0
|
1753 |
header file MARRAY.H to BAMDESCA.H; recall that the role of the
|
sl@0
|
1754 |
MArrayDesC class is to define an abstract interface whereby an "array"
|
sl@0
|
1755 |
returns references to constant descriptors, without prejudice as to
|
sl@0
|
1756 |
how these descriptors are stored
|
sl@0
|
1757 |
|
sl@0
|
1758 |
3) Renamed the functions of the above class to MdcaCount() and
|
sl@0
|
1759 |
MdcaPoint(), to avoid name clashes when multiply inheriting from both
|
sl@0
|
1760 |
a MArrayDesC and a "standard" array (see the example which has been
|
sl@0
|
1761 |
added to T_DESCA to demonstrate this case)
|
sl@0
|
1762 |
|
sl@0
|
1763 |
4) Changed the implementation of CDesCArray to avoid the run-time
|
sl@0
|
1764 |
alloc inefficiencies of the previous implementation, albeit at the
|
sl@0
|
1765 |
cost of a thicker class (which publicly inherits functions from
|
sl@0
|
1766 |
CArrayFixBase that, from a purist point of view, it ought not to);
|
sl@0
|
1767 |
recall that the role of the CDesCArray classes are to provide an
|
sl@0
|
1768 |
efficient storage of an array of variable length descriptors, which
|
sl@0
|
1769 |
are passed into the array as TDesC& and retrieved as TDesC& (const in
|
sl@0
|
1770 |
both cases); there are CDesCArrayFlat and CDesCArraySeg variants;
|
sl@0
|
1771 |
whereas the MArrayDesC class only provides "read access" to that
|
sl@0
|
1772 |
array, the CDesCArray classes additionally provide "write" functions
|
sl@0
|
1773 |
such as AppendL, Delete, and InsertL
|
sl@0
|
1774 |
|
sl@0
|
1775 |
5) The Find() and Sort() functions of CDesCArray now support an
|
sl@0
|
1776 |
optional TKeyCmpText parameter - which defaults in both cases to
|
sl@0
|
1777 |
ECmpFolded, with the same behaviour as before
|
sl@0
|
1778 |
|
sl@0
|
1779 |
6) Based on some code from Duncan, added the class CClipboard to
|
sl@0
|
1780 |
Bafl, to replace the classes CReadClipboard and CWriteClipboard that
|
sl@0
|
1781 |
are currently in EText (but which are about to disappear); this new
|
sl@0
|
1782 |
implementation utilizes the CStreamDictionary class
|
sl@0
|
1783 |
|
sl@0
|
1784 |
Note that this change will *not* require software components like
|
sl@0
|
1785 |
EText to become dependent on Bafl. That's because EText will supply
|
sl@0
|
1786 |
functions of the type
|
sl@0
|
1787 |
CopyToClipboardL(CStreamStore&,CStreamDictionary&,...)
|
sl@0
|
1788 |
PasteToClipboardL(CStreamStore&,CStreamDictionary&,...)
|
sl@0
|
1789 |
which operate at a level below that of the CClipboard class itself.
|
sl@0
|
1790 |
There are Store() and StreamDictionary() accessor functions in
|
sl@0
|
1791 |
CClipboard to return these components. See the new module BACLIPB.*
|
sl@0
|
1792 |
|
sl@0
|
1793 |
7) New test code T_CLIPB which exercises CClipboard
|
sl@0
|
1794 |
|
sl@0
|
1795 |
From Dan:
|
sl@0
|
1796 |
---------
|
sl@0
|
1797 |
8) Fixed a bug in the InternalizeL() and ExternalizeL() functions of
|
sl@0
|
1798 |
TCellRef, which were only streaming TInt16's as opposed to TInt32's
|
sl@0
|
1799 |
|
sl@0
|
1800 |
9) Added InternalizeL() and ExternalizeL() functions for TRangeRef
|
sl@0
|
1801 |
|
sl@0
|
1802 |
10) For completeness, added operator!=() to TRangeRef
|
sl@0
|
1803 |
|
sl@0
|
1804 |
11) Updated T_CELL test code to match the above
|
sl@0
|
1805 |
|
sl@0
|
1806 |
From Julian:
|
sl@0
|
1807 |
------------
|
sl@0
|
1808 |
12) Altered TBulkData::OpenL() to Leave rather than Panic if
|
sl@0
|
1809 |
incompatible data is found, to allow the application to take
|
sl@0
|
1810 |
appropriate recovery action
|
sl@0
|
1811 |
|
sl@0
|
1812 |
13) Took advantage of RFs::Replace() rather than Rename(), to allow a
|
sl@0
|
1813 |
temporary bulk data storage file to be on a different drive from the
|
sl@0
|
1814 |
file it is about to replace
|
sl@0
|
1815 |
|
sl@0
|
1816 |
14) The SeekToTime function of CSoundPlayerAndRecorder has been
|
sl@0
|
1817 |
altered to allow cancellation (eg during a lengthy seek operation).
|
sl@0
|
1818 |
|
sl@0
|
1819 |
|
sl@0
|
1820 |
Version 0.01.042
|
sl@0
|
1821 |
================
|
sl@0
|
1822 |
Made by DavidW, 27 September 1996
|
sl@0
|
1823 |
|
sl@0
|
1824 |
Uses E32 069, F32 035, STORE 024, E32TOOLS 042, EIKTOOLS 113
|
sl@0
|
1825 |
|
sl@0
|
1826 |
Size of BAFL.DLL (ARM): 28,084 bytes (inside ROM)
|
sl@0
|
1827 |
|
sl@0
|
1828 |
Second attempt at B2-platform release for Bafl
|
sl@0
|
1829 |
|
sl@0
|
1830 |
No changes apart from going up to E32/069 et al
|
sl@0
|
1831 |
|
sl@0
|
1832 |
|
sl@0
|
1833 |
Version 0.01.041
|
sl@0
|
1834 |
================
|
sl@0
|
1835 |
Made by DavidW, 25 September 1996
|
sl@0
|
1836 |
|
sl@0
|
1837 |
Uses E32 068, F32 034, STORE 023, E32TOOLS 042, EIKTOOLS 113
|
sl@0
|
1838 |
|
sl@0
|
1839 |
Size of BAFL.DLL (ARM): 28,084 bytes (inside ROM)
|
sl@0
|
1840 |
|
sl@0
|
1841 |
1) This is the B2 day release, built in synch with E32/068 et al
|
sl@0
|
1842 |
|
sl@0
|
1843 |
2) The API of Bafl will now remain frozen until some time after
|
sl@0
|
1844 |
B2-day
|
sl@0
|
1845 |
|
sl@0
|
1846 |
3) From Julian: added a new function for CSoundPlayerAndRecorder to
|
sl@0
|
1847 |
return the compressor UID used by the sound data
|
sl@0
|
1848 |
|
sl@0
|
1849 |
4) This is the first Bafl to support a Debug MARM ROM image. To
|
sl@0
|
1850 |
fetch the additional components necessary to build this, you have to
|
sl@0
|
1851 |
set the environment variable need_marmd before invoking the GETBLD.
|
sl@0
|
1852 |
Then the verb MNT ARMDEB builds a debug Bafl.DLL for ARM, MNT ATSTDEB
|
sl@0
|
1853 |
does the same thing for the test code, and MNT BLDIMD builds a debug
|
sl@0
|
1854 |
ROM image file, BAF041P?.IMD
|
sl@0
|
1855 |
|
sl@0
|
1856 |
5) For reference, inside the ROM, the Debug BAFL.DLL is 31092 bytes
|
sl@0
|
1857 |
long, compared to 28084 bytes in Release mode
|
sl@0
|
1858 |
|
sl@0
|
1859 |
6) So long as need_marmd remains set, the PUTREL puts a MARMD
|
sl@0
|
1860 |
release component on the network, as well as the standard set.
|
sl@0
|
1861 |
|
sl@0
|
1862 |
|
sl@0
|
1863 |
Version 0.01.040
|
sl@0
|
1864 |
================
|
sl@0
|
1865 |
Made by DavidW, 9 September 1996
|
sl@0
|
1866 |
|
sl@0
|
1867 |
Uses E32 067, F32 032, STORE 021, E32TOOLS 040, EIKTOOLS 109
|
sl@0
|
1868 |
|
sl@0
|
1869 |
Size of BAFL.DLL (ARM): 31,984 bytes
|
sl@0
|
1870 |
|
sl@0
|
1871 |
"Binary compatible" re-release, with the changes to filepaths as
|
sl@0
|
1872 |
required by the changes in F32/032:
|
sl@0
|
1873 |
|
sl@0
|
1874 |
1) The "temp" directory is now c:\system\temp in all builds
|
sl@0
|
1875 |
|
sl@0
|
1876 |
2) The path searched for sound compressor DLLs is now \system\libs
|
sl@0
|
1877 |
in all builds
|
sl@0
|
1878 |
|
sl@0
|
1879 |
3) Added INST INSTDEB and INSTREL verbs to MNT
|
sl@0
|
1880 |
|
sl@0
|
1881 |
4) Call MNT INST inside MNT RTST and MNT INSTREL inside MNT RTSTREL
|
sl@0
|
1882 |
|
sl@0
|
1883 |
5) MNT MAKEDIR makes several more directories, as are now required
|
sl@0
|
1884 |
in the emulation drives
|
sl@0
|
1885 |
|
sl@0
|
1886 |
6) Changes to the *.OBY files - partly as required by upgrading to
|
sl@0
|
1887 |
E32TOOLS/040 - note that you now put in REPRO.EXE rather than
|
sl@0
|
1888 |
REPRO.RAM, and all references to REPRO.RAM can be removed
|
sl@0
|
1889 |
|
sl@0
|
1890 |
7) Removed a whole lot of #ifdef Xxx variants code from the test
|
sl@0
|
1891 |
code, since it can now be the same in all variants.
|
sl@0
|
1892 |
|
sl@0
|
1893 |
|
sl@0
|
1894 |
Version 0.01.039
|
sl@0
|
1895 |
================
|
sl@0
|
1896 |
Made by DavidW, 4 September 1996
|
sl@0
|
1897 |
|
sl@0
|
1898 |
Uses E32 066, F32 031, STORE 021, E32TOOLS 039, EIKTOOLS 109
|
sl@0
|
1899 |
|
sl@0
|
1900 |
Size of BAFL.DLL (ARM): 31,984 bytes
|
sl@0
|
1901 |
|
sl@0
|
1902 |
From Julian:
|
sl@0
|
1903 |
------------
|
sl@0
|
1904 |
1) Added two new functions, each called SeekToTime(), to the sound
|
sl@0
|
1905 |
services classes - one for CSoundData and the other for
|
sl@0
|
1906 |
CSoundPlayerAndRecorder
|
sl@0
|
1907 |
|
sl@0
|
1908 |
2) Modified test code to match
|
sl@0
|
1909 |
|
sl@0
|
1910 |
3) Other minor internal changes to sound services code
|
sl@0
|
1911 |
|
sl@0
|
1912 |
From DavidW:
|
sl@0
|
1913 |
------------
|
sl@0
|
1914 |
4) Removed the last trace of *.INL files from \bafl
|
sl@0
|
1915 |
|
sl@0
|
1916 |
5) Moved some template code out of line, to avoid downstream
|
sl@0
|
1917 |
compiler warnings
|
sl@0
|
1918 |
|
sl@0
|
1919 |
6) MNT TOOLS now presupposes that the tools should be fetched to
|
sl@0
|
1920 |
\epoc32\tools on the local drive, ie any value of %drv% is ignored
|
sl@0
|
1921 |
|
sl@0
|
1922 |
7) The call to PREP in MNT BLDIMG is no longer preceded by a path to
|
sl@0
|
1923 |
PREP (ie %drv%\tools\); ie I now assume that PREP (in t:\tools or
|
sl@0
|
1924 |
c:\tools) is in your path and is high enough up it
|
sl@0
|
1925 |
|
sl@0
|
1926 |
8) Simplified parts of MNT.CMD by copying things from EIKON, ie the
|
sl@0
|
1927 |
calls to _GETCOMP.CMD
|
sl@0
|
1928 |
|
sl@0
|
1929 |
9) Moved the dummy compressors out of the build of BAFL itself, into
|
sl@0
|
1930 |
the build of its test code
|
sl@0
|
1931 |
|
sl@0
|
1932 |
NB Some of the test code fails under WINS, due to a known defect in
|
sl@0
|
1933 |
F32, but it all runs fine under GCC.
|
sl@0
|
1934 |
|
sl@0
|
1935 |
|
sl@0
|
1936 |
Version 0.01.038
|
sl@0
|
1937 |
================
|
sl@0
|
1938 |
Made by DavidW, 28 August 1996
|
sl@0
|
1939 |
|
sl@0
|
1940 |
Uses E32 V066, F32 V030, STORE V020, E32TOOLS V039
|
sl@0
|
1941 |
|
sl@0
|
1942 |
Size of BAFL.DLL (ARM): 31,468 bytes
|
sl@0
|
1943 |
|
sl@0
|
1944 |
1) First Bafl release in the post E32/065 world (new directory
|
sl@0
|
1945 |
structure and all that)
|
sl@0
|
1946 |
|
sl@0
|
1947 |
2) Completely rewrote large parts of MNT.CMD. Changed over to the
|
sl@0
|
1948 |
new sets of released components (but only release the WINS, WINSD and
|
sl@0
|
1949 |
EMARM sets, together with the WINSDDB debugging files)
|
sl@0
|
1950 |
|
sl@0
|
1951 |
3) Re-did every *.MAK file, and removed every *.MDP file from the
|
sl@0
|
1952 |
LI.PRJ source file listings
|
sl@0
|
1953 |
|
sl@0
|
1954 |
4) Took advantage of some of the new Store API to simplify some of
|
sl@0
|
1955 |
the code and test code (the new way that the RLibrary::Load() et al
|
sl@0
|
1956 |
functions work helps too!)
|
sl@0
|
1957 |
|
sl@0
|
1958 |
5) Another Great Step Forward is that "mnt getcomps" now takes
|
sl@0
|
1959 |
*much* less time than before (because I no longer need to bother
|
sl@0
|
1960 |
fetching all these obscure Greek Hebrew etc variants that the Base
|
sl@0
|
1961 |
team used to package irretrievably bound up with the genuine
|
sl@0
|
1962 |
articles, but which are now happily separated into their own released
|
sl@0
|
1963 |
components
|
sl@0
|
1964 |
|
sl@0
|
1965 |
6) Got fed up with *.OBY files being so un-maintainable. The
|
sl@0
|
1966 |
contents of my BAFL.OBY is now
|
sl@0
|
1967 |
|
sl@0
|
1968 |
#define NOCALL nocallentrypoint
|
sl@0
|
1969 |
|
sl@0
|
1970 |
romname=baf##ROMVER##ROMVAR##.img
|
sl@0
|
1971 |
version=0.01(##ROMVER##)
|
sl@0
|
1972 |
|
sl@0
|
1973 |
#include "header.iby" /* data definitions */
|
sl@0
|
1974 |
#include "base.iby" /* standard Base components */
|
sl@0
|
1975 |
#include "ewsrv.iby" /* text window server */
|
sl@0
|
1976 |
|
sl@0
|
1977 |
file=RELDIR\eshell.exe system\libs\eshell.exe NOCALL
|
sl@0
|
1978 |
file=RELDIR\estor.dll system\libs\estor.dll NOCALL
|
sl@0
|
1979 |
|
sl@0
|
1980 |
file=RELDIR\bafl.dll system\libs\bafl.dll NOCALL
|
sl@0
|
1981 |
|
sl@0
|
1982 |
#include "t_bafl.iby" /* Bafl test files */
|
sl@0
|
1983 |
|
sl@0
|
1984 |
file=RELDIR\d_exc.exe system\progs\d_exc.exe
|
sl@0
|
1985 |
|
sl@0
|
1986 |
file=RELDIR\d_gdb.exe system\progs\d_gdb.exe
|
sl@0
|
1987 |
data=RELDIR\repro.ram system\progs\repro.exe
|
sl@0
|
1988 |
|
sl@0
|
1989 |
which ought to improve maintainability.
|
sl@0
|
1990 |
|
sl@0
|
1991 |
The files header.iby, base.iby ought in time to become standards,
|
sl@0
|
1992 |
shared by all downstream components (I'll define other *.IBY files
|
sl@0
|
1993 |
further down the set of software releases)
|
sl@0
|
1994 |
|
sl@0
|
1995 |
7) Note that you *still* need to PETRAN the released file REPRO.EXE
|
sl@0
|
1996 |
into REPRO.RAM before you can expect to create a repro-able ROM
|
sl@0
|
1997 |
|
sl@0
|
1998 |
8) Watch out that you'll get lots of warnings, when compiling under
|
sl@0
|
1999 |
Gcc, about the HShareBuf class from Store - you can safely ignore all
|
sl@0
|
2000 |
these warnings, but you ought to pay attention to any others, as per
|
sl@0
|
2001 |
usual
|
sl@0
|
2002 |
|
sl@0
|
2003 |
9) BAFL has a working MNT VALID verb for the first time ever. It's
|
sl@0
|
2004 |
|
sl@0
|
2005 |
:valid
|
sl@0
|
2006 |
if not exist ..\valid\nul md ..\valid
|
sl@0
|
2007 |
cd ..\valid
|
sl@0
|
2008 |
call getrel %_vgroup% emarm %_par%
|
sl@0
|
2009 |
petran %_vgroup%.dll %_vgroup%.net
|
sl@0
|
2010 |
petran \epoc32\release\marm\rel\%_vgroup%.dll %_vgroup%.bld
|
sl@0
|
2011 |
pediff -e32 %_vgroup%.net %_vgroup%.bld
|
sl@0
|
2012 |
call cont %g% %p%
|
sl@0
|
2013 |
goto end
|
sl@0
|
2014 |
|
sl@0
|
2015 |
which, as you can see, restricts itself to testing the built BAFL.DLL
|
sl@0
|
2016 |
(Gcc REL version) against one prepared and released earlier. So, go
|
sl@0
|
2017 |
to a clean drive, type
|
sl@0
|
2018 |
|
sl@0
|
2019 |
pgetbld bafl group 038
|
sl@0
|
2020 |
[ mnt gete32tools ]
|
sl@0
|
2021 |
mnt armrel
|
sl@0
|
2022 |
mnt valid
|
sl@0
|
2023 |
|
sl@0
|
2024 |
and you should see the following reassuring message on the screen:
|
sl@0
|
2025 |
|
sl@0
|
2026 |
PEDIFF - PE file compare V0.01(039)
|
sl@0
|
2027 |
E32 image files are identical.
|
sl@0
|
2028 |
|
sl@0
|
2029 |
|
sl@0
|
2030 |
Version 0.01.037
|
sl@0
|
2031 |
================
|
sl@0
|
2032 |
Made by DavidW, 15 August 1996
|
sl@0
|
2033 |
|
sl@0
|
2034 |
Uses E32 V064, F32 V028, STORE V019, E32TOOLS V036
|
sl@0
|
2035 |
|
sl@0
|
2036 |
Size of BAFL.DLL (ARM): 31,980 bytes
|
sl@0
|
2037 |
|
sl@0
|
2038 |
From Julian:
|
sl@0
|
2039 |
------------
|
sl@0
|
2040 |
1) Added two new functions to the sound services:
|
sl@0
|
2041 |
|
sl@0
|
2042 |
CSoundData::DataBeingReadTime() and
|
sl@0
|
2043 |
CSoundPlayerRecorder::SoundDataBeingReadTime()
|
sl@0
|
2044 |
|
sl@0
|
2045 |
to assist applications to display their playing status
|
sl@0
|
2046 |
|
sl@0
|
2047 |
2) Other internal changes to the sound services code and test code
|
sl@0
|
2048 |
|
sl@0
|
2049 |
From DavidW:
|
sl@0
|
2050 |
------------
|
sl@0
|
2051 |
3) Altered the MNT.CMD and BAFL.OBY files of Bafl, bringing them
|
sl@0
|
2052 |
closer to the model of Nokie's. In particular, MNT BLDIMG now
|
sl@0
|
2053 |
defaults to producing a P1 (reprogrammable) variant ROM image
|
sl@0
|
2054 |
|
sl@0
|
2055 |
4) Added REPRO and FIXREPRO verbs to MNT.
|
sl@0
|
2056 |
|
sl@0
|
2057 |
|
sl@0
|
2058 |
Version 0.01.036
|
sl@0
|
2059 |
================
|
sl@0
|
2060 |
(Made by JulianL, 09 August 1996)
|
sl@0
|
2061 |
|
sl@0
|
2062 |
Uses E32 V064, F32 V028, STORE V019, E32TOOLS V036
|
sl@0
|
2063 |
|
sl@0
|
2064 |
Size of BAFL.DLL (ARM): 28,004 bytes (With the new Sound service, extra
|
sl@0
|
2065 |
10K bytes are added).
|
sl@0
|
2066 |
|
sl@0
|
2067 |
1) Added new class CBulkData which is an interface to streamed data
|
sl@0
|
2068 |
that provides fast data manipulation within minimal overhead. The data
|
sl@0
|
2069 |
is stored in temporary files, which may provide more storage space than
|
sl@0
|
2070 |
RAM. Also the temporary file can be renamed to a proper saved file name.
|
sl@0
|
2071 |
|
sl@0
|
2072 |
2) Added new class CSoundData which provides access to sound data. It is a
|
sl@0
|
2073 |
specialization of CBulkData, which provides read/write access to the data
|
sl@0
|
2074 |
and to the header information. The data has to be read as chunks and this
|
sl@0
|
2075 |
class provides a mechanism for ensuring the chunks are kept in tact and keeps
|
sl@0
|
2076 |
the total play time correct. The header of the sound data contains the
|
sl@0
|
2077 |
compressor UID which is used to create relevant compressor to decode or
|
sl@0
|
2078 |
encode the data.
|
sl@0
|
2079 |
|
sl@0
|
2080 |
3) Added new class CCompressorBase which provides the generic interface for
|
sl@0
|
2081 |
future compressors. The compressors will be used to compress the sound data.
|
sl@0
|
2082 |
A new CCompressorList class is created to contain an array of names, capabilities
|
sl@0
|
2083 |
and UIDs of the compressors in the list, which is useful for displaying
|
sl@0
|
2084 |
informations of the compressors.
|
sl@0
|
2085 |
|
sl@0
|
2086 |
4) Added new static class SoundUtilities which can populate a CDesCArray with
|
sl@0
|
2087 |
alarm (algorithmic) sounds and sound files in the hardwired search path. The
|
sl@0
|
2088 |
path is *:\SYSTEM\SOUNDS\*.SND. It can also return the full path file name of
|
sl@0
|
2089 |
the sound data with a given name.
|
sl@0
|
2090 |
|
sl@0
|
2091 |
5) The "SoundUtilites" can also populate the CCompressorList with the
|
sl@0
|
2092 |
available compressors provided by the system. Each compressor appears as a DLL
|
sl@0
|
2093 |
with the extension *.CPR. Two dummy compressors (DUMCM1 and DUMCM2) have been
|
sl@0
|
2094 |
created to show the possibility of plugable compressors. Therefore, future
|
sl@0
|
2095 |
compresssors can be pluged into the system easily. The SoundUtilities can also
|
sl@0
|
2096 |
return the compressor by searching through the system directory on all drives
|
sl@0
|
2097 |
with the specified UID. This is particular useful for CSoundData to create
|
sl@0
|
2098 |
compressor. The MNT's "bld" and "bldrel" commands will automatically attach
|
sl@0
|
2099 |
the correct UIDs for both dummy compressors. But if you compile the dummy
|
sl@0
|
2100 |
compressors using MSVC (not MNT's "bld" or "bldrel" commands), you need to
|
sl@0
|
2101 |
use the E32UID to attach the correct UIDs into their WINS release of DLL
|
sl@0
|
2102 |
which are in \e32sys directory.
|
sl@0
|
2103 |
(ie. E32UID /a DUMCM1.cpr 290000001 268435539 299999001
|
sl@0
|
2104 |
E32UID /a DUMCM1D.cpr 290000002 268435539 299999001
|
sl@0
|
2105 |
E32UID /a DUMCM2.cpr 290000001 268435539 299999002
|
sl@0
|
2106 |
E32UID /a DUMCM2D.cpr 290000002 268435539 299999002,
|
sl@0
|
2107 |
The first UID is temporary as later different builds will be put in different
|
sl@0
|
2108 |
directorys. The second UID is the KSoundCompressionV1Uid specified in Notes,
|
sl@0
|
2109 |
The third UID are dummy values set for the dummy compressors. In the future,
|
sl@0
|
2110 |
the real compressor will put their UID (third Uid) into Notes.)
|
sl@0
|
2111 |
|
sl@0
|
2112 |
|
sl@0
|
2113 |
6) Added new class CLibraryUnloader which is an active object for unloading a
|
sl@0
|
2114 |
given library when the current activated active object finished. This is particular
|
sl@0
|
2115 |
useful for the compressors to unload their librarys during destruction phase.
|
sl@0
|
2116 |
If the library is closed before the destruction completed, an access violation
|
sl@0
|
2117 |
will occur. Therefore, the compressor requires this library unloader to unload
|
sl@0
|
2118 |
their librarys after their destruction completed.
|
sl@0
|
2119 |
|
sl@0
|
2120 |
7) Added new class CSoundPlayerRecorder which can play and record sound data.
|
sl@0
|
2121 |
It can also play the alarm (algorithmic) sound. This sound player and recorder
|
sl@0
|
2122 |
allows user to cancel the play or recording at any time as it is an active object.
|
sl@0
|
2123 |
|
sl@0
|
2124 |
8) Added new test codes to test the above new classes ie.
|
sl@0
|
2125 |
T_BUKDA tests the CBulkData,
|
sl@0
|
2126 |
T_SNDUT tests the SoundUtilities,
|
sl@0
|
2127 |
T_SNDDA tests the CSoundData and the use of dummy compressors,
|
sl@0
|
2128 |
T_SPYRC tests the CSoundPlayerRecorder.
|
sl@0
|
2129 |
|
sl@0
|
2130 |
|
sl@0
|
2131 |
***Note that when running the test codes on the rack, you will experience crashes
|
sl@0
|
2132 |
as there is a bug in F32's GetDir() function which cannot find the attached UID of
|
sl@0
|
2133 |
a DLL. Jal has already found the bug and the next release of F32 will have the
|
sl@0
|
2134 |
fix. For the time being, when you build the rom image, you copy the EFSRV.DLL,
|
sl@0
|
2135 |
EFILE.EXE, ELOCAL.FSY and ESHELL.EXE files from r:\BAFL\TEMP directory to your
|
sl@0
|
2136 |
\WORK\EMARM directory.***
|
sl@0
|
2137 |
|
sl@0
|
2138 |
|
sl@0
|
2139 |
|
sl@0
|
2140 |
Version 0.01.035
|
sl@0
|
2141 |
================
|
sl@0
|
2142 |
(Made by DavidW, 31 July 1996)
|
sl@0
|
2143 |
|
sl@0
|
2144 |
Uses E32 V064, F32 V028, STORE V019, E32TOOLS V036
|
sl@0
|
2145 |
|
sl@0
|
2146 |
Size of BAFL.DLL (ARM): 18,876 bytes
|
sl@0
|
2147 |
|
sl@0
|
2148 |
*** Re-put 12noon 1st Aug, binary compatible, with a tweak to
|
sl@0
|
2149 |
BAMATCH.H to avoid Gcc compiler woes downstream ***
|
sl@0
|
2150 |
|
sl@0
|
2151 |
Release in synch with E32/064 et al:
|
sl@0
|
2152 |
|
sl@0
|
2153 |
1) Changed the interface to the TBoundedArray class so that its
|
sl@0
|
2154 |
Append function works by reference rather than by pointer, the same
|
sl@0
|
2155 |
as the arrays in the base
|
sl@0
|
2156 |
|
sl@0
|
2157 |
2) Commented out some references to Hufman decompression, since this
|
sl@0
|
2158 |
functionality no longer exists in TDes.
|
sl@0
|
2159 |
|
sl@0
|
2160 |
|
sl@0
|
2161 |
Version 0.01.034
|
sl@0
|
2162 |
================
|
sl@0
|
2163 |
(Made by DavidW, 9 July 1996)
|
sl@0
|
2164 |
|
sl@0
|
2165 |
Uses E32 V063, F32 V027, STORE V017, E32TOOLS V034
|
sl@0
|
2166 |
|
sl@0
|
2167 |
Size of BAFL.DLL (ARM): 18,880 bytes
|
sl@0
|
2168 |
|
sl@0
|
2169 |
1) Changed the interface to CDesCArray to use const TDesC& rather
|
sl@0
|
2170 |
than const TDesC*; as well as being "the right thing" to do, this
|
sl@0
|
2171 |
also helps avoid some annoying Gcc compiler warnings (about taking
|
sl@0
|
2172 |
the address of temporaries) downstream.
|
sl@0
|
2173 |
|
sl@0
|
2174 |
|
sl@0
|
2175 |
Version 0.01.033
|
sl@0
|
2176 |
================
|
sl@0
|
2177 |
(Made by DavidW, 8 July 1996)
|
sl@0
|
2178 |
|
sl@0
|
2179 |
Uses E32 V063, F32 V027, STORE V017, E32TOOLS V034
|
sl@0
|
2180 |
|
sl@0
|
2181 |
Size of BAFL.DLL (ARM): 18,880 bytes
|
sl@0
|
2182 |
|
sl@0
|
2183 |
The new compiler resulted in a 14.3% codesize reduction (11.7% due to
|
sl@0
|
2184 |
the compiler improvements themselves, and the rest due to getting rid
|
sl@0
|
2185 |
of explicit template instantiations)
|
sl@0
|
2186 |
|
sl@0
|
2187 |
1) Release compatible with E32/063 etc
|
sl@0
|
2188 |
|
sl@0
|
2189 |
2) I've now got -g-Wno-ctor-dtor-privacy after every call to maktran,
|
sl@0
|
2190 |
to stop going mad on account of idiotic Gcc warning
|
sl@0
|
2191 |
|
sl@0
|
2192 |
3) OTOH the other "new" warning, about taking the address of a
|
sl@0
|
2193 |
temporary, is "a good thing", and I rearranged some (test) code to
|
sl@0
|
2194 |
avoid it
|
sl@0
|
2195 |
|
sl@0
|
2196 |
|
sl@0
|
2197 |
Version 0.01.032
|
sl@0
|
2198 |
================
|
sl@0
|
2199 |
(Made by DavidW, 23 May 1996)
|
sl@0
|
2200 |
|
sl@0
|
2201 |
Uses E32 V059, F32 V023, STORE V014, E32TOOLS V023
|
sl@0
|
2202 |
|
sl@0
|
2203 |
Size of BAFL.DLL (ARM): 22,020 bytes
|
sl@0
|
2204 |
|
sl@0
|
2205 |
*** Rebased using J-Day components, 4th June 1996 ***
|
sl@0
|
2206 |
|
sl@0
|
2207 |
*** Modest changes to admin files, as required by new components ***
|
sl@0
|
2208 |
|
sl@0
|
2209 |
From DavidW:
|
sl@0
|
2210 |
------------
|
sl@0
|
2211 |
1) Rebuilt compatible with STORE 014.
|
sl@0
|
2212 |
|
sl@0
|
2213 |
|
sl@0
|
2214 |
Version 0.01.031
|
sl@0
|
2215 |
================
|
sl@0
|
2216 |
(Made by DavidW, 20 May 1996)
|
sl@0
|
2217 |
|
sl@0
|
2218 |
Uses E32 V059, F32 V023, STORE V013, E32TOOLS V023
|
sl@0
|
2219 |
|
sl@0
|
2220 |
Size of BAFL.DLL (ARM): 22,020 bytes
|
sl@0
|
2221 |
|
sl@0
|
2222 |
From MartinB:
|
sl@0
|
2223 |
-------------
|
sl@0
|
2224 |
1) New Bafl module BACELL.* containing the classes TCellRef and
|
sl@0
|
2225 |
TRangeRef which were previously duplicated between the Spreadsheet
|
sl@0
|
2226 |
engine and the Grid test code
|
sl@0
|
2227 |
|
sl@0
|
2228 |
(Note that this requires BAFL to be dependent on STORE, for the first
|
sl@0
|
2229 |
time, which is a shame in a way, but too bad)
|
sl@0
|
2230 |
|
sl@0
|
2231 |
2) New test code T_CELL.CPP to test BACELL
|
sl@0
|
2232 |
|
sl@0
|
2233 |
3) New resource header file BADEF.RH containing a few definitions
|
sl@0
|
2234 |
likely to be of use to users of resource files other than Eikon, eg
|
sl@0
|
2235 |
the Sheet engine or the Opl translator
|
sl@0
|
2236 |
|
sl@0
|
2237 |
|
sl@0
|
2238 |
Version 0.01.030
|
sl@0
|
2239 |
================
|
sl@0
|
2240 |
(Made by DavidW, 10 May 1996)
|
sl@0
|
2241 |
|
sl@0
|
2242 |
Uses E32 V058, F32 V023, E32TOOLS V023
|
sl@0
|
2243 |
|
sl@0
|
2244 |
Size of BAFL.DLL (ARM): 20,484 bytes
|
sl@0
|
2245 |
|
sl@0
|
2246 |
From DavidW:
|
sl@0
|
2247 |
------------
|
sl@0
|
2248 |
1) Rebuilt with latest E32(058) etc - on the rack, the test code now
|
sl@0
|
2249 |
goes like a proverbial rocket
|
sl@0
|
2250 |
|
sl@0
|
2251 |
|
sl@0
|
2252 |
Version 0.01.029
|
sl@0
|
2253 |
================
|
sl@0
|
2254 |
(Made by DavidW, 9 May 1996)
|
sl@0
|
2255 |
|
sl@0
|
2256 |
Uses E32 V057, F32 V021, E32TOOLS V022
|
sl@0
|
2257 |
|
sl@0
|
2258 |
Size of BAFL.DLL (ARM): 20,996 bytes
|
sl@0
|
2259 |
|
sl@0
|
2260 |
From DavidW:
|
sl@0
|
2261 |
------------
|
sl@0
|
2262 |
1) Changes to class definitions to allow downstream software
|
sl@0
|
2263 |
components to meet the EMPTY.CPP test, and thereby cut down on
|
sl@0
|
2264 |
code-bloat under GCC
|
sl@0
|
2265 |
|
sl@0
|
2266 |
2) Removed the function MArray::MaCBase() as not required (arising
|
sl@0
|
2267 |
out of my lack of understanding of C++ casting rules)
|
sl@0
|
2268 |
|
sl@0
|
2269 |
3) Renamed TIncrMatcherXxx to RIncrMatcherXxx, since they need to
|
sl@0
|
2270 |
have a destructor, and TXxx classes should never have a destructor
|
sl@0
|
2271 |
|
sl@0
|
2272 |
(actually Colly says RXxx classes should never have a destructor
|
sl@0
|
2273 |
either, but I'll leave things as they are for now)
|
sl@0
|
2274 |
|
sl@0
|
2275 |
4) Even more changes to the RIncrMatcherXxx class tree, eg to avoid
|
sl@0
|
2276 |
copy constructors being generated on the fly
|
sl@0
|
2277 |
|
sl@0
|
2278 |
|
sl@0
|
2279 |
Version 0.01.028
|
sl@0
|
2280 |
================
|
sl@0
|
2281 |
(Made by DavidW, 1 May 1996)
|
sl@0
|
2282 |
|
sl@0
|
2283 |
Uses E32 V057, F32 V021, E32TOOLS V021
|
sl@0
|
2284 |
|
sl@0
|
2285 |
Size of BAFL.DLL (ARM): 20,484 bytes
|
sl@0
|
2286 |
|
sl@0
|
2287 |
From Brendan:
|
sl@0
|
2288 |
-------------
|
sl@0
|
2289 |
1) New feature added to box layout engine to support a layout being
|
sl@0
|
2290 |
reset and then recalculated with different parameters in force, eg
|
sl@0
|
2291 |
allowing an application to determine the largest possible font that
|
sl@0
|
2292 |
can be used for a set of controls inside a fixed region of screen:
|
sl@0
|
2293 |
|
sl@0
|
2294 |
2) Added virtual function ResetAll() to CBox and CBranchBox(), which
|
sl@0
|
2295 |
recursively reset the sizes of the boxes
|
sl@0
|
2296 |
|
sl@0
|
2297 |
3) New test code T_BLO2 for the above features
|
sl@0
|
2298 |
|
sl@0
|
2299 |
|
sl@0
|
2300 |
Version 0.01.027
|
sl@0
|
2301 |
================
|
sl@0
|
2302 |
(Made by DavidW, 26 April 1996)
|
sl@0
|
2303 |
|
sl@0
|
2304 |
Uses E32 V057, F32 V021, E32TOOLS V021
|
sl@0
|
2305 |
|
sl@0
|
2306 |
Size of BAFL.DLL (ARM): 20,484 bytes
|
sl@0
|
2307 |
|
sl@0
|
2308 |
From DavidW:
|
sl@0
|
2309 |
------------
|
sl@0
|
2310 |
1) Re-release compatible with E32(057) and F32(021): the only change
|
sl@0
|
2311 |
required was in the *.OBY file, as per the E32 release notes
|
sl@0
|
2312 |
|
sl@0
|
2313 |
|
sl@0
|
2314 |
Version 0.01.026
|
sl@0
|
2315 |
================
|
sl@0
|
2316 |
(Made by DavidW, 15 April 1996)
|
sl@0
|
2317 |
|
sl@0
|
2318 |
Uses E32 V056, F32 V020, E32TOOLS V020
|
sl@0
|
2319 |
|
sl@0
|
2320 |
Size of BAFL.DLL (ARM): 20,484 bytes
|
sl@0
|
2321 |
|
sl@0
|
2322 |
From DavidW:
|
sl@0
|
2323 |
------------
|
sl@0
|
2324 |
1) Fixed the resource reader class to handle mis-aligned
|
sl@0
|
2325 |
sub-resources, eg reading a TInt32 following inline after a text
|
sl@0
|
2326 |
string; added some tests to T_RSREAD to test this case
|
sl@0
|
2327 |
|
sl@0
|
2328 |
2) Made a few changes to BABLO.* to make it clean-compile, without
|
sl@0
|
2329 |
any compiler warnings, in all build variants.
|
sl@0
|
2330 |
|
sl@0
|
2331 |
|
sl@0
|
2332 |
Version 0.01.025
|
sl@0
|
2333 |
================
|
sl@0
|
2334 |
(Made by DavidW, 15 April 1996)
|
sl@0
|
2335 |
|
sl@0
|
2336 |
Uses E32 V056, F32 V020, E32TOOLS V020
|
sl@0
|
2337 |
|
sl@0
|
2338 |
Size of BAFL.DLL (ARM): 19,972 bytes
|
sl@0
|
2339 |
|
sl@0
|
2340 |
Note that ideas on how MNT VALID might work (described in the
|
sl@0
|
2341 |
previous release notes) now look a bit simplistic; more research in
|
sl@0
|
2342 |
this area is required
|
sl@0
|
2343 |
|
sl@0
|
2344 |
From DavidW:
|
sl@0
|
2345 |
------------
|
sl@0
|
2346 |
1) Converted the CONE files LAYOUT.CPP, BLOMAIN.HRH and BLOMAIN.H to
|
sl@0
|
2347 |
be part of BAFL instead, as the files BABLO.* ("Box LayOut" engine),
|
sl@0
|
2348 |
making adjustments as required to run on ARM; likewise converted the
|
sl@0
|
2349 |
CONE test code \cone\layout\tlayout to run as \bafl\tsrc\t_blo
|
sl@0
|
2350 |
|
sl@0
|
2351 |
2) Converted the CONE files COERSBUF.* to be part of BAFL instead,
|
sl@0
|
2352 |
as the files BARSREAD.* ("ReSource READer"), making adjustments as
|
sl@0
|
2353 |
required to run on ARM; wrote new test code T_RSREAD for this class,
|
sl@0
|
2354 |
which reads resources from the same test file T_RSC.RSC that is used
|
sl@0
|
2355 |
by test code T_RSC
|
sl@0
|
2356 |
|
sl@0
|
2357 |
3) Slimmed down some of the test code T_RSC, since it was boring and
|
sl@0
|
2358 |
repetitive for little gain, and since T_RSREAD now provides an
|
sl@0
|
2359 |
independent test of using RResourceFile
|
sl@0
|
2360 |
|
sl@0
|
2361 |
4) Added a batch file to run under the Text Shell on the rack,
|
sl@0
|
2362 |
RACK.BTF (renamed to RACK.BAT in the ROM), with the intended effect
|
sl@0
|
2363 |
of running all BAFL test programs one after the other; what actually
|
sl@0
|
2364 |
happens is that they all get run simultaneously, which I suppose is
|
sl@0
|
2365 |
less boring and exercises the O/S more thoroughly; so the way of
|
sl@0
|
2366 |
running all test code under WINS is to CD to \bafl\tsrc and to type
|
sl@0
|
2367 |
"RUN", and the way of running all test code on the rack is to CD to
|
sl@0
|
2368 |
\test and to type "RACK.BAT".
|
sl@0
|
2369 |
|
sl@0
|
2370 |
|
sl@0
|
2371 |
Version 0.01.024
|
sl@0
|
2372 |
================
|
sl@0
|
2373 |
(Made by DavidW, 12 April 1996)
|
sl@0
|
2374 |
|
sl@0
|
2375 |
Uses E32 V056, F32 V020, E32TOOLS V020
|
sl@0
|
2376 |
|
sl@0
|
2377 |
Size of BAFL.DLL (ARM): 8196 bytes
|
sl@0
|
2378 |
|
sl@0
|
2379 |
From DavidW:
|
sl@0
|
2380 |
------------
|
sl@0
|
2381 |
1) Added VALID verb to MNT.CMD as follows:
|
sl@0
|
2382 |
|
sl@0
|
2383 |
:valid
|
sl@0
|
2384 |
if not exist ..\valid\nul md ..\valid
|
sl@0
|
2385 |
cd ..\valid
|
sl@0
|
2386 |
call getrel %_vgroup% emarm %_par%
|
sl@0
|
2387 |
fc /b %_vgroup%.dll \work\emarm\%_vgroup%.dll > ..\valid.lis
|
sl@0
|
2388 |
call cont %g% %p%
|
sl@0
|
2389 |
type ..\valid.lis
|
sl@0
|
2390 |
goto end
|
sl@0
|
2391 |
|
sl@0
|
2392 |
which can be used as a gauge of whether a BAFL.DLL built on one
|
sl@0
|
2393 |
person's PC matches that built (under supposedly identical
|
sl@0
|
2394 |
circumstances) on another person's PC. It's only a "gauge" since
|
sl@0
|
2395 |
there can be, in my experience so far, up to two blocks of four bytes
|
sl@0
|
2396 |
each that vary, which are presumably embedded date-time stamps
|
sl@0
|
2397 |
|
sl@0
|
2398 |
2) Moved the following modules from CONE to BAFL: BNDARRAY (renamed
|
sl@0
|
2399 |
to BABNDA), COEDESCA (renamed to BADESCA), and COEMATCH (renamed to
|
sl@0
|
2400 |
BAMATCH); made alterations as required for an ARM build
|
sl@0
|
2401 |
|
sl@0
|
2402 |
3) Renamed CTextBuf to RTextBuf, and CIncrMatcherTextBuf to
|
sl@0
|
2403 |
RIncrMatcherTextBuf, since whatever else these classes may be, they
|
sl@0
|
2404 |
are *not* C's (as they do not inherit from CBase)
|
sl@0
|
2405 |
|
sl@0
|
2406 |
4) Wrote T_BND test code for TBoundedArray; this showed up the fact
|
sl@0
|
2407 |
that recent E32 changes (to compress flat buffers when they are
|
sl@0
|
2408 |
reset) have broken TBoundedArray; fixed this by overriding the
|
sl@0
|
2409 |
Compress() function, to do nothing
|
sl@0
|
2410 |
|
sl@0
|
2411 |
5) Wrote T_DESCA test code for the CDesCArray family
|
sl@0
|
2412 |
|
sl@0
|
2413 |
6) Moved Brendan's TMATCH test code for the incremental matchers to
|
sl@0
|
2414 |
Bafl, renaming it (Bafl style) to T_MATCH, and converting it as
|
sl@0
|
2415 |
required for ARM
|
sl@0
|
2416 |
|
sl@0
|
2417 |
(all four BAFL test programs run successfully on the rack)
|
sl@0
|
2418 |
|
sl@0
|
2419 |
7) Deleted the header file BAFLSTD.H as an anachronism - you should
|
sl@0
|
2420 |
delete any copies you have, eg in \e32inc; in the modern standard,
|
sl@0
|
2421 |
you should include individual header files like BARSC.H or BNDARRAY.H
|
sl@0
|
2422 |
directly, as and when you need them
|
sl@0
|
2423 |
|
sl@0
|
2424 |
8) Outputting all errors from GCC builds to the same file CERR.TXT
|
sl@0
|
2425 |
has got to be a mistake; I now output errors to %1.AER files (Arm
|
sl@0
|
2426 |
ERror files), eg using the batch file \bafl\tsrc\doarm.cmd:
|
sl@0
|
2427 |
|
sl@0
|
2428 |
call maktran %1.mak %1.arm
|
sl@0
|
2429 |
call nmake -f %1.arm /x %1.aer
|
sl@0
|
2430 |
|
sl@0
|
2431 |
9) Some long-overdue TLC for files in the BAFL group generally.
|
sl@0
|
2432 |
|
sl@0
|
2433 |
|
sl@0
|
2434 |
Version 0.01.023
|
sl@0
|
2435 |
================
|
sl@0
|
2436 |
(Made by DavidW, 9 April 1996)
|
sl@0
|
2437 |
|
sl@0
|
2438 |
Uses E32 V056, F32 V020, E32TOOLS V019
|
sl@0
|
2439 |
|
sl@0
|
2440 |
From DavidW:
|
sl@0
|
2441 |
------------
|
sl@0
|
2442 |
1) Release compatible with E32(056) etc
|
sl@0
|
2443 |
|
sl@0
|
2444 |
2) Had to changed all KFileXxx file-open constants to EFileXxx; had
|
sl@0
|
2445 |
to change EShareReadersOnly to EFileShareReadersOnly, etc
|
sl@0
|
2446 |
|
sl@0
|
2447 |
3) Found out that it was daft to set the "-v" flag in BLDIMG.CMD,
|
sl@0
|
2448 |
since the verbose output seems to end up in a file E32ROM.LOG anyway;
|
sl@0
|
2449 |
so my \bafl\tsrc\bldimg.cmd is now just
|
sl@0
|
2450 |
|
sl@0
|
2451 |
e32rom -gcc bafl.oby
|
sl@0
|
2452 |
|
sl@0
|
2453 |
4) Had to replace the line
|
sl@0
|
2454 |
|
sl@0
|
2455 |
secondary=\work\emarm\efsrv.exe sys\efsrv.exe
|
sl@0
|
2456 |
|
sl@0
|
2457 |
in BAFL.OBY with the pair of lines
|
sl@0
|
2458 |
|
sl@0
|
2459 |
secondary=c:\work\emarm\efile.exe sys\efile.exe
|
sl@0
|
2460 |
file=c:\work\emarm\efsrv.dll sys\efsrv.dll
|
sl@0
|
2461 |
|
sl@0
|
2462 |
|
sl@0
|
2463 |
Version 0.01.022
|
sl@0
|
2464 |
================
|
sl@0
|
2465 |
(Made by DavidW, 22 March 1996)
|
sl@0
|
2466 |
|
sl@0
|
2467 |
Uses E32 V055, F32 V019, E32TOOLS V017
|
sl@0
|
2468 |
|
sl@0
|
2469 |
From Bret:
|
sl@0
|
2470 |
----------
|
sl@0
|
2471 |
1) This is the first release of BAFL that supports an ARM build, and
|
sl@0
|
2472 |
whose test code runs on the rack
|
sl@0
|
2473 |
|
sl@0
|
2474 |
2) In order to build the ARM version of this code, you will need to
|
sl@0
|
2475 |
have installed the GCC tools on your PC: if you haven't done so
|
sl@0
|
2476 |
already, type
|
sl@0
|
2477 |
TOOLS GCC
|
sl@0
|
2478 |
(invokes the t:\tools\tools.bat batch file)
|
sl@0
|
2479 |
|
sl@0
|
2480 |
3) You will also need a suitable version of the E32TOOLS: type
|
sl@0
|
2481 |
MNT GETE32TOOLS
|
sl@0
|
2482 |
|
sl@0
|
2483 |
4) Apart from this, the standard GETBLD (or MNT GETCOMPS) will fetch
|
sl@0
|
2484 |
all the software components required to build BAFL in either WINS or
|
sl@0
|
2485 |
ARM variants
|
sl@0
|
2486 |
|
sl@0
|
2487 |
5) Type MNT ARMREL to build the Release version of the ARM variant
|
sl@0
|
2488 |
of BAFL.DLL, and MNT ATSTREL to build the Release version of the ARM
|
sl@0
|
2489 |
variant of T_RSC.EXE
|
sl@0
|
2490 |
|
sl@0
|
2491 |
(Inspect the text file CERR.TXT for any build errors; note that you
|
sl@0
|
2492 |
can get lots of strange behaviour if you have failed to add \gcc\bin
|
sl@0
|
2493 |
to your PATH)
|
sl@0
|
2494 |
|
sl@0
|
2495 |
6) In the ..\tsrc directory, type BLDIMG to build the file
|
sl@0
|
2496 |
ARMROM.IMG (this follows instructions in the BAFL.OBY text file)
|
sl@0
|
2497 |
|
sl@0
|
2498 |
7) Use the network to transfer ARMROM.IMG to a RACK PC and type
|
sl@0
|
2499 |
PEIGER ARMROM.IMG
|
sl@0
|
2500 |
to repro the rack with that ROM ...
|
sl@0
|
2501 |
|
sl@0
|
2502 |
8) As it happens very few changes to the BAFL code were required, to
|
sl@0
|
2503 |
allow the compilation and linking under GCC
|
sl@0
|
2504 |
|
sl@0
|
2505 |
From DavidW:
|
sl@0
|
2506 |
------------
|
sl@0
|
2507 |
9) Renamed the WINS release components BAFL and BAFLPDB to EWINS and
|
sl@0
|
2508 |
EWINSDB; following the practice from other software groups, the ARM
|
sl@0
|
2509 |
release component is called EMARM
|
sl@0
|
2510 |
|
sl@0
|
2511 |
10) Renamed the MDWORK verb of MNT to MAKEWORK (this makes all the
|
sl@0
|
2512 |
ARM work directories as well as the EWINS work directories).
|
sl@0
|
2513 |
|
sl@0
|
2514 |
|
sl@0
|
2515 |
Version 0.01.021
|
sl@0
|
2516 |
================
|
sl@0
|
2517 |
(Made by DavidW, 4 March 1996)
|
sl@0
|
2518 |
|
sl@0
|
2519 |
Uses E32 V054, F32 V018
|
sl@0
|
2520 |
|
sl@0
|
2521 |
1) Re-release compatible with E32(054) and F32(018) (ie VC 4)
|
sl@0
|
2522 |
|
sl@0
|
2523 |
2) Removed "/FORCE" declarations in project settings, to allow
|
sl@0
|
2524 |
incremental linking for debug builds.
|
sl@0
|
2525 |
|
sl@0
|
2526 |
|
sl@0
|
2527 |
Version 0.01.020
|
sl@0
|
2528 |
================
|
sl@0
|
2529 |
(Made by DavidW, 26 February 1996)
|
sl@0
|
2530 |
|
sl@0
|
2531 |
Uses E32 V053, F32 V017
|
sl@0
|
2532 |
|
sl@0
|
2533 |
From DavidW:
|
sl@0
|
2534 |
------------
|
sl@0
|
2535 |
1) RResourceFile now has an inline function Offset() returning the
|
sl@0
|
2536 |
value of iOffset, as required in order for CONE/Eikon to properly
|
sl@0
|
2537 |
support multiple application resource files being loaded in the same
|
sl@0
|
2538 |
enivronment
|
sl@0
|
2539 |
|
sl@0
|
2540 |
2) Added a TCleanupItem() operator to RResourceFile, allowing
|
sl@0
|
2541 |
RResourceFile objects to be placed on the cleanup stack; the contents
|
sl@0
|
2542 |
of the associated Cleanup() function is to call Close()
|
sl@0
|
2543 |
|
sl@0
|
2544 |
3) Renamed the GETJBLD verb of MNT.CMD to GETCOMPS
|
sl@0
|
2545 |
|
sl@0
|
2546 |
|
sl@0
|
2547 |
Version 0.01.019
|
sl@0
|
2548 |
================
|
sl@0
|
2549 |
(Made by DavidW, 21 February 1996)
|
sl@0
|
2550 |
|
sl@0
|
2551 |
Uses E32 V053, F32 V017
|
sl@0
|
2552 |
|
sl@0
|
2553 |
This build is binary compatible with BAFL 018; a downstream component
|
sl@0
|
2554 |
that works with BAFL 018 should work equally well with BAFL 019,
|
sl@0
|
2555 |
without any recompilation
|
sl@0
|
2556 |
|
sl@0
|
2557 |
From MartinT:
|
sl@0
|
2558 |
-------------
|
sl@0
|
2559 |
1) Fixed bug whereby, if a file contained n resources, behaviour
|
sl@0
|
2560 |
when attempting to read resources n+1 and n+2 was unpredictable
|
sl@0
|
2561 |
(diagnosed by Jal). It is now possible to reliably read through all
|
sl@0
|
2562 |
the resources in a file; attempting to read beyond the end results in
|
sl@0
|
2563 |
a Leave.
|
sl@0
|
2564 |
|
sl@0
|
2565 |
|
sl@0
|
2566 |
Version 0.01.018
|
sl@0
|
2567 |
================
|
sl@0
|
2568 |
(Made by DavidW, 19 February 1996)
|
sl@0
|
2569 |
|
sl@0
|
2570 |
Uses E32 V053, F32 V017
|
sl@0
|
2571 |
|
sl@0
|
2572 |
1) Re-release compatible with E32(053) and F32(017)
|
sl@0
|
2573 |
|
sl@0
|
2574 |
2) Added EXPORT and DELWORK verbs to MNT.CMD doing the usual things
|
sl@0
|
2575 |
|
sl@0
|
2576 |
3) THIS BUILD WORKS IN RELEASE MODE TOO! (Not that I changed
|
sl@0
|
2577 |
anything; I guess that some bug fixes or other changes elsewhere in
|
sl@0
|
2578 |
the system must have put right whatever was going wrong before)
|
sl@0
|
2579 |
|
sl@0
|
2580 |
|
sl@0
|
2581 |
Version 0.01.017
|
sl@0
|
2582 |
================
|
sl@0
|
2583 |
(Made by DavidW, 15 February 1996)
|
sl@0
|
2584 |
|
sl@0
|
2585 |
Uses E32 V052, F32 V016
|
sl@0
|
2586 |
|
sl@0
|
2587 |
From MartinT:
|
sl@0
|
2588 |
-------------
|
sl@0
|
2589 |
1) Altered RResourceFile class to better encapsulate the
|
sl@0
|
2590 |
20-bit offset generated by the NAME statement in resource
|
sl@0
|
2591 |
files. There is now an iOffset member which carries the
|
sl@0
|
2592 |
offset corresponding to the name. Initially this contains
|
sl@0
|
2593 |
zero (set by OpenL()). When ConfirmSignature() is called,
|
sl@0
|
2594 |
the iOffset() is set from the top 20 bits of the second long in
|
sl@0
|
2595 |
the signature record.
|
sl@0
|
2596 |
|
sl@0
|
2597 |
2) There is a OwnsResourceId() function which returns ETrue
|
sl@0
|
2598 |
if a resource id has top 20 bits the same as the iOffset's, or
|
sl@0
|
2599 |
if its top 20 bits are zero. This means that resources can be
|
sl@0
|
2600 |
read in sequence 1, 2, 3 ..., or in sequence 0xabcde001,
|
sl@0
|
2601 |
0xabcde002 ..., where 0xabcde000 is the offset. The latter
|
sl@0
|
2602 |
is intended for CONE application use. The former can also
|
sl@0
|
2603 |
be useful.
|
sl@0
|
2604 |
|
sl@0
|
2605 |
3) Changed the class to allow it to be a value type
|
sl@0
|
2606 |
rather than a reference type. Also, changed from
|
sl@0
|
2607 |
privately inheriting an RFile to owning one. You now
|
sl@0
|
2608 |
use OpenL() and Close() to open and close the resource
|
sl@0
|
2609 |
file, and you can pass them around by value.
|
sl@0
|
2610 |
|
sl@0
|
2611 |
|
sl@0
|
2612 |
Version 0.01.016
|
sl@0
|
2613 |
================
|
sl@0
|
2614 |
(Made by DavidW, 31 January 1996)
|
sl@0
|
2615 |
|
sl@0
|
2616 |
Uses E32 V052, F32 V016
|
sl@0
|
2617 |
|
sl@0
|
2618 |
1) Re-release compatible with E32(052) and F32(016)
|
sl@0
|
2619 |
|
sl@0
|
2620 |
|
sl@0
|
2621 |
Version 0.01.015
|
sl@0
|
2622 |
================
|
sl@0
|
2623 |
(Made by DavidW, 8 January 1996)
|
sl@0
|
2624 |
|
sl@0
|
2625 |
Uses E32 V051, F32 V015
|
sl@0
|
2626 |
|
sl@0
|
2627 |
1) Re-release compatible with E32(051) and F32(015)
|
sl@0
|
2628 |
|
sl@0
|
2629 |
|
sl@0
|
2630 |
Version 0.01.014
|
sl@0
|
2631 |
================
|
sl@0
|
2632 |
(Made by DavidW, 19 December 1995)
|
sl@0
|
2633 |
|
sl@0
|
2634 |
Uses E32 V050, F32 V014
|
sl@0
|
2635 |
|
sl@0
|
2636 |
1) Re-release compatible with E32(050) and F32(014)
|
sl@0
|
2637 |
|
sl@0
|
2638 |
|
sl@0
|
2639 |
Version 0.01.013
|
sl@0
|
2640 |
================
|
sl@0
|
2641 |
(Made by DavidW, 4 December 1995)
|
sl@0
|
2642 |
|
sl@0
|
2643 |
Uses E32 V049, F32 V013
|
sl@0
|
2644 |
|
sl@0
|
2645 |
1) Re-release compatible with E32(049) and F32(013)
|
sl@0
|
2646 |
|
sl@0
|
2647 |
|
sl@0
|
2648 |
Version 0.01.012
|
sl@0
|
2649 |
================
|
sl@0
|
2650 |
(Made by DavidW, 16 November 1995)
|
sl@0
|
2651 |
|
sl@0
|
2652 |
Uses E32 V048, F32 V012
|
sl@0
|
2653 |
|
sl@0
|
2654 |
1) Re-release compatible with E32(048) and F32(012)
|
sl@0
|
2655 |
|
sl@0
|
2656 |
|
sl@0
|
2657 |
Version 0.01.011
|
sl@0
|
2658 |
================
|
sl@0
|
2659 |
(Made by DavidW, 19 October 1995)
|
sl@0
|
2660 |
|
sl@0
|
2661 |
Uses E32 V047, F32 V011
|
sl@0
|
2662 |
|
sl@0
|
2663 |
1) Added ConfirmSignature(TInt aSignature,TInt &aOffset) to
|
sl@0
|
2664 |
RResourceFile, which can be called for resource files whose first
|
sl@0
|
2665 |
resource consists of two 32-bit integers
|
sl@0
|
2666 |
|
sl@0
|
2667 |
*) the first being a signature, which must match the passed value
|
sl@0
|
2668 |
exactly
|
sl@0
|
2669 |
|
sl@0
|
2670 |
*) the second having no special meaning as far as RResourceFile is
|
sl@0
|
2671 |
concerned (but higher level software may interpret it eg as the
|
sl@0
|
2672 |
"offset" value for the resource file); this gets written to aOffset
|
sl@0
|
2673 |
|
sl@0
|
2674 |
The function returns either KErrNone, or an error value if the
|
sl@0
|
2675 |
signature does not match.
|
sl@0
|
2676 |
|
sl@0
|
2677 |
|
sl@0
|
2678 |
Version 0.01.010
|
sl@0
|
2679 |
================
|
sl@0
|
2680 |
(Made by DavidW, 9 October 1995)
|
sl@0
|
2681 |
|
sl@0
|
2682 |
Uses E32 V047, F32 V011
|
sl@0
|
2683 |
|
sl@0
|
2684 |
1) Rebuilt to work with new E32 and F32
|
sl@0
|
2685 |
|
sl@0
|
2686 |
Unfortunately the release mode code still fails to run (it still
|
sl@0
|
2687 |
comes grinding to a halt in exactly the same place as before -
|
sl@0
|
2688 |
somewhere deep inside F32).
|
sl@0
|
2689 |
|
sl@0
|
2690 |
|
sl@0
|
2691 |
Version 0.01.009
|
sl@0
|
2692 |
================
|
sl@0
|
2693 |
(Made by DavidW, 6 September 1995)
|
sl@0
|
2694 |
|
sl@0
|
2695 |
Uses E32 V045, F32 V009
|
sl@0
|
2696 |
|
sl@0
|
2697 |
1) Rebuilt to work with new E32 and F32
|
sl@0
|
2698 |
|
sl@0
|
2699 |
|
sl@0
|
2700 |
Version 0.01.008
|
sl@0
|
2701 |
================
|
sl@0
|
2702 |
(Made by DavidW, 28 August 1995)
|
sl@0
|
2703 |
|
sl@0
|
2704 |
Uses E32 V044, F32 V008
|
sl@0
|
2705 |
|
sl@0
|
2706 |
1) Added RResourceFile::AllocReadLC, which does the same as
|
sl@0
|
2707 |
AllocRead but leaves the allocated cell (for the returned HBufC*
|
sl@0
|
2708 |
pointer) on the cleanup list
|
sl@0
|
2709 |
|
sl@0
|
2710 |
2) Converted test resource file to use BUF instead of STR and so no
|
sl@0
|
2711 |
longer need to go around removing terminating zeroes; also made the
|
sl@0
|
2712 |
test resource file more independent from xwim's S_.RSC.
|
sl@0
|
2713 |
|
sl@0
|
2714 |
|
sl@0
|
2715 |
Version 0.01.007
|
sl@0
|
2716 |
================
|
sl@0
|
2717 |
(Made by DavidW, 23 August 1995)
|
sl@0
|
2718 |
|
sl@0
|
2719 |
Uses E32 V044, F32 V008
|
sl@0
|
2720 |
|
sl@0
|
2721 |
1) Converted to work with new E32 and F32
|
sl@0
|
2722 |
|
sl@0
|
2723 |
2) I've taken a policy decision that, wherever relevant, Bafl will
|
sl@0
|
2724 |
presuppose that a trap handler has been installed by the caller.
|
sl@0
|
2725 |
This will always be the case in an Hcil application (as
|
sl@0
|
2726 |
CHci::ExecuteD will install a trap handler), but other users of Bafl
|
sl@0
|
2727 |
will have to take independent steps. See code in T_RSC for an
|
sl@0
|
2728 |
example
|
sl@0
|
2729 |
|
sl@0
|
2730 |
3) Thus CResourceFile::AllocReadL now presupposes that a trap
|
sl@0
|
2731 |
handler has been installed (and that the caller is already inside a
|
sl@0
|
2732 |
TRAP harness) - this allows the code to simplify (there's no longer
|
sl@0
|
2733 |
any need for a local TRAP harness)
|
sl@0
|
2734 |
|
sl@0
|
2735 |
|
sl@0
|
2736 |
Version 0.01.006
|
sl@0
|
2737 |
================
|
sl@0
|
2738 |
(Made by DavidW, 21 August 1995)
|
sl@0
|
2739 |
|
sl@0
|
2740 |
Uses E32 V043, F32 V007
|
sl@0
|
2741 |
|
sl@0
|
2742 |
1) Converted to work with new E32 and F32
|
sl@0
|
2743 |
|
sl@0
|
2744 |
2) Added L's to the names of all functions that can leave
|
sl@0
|
2745 |
|
sl@0
|
2746 |
3) Moved BAFL.MAK from ..\src to ..\group for the usual reason (to
|
sl@0
|
2747 |
make it easier for people debugging downstream to have the IDE know
|
sl@0
|
2748 |
automatically where to load bafl source code from)
|
sl@0
|
2749 |
|
sl@0
|
2750 |
|
sl@0
|
2751 |
Version 0.01.005
|
sl@0
|
2752 |
================
|
sl@0
|
2753 |
*** Re-made by DavidW, 28 July 1995, using the new versions of E32
|
sl@0
|
2754 |
v041 and F32 v006 (as the old one was link-incompatible)
|
sl@0
|
2755 |
|
sl@0
|
2756 |
(Made by DavidW, 26 July 1995)
|
sl@0
|
2757 |
|
sl@0
|
2758 |
Available on R:
|
sl@0
|
2759 |
|
sl@0
|
2760 |
Uses E32 V041, F32 V006 (from R:)
|
sl@0
|
2761 |
|
sl@0
|
2762 |
1) Converted to work with new E32 and F32
|
sl@0
|
2763 |
|
sl@0
|
2764 |
2) MNT.CMD improved, copying many ideas from Hcil
|
sl@0
|
2765 |
|
sl@0
|
2766 |
3) Converted to new-style no .LNK files CMD-line build system.
|
sl@0
|
2767 |
|
sl@0
|
2768 |
|
sl@0
|
2769 |
Version 0.01.004
|
sl@0
|
2770 |
================
|
sl@0
|
2771 |
(Made by DavidW, 23 June 1995)
|
sl@0
|
2772 |
|
sl@0
|
2773 |
Available on S:
|
sl@0
|
2774 |
|
sl@0
|
2775 |
Uses E32 V039, F32 V005
|
sl@0
|
2776 |
|
sl@0
|
2777 |
1) Converted to work with new E32 and F32
|
sl@0
|
2778 |
|
sl@0
|
2779 |
|
sl@0
|
2780 |
Version 0.01.003
|
sl@0
|
2781 |
================
|
sl@0
|
2782 |
(Made by DavidW, 22 May 1995)
|
sl@0
|
2783 |
|
sl@0
|
2784 |
Uses E32 V038, F32 V003
|
sl@0
|
2785 |
|
sl@0
|
2786 |
1) RResourceFile::Read now tests to see if the resource will fit in
|
sl@0
|
2787 |
the passed buffer, and if not, panics
|
sl@0
|
2788 |
|
sl@0
|
2789 |
2) Resource files are now opened with EShareReadersOnly
|
sl@0
|
2790 |
|
sl@0
|
2791 |
|
sl@0
|
2792 |
Version 0.01.002
|
sl@0
|
2793 |
================
|
sl@0
|
2794 |
(Made by DavidW, 15 May 1995)
|
sl@0
|
2795 |
|
sl@0
|
2796 |
Uses E32 V035, F32 V001
|
sl@0
|
2797 |
|
sl@0
|
2798 |
NB There's currently only an ascii debug version; Unicode threatens a
|
sl@0
|
2799 |
huge can of worms that will require a *lot* of attention to sort out.
|
sl@0
|
2800 |
|
sl@0
|
2801 |
1) Now uses F32 instead of home-brewed access to files
|
sl@0
|
2802 |
|
sl@0
|
2803 |
2) CResourceFile now exists as RResourceFile (a subclass of RFile
|
sl@0
|
2804 |
from F32)
|
sl@0
|
2805 |
|
sl@0
|
2806 |
3) Provided the static RResourceFile::New as a convenience function
|
sl@0
|
2807 |
|
sl@0
|
2808 |
4) Simplified many of the function names
|
sl@0
|
2809 |
|
sl@0
|
2810 |
5) Provided an HBufC *AllocRead() function to match the void Read()
|
sl@0
|
2811 |
function, but this is broken for two reasons:
|
sl@0
|
2812 |
|
sl@0
|
2813 |
6) First, the current implementation of HBufC::New is useless (it
|
sl@0
|
2814 |
sets the iLength field to zero, but there's no useful way to change
|
sl@0
|
2815 |
this later to something non-zero!)
|
sl@0
|
2816 |
|
sl@0
|
2817 |
7) Second, the current implementation of Hufman decoding often
|
sl@0
|
2818 |
decodes one extra spurious character, which can overwrite the end of
|
sl@0
|
2819 |
a supplied buffer
|
sl@0
|
2820 |
|
sl@0
|
2821 |
|
sl@0
|
2822 |
Version 0.01.001
|
sl@0
|
2823 |
================
|
sl@0
|
2824 |
(Made by MartinB, 11 May 1995)
|
sl@0
|
2825 |
|
sl@0
|
2826 |
Uses E32 V035
|
sl@0
|
2827 |
|
sl@0
|
2828 |
First release.
|
sl@0
|
2829 |
|