Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Acorn C/C++ Update 1

2 views
Skip to first unread message

Ian Johnson

unread,
Jun 9, 1995, 3:00:00 AM6/9/95
to


Acorn C/C++ Product Information
===============================


Update 1 of the Acorn C/C++ product (SKB78) is now available
via ftp from:

ftp.acorn.co.uk:/pub/riscos/releases/Cupdate1.arc

This Update should only be used in conjunction with Acorn C/C++
and is covered by the same licence conditions.

For those who do not have ftp access, a floppy disc will shortly
be made available for a small administration charge. The disc
will be available through Acorn Direct at:

Acorn Direct
13 Denington Road
Wellingborough
Northants NN8 2RL.

Registered Developers who have purchased Acorn C/C++ will be
receiving the Update 1 disc free of charge over the next few days.

Included with the Update is a list of changes which is
reproduced below.

Also available via ftp are two application notes (including example
code) explaining how to write your own Toolbox Object and Gadget
modules. These are Application Notes 280 and 281, and are to be
found in:

ftp.acorn.co.uk:/pub/documents/appnotes/276-290/280.ps
OR ftp.acorn.co.uk:/pub/documents/appnotes/276-290/280.arc

AND

ftp.acorn.co.uk:/pub/documents/appnotes/276-290/281.ps
OR ftp.acorn.co.uk:/pub/documents/appnotes/276-290/281.arc

where files with a .ps extension are PostScript files and files
with a .arc extension are archived plain text files.

A version of SparkPlug is available for dearchiving these files
in:

ftp.acorn.co.uk:/pub/riscos/releases/dearchive.bas

Ian Johnson 9th June 1995.

(Acorn C/C++ Project Mgr)


=========================================================================


Update List
===========

1. User Interface Toolbox
=========================

Toobox
------

Acorn C/C++ version: 1.33
Update version : 1.36

- parent and ancestor components of a newly created Object are now
correctly initialised to -1 (previously 0).

- if a null event is delivered to the client application, it is
ALWAYS let through, even if the client was apparently not
expecting a null (as indicated by its event mask). This is
because Wimp_StartTask returns in a manner which makes a null
event appear to return from Wimp_Poll, and this must be passed
through unclaimed, or Wimp_StartTask will cause a fatal error
in the client. The only side-effect of this is that clients
of the Toolbox may receive unexpected null events, if an Object
Module has enabled them on its behalf.

- Object IDs are now more likely to remain unique over time.
Previously an Object ID was just an RMA address, and so deleting
an Object and then immediately creating another Object had a high
probability of "re-using" the deleted Object's ID. Now we
have a counter which is OR'ed into the address. This means that
Object IDs now appear in a different range of integer values,
but this will not affect client application use, since no
interpretation may be applied to an Object ID.

Iconbar
-------

Acorn C/C++ version: 1.11
Update version: 1.12

- corrected interactive help behaviour. Previously the module only
checked the icon number of a help request, without checking it
was for the iconbar window handle - this would cause interactive
help for some windows to "flicker".

ColourDbox
----------

Acorn C/C++ version: 0.14
Update version: 0.15

- doesn't RMEnsure 310support module for versions of RISC OS later
than 3.10.

ColourMenu
----------

Acorn C/C++ version: 0.16
Update version: 0.17

- slight memory leak removed when a colourmenu was shown via
Toolbox_ShowObject. Previously, showing a ColourMenu without
a "none" entry would leak 5 bytes.

FileInfo
--------

Acorn C/C++ version: 0.13
Update version: 0.14

- memory leak removed from FileInfo_GetModified.
Previously it would leak 32 bytes on each call.

FontDbox
--------

Acorn C/C++ version: 0.13
Update version: 0.14

- new Window template has 10pt gadget same size as the other
font size gadgets.

Fontmenu
--------

Acorn C/C++ version: 0.16
Update version: 0.17

- corrected behaviour on ADJUST-click. Previously two submenus would
be created if Fontmenu Object was created as a submenu, resulting
in incorrect font choice events.

Menu
----

Acorn C/C++ version: 0.22
Update version: 0.24

- fixed Menu_SetTextEntry. Previously if the old entry and the new
entry were identical in the first character, then an infinite loop
would result. This also fixes Menu_SetEntrySprite and
Menu_SetTitle in the same respect.

- menu entries which use sprites now look for those sprites in the
client's sprite area first and then the Wimp sprite area.
Previously such sprites had to be in the Wimp sprite area.

PrintDbox
---------

Acorn C/C++ version: 0.08
Update version: 0.09

- help string for the "copies" gadget corrected. Previously it was
the same as the "scale" gadget help text.

- allowable chars for the from/to gadgets corrected to disallow the
character 'a'. Previously 'a' was a permitted character.

- uses SWI PDriver_Info to get the currently selected printer rather than
Printer$.

SaveAs
------

Acorn C/C++ version: 0.10
Update version: 0.11

- uses the hourglass when saving on behalf of "type 1" clients.

- setting of the "safe" bit corrected. Previously "safe" bit
was being set after certain error conditions.

- "type 1" clients now correctly set estimated file size at the
beginning of a data transfer. Previously this was always 0.

- corrected behaviour of "type 2" clients when "Save" is clicked
and the filename chosen is "long" (255 chars). Previously
this caused undefined behaviour in the client application.

- SaveAs_GetFileName corrected. Previously this would also set
filetype to 0.

Scale
-----

Acorn C/C++ version: 0.10
Update version: 0.11

- corrected delivery of events when client's own dbox is used for
a Scale Object. Previously scale factor was always reported as
0.

Window
------

Acorn C/C++ version: 1.29
Update version: 1.31

- removed memory leak when Window deleted which had a radio button in
it. Also removed memory leak when task exits with Windows still
in existence which have toolbars.

- made decimal point character used in number ranges dependent on
currently configured territory.

- behaviour of draggable gadget corrected to allow the pointer to the
edge of the screen when dragging. Previously the dragged object
was bound to the screen.

- improved support for new gadget types.

2. C++ Compiler
===============

Acorn C/C++ version: 3.0
Update version: 3.1

- c++ command now calls the C preprocessor in ANSI mode to allow ANSI
preprocessing directives (eg ##). Previously this caused compilation
errors when using assert.h.

3. C Compiler
=============

Acorn C/C++ version: 5.05
Update version: 5.06

- corrected behaviour using shorts with right-shift and addition.
Previously, the register allocator was wrongly removing narrowing
operations; ie where only 16 bits of result are used in a = b + c, it
is deduced that only 16 bits are needed from b and c; the allocator
was wrongly applying this to a = b + (c>>16) as well.

- corrected behaviour in basic blocks which caused fatal internal error:
insertblockbetween.

4. Tools
========

!ResEd
------

Acorn C/C++ version: 0.28
Update version: 0.32

- FontDbox editor dbox now consistent with other dboxes.

- Window extent and coords fields now allow -999999 to 9999999.
Previously limits were -9999 to 99999.

- Title of String Set dbox corrected from "String Set" to
"String set".

- Redraw problem fixed for gadget bbox "ears" under certain
conditions (eg ADJ-drag on a resize handle).

- Support added for unknown Objects and Gadgets. These can now
be edited using a generic word offset interface. Previously
they were faulted.

- Gadgets and objects with zero-size bodies are now processed
correctly.

- The "Import warning" dialogue box now responds correctly to a
RETURN keypress.

!ResCreate
----------

Acorn C/C++ version: none
Update version: 0.03

- new application designed to "bootstrap" the process of creating
new Object Templates. This application can be used to create a
blank Object Template, allowing the ResEd palette file to be
added to.

5. Libraries
============

C++Lib
------

- if attached to a tty, cin is now line buffered (ie input is terminated by
EOL rather than EOF - Ctrl/D).

EventLib
--------

- event_deregister_toolbox_handler now correctly removes the handler.
Previously all toolbox handlers remained registered for the lifetime of
the client application.

FlexLib
-------

- new library formed by extracting c.flex from RISC_OSLib which was part of
the Desktop C product. Use is described in the header file h.flex.
This library is mostly API-compatible with RISC_OSLib except flex_init
which now requires 2 extra parameters to deal with error handling.


ToolboxLib
----------

- h.wimp: corrected the typedef for a WimpWindow. Previously it had a
single Wimp Icon block at the end of it, thus making sizeof(WimpWindow) 3
words too big.


Rob Clark

unread,
Jun 11, 1995, 3:00:00 AM6/11/95
to
Excellent. I'm really glad Acorn have done this. Many many thanks.

Any odds on the documents in Impression format ?

Well done Acorn and Ian Johnson

regards

Rob

Doug Munford

unread,
Jun 12, 1995, 3:00:00 AM6/12/95
to
On the 11 Jun 1995 15:17:55 GMT, Rob Clark wrote:

> Excellent. I'm really glad Acorn have done this. Many many thanks.
>
> Any odds on the documents in Impression format ?

html would be better shurely? - Greater consumer coverage. (and nicer) ;-)
--
Douglas J. Munford www page under construction.
<do...@cunning.demon.co.uk> (Hard hat area)

... FANATIC: one enthusastic about something you don't care about.

0 new messages