RISC OS on the Titanium
Updated 7 April 2016 where shown.
Elesar Ltd announced the new motherboard, christened 'Titanium', at the London show: until mid-October it was subject to a NDA. It is a wholly new Cortex-A15 board from Cambridge-based Elesar Ltd., a motherboard designed with RISC OS in mind. On show on the ROOL stand, it appeared fully functional, including a SATA-connected solid state disc controlled by ADFS, a new module by Piccolo Systems, proudly demonstrated by Ben Avison.
The new circuit board utilises the Texas Instruments AM5728 Sitara processor 'built to meet the intense processing needs of the modern embedded products and combine programmable video processing with a highly integrated peripheral set'. Testing of the new boards was completed in late October and they were on sale from Monday 7th December (once licensing of the new ADFS/SATA software had been completed).
The presence of a SATA interface is a very welcome step: it significantly improves disc access speed over both SD card and SCSI pen drives. On the ARMX6 SATA access uses an AHCI driver which makes calls to the SCSI filing system. On the Titanium, SATA-connected discs are controlled by a newly written ADFS module, this method is also being used for the IGEPv5 and should offer a modest speed improvement with faster drives.
According to the ROOL website, 'the Titanium board was designed by a leading RISC OS supporter, primarily as a RISC OS desktop motherboard'. A search of Companies House reveals that Robert Sprowson is a director of Elesar Ltd.
It is now thirteen years since the Iyonix motherboard was designed and the picture below extrapolates the develoment path over the next thirteen years to predict project Beryllium using the periodic table of the elements. (The Iyonix project was known as 'Tungsten', symbol 'W'.)
The operating system ROM for this computer has been licensed under the least restrictive Castle licence which means that a download page for the ROM for this machine has already appeared and when the circuit boards went on sale on Monday 7th December, the 'release candidate 1' (RC1) ROM image appeared on the downloads page, containing a utility to reflash the 8Mbyte QSPI boot flash memory on the motherboard, if needed. The ROM has since been updated to RC3 which fixes a few minor bugs.
A 2k serial EEPROM will contain CMOS settings, for example to specify the boot device where the hard disc !Boot image resides. If this has a familiar ring about it, then that is probably not surprising. The processor is a Cortex-A15 dual core ARM processor running at 1500MHz and the motherboard is a compact 6.7″ x 8&Prime DTX form factor which will fit into a conventional ATX chassis. Standard connections for power on, reset, audio and front panel USB are provided on the board.
An EtherCPSW driver controls the gigabit ethernet ports. Unlike the IGEPv5 board, the on-board gigabit ethernet is not limited to 480Mb/s by design and so we can expect network speed to be a little better.
The board has four SATA ports, two serial ports, both with full handshaking, and six rear panel and two front panel USB ports. It also has two PCI express sockets for future expansion, a micro SD card socket and a battery-backed real time clock.
So my first step was to make a transparent case to show off the new computer. The case had to be large enough to contain a DVD drive, a SSD drive (to act as the boot drive) plus a plug-in SSD drive so that I can easily copy data between machines.
One potential difficulty is that the machine draws so little power (particularly from the 12V line) that some ATX power supplies will turn themselves off. Here was an excuse to add some RGB LEDs to the 12V line and make the theme for my computer 'Project Orac'. The machine, sadly still without circuit board, was on display at the RISC OS User Group meeting in Bristol in November 2015, but is now complete with circuit board and fully functioning.
The case design was based on earlier designs for Pandaboard and ARMX6 and I was therefore able to get from design to finished case in just under a week.
Updated benchmarks were kindly supplied by Robert Sprowson on 19 November and were updated as soon as I got my machine up and running (see www.svrsig.org/HowFast.htm) and show the performance to be quite impressive.
The processor is a logical development of the previous Texas Instruments OMAP3 (Beagleboard) and OMAP4 (Pandaboard) processors: the next processor was expected to be OMAP5 but TI has decided to move to the Sitara platform which had been developing in parallel as the AM335x and then the AM752x.
A development module for the OMAP5 (IGEPv5) exists and one for the AM5728 (Beagleboard-X15) is expected in mid December (but has been delayed several times). These follow the 'low cost' development module design that saw the Beagleboard launched in 2008 as an educational product to showcase open source hardware and software design. The Beagleboard XM followed in 2010, the Pandaboard in 2010, the Pandaboard ES in 2011 and the Freescale i.MX6 in 2011.
The Titanium board represents an important step for RISC OS: whilst our favourite operating system has been successfully ported to these development modules, they were not designed for a high performance desktop machine. The new circuit board is designed with RISC OS in mind, to offer high performance for a desktop machine for the 'top end' of the RISC OS market.
It is therefore as important a step as was the release of the Archimedes computer in 1987, the Risc PC in 1994, the Iyonix computer in 2002, Virtual RISC PC in 2004, the HAL-based RISC OS for the Beagleboard in 2010, SDFS in 2012, RISC OS for the Raspberry Pi in 2012, for Pandaboard ES also in 2012 and for i.MX6 and IGEPv5 in 2015.
It is useful to examine the developments over the last twenty years: processor and memory speeds have increased significantly as can be seen from the graph below. The raw benchmarks are only a guide but the newer machines, Pandaboard ES, ARMX6, IGEPv5 and Titanium, are very definitely quite fast. We now have a good price/performance spread from Raspberry Pi 2 - cheap and fairly fast, through Pandaboard to IGEPv5/Titanium - expensive and very fast.
A custom-designed keyboard with proper 'click' keys has also been produced: it adds the familiar red function keys and gives an excellent feel and well worth the extra cost!
The bare motherboard is rather daunting and I suspect many users will want to wait for the retail offerings from R-Comp and CJE Micros. The motherboard requires a power supply, keyboard, monitor, mouse, storage device, HardDisc image, as well as the pushbuttons to turn it on and reset it, as well as some front panel USB sockets. The rear socket shield is an optional extra.
It comes with a 'Titanium Quick Start Guide' about what to plug in and download and how to set up the monitor. It gives step-by-step instructions which explain how to download a 'HardDisc4' image and the 'HForm' application from the ROOL site and to format an SSD drive and copy the image onto it.
It also explains how to configure the monitor before you boot up and explains how to choose a power supply. I chose a completely silent power supply - i.e. an extremely efficient (93%) one with no fan at all. The machine is so quiet that I can hear a pin drop.
I chose a Crucial MX200 250GB SSD rated at 550Mbyte/s and am getting read speeds of over 170Mbyte/s. This translates to a ROM compile time just over 4 minutes - the best time so far.
The Titanium board offers many more storage options, as befits a 'top end' desktop machine. I have got the DVD-ROM (SATA-connected) working - the same model - a Pioneer DVR - TD11RS also works well on my ARMX6, both for reading and, using !CDVDBurn version 2.09s, writing CDs and DVD-RAM. CDs and DVDs need to be in ISO format, not UDF, as RISC OS cannot handle UDF.
Screen artefacts when displaying at 1920x1200 16M have been corrected in the RC2 ROM. The bad news is that 1920x1200 is the maximum resolution supported.
There are a few minor niggles which will, no doubt, be sorted out - at present Netsurf version 3.3 shows red and blue swopped, this can be overcome by using the 'Use OS' configuration setting and the issue has been completely fixed in builds after #3460. Running !Patience in 32k colour modes works correctly though. ArtWorks and Ovation Pro were similarly affected but I understand updates are available for both. The red/blue swop (BGR versus RGB) is understood but some applications will need to be updated to work correctly in 32k colour modes that are RGB/BGR swopped (in hardware) on the Titanium (and IGEPv5).
By 2013 the operating system can render either RGB or BGR on either type of hardware which is why, for example, !Patience works on IGEPv5 and Titanium without modification - it uses legal OS sprite calls and the OS does the rest. The Titanium uses RGB format sprites, rather than the traditional BGR. You have to read the spriteword and modeflags to work out which new sprite format is being used. Some applications will therefore need to be updated to work correctly in RGB modes on the new hardware.
The two classes of application affected by the extra sprite types (not just the RGB/BGR additions) are:
1. those needing to import a sprite and pull it apart into its constituent colours - for example !ChangeFSI. These can continue to output BGR sprites as they always did and manipulate the colours internally as BGR, but their file importers will need updating to understand the extra sprite types in the sprite mode word.
2. those which paint directly to the screen rather than via the OS - for example KinoAmp. These need more new code writing than 1. above, if they previously supported the RISC OS 3.50 modes then they would need to add 4k BGR and 64k BGR plus RGB versions of 4k/32k/64k/16M.
Some software is still unable to handle 'new' format 1bpp, 2bpp, 4bpp and 8bpp sprites properly, notably ArtWorks and Impression, relying on the suggestion that old format sprites should be created for colour depths of 8bpp and lower. Such sprites show OK in Impression but print as blank and show as blank in ArtWorks but print correctly. !DPlgScan offers a choice between 'new' and 'old' format via a setting 'Old sprite format' when saving low colour depth sprites and so provides a work round for this issue.
Each application that loads sprite files must therefore, as a minimum, recognise the newer sprite types, including RGB and BGR, and translate them to a convenient format that it understands so that they will display correctly. When saving a sprite file after editing, applications should ideally offer a choice, where appropriate, between old and new format and between RGB and BGR or other colour formats.
PhotoDesk 3.12 is being worked on to support the newer screen modes and version 3.13z is undergoing alpha testing.
A beta version of Ovation Pro has been updated by David Pilling to plot RGB and the same changes need to be made in a few more places within Ovation before release.
Martin Wurthner has released an update for ArtWorks to render RGB modes correctly and is working on the full upgrade to 2.X3.
Chris Johnson hopes to update Snapper and ConvImgs to deal with the new style sprites (Snapper will save the sprite in the new format, but of course lots of software cannot display them). In ConvImgs, and DPScan, it is 'simply' a case of modifying the way the 24-bit RGB value is constructed when producing (for example) JPEG or PNG output files.
My mouse - an anonymous 'hose reel' miniature one - worked fine but the Titanium board can be fussy and not all WiFi mouse and mouse/keyboard models will work (the Raspberry Pi is also fussy in this regard).
There is the core of an excellent product here which shows superb potnetial. The Titanium is a high-end high-performance high-cost circuit board (£498) that will probably be £1000+ in retail form from both CJE and R-Comp. Neither is announcing the new machines yet. They will not be in direct competition with ARMX6 (cheaper but almost as fast) nor Raspberry Pi (much cheaper and not that much slower) but the IGEPv5 will be a closer competitor.
The motherboard solution is currently one for enthusiasts and developers rather than users who want a polished and perfected computer. I am sure that users who want the fastest available machine with lots of expansion and are prepared to pay the price will agree this machine is a 'must-have' product.