[Select]

NewModules


Index

 

New OS modules

Since RISC OS 3.6 was released, many new features have been added to RISC OS. These features are, obviously, not documented within PRM 5a, which only documents up to RISC OS 3.6. This document lists the modules supplied as part of the Operating System, a short summary of their function, and an indication of the location of documentation.

Modularised Kernel components

Many components have been moved out of the Kernel into separate modules. This allows them to be replaced should faults be located, or augmented if their behaviour needs to be changed. From an internal development standpoint, this separation increases the maintainability of both the separated component and the Kernel itself by isolating functionality. Many of these modules provide APIs which are unchanged from their original forms. Refer to the PRMs for details of the implementations.

Conversions

OS_Convert* SWI calls.
No specific documentation; see PRM 1.

OSSWIs

Miscellaneous SWI calls.
No specific documentation; see PRM 1.

EvaluateExpression

OS_EvaluateExpression SWI.
See PRM 1-457, section EvaluateExpression.

SystemVars

Management of Sys$* variables.
Version 0.08 and above handle all system variables.
No specific documentation; see PRM 1.

ReadLine

Line input 'ReadLine vector'.
See section ReadLine.

CLIV

*-command interpreter.
No specific documentation; see PRM 1-929.

VideoTTX

Software implementation of Teletext mode.
See section Teletext.

VideoSW

Software implementation of most text and graphics primitives.
See section Graphics.MultiDrivers.

VideoHWVIDC

Hardware implementation of the video system for VIDC.
See section Graphics.MultiDrivers.

FSCommands

Filing system *-commands previously located in the Kernel.
No specific documentation; see PRM 1.

ModuleCommands

Module manipulation *-commands.
No specific documentation; see PRM 1.

OSCommands

*-commands which do not fall into the FSCommands or ModuleCommands groups.
No specific documentation; see PRM 1.

RTC

High level Real Time Clock functions.
See PRM 1-399, section RTC, RTCV, OS_Word15.

RTCHW

Hardware access for the Real Time clock, for RiscPC, A7000, RiscStation and A9 systems.
See section RTCV.

OSPointer

High level pointer functions.
See PRM 5a-242, section PointerDevices, PS2Driver, WindowScroll.

PrinterBuffer

Configuration of the printer buffer.
No specific documentation.

NVRAMHW

Hardware access to the non-volatile configuration memory.
See PRM 1-363, section NVRAMV.

IRQ

Interrupt dispatch management.
See PRM 1-121, section IRQHandler.

Timer

Hardware timer management.
See section Timer.

Graphics components

The increased support for non-native graphics formats and the extended functions
provided by the existing systems have required that a number of new modules be provided. Many of these are described in more detail in the GraphicsSystem section and the Graphics.MultiDrivers section.

ColourMap

Colour translation and remapping.
See sections ColourMap, ColourMap-DrawFile, Graphics.Sprites.ColourMap.

BlendTable

Support for transparent blending.
See section BlendTable.

FontMap

Non-native font name translation.
See section FontMap.

PNG

Library for decoding and encoding of PNG bitmap images.
See section PNG.

ImageFileConvert

Generic image file conversion interface, providing ImageFileRender for converted files.
See section ImageFileConvert.

ImageFileRender

Generic image rendering.
See section ImageFileRender.

CompressJPEG

JPEG compression, decompression and transcoding functions, now part of the ROM rather than being disc based.
See PRM 5a-609, section CompressJPEG.

ConvertPNG

PNG file conversion using ImageFileConvert.
See section ConvertPNG, ImageFileConvert.

ConvertBMP

BMP file conversion using ImageFileConvert.
See section ConvertBMP, ImageFileConvert.

ConvertICO

Windows .ico file conversion using ImageFileConvert.
No specific documentation; see section ImageFileConvert.

ConvertPNM

PNM (PBM, PPM, PGM) file conversion using ImageFileConvert.
No specific documentation; see section ImageFileConvert.

ConvertSprite

Sprite file conversion via ImageFileRender, using ImageFileConvert.
See section ConvertSprite, ImageFileConvert.

ConvertSun

Sun raster file conversion using ImageFileConvert.
No specific documentation; see section ImageFileConvert.

ConvertXBM

X bitmap file conversion using ImageFileConvert.
No specific documentation; see section ImageFileConvert.

ConvertPCX

PCX file conversion using ImageFileConvert.
No specific documentation; see section ImageFileConvert.

ConvertClear

Translator 'Clear' file conversion using ImageFileConvert.
No specific documentation; see section ImageFileConvert.

ImageFileRender_Artworks

Artworks file rendering using ImageFileRender.
No specific documentation; see ImageFileRender.

Desktop components

The Desktop has been enhanced both visibly (through the new Icon Bordering interface) and behind the scenes by providing enhanced interfaces for various components.

RedrawManager

Managed, filter based redraw functions, allowing non-application components (for example Toolbox) to perform rendering within application windows.
See section RedrawManager.

IconBorderPlain

Re-implementation of basic button style.
No specific documentation.

IconBorderRound

Updated button style, allowing round buttons and other effects.
General IconBorder development kit and documentation available on request.

ClipboardHolder

Clipboard support functions to aid application developers and used by the WindowManager to provide cut-and-paste within writable icons.
See section ClipboardHolder.

WindowScroll

Support for scrolling windows using the alternate pointing device (eg, scroll wheel).
See section WindowScroll.

Toolbox components

Although the toolbox as a whole has been enhanced, only a few new modules are provided within the current version of the operating system.

GDivider

A semantic 'divider' gadget.
No specific documentation; see toolbox headers.

ToolAction

Advanced version of the regular 'Action' buttons.
No specific documentation; see toolbox headers.

TextGadgets

Text-based gadgets - scrolling lists and text input area.
No specific documentation; see toolbox headers.

ImageFileGadget

Gadget for rendering ImageFiles within a window.
No specific documentation; see toolbox headers.

Programmers components

ZLib

Library for compressing using the ZLib compression method.
See section ZLib.

Zipper

Library for reading and creating Zip archives.
See section Zipper.

DiagnosticDump

Diagnostic functions for Shared C library and other external implementations.
See section DiagDump.

KeyInput

Extended keyboard input interfaces.
See section KeyVExtendedInput.

BASIC64

Floating point version of the BASIC library, now part of the ROM, rather than being disc based.

DDEUtils

Advanced developer functions such as longer command lines and editor 'throwback'.

PathUtils

System 'path' variable manipulation functions.

SysLog

Centralised logging.

Network components

The network components have been enhanced quite considerably since their initial release with RISC OS 3.6. The Network directory contains more details of the specific functions of the new modules and the enhancements to the existing modules.

InetServices

Translation between service names and numbers.
No specific documentation.

Resolver

Translation between host names and addresses.
See section Resolver.

MimeMap

Translation between MIME media types, filetypes, file extensions and Mac data types.
See section MimeMap.

InetConfigure

Management for automatic network configuration on startup.
See section AutomaticConfiguration.

DHCPClient

Automatic network configuration using the DHCP protocol.
See section DHCPClient.

ZeroConf

Automatic network configuration using the Link-local addressing protocol.
See section ZeroConf.

RouterDiscovery

Automatic gateway discovery using the ICMP router discovery protocol.
See section RouterDiscovery.

FreewayHosts

Distribution of host names over Freeway, previously an internal function of the Freeway module.
See section Networking.Overview.

LanManFS

Access to Windows (and other) filing systems.

AppleTalk

Access to Apple filing systems.

Legacy support components

As the operating system has developed, a number of functions have become obsolete, or have required different handling. These functions have been moved to separate components such that they can easily be removed and to make maintenance of the core components simpler.

LegacyBBC

Many of the obsolescent BBC interfaces are provided through this module.
See section LegacyBBC.

LegacyScreen

With the advent of multiple display devices within a system, the single 'Screen' dynamic area no longer has any purpose. This module provides this dynamic area in order that components which require the area still function.
See section LegacyScreen.

CallASWI

As support for StrongARM (split cache) and 32bit systems, the CallASWI module was introduced. Its functionality is part of the core operating system. This module merely prevents unsuitable versions of the module from being used.
No specific documentation.

Miscellaneous components

Finally, a few components do not fit easily into any of the above categories and are listed here.

OwnerBanner

Provides the new start up banners for both the Desktop and boot.
No specific documentation.

LibraryHelp

Extends the *Help system to provide additional information for library cmmands and aliases.
See section LibraryHelp.

FileTypes

A stub module which sets up a many of the common filetypes and their execution formats on startup. Previously this was part of FileSwitch.

AIF

In order to ensure the stability of the system, and to allow support for emulated execution of non-32bit safe programs, Absolute files are now checked and executed by the AIF module. Previously this task was a part of FileSwitch.
See section Exec Formats.

TransientUtility

Provides support for transient utilities, similar to that for AIF-headered absolute files, primarily to enforce the new headered utility file format.
See section Exec Formats.

ScrSaver

Provides management of desktop screen savers.

SharedSound

Support for multiple clients of the 16bit sound system.


This documentation is copyright 3QD Developments Ltd 2013 and may not be reproduced or published in any form without the copyright holders permission. RISC OS is subject to continuous development and improvement as such all information is reproduced by 3QD Developments Ltd in good faith and is believed to be correct at the time of publication E&OE. 3QD Developments Ltd cannot accept any liability for any loss or damage arising from the use of any information provided as part of the RISC OS Documentation.

HTML document version 1.03 3rd November 2015