StrongHelp given a leg-up to version 2.89

Eigen see why a new version was needed.

Fred Graute has released a new version of StrongHelp, the simple hypertext system for designing and reading on-screen manuals, help texts, etc.

The software dates back to a time when the world wide web, and HTML, was largely unknown1, and provided a neat way for software developers – particularly small companies and hobby programmers, who might not have had the resources to produce full-blown manuals – to include manuals with their software that were something more than just text files.

It was originally developed by Guttorm Vik, who also brought us StrongED – no prizes for spotting a similarity in the application names – and has since been maintained by a few different people, with Fred being the latest to take up the mantle, and some of the specific changes in this version being credited to Rob Sprowson and Martin Avison.

The main bulk of the changes appear to be addressing issues with the previous version(s):

  • There were various internal references to <Obey$Dir>, which have now been replaced with references to <StrongHelp$Dir> – the system variable set in the application’s !Boot and !Run files.
  • The application’s messages file was previously moved from application space to the Relocatable Module Area, to allow the module component of StrongHelp to use tokens for textual messages – however, the messages file wasn’t being closed when the program was quit.
  • Refactoring the code introduced a minor issue whereby closing a page with the Adjust mouse button caused the pointer to be placed over the back icon of the parent window, instead of the close icon – this has now been fixed.
  • A bug has been tracked down and rectified whereby an internal pointer issue could in some instances result in the application’s main menu becoming corrupted, with the manual name truncated or its icon missing.
  • On pages with tiled backgrounds, if the sprites had eigen values of greater than one, they were being plotted squashed – this has now been fixed by calling an OS_SpriteOp system call, if available, and if not the old manual tiling is used, and has itself been optimised.
  • When changing screen mode, if the eigen values changed and any StrongHelp pages were open that displayed sprites, an abort would be caused – this has now been dealt with.
  • A redraw issue has also been addressed, wherby sprites with eigen values different from the current screen mode would only be partially redrawn after having a window dragged over them.

Finally, while StrongHelp itself is fully compatible with the CPUs and platforms that RISC OS 5 has been ported to run on, some manuals still exist in the wild that contain a old, out of date !Pre file, which is used to assist with keyword look-ups – and while some modern CPUs appear to be tolerant of the deprecated instructions contained in that file, some are not. An updated file is included for use in manuals that document SWI instructions – if performing a look-up results in an abort, the !Pre file should be replaced with a new one.


  • If it even existed at all; I can’t find a definitive reference for when StrongHelp was first developed, whereas for the web it is documented. What I can say is that I knew of the software before I knew of the web – so it was probably around before 1993, at least.

Related posts