Wednesday 28 Jun, 2017
Welcome to
Jump to 
Search Articles 
Search for Software 

SECTION 5 - Software Issues

 Q5.1) Why does DOSFS corrupt my files occasionally?
 Q5.2) Where can I obtain the latest version of module X?
 Q5.3) What are the current File-type allocation ranges?
 Q5.4) Is there a Modula 2 compiler for the Arc?
 Q5.5) What Programming Languages are available for RISC OS machines?
 Q5.6) Why does the RO3.5 desktop sometimes revert to the system font?
 Q5.7) Why does ChangeFSI display a blank white window, not an image?
 Q5.8) What causes the 'nager:Sprites22' error?
 Q5.9) Is there a Real Audio or Real Video player for Acorns?
 Q5.10) Is there any 'streaming audio' player software available for RISC OS machines?
 Q5.11) How do I get a faster interrupt timer than the centisecond ones?
 Q5.12) How can I create Interlaced GIFs on Acorn machines?
 Q5.13) Is the PC Card software still available?
 Q5.14) How do I obtain an allocated filetype or SWI chunk for my software?

Q5.1) Why does DOSFS corrupt my files occasionally?

Under RISC OS 3 DOS, and indeed with any other ImageFS filing system, discs are treated as one large file and ADFS applies write-behind buffering to nearly everything it does. (See the question on ADFSBuffers for more details about this.) This means while working on a DOS disc the entire disc is treated as one large open file.

However as long as a file is held open the cache is not flushed out fully till the machine is explicitly told to do so. This means when working with non-ADFS format discs always dismount them before removing them from the drive. With ADFS format discs this is not so critical, as files aren't held open during most operations on them, but it is good to get into the habit of dismounting floppy discs.

Q5.2) Where can I obtain the latest version of module X?

All patch modules, official RISC OS extensions and the like can be sourced from the RISC OS ftp sites. Ideally your dealer will also have copies of them too and you should be able to obtain them from them. (If they don't you may like to pass on the ones from the ftp site, if you request them, so that they are up to-date.) Failing that you should probably contact RISCOS Ltd who now manage all aspects of RISC OS development.

I am also in the process of compiling a complete list of up-to-date module version numbers, together with links to where you can download them from. This database is online at

Q5.3) What are the current File-type allocation ranges?

Acorn originally reallocated the File-type ranges for applications. The new ranges are :-

Non-user area
  &E00-&FFF   Acorn/RISCOS Ltd
  &B00-&DFF   Commercial software
  &A00-&AFF   Acornsoft, and other commercial software
  &400-&9FF   Commercial Software

User area
  &100-&3FF   Non-commercial distributed software (ie PD)
  &000-&0FF   User's personal usage (ie non-distributed)

75% of the user area is for PD/Shareware, with allocations co-ordinated by RISC OS Ltd. If your software is going to be distributed, you should have an allocated filetype to avoid clashes.

RISCOS Ltd cannot publish its master list of filetypes because, at any given time, it will contain allocations made for products which have not yet been announced. Therefore, they would be in breach of confidence by doing so - and the editing overhead for producing a sanitised list is too great.

However, all is not lost. Denis Howe maintains an unofficial list of filetype allocations. This can be found at and includes details about whether the allocation is an official one, a de facto one and what the file contains. If you would like an official 'Acorn' filetype issued to you, you should contact, who are responsible for allocating filetypes.

Q5.4) Is there a Modula 2 compiler for RISC OS?

Currently, no. Acorn did have, in the early days of the experimental ARM work, an in house compiler. However this compiler was sufficiently unstable and buggy to be un-releasable as a commercial product and was only used because in house support was available immediately to the users of the compiler. When Olivetti invested in Acorn this technology went to them so that Acorn no longer have even an in house Modula 2 compiler.

However some companies have stated intentions to produce Modula 2 compilers for RISC OS. Whether these intentions become reality has yet to be seen.

Q5.5) What Programming Languages are available for RISC OS machines?

This is a list of freely available programming languages and programming tools for RISC OS computers. Some of the items are in the public domain, some are not. I will be grateful to receive any further recommendations. Many items of legacy software are stored in the Orpheus filestore at

Items marked with a * are broken links. I'm currently trying to track down the relevant missing items.

Imperative Languages

Object Oriented Languages

Declarative Languages



ARM AOF Assemblers

AOF Tools


Q5.6) Why does the RO3.5 desktop sometimes revert to the system font?

This is due to a bug in the RISC OS 3.5 Wimp module. Applications that have outline fonts in their icons and a validation string of R5 or R6 (slabbed icon) will trigger this bug and cause the desktop to revert to the system font. There are two solutions to this problem depending on your level of computer literacy.

The easiest solution, for people who are very shy of template editors, is to complain to the author(s) of the application about this problem and get them to fix it. If you are not shy of template editors you could also go in and edit the applications templates so that none of the slabbed icons have outline fonts in them.

Q5.7) Why does ChangeFSI display a blank white window, not an image?

Versions 1.13S (and later) of ChangeFSI now have the RISC OS 3.6 JPEG support built-in. However the code has been designed to fail 'gracefully' if the support code is not available in the OS. For instance when you run the software on versions of the OS older than RISC OS 3.6. In this case a blank white window is displayed.

To regain normal use of ChangeFSI go to the main menu and select Sprite Output instead of JPEG output. Next time you load a picture, or re-process the current one, an image will be displayed. The JPEG Output option is not greyed out because even though no image is displayed you can still save the processed file as a JPEG.

For those of you with RISC OS 3.5 the module can be obtained from the Orpheus download repository at

This can be softloaded in your Boot.PreDesk sequence to use it.

If you've got RISC OS 3.10 you'll need to load the "JPEGMsgs" and "JPEGRender" modules BEFORE you load ChangeFSI. These were available on Acorn User CD no.8 (inside the $.Boot.Newboot.!Boot.Resources.!System.310.Modules directory)

Q5.8) What causes the 'nager:Sprites22' error?

This is both a tricky and simple question to answer. The cause of the error is unknown, but something is erroring. However rather than displaying the error message RISC OS has a subtle bug in it that causes it to display the above error message instead. The sequence goes like this:-

Unfortunately the process of loading the his-res toolsprites over-writes the buffer containing the original error block (IE the block of memory with the error number and error message in it). What it overwrites it with is the string 'WindowManager:Sprites22', which is a path reference to where the hi-res toolsprites are to be found.

This error has been corrected in RISC OS 3.60 and later versions of RISC OS. (Thanks go to Alan Glover for this information.)

Additionally the error can be provoked by conflicting versions of the DrawFile module being loaded. If you are experiencing this error message then it is worthwhile to scan your hard drive looking for all copies of the module and ensuring they are consistantly the latest version of the module.

Q5.9) Is there a Real Audio or Real Video player for Acorns?

Unfortunately not. A Real Audio player was written for NCOS but is not useful for most RISC OS machines due to it's dependance on the presence of hardware Floating Point. An integer arithmetic version was written by Warm Silence Software for StrongARM equipped machines but was never released due to licensing issues.

However, Kira Brown and Justin Fletcher ported an Amiga RA player to RISC OS which you can download from my RealAudio page at

This version however will not play 'streaming' RealAudio or many of the newer RA files.

Q5.10) Is there any 'streaming audio' player software available for RISC OS machines?

There are a number of streaming audio players for RISC OS available from which will allow you to listen to radio stations via the internet, assuming they use the SHOUTcast or MP3 audio streaming protocols.

Q5.11) How do I get a faster interrupt timer than the centisecond ones?

For this you require the use of IOC Timer 1, a 2MHz timer unused by RISC OS and claimable by code for use. Details of how to program the timer are available in the IOC datasheets, or you could look for various PD utilities like TimerCtrl that handle the timer for you.

I am informed that the Acorn TimeCode system now lays claim to Timer 1 and that software using it is deprecated.

Q5.12) How can I create Interlaced GIFs on Acorn machines?

Four utilities exist to let you create these.

spr2gif will take a sprite and convert it to a gif file. It will interlace and render transparent the gif as well. For the transparency it uses the colour of the first masked pixel it encounters in the sprite - suitable for automated gif image creating. (No need to twiddle with specifying transparency colours.)

WebGIF allows you to add transparency and interlacing to your GIFs as well.

Creator, from about v2.00, can create interlaced GIFs. However you have to specify the transparency colour directly.

And finally InterGIF not only can create interlaced, transparent GIFs but is capable of creating animated ones as well.

On top of these utilities an increasing number of commercial programs can create Interlaced GIFs, such as Photodesk and ArtWorks2.

Q5.13) Is the PC Card software still available?

Yes. You can currently download it from RISCOS Ltd's website at or from

Q5.14) How do I obtain an allocated filetype or SWI chunk for my software?

When developing new software, you should try to ensure that any filetypes or SWI calls are unique to your software. This will ensure that your new application doesn't cause conflicts with any existing software.

In order to to this you should apply to RISC OS Open in order to register your application name and any system variables, SWI calls or any filetypes your application may require.

The !Allocate application will do this for you, which can be downloaded from and your request should be emailed to allocate (at)

Part 4 - RISC OS Configuration | Part 6 - Viruses & Security

Email Email this page to a friend

 Last edit: 10th Apr 2016 at 4:55pm (444 days ago)

Bookmark with:What are these?
delicious Deliciousdigg Diggreddit redditfacebook Facebookstumbleupon StumbleUpon

RSS Feed 

Valid HTML 4.01!
Valid CSS!
Best viewed with a cup of tea Crafted by RISC OS