Preview: RISC OS Select Issue 4

This review was originally published in RISCWorld magazine Volume 6 Issue 4.

RISCOS Ltd are beavering away on producing Select4. With no releases of Select in the last year what can subscribers loook forward to? Well we asked RISCOS Ltd and they provided us with the following provisional information.

Select forthcoming new features

All Select development since the release of Select3i4 has been towards the goal of total conversion of the RISC OS 4 sources to be 32 bit neutral.

The first milestone in that project was the production of a 26 bit RISC OS ROM image from the 32 bit neutral sources last Christmas. With the goal of using just one RISC OS source this has meant a lot of extra work ensuring that the two versions of RISC OS produced from this new source are stable for both 26 bit processors and 32 bit processors. As may be expected this has not proved as simple as just producing a new version of RISC OS solely to suit a particular processor, but is essential work to be done now to avoid problems in supporting both types of processors in the future. In the past the Select scheme has deliberately not touched certain areas of the OS, but the conversion to 32 bit has meant that every part has been examined, with the inevitable discovery of old and new bugs as well as old, but previously unknown features.

Just a few of the new features already developed for Select 4 include ongoing development work on Paint and Draw as well as a considerable number of new graphics renderers. The Filer has been updated to support some more advanced facilities than it has ever had before. This includes features such as keyboard command shortcuts and "search as you type" shown above.


All the source (near enough) is now updated to be 32 bit safe. Support for 32 bit only processor modes is included. Assembler based components are now built using ObjAsm and a modern makefile.

Kernel now has lots of abstraction of its graphics APIs. It also now correctly supports LD/ST 'T' and SWP in abort trap mode. Kernel now has no pointer support (OSPointer module now has this). .

FPEmulator no longer explicitly colludes with the kernel for errors flattening the SVC stack.

FileSwitch no longer explicitly colludes with the kernel for file execution flattening the SVC stack.

Kernel has been updated substantially; video hardware is now driven by an external module. The only significant change that has yet to be completed is banking of modes.

RedrawManager has been added, and includes numerous fixes over the extremely poor 0.08 version previously delivered.


>BASIC now assembles LD/ST 'T' properly.

Stubs G

New version of StubsG release (which will allow the development of applications that can run on RISC OS 3 -> 5).


In order to better integrate with Postscript printers a full set of Standard Postscript compatible Fonts is to be included. The new fonts are:-.

  • Clare (AvantGarde)
  • Robinson (Bookman)
  • NewHall (NewCenturySchoolbook)
  • Pembroke (Palatino)
  • Churchill (ZapfChancery)

A collection of extra Fonts will also be included.

ATA Hard Drives

Select 4 will include Enhanced ATA Hard disc drivers. These will only support ATA-4 and above compliant drives. This means drives there were manufactured some time after 1996/7.

The reason is that the ATA committee currently only support these. Drives as small as 1GB will fall into this spec and of course, if your drive is 8 years old, you probably shouldn't be using it for data!!! Filecore and HForm have been totally overhauled to support the latest ATA standards and SMART features.


Video Hardware abstraction now provided to remove dependency on VIDC and IOMD architectures.

VideoHWVIDC provides the entire hardware driver for video. VideoSW provides the software implementation of certain graphical operations. .

To work along side this suitable graphics cards can now provide EDID monitor support.

SpriteExtend has is now capable of rendering CMYK and YCbCrK JPEGs.

GIF Image File renderer now included as Unisys patent has expired.

Further enhancement to Paint and Draw packages.

e.g Paint - can now re-order sprite files.

ConvertBMP can now take CMYK sprites and convert to BMPs. .

ConvertICO can now create ICOs from multi-sprite files and CMYK sprites; sprites created from 16 colour icos are now 16 colour. .

ConvertPNG can now convert CMYK sprites to PNGs. .

Image Viewer now has support for exporting the viewed file in whatever types are known to the converter.


The Internet stack, and related components, have undergone a number of changes in order to address problems and provide new features to developers and, ultimately, users. The primary improvements have been the addition of new modules for particular Internet facilities - RouterDiscovery, InternetTime and ResolverMDNS.

Resolver has been updated to address significant issues with its implementation of expiry (i.e. it now has expiry), now provides DCI4 statistics and actually bothers to check that memory allocations succeed. .

Internet now supports multicast filtering for drivers. .

ResolverMDNS is present. Current thinking is that 'multicast DNS' is the name to use in literature - the Apple name "Rendezvous" is being phased out. .


The WindowManager has been updated significantly. From this work, it is now possible for button icons to be 'highlighted' when the mouse is over them. This is not used by the built in borders. However, a number of new borders will be supplied which will use this feature.

The FilerSpeedBar application provides an additional topbar on filer windows using the Pane interface. It's really just a test and isn't finished. It needs a bit of a redesign as it's only used to demo the functions which work.

The FilerImageBar application provides an additional sidebar on filer windows using the Pane interface. It's not amazingly good, but it appears to work for many images. It'd need a lot more work to be functional.


Easy system recognition of registered file types.

Filer can embed panes in its windows.

Filer uses Filer$Types to set the types that can be used (use hex values, comma separated, eg 'fff,faf'). .


All toolbox modules should now work correctly if ResourceFS is restarted. Window toolbox module now allows an expanded range of gadget operations in order to provide greater flexibility for the range of gadgets which can be provided - in particular gadget timers, gadget redraw events and the ability to add and remove icons from a gadget during its lifetime.

New ColourSwatch gadget.

Toolbox includes support for timers.

Window provides vertical labels.

Window has much improved support for Fonts in gadgets.

ScrollList can now decode click and DataLoad positions.

TextGadget has new features to support new text area background sprite handling.


International Keyboard now generates different codes for left and right Meta keys. These are in order to fall in line with CTLs change to the design. Support for Multimedia Keyboards is also being developed.

Developers Tools

ResEd has been updated to support plugins for its gadgets, allowing it to be extended to use other gadgets as they become available. This is very incomplete, but works well enough to replace earlier versions. This also includes the full support for the ColourSwatch gadget.



© 3QD Developments Ltd 2015