Interview with a ROS Open shareholderPublished: 16th Jul 2006, 16:08:10 | Permalink | Printable
Andrew Hodgkinson talks of his time at TematicAndrew Hodgkinson is a shareholder of the mysterious new company RISC OS Open Ltd, having previously worked as a RISC OS software engineer at Acorn, Pace and Tematic before it lost its developers. In an illuminating interview, he reveals his thoughts on the OS divide, what the teams at Pace and Tematic were working on, and where their work could take RISC OS if released.
Andrew Hodgkinson is a 30-year-old programmer who worked at Tematic as a software engineer right up until Castle closed down its embedded engineering team in October. An enthusiastic rower and musician, he previously worked at Pace Micro for three years, when the company used RISC OS in set-top-box platforms, and before that, three years at Acorn. As someone close to the development of RISC OS, he has seen the work done by fellow staff and is aware of how these technologies could possibly surface as features for desktop users, particularly if RISC OS 4 and 5 were to be combined.
"In my opinion now as an outsider of the company, it is going to be extremely hard for Castle and RISCOS Ltd. to proceed in a profitable fashion without putting aside their substantial historical differences on both sides and both making compromises in order to attempt to produce a unified source tree - assuming either company has the engineering resources to do so," said Andrew.
He argued that RISC OS 5, as used in the Iyonix, features a "solid foundation" and engineers have been able to port the operating system to numerous ARM processor powered products; the most successful platform being IPTV set top boxes which can provide television programmes and other multimedia content to viewers with broadband Internet connections.
|"I really hope to work on RISC OS again in future. We were doing some great stuff with next generation audio and video architectures that were intended to work on desktop machines as well as set top boxes."|
"Taking the RISC OS 5 base and adding in many of the good new features RISC OS 4 brings, such as any fixed bugs still present in RISC OS 5, Filer enhancements and the modular image rendering system, would be a sensible way forward," he added.
"For my own part I really hope to work on RISC OS again in future. We were doing some great stuff [at Tematic] with next generation audio and video architectures that were intended to work on desktop machines as well as set top boxes. It would be very rewarding to see all the effort and time put into such work evolve into something that can be released.
"There are already components that I personally believe would be very valuable for people working on multimedia projects for RISC OS, and I hope that Castle recognise the value in their source tree and find a way to release some of these as upgrades in due course. In the mean time I wish both companies good fortune with their respective businesses. I can only hope that they see a way to work together constructively in order to grow the market."
A merged OS, if it were to happen, would essentially be a combination of features from RISC OS 4 and 5, including the enhancements released via the Select scheme and the developments promised for Select 4. Core system components, such as CDFS, TaskWindow and MessageTrans, will enjoy bug fixes contributed from each source code tree. This comparing of notes between engineers over the various faults they've found and addressed will lead to a boost in the operating system's stability. Gaps in the functionality of applications and software libraries, from Paint and Draw to the Shared C Library, will be similarly filled in with contributions shared by either side; the overall effect would be a synchronisation of efforts and progress made so far by the independent teams at Castle and RISCOS Ltd.
A common interface for writing USB and PCI drivers could be devised, bridging the gap between the Castle and Simtec hardware stacks, thus opening up a greater range of supported hardware. The RISC OS application programming interfaces (APIs) are the blueprints that show how software should communicate with the operating system to get work done. Differences in APIs in RISC OS 4 and 5, such as in DragAnObject module, would have to be ironed out in order for a source code merger to take place whilst ensuring that no existing compatibility is broken.
It will also be eye opening to see how RISCOS Ltd. and Castle will reconcile their incompatible policies on documentation for programmers: RISCOS Ltd. believe in charging people for copies of the Select APIs, in the same way Acorn put a price on their reference manuals. Castle, on the other hand, publish their documentation notes for free on their website, an effort subsidised by the sales of their Iyonix hardware.
Andrew is in favour of providing programming resources and application plugins for free via the Internet. He said, "If anyone at Castle ends up going through the source tree they should find lots of things that they could consider releasing.
"What about all the Browse fetchers? Solid bits of code, not outdated; several bits of the STB video path could be useful; but it would have to be shared for free on the web site. This way, more developers can code to that interface, which means more software for Castle to use to promote its own hardware and more people that want to use that hardware in the first place.
"Selling OS extensions separately is troublesome because developers can't rely on them being there - that's ROL's whole problem really, and indeed, they recently realised it themselves and started on that push to get 'everyone' upgraded to RISC OS 4."
RISC OS 5 technologies such as Unicode, USB, and large wimpslot support would greet RISC OS Select headline features, such as the image file renderer plugins, the latter of which allows the Filer and other pieces of software to handle graphics files in a more flexible manner. Keyboard shortcuts in the Filer, as demonstrated in Select 4, and proper cut'n'paste facilities in icons on the desktop would be available to all users. Features and updates present each side of the printing system would be joined too
The main advantage of a unified operating system is that all RISC OS users, whether they own an Iyonix, RiscPC or A9home, can upgrade to the latest available version, which will have the same features and quirks regardless of the underlying hardware platform. This should minimise the amount of time spent by third party developers and dealers on supporting various different RISC OS releases as everyone moves towards the same concurrent version. RISCOS Ltd. are close to achieving this by supporting the A9home and RiscPC with a single version of RISC OS 4 that is compatible with 26-bit and 32-bit ARM processors.
To achieve all this, it's estimated that both Castle and RISCOS Ltd. will each need to commit one programmer to the task of bringing the two separate streams of the operating system together. How the eventual coalesced RISC OS will work is up to the engineers; ideally, the system will work in the same manner as Adjust, RISC OS 5 and earlier ROM based versions of the OS in that it loads and runs as a self contained entity. Future updates could be softloaded or copied into Flash ROM depending on the host hardware platform.
|"It's very frustrating as we were watching people developing things like the RISC OS DVD player software and thinking, 'what we've got solves all the problems they're talking about' - but we weren't ready to release it."|
It's expected that one side must compromise in order for the merger to happen. RISC OS 5 and 4 each have their own approaches to hardware abstraction, a technology that means the majority of the operating system is oblivious as to whether the computer is an Iyonix, A9home, RiscPC or some ARM9 embedded kit because the hardware abstraction layer takes care of supporting the specific electronics. The two streams of the OS organise their memory and handle translucent sprites differently too, which will need resolving.
Currently, Castle and RISCOS Ltd. each believe their implementation of 32-bit RISC OS is superior, so at some point the engineers will have to negotiate a settlement on what aspects of the underlying system should stay and what should be altered. Fortunately, both teams use CVS, a popular software management tool that tracks changes made by programmers to a repository of source code, which will assist in producing a combined operating system.
"There are a wealth of features at the core to RISC OS 5 that RISC OS 4 simply does not have, and since the big ones lie at a fundamental architectural level - notably, the memory map, HAL, and 32-bit technical approach - you can't just 'port them' to RISC OS 4. You'd be redeveloping RISC OS 5 as RISC OS 4, which is pointless. The higher level functions are more portable, and in merging it would probably depend on which component had the greater set of changes as to which you started from," said Andrew.
"For example, it looks as if the RISC OS 4 Window Manager has more changes than RISC OS 5, so you'd probably merge the RISC OS 5 extensions and fixes into the RISC OS 4 module, not vice versa. You'd probably more or less replace the RISC OS 5 Filer with the RISC OS 4 version."
Ultimately, especially for those users who have kept up to date with the latest versions of RISC OS 4 and 5, the united operating system would not appear to be visibly different to previous releases. Familiar desktop concepts, such as the iconbar, Filer and context sensitive menus, would remain largely unchanged, although RISCOS Ltd. have proposed adding an optional toolbar to Filer windows in Select 4.
|"You'd probably more or less replace the RISC OS 5 Filer with the RISC OS 4 version."|
Published Select features that allow the user to customise the look and feel of the desktop would be included; for example, the placement of window furniture, such as close, iconise and the scroll buttons, can be configured, and rectangular buttons like the 'OK' and 'Cancel' icons found in dialogue box windows can be replaced with more aesthetic looking buttons.
"The Desktop wouldn't look very different, though there is support for 180 DPI screen modes for very crisp high resolution displays that could be useful particularly for more embedded applications like digital signage or public information access terminals," commented Andrew.
Nonetheless, recent work carried out internally by Tematic could pave the way for greater modern multimedia support on RISC OS, which may appear with or without a merger. Codenamed Prism, Andrew had been working on a project to develop a system that controls and manipulates multiple streams of data. This system could aid the development of new software that supports so called voice-over-IP, a technology which allows modern computer uses to hold cheap or free telephone conversations over the Internet.
Other applications of Prism would be video players, provided the host hardware can deliver the processing power required, supporting MPEG 2 and 4 formats as found in Quicktime and Windows AVI files. It also handles 'metadata' within a multimedia stream, or in other words, information stored within a video that is relevant to the content being shown, such as subtitles and programme details.
This also covers interactive information typically used on cable TV set top boxes to display programme listings and other on-screen features. This technology is still work in progress as the Tematic team were hoping to overhaul multimedia support in RISC OS 5 for their set top box manufacturer clients; the goal being to create a system where a broadcaster can pump video and audio data 'on demand' from a single server source to multiple set top boxes.
Andrew explained, "At the very least playback from file, and much more besides, is possible with DVDs. The trouble is getting MPEG decode fast enough - really, hardware assistance is needed, so you'd try to do something with the Iyonix graphics card.
"It's very frustrating as we were watching people developing things like the RISC OS DVD player software and thinking, 'what we've got solves all the problems they're talking about' - but we weren't ready to release it.
"We could've said, 'wait for us' but since confidentiality means we could not give specific details, all this would've done is cause frustration over vague vapourware promises. There are some components that would help and are fully written and tested already, but I'm no longer responsible for their development or release.
"If the lights went back on at Tematic, you'd be looking forward to a really neat audio-video architecture in 6 to 12 months time, other project time pressure permitting."
Technologies found on other operating systems, such as pre-emptive multitasking (PMT), were ruled out by Andrew because they wouldn't suit the embedded electronic systems that Castle and AdvantageSix are trying to sell to clients; PMT forces applications to multitask by allocating them set blocks of time with the processor, whereas RISC OS currently allows applications to have as much time with the processor as they like - effectively, programs must cooperate with each other in order to achieve a multitasking desktop. If one application stalls, such as ChangeFSI or Oregano, then the whole desktop slows down as a result.
Andrew summed up a merged RISC OS as, "a 32-bit portable OS supporting over 1GB RAM, PCI devices, Unicode, a decent printing subsystem, modern Filer, flexible Window Manager, and robust native support for various 'foreign' graphics file formats.
"Get it running the likes of Ovation Pro, Artworks, Photodesk, MelIDI, as I'll assume someone will have worked out how to drive a USB MIDI interface and preferably the eMagic AMT-8 for my own selfish reasons, then add some kind of DVD and VCD player using an open extendable audio-video framework, plus Netsurf, Firefox and Oregano 3, with multihead graphics support. It's really not far off if you could just get the OS merge done and finish Prism.
"Whilst it's depressing that the RISCOS Ltd., Castle and Tematic situation makes this next step so hard to take, it's amazing to think how close the RISC OS market is to at long last having these sorts of facilities."
This interview was conducted in mid-November, last year, for Qercus magazine before we knew anything of RISC OS Open Ltd. The article however never appeared in print, and has until now remained collecting dust on a hard disc, because the magazine's editor has yet to publish a new issue since October 2005. Send your Qercus-bound articles to us today.
Andrew's personal website
Previous: New RiscLua book online
Next: Blogging helped me code says developer
DiscussionViewing threaded comments | View comments unthreaded, listed by date | Skip to the end
Please login before posting a comment. Use the form on the right to do so or create a free account.
Search the archives
Today's featured article
RISC OS 5 pictured running on ARM Cortex-A8 kit
Picture exclusive - This grainy photograph shows a port of RISC OS 5, sourced from the RISC OS Open project, running on a Beagleboard - a device powered by a 600MHz ARM Cortex-A8 processor with a built-in graphics chip. The port, developed by Jeffrey Lee with help from Uwe Kall and ROOL staff, is seen as a major breakthrough for the shared-source project as it proves the OS can be ported to new hardware without the need for a large team of engineers.
75 comments, latest by rjek on 30/4/09 3:15PM. Published: 25 Apr 2009
100MBit cards part two
2 comments, latest by diomus on 30/4/02 2:34PM. Published: 29 Apr 2002
News and media:
RISCOS Ltd •
RISC OS Open •
MW Software •
Advantage Six •
CJE Micros •
Liquid Silicon •
Chris Why's Acorn/RISC OS collection •
The Register •
The Inquirer •
Apple Insider •
BBC News •
Sky News •
Google News •