"They're mad," I thought, but nodded and smiled enthusiastically while looking around for the quickest escape route.
Everybody knew that RISC OS only ran in 26-bit mode and that the latest ARM processors, including the Intel XScale, only worked in 32-bit mode. Without a 32-bit operating system it wouldn't work and without 32-bit software it wouldn't sell.
The challenges in designing a new motherboard were immense and the effort to get RISC OS running in 32-bit mode was enormous. Castle had been planning this for some time, but the project didn't start until May 2002, so the team had just six months to deliver, which looked wildly optimistic.
Had anybody else proposed such a crazy scheme I would have run a mile, but with Jack Lillingston and John Ballance driving it, and some superb engineers working on it, I could see that they wouldn't let piddling little details get in the way of their dream machine.
Jack and John started working together in 1989 and created Castle Technology Ltd in 1993. Their partnership is the key to Castle's success and the success of the IYONIX pc. Jack focuses on the marketing and selling while John has the technical skills to make it all happen. Together with the development team they are probably the biggest RISC OS enthusiasts around.
Fortunately, Pace already had a 32-bit version of RISC OS which had been developed for future set-top boxes (STBs) and Internet TV systems. This was a good starting point, but Pace had only converted the components it had needed to 32-bit. Set-top boxes didn't have hard discs or desktops, so ADFS and Draw, for example, still needed converting, as did hundreds of other components.
The specification and plan was determined at these meetings in May. Castle employed new staff, including some staff they had laid off a year previously, out-sourced portions of the work and the project began...
This is the fastest ARM processor that could be used. The only faster ARM chip available is the 733MHz 80200, which has no memory controller, no PCI interface and no DDR memory bus, so it was not a practical option.
Note: strictly, we shouldn't refer to 'the XScale processor' as there is no such thing. The IYONIX pc actually uses the 'Intel 80321 I/O Processor with Intel XScale microarchitecture'. It is commonly referred to as the Intel XScale for convenience.
For reliability, the processor is soldered to the motherboard and not socketed. The length of the PCB (Printed Circuit Board) tracks to the DDR RAM must be trace-matched to within 0.025", and the addition of a socket would make this horrendously complicated, having to account for extra pin capacitance too. It is also very unlikely that a future Intel processor would have sufficiently similar functionality to be able to replace the 80321 directly. (Acorn was able to use plug-in processor cards in the Risc PC because the memory bus was much slower and the processor cards were effectively raw processors on a card, as IOMD and VIDC remained on the motherboard.)
With four PCI slots and two podule slots there is plenty of expansion capability even though two of the PCI slots are used by the graphics card and the USB card. Although it might appear limiting by PC standards, it is important to remember that the motherboard is well equipped with stereo sound, Ethernet and two serial ports.
The most popular expansion cards for Risc PCs were probably SCSI, graphics and fast IDE interface podules, and it is unlikely that any of these will be needed in the IYONIX pc: SCSI has been superseded by USB for communicating with external devices such as scanners; the built-in 24-bit colour graphics should be adequate for high-end graphics applications; and the fast IDE interface in the IYONIX pc avoids the need for faster disc interfaces.
Some people have asked why podules are still supported. It is important to remember that many users have specialist podule cards which they will be reluctant to lose. Many scientific and technical organisations have developed custom podules for interfacing or controlling external devices, and it is important that they can still be used. Castle is also keen to see hardware developers supporting the IYONIX pc, and many will welcome the chance to sell podules to IYONIX pc users, or to develop new podules which can still be fitted in older computers.
Initially there was some concern about the poor read performance, which is one fifth of the write speed. This was very noticeable when scrolling the screen or dragging windows, as the operating system had to read the existing screen data before writing it to its new location.
Fortunately, the nVidia card provides a 'graphics accelerator' engine which is capable of performing many graphics operations by itself, without any intervention from the processor. RISC OS was modified to use the graphics accelerator for block-moving operations (also known as 'bit-blit' operations), block fills and solid line drawing. Instead of the XScale processor reading and writing thousands of words of memory every time a window is dragged or scrolled, it simply sends a bit-blit instruction to the graphics accelerator and lets it do the work. Existing software that uses the window manager, OS_SpriteOp or VDU calls, will benefit automatically from the graphics accelerator without needing any software changes. There is no need to do anything differently in order to take advantage of the graphics acceleration, but it is recommended that screen reads are avoided as far as possible.
The graphics performance represents a huge improvement over the Risc PC, offering resolutions of up to 2048×1536 pixels using 16 million colours. This is ideal for professional graphic design, as well as for home users wanting to manipulate digital camera images. Indeed, most users will use 16 million colours as their default screen mode.
During the development there was some concern that applications might not be able to write directly to screen memory, and this would have caused problems for games and some other programs. Castle's engineers managed to work around this problem, so direct screen access from user mode is possible providing that the screen base address and other screen parameters are read from the appropriate VDU variables (note that VDU variables can now be read in Basic using the new VDU function).
The only limitation of the graphics card is that it doesn't support screen modes that use fewer than 256 colours. This doesn't affect desktop applications or modern software, but it can cause problems for games that were written to use 16-colour screen modes. Some other programs (for example, Sibelius) also use screen modes with fewer than 256 colours. One solution would be to fool these old programs into thinking that they are writing to screen memory, when in fact they are writing to a buffer which is then converted as it is copied to the real screen memory in the background. Neil Spellings says that Aemulor Pro will do this, thus enabling old software to be used with the nVidia graphics card fitted in the IYONIX pc.
Some people have questioned why an AGP (Accelerated Graphics Port) graphics card was not used. The 80321 processor doesn't have an AGP port, so additional interface chips would have been required to connect an AGP card to the PCI bus. This would have increased the cost and the development time while offering little benefit. The current graphics card works extremely well, especially as RISC OS makes good use of its graphics acceleration capabilities.
USB ports are faster, take up less space, use thinner/neater cables and, by using USB hubs, enable up to 128 devices to be connected simultaneously. The IYONIX pc provides two USB ports on the rear panel and two on the front of the case. Many monitors, including some of the Iiyama LCD monitors that Castle supplies, have built-in hubs, making it possible to connect both the mouse and the keyboard to the monitor, with a single USB lead connecting the monitor's USB hub to the computer.
Nearly all modern printers have USB ports; although a few have a parallel port as well, they are becoming increasingly rare. For users who wish to use an old parallel-port printer, Castle can supply a low-cost USB-to-parallel converter.
Rather than drop the serial port, Castle provided a second port. In the current RISC OS release the second port is unavailable to end users, as it is still dedicated to debugging purposes, but it will be supported in future versions of the IYONIX pc's HAL (Hardware Abstraction Layer).
It would have been nice to upgrade the serial port API (Application Programmer Interface), throw away OS_SerialOp and OS_Byte and use a neat interface that could handle multiple serial ports. The problem is that this would stop existing software from working. The development team decided to make the first serial port work in the same as a standard serial port (accessed via OS_SerialOp etc.) while providing access to the second serial port via a block driver. Many existing programs, including Internet diallers, PsionFS and Caller ID software, allow block driver serial ports to be selected, so they will be able to use the second serial port without any software modifications being required.
To minimise the memory requirement, each icon used a palette of 256 colours with each palette optimised to use the best 256 colours for the icon (from the full range of 16 million colours). Even then, the icons wouldn't fit in the 4Mb RISC OS ROM. We considered using a different set of icons in ROM, but that would have been very confusing for users if their machine ever started up without loading the disc-based icons (for example, because of a disc fault). The solution was to use 16-colour versions of the new icons in ROM, but soft-load the 256-colour icons from disc. Normally the ROM icons will never be seen, but if the disc fails to boot, the result is icons that look similar but use fewer colours.
Everybody involved in the Tungsten project, as it was known, had to sign a strict Non-Disclosure Agreement (NDA) which prevented them from discussing the very existence of the project, let alone any details, and this proved very effective.
Although the IYONIX is not a PC, it is important that it can use PC files. Castle worked hard with developers to ensure good file compatibility with the important file types.
Colin Granville did an excellent job in updating his public domain PDF reader to work on the IYONIX pc. He also added several new features, the major one being the ability to show links in a different colour.
Gerald Fitton helped by providing a new version of Fireworkz with support for the latest Excel file formats (including worksheets).
Icon Technology produced Writer+ (a derivative of EasiWriter), which is capable of handling Microsoft Word 6, Word 7, Office 97/98 and Office 2000 documents.
Oregan Networks was commissioned to produce Oregano 2, with support for Macromedia Flash movies. A prototype version is currently being bundled with the IYONIX pc and free upgrades to the full version will be available soon.
David Pilling quickly updated all of his software to run on the IYONIX pc and supplied a read-only version of SparkFS to enable Zip and other archive files to be read.
The developer day took place on Monday, 7th October at a hotel near Kettering. Developers sat through Jack's presentation before the dozen covered prototype machines were revealed. Jack had to turn off the air conditioning, projector and fluorescent lights to demonstrate just how quiet the prototypes were.
The presentations went well, but we had been so keen to explain the details of the new machine and the intricacies of writing 26-bit/32-bit neutral software that we hadn't prepared any whizzy presentations to show off the speed. Fortunately, Mike Glover and Gerald Fitton came to our rescue, using 32-bit versions of TechWriter and Fireworkz to show off the capabilities.
Many of the developers were amazed that the project could be so advanced without there having been any leaks, and several took prototype machines away on the day. Nevertheless, Jack knew that rumours would start spreading, and he had prepared some careful marketing to pre-empt any speculation. The www.iyonix.com Web site went live on 17th October, giving a taster of what was to come without committing Castle to a firm specification. It hinted at USB, PCI, DDR RAM and an XScale processor without saying what the speed would be, nor how much RAM it would have. Even developers weren't told the speed, although the keener ones deduced it from their own benchmarks.
| The IYONIX pc |
|
The IYONIX pc is the first desktop computer to use an Intel XScale processor, and the most powerful RISC OS computer ever made. It is now a very stable system with a wide range of software available, and more and more users are now finding that they can use the IYONIX pc as their main computer.
Hundreds of developers have been working hard to bring a wide range of commercial and public domain software to the IYONIX pc, and we can expect to see announcements of many more 32-bit-compatible programs in the coming weeks.
Old software that is not being updated, such as Impression, will still run at comparable speeds to a StrongARM Risc PC thanks to the forthcoming Aemulor software, so there really won't be any reason to keep using your old computer.
It was important to have a wide range of compatible software available at the launch, so the software database at www.iyonix.com/software was created. It allows developers and publishers to create and maintain their own entries directly, without needing to ask Castle. This database will be updated soon so that descriptions and version numbers can be updated automatically from developers' own Web sites. That way, developers won't need to keep logging in and making changes: they just update their own Web sites and Castle's database will track the changes automatically.
The private developer Web site was made public on www.iyonix.com/32bit to enable programmers to write software for the IYONIX pc. As well as explaining how to make programs 26-bit/32-bit neutral, it describes many of the new features in RISC OS 5.
The next RISC OS update is expected to include UDMA (Ultra Direct Memory Access) hard disc support. Early tests using real-life filing system operations have achieved 15Mb/s for write operations and 25Mb/s for read operations. The actual data transfer rate when reading contiguous blocks is higher, but real-life filing system operations will invariably need to access files that are scattered across the disc surface. The fastest hard disc that has been tried so far has achieved a raw transfer rate of 55Mb/s using ADFS_IDEUserOp, and it is the disc drive rather than the IYONIX pc's disc interface that is the limiting factor.
New keyboard labelling is planned for the next batch of machines, to encourage developers and users to use function keys for standard purposes (for example, <F3> will be labelled SAVE). Future enhancements to RISC OS 5 are also planned, but Castle is keeping tight-lipped about the details.
Watch this space...