The magazine for members of

Converting Photodesk for Iyonix users

Mini PCs with Windows and RISC OS

Free For All PD programs

Science with views into space

Issue 48 — Winter 2003 Eureka Needs A New Editor

ould you like to join the grammar and fit them into the page WEureka team? There’s no pay templates. You then print the but it’s enjoyable work and you do get completed pages and send them to our free Club membership. Also, at the proof reader, who will spot any little moment, there’s a unique opportunity errors (or big ones!) which you may to start at the top. have missed. Finally, print out the complete magazine and send this Eureka needs a new Editor. After master copy to the printers. From editing Eureka for eight years, I shall there, the printed copies go to our be retiring from the job next year and pack and despatch team to be mailed we need someone with enthusiasm out to members. and drive to take over. So what’s involved? Well, it’s a four times a You can keep Eureka looking the year job so it shouldn’t get in the way same as it is now, add your own ideas of any other of your activities. and improvements or revamp it all completely. Think you can do the job? We have a team of contributors I’ll be readily available to provide any sending in regular features and you help or advice you may need. can commission other articles from anyone willing to do them. You don’t If you don’t think the Editor’s job is have to be a ‘techie’ (I’m not) as the for you, you can still become a Club’s Committee (which you will contributor (see page 52). join) has some of the leading RISC OS experts who will write the more Email or write to me if you’re technical articles and deal with any interested (the addresses are on the technical queries which may arise. last page). I look forward to hearing from you. The Editor’s main job is to check the contributions for spelling and Peter Jennings

All opinions expressed in Eureka are those of the authors and not necessarily those of the Club or its Committee members and officers. CONTENTS

4 Fire which cancelled our Show 45 Crystal gazing The disastrous blaze which The Omegus family looks into the destroyed the Museum venue. future.

6 The RISC OS South East Show 46 Site Seeing Interesting new products at the Popular science websites, Guildford Show. including exciting glimpses at the wonders of space. 9 You only have to ask ...and our Technical Help team 52 Writing for Eureka will give you the answers, Join the Eureka team to see your however advanced or elementary work in print and get free Club the question may be. membership.

16 Mini PCs with RISC OS 53 The Double Cross puzzle Small boxes with Windows whch The words are all there. You just can run RISC OS programs too. have to find the right letters.

18 Free for all 54 Winning games with logic The first of a new regular column In part four of our series we reviewing the pick of the PD follow the ant trails which lead programs and where to find them. the way to winning games.

26 Photodesk: just 16 bits more 62 The Sys Admin’s Christmas How the photo-retouching Twelve days of email-borne program was finally converted problems for the festive season. for Iyonix users. 64 The Double Cross solution 42 RISC OS Rhymes The words you found and any that Our poetic computer explores the stayed hidden. realms were the wild sprites and pixels dwell.

2 Eureka 48 — Winter 2003 65 ARM Arena Midlands Show Cancelled Our regular look at the games You my already have heard that scene finds some new, eagerly the Club’s annual Midlands awaited, versions for the Iyonix. RISC OS Show, due to take place in Birmingham on 67 Coming in Eureka 49 November 29th, has had to be Our plans and hopes for the next cancelled, due to a serious fire at issue, the National Motorcycle Museum. 68 Club Contacts Who you need and where to send. For details see next page.

Technical Help For All

The Club's Technical Help Service is one of the most valuable benefits of membership. Like insurance, it's something you hope you'll never need but something which comes as a great relief when a problem does arise.

The great variety of questions and problems can be seen from the selection we publish in Eureka but it should be emphasised that, although many of the questions are of a technical nature, the Technical Help team are just as ready to answer the most elementary of queries. Our members are of all stages of knowledge and ability and the service is open to all.

You can send your query by email, letter, telephone or fax. It will be dealt with and answered as urgently as possible, bearing in mind that the Technical Help team are all unpaid volunteers with full time time jobs to do! You don't have wait to read the reply to your problem in Eureka.

The addresses or phone and fax numbers to use can all be found in Club Contacts on the last page of every issue of Eureka.

Eureka 48 — Winter 2003 3 The Fire Which Cancelled Our Show

his year’s Midlands RISC OS main exhibit halls that were severely TShow, due to be held at the damaged. National Motorcycle Museum (NMM), has had to be cancelled due The Club usually uses the Premier to a severe fire on 16th September Suite, although we had the Manxman which destroyed three of the five Suite last year and were due there for exhibition halls. Exhibits totalling this year’s Show.

The Midlands RISC OS Show’s organiser, Ralph Sillett, explains how the disastrous Motorcycle Museum fire has caused the Show to be cancelled this year. approximately 500 machines were As you may be able to see from the destroyed, while 250 were pulled to pictures opposite (supplied by the safety. NMM) it must have been a very difficult fire to control. I am glad that The buildings were safely evacuated no lives were lost and no-one was with no casulties, using established injured. emergency procedures. Due to the time of year, it was not The Imperial Suite suffered possible for the Club to find a suitable considerable smoke and water venue for us to carry on with the damage and is undergoing Show. Those which were the most refurbishment but may not be suitable had no dates available until available until January 2005. into the New Year.

The Premier, Compton and Manxman We are now looking for another venue suites are unusable due to the for next year’s event as it is unlikely structural damage caused by the fire. that the NMM will be available until They are on the same floor level as the 2005.

4 Eureka 48 — Winter 2003 Our main concerns for a suitable venue are for easy connections with all parts of the UK and costs low enough to allow the smaller exhibitors to attend and to keep the entrance fee to a minimum.

As soon as we have found a venue and The Museum site after the fire (top) made a booking we will advertise on and some of the destroyed exhibits. our and other places.

Eureka 48 — Winter 2003 5 RISC OS South East Show 2003

onths of feverish hard work by conversions and selling CDs of Mthe SASAUG team once again Debian for ARM machines. presented us with a well-organized and successful show in Guildford. RISCOS Ltd were also present, taking Select subscriptions, and Attendance seemed similar to last demonstrating it on a variety of year, though slightly more spread out machines, including one bare case

Toby Smith took time off from The ARM Club stand to tour the show at Guildford and found some exciting new products and helpful, friendly, dealers. due to an expanded show floor, to that actually turned out to be the accommodate more exhibitor space show’s only working Omega. than the previous year. That’s got to be a good sign for the market! The magazines were represented by Archive, Acorn Publisher and Acorn Going round the stands, I noted that User, all happily chatting away to Castle had the largest presence, doing visitors and offering subscription good business demonstrating the deals. Iyonix and related accessories. A hardware fix service was also being The ever impeccably dressed Martin offered for recently identified Würthner was showing off his latest problems, helping Iyonix owners version of ArtWorks, now fully 32 bit keep their machine up to date without compatible and loaded with all of his returning it — a cunning idea! previous excellent extensions. Copies seemed to be going almost as fast as Iyonix users were also well served by his CDBurner could generate them. the industrious Unix Porting Project team, providing details of their utility The voluminous storerooms of CJE

6 Eureka 48 — Winter 2003 were represented in the back corner, making this a really great product for continuing Chris Evans’s reputation those with PCs. as the ‘Corner Store’ of RISC OS software and hardware. Much focus RComp themselves were was being made of their new wireless demonstrating the latest release of networking kits. WebsterXL, now supporting increased security and an array of new Virtual Acorn were busy promoting page-saving mechanisms. their latest versions, including the RPC-SE version, featuring RISC OS Also noticeable on the stand was a 4 Select enhancements. Initial RISCube, Rcomp’s new miniature PC versions of the network support were and Virtual RPC offering. The also being shown, developed in RISCube is targeted at those wishing conjunction with Rcomp and for a small, quality machine capable OreganoUK, plugging the final gap in of running both Windows (where

Eureka 48 — Winter 2003 7 necessary) and RISC OS software in the same machine. All this is backed with the usual care, attention and customised building you’d expect from friendly RISC OS dealers.

Photodesk were demonstrating a vast array of digital cameras, mainly working through the USB system, certain specific tricks on the Iyonix available bundled with their excellent hardware. More improvements are RISC OS software. The latest version expected over the next few weeks to of Cameradesk, the digital get the system up to full speed. No photography download utility, now pricing or availability information supports a new almost universal was available yet, but keep your eyes standard, the PTP (Picture Transfer on their website for more details Protocol) that is used by an increasing (www.cinodvd.com) range of camera manufacturers in an attempt to standardise the digital Finally, show stalwarts Fortran photography world. Cameradesk is Friends were happily demonstrating also now 32 bit compatible for Iyonix both their usual polyhedra software users. and a full bell ringing simulation, hooked up to a small wooden bell The biggest news of the show was tower, which certainly drew some probably about Neil Spellings’s latest attention. project — the team behind (which runs 26 bit software on the 32 Thanks must go to the SASAUG team bit Iyonix) have been hard at work on for their hard work both in organising a native RISC OS DVD player, the show and running the event on the named CINO. Their stand was kept day. It’s a hard and often thankless busy all day showing assorted DVDs. task, but the friendly and upbeat After just five weeks’ work they have atmosphere certainly acts as a tribute a functional playing system that’s to their hard work. only just below full speed, using

8 Eureka 48 — Winter 2003 You Only Have To Ask

Monitor connection You will need to set the computer to Question: use this by issuing a *Configure I live in Australia and can not expect MonitorType 0 command. to find much help with . This can also be done by switching on and holding zero on the numeric I have an A3000 without a monitor (it keypad, which is easier if the screen gave up after after 15 years or so). I display is unreadable.

Some of the questions sent to our Technical Help Service and the answers provided, by email, phone, fax or letter in this valuable free benefit of membership. bought an AKF40 from an A5000 and A standard 15 pin to 9 pin adaptor will was told it would work with a nine to work. 15 pin adaptor. Program problems Not so I found. My two questions are: Question: does the AKF40 run on an A3000 and Can you help me to find the patch is there a cable diagram I can get to !PCR13 and to get another copy of the make it work? StrongARM RO3.7 upgrade CD. Also, can you tell me what file Allan Butler extensions I need to put on Galaxians 6502 machine code image to get it to Answer: work with warm silence !6502em? It will do but it supports only the low ‘TV’ resolution modes 0 to 17 and 33 Andy Evans to 36. You will not be able to use the higher resolution modes 18 to 28. Answer: You will find the patch !PCR13 at

Eureka 48 — Winter 2003 9 home-1.worldonline.nl/~jandboer/. I was bidding for a couple of items on It's the first entry you get on typing eBay auctions at the time, so should PCR13 into www.google.co.uk/. have received messages confirming bids, indicating I'd been outbid, and You can download the default RISC so on. OS 3.7 disc contents from: acorn.riscos.com/riscos3/37/37DiscA Since Monday morning, however, I rchive/. am being flooded with messages,with multiple repetitions of those I'd If Galaxians is a BBC program it expected on Sunday and extra copies should not have any file extensions or of new emails which people sent to type. It should be left as the original me since. untyped files which will instead have BBC style load and execution By 14.15 today (Tuesday) I have addresses. received 73 duplicated messages. One has appeared 17 times today. If you have lost this information due to it being copied to a PC, the only A pattern seem to be emerging in that way to restore it would be to find all are dated Sunday during the period another copy of the game. A search on when I was unable to download any Google reveals several likely sources emails. Times are all between 13.51 on the first page. and 23.08 that day.

Note that downloading copies from Emails sent yesterday and today are the internet can only be sanctioned to not duplicated. replace legitimate copies you already own on the original BBC B media. Particularly annoying as on Sunday afternoon a friend sent me an email Email deliveries with several Word documents Question: attached which takes ages to For several hours on Sunday I download and this has turned up received no emails, even ones I might about ten times in total so far. have expected.

10 Eureka 48 — Winter 2003 I checked the Freeserve telephone mail server that is the same in both. recorded message helpline yesterday but that reports no known problems at 2) The fetching of emails from your the present time. I virus-checked my ISP did not complete. hard disc with Killer — no problems reported. Could the trouble be on my Emails are deleted from the server machine anyway? only when your email program has confirmed they have been Any idea why this is happening and downloaded correctly. If for some what is more important whether reason it is interrupted, the messages anything can be done about it? will still be there when you next try to download. Brian Billington To see if this is the case check the logs Answer: created by your mail transfer There are two possible explanations: program. In the case of !Popstar there will be a log called Popstar in 1) A fault in an email server, between !SysLog.Logs which should indicate or including your ISP or the if a problem occurred before originator, which has caused multiple completion. messages to be sent. There could also be a large email If there is a failure to deliver a which does not finish downloading message at any stage, it can be before you hang up. If your ISP offers retransmitted and very occasionally webmail access, try logging on to see the original and retransmitted copy what is waiting for you to download. can both arrive. It is possible to adjust the settings of Examine the full headers of duplicate the mail transfer program to fetch a messages, if the dates of the lower number of small size messages Received: entries at the beginning are in one go, resulting in fewer different, they are likely to be messages to be refetched after a retransmissions, probably by the last problem.

Eureka 48 — Winter 2003 11 Buffer overflow many shareware or commercial font Question: manager utilities. I have been using Publisher without problem for many Email errors years until yesterday. Suddenly it fails Question: to boot giving the error ‘buffer My main problem is that when I overflow’ download emails I get various error messages and somtimes have to go Ken Page into the ‘Backup’ directory to extract them as raw data. Answer: This sounds like it may be related to For example I have just accessed the the number of fonts installed. ISP using DialUp with Messenger already loaded. As soon as the first Have you recently added any fonts to email was received I got a post your system? Some older software mortem window open up which uses a fixed buffer to store the font scrolled a lot of info too quickly to names available on the machine, read. Everthing then paused until I hit which can overflow if there are too Enter to close this window. Then the many. It can also have problems with emails for other members of the individual fonts which have very long family were downloaded and (40+ character) names. appeared to be received OK.

The solution is just to install a small However, by this time I had been working set of fonts on the computer logged out of Messenger, presumably in the normal !Boot.Resouces.!Fonts when the post mortem window (using the Configure font merge tool) appeared, and had to log back in but and keep more unusual fonts separate. as soon as I hit Enter I got an error message which said: You can do this by having a number of ‘Uncaught Trap:Data additional !Fonts folders which add Abort.pc=1FFFFFF8:registers at themselves to the font path when 0004768C’. double clicked on or use one of the

12 Eureka 48 — Winter 2003 This was followed by: sure whether it coincided with the `Debatch Failed — change of hard drive or not. NewsDir:MsgServe.MsgIDs — This File is already open'. I have tried rebuilding NewsDir from scratch in case there was some I was then able to log into my email corruption causing the problem but box and view the message received. without success. However on previous occasions this has not always been possible and I I have noted on some of the Post have had to resort to the Backup Mortem screens mention of a Flex directory within NewsDir as Memory Error but do not know previously mentioned. whether this is significant.

I have spoken to R-Comp who are not One thing which is interesting is that, aware of this type of problem but because I am not deleting emails from when, during conversation, I the ISP at the first download, I am mentioned that the hard disk had been rebooting the machine to overcome replaced last autumn it was suggested the errors and then acessing a second that a 20GB disk was a likely source time (to delete) and picking up the of the problem and that setting ADFS same emails without error! buffers to 0 within Configure should overcome the difficulty. Sadly, it I need to upgrade the machine to the hasn't. Universal Boot Structure in order to run R-Comp PC Networking software All of the other applications on my and have achieved this once but when machine run without problem. I am trying to update all of the Boot files running a Risc PC 700SA with OS put something in that the machine 3.7. didn't like and screwed it completely.

This problem has been troubling me Fortunately, after a lot of difficulty I on and off for months although it managed to put the old Boot structure seems to be currently every time I back in place and am now loath to download emails but I cannot state for have another go.While all this was

Eureka 48 — Winter 2003 13 going on I had to do a Ctrl-R reset full backup and then reformat the which defaulted Configure and now I disc. From then on you must also cannot get my 17” monitor to fire up ensure that ADFSBuffers is never non so I’m back to my AKF60! Again I’m zero, to prevent the reoccurance of fighting shy of messing around too problems. It will be set to a non zero much until I sort out the major value after a CMOS reset if you do a problems of email - which I hasten to Ctrl+Delete+Break. add was in evidence before I tried these ‘upgrades’. You should also be aware that with RISC OS 3.7 the disc format becomes Pete Privett very inefficient for discs over 4GB, and with your 20GB drive each file Answer: will be taking a minimum of 2MB !!! After Messenger has crashed it will It is likely that it will become full leave many files open which can before a fraction of its capacity is prevent it functioning correctly. A used. quick solution is to press F12 and type *Shut but be aware this can upset any I’ve found the Mesenger Pro other applications which are running experienced a serious of problems and have files open, such as when using old toolbox modules that databases. Often it is safer to reboot. can produce crashes as you described.

There certainly could be problems if Ensuring you have an up-to-date boot you have used a hard drive over over sequence with the latest toolbox 2GB with ADFS buffers non zero modules installed in !System is a first with RISC OS 3.7. Due to a bug in priority. The latest 3.7 boot sequence this version of the OS it can lead to also contains a patch for the ADFS the inability to access files, and buffers problem but it is not ideal as it general unreliabilty of the filing won’t be on a shift break which can system. lead to disc problems reoccurring.

Often the only solution is to You can download the RISC OS 3.7 *Configure ADFSBuffers 0 perform a Boot sequence from:

14 Eureka 48 — Winter 2003 http://acorn.riscos.com/riscos3/37/37 • You can reformat your drive to use DiscArchive/ the much more efficent disc storage format to allow you to get the most The latest toobox modules can be from your 20GB disc. found at: http://support.riscos.com/Support/Up The minimum size of files will be dates/ reduced to a mere 80K.

It is likely the you did not copy the • The considerable advantage of long monitor definition into filenames and the removal of the 77 !Boot.Resources.Configure.Monitors files per directory limit. and then run !Configure (double click on !Boot) and go to the monitors • The latest universal boot sequence is section to reselect it. provided with the upgrade. (You will still need the latest tool box modules). While you can try to get around all these problems on RISC OS 3.7 my • Many user interface improvements. best recommendation would be to upgrade to RISC OS 4, I think it will • Noticeable increased speed and offer real benefits in your case, and reliablity with the more efficient the installation will not be any more RISC OS 4. work than you will have to do to fix your hard disc and boot sequence. Send you queries, whether techie or elementary, to our Technical The benefits it will give you are: Help Service, by email to [email protected] or write • No problems with ADFSBuffers, to the Club’s Merton Court address enabling them to be set to non zero (which you can find on the last which will speed up filing system page) or fax 07020 954018. operations considerably — especially for random access databases such as If it’s urgent you can phone 07010 Messenger uses. 708098. (Phone and fax are at higher rates).

Eureka 48 — Winter 2003 15 Mini PCs With RISC OS

A6 VirtualRPC-SE. keyboard and mouse n the last few weeks, two new, very are included, along with speakers for Ismall, Windows PCs have come on those machines where they are not part the scene — both from RISC OS of the monitor. companies! They do, however, also have RISC OS abilities as well and The case is available in silver or black can be switched between the two and, alternatively, in traditional ATX operating systems at will. style.

From Stuart Tyrrell Developments The machine variants are: there’s the A6, in a miniature case described as being little bigger than a A6B: Base unit, DVD, 40GB hard drive, stack of A4 paper and measuring 256MB memory. 32x21x18cm (or, approximately, A6: 15” LCD monitor, DVD/CDRW, 12.6x8.3x7 inches). 80GB hard drive, 512MB memory. A6DB: 17” LCD monitor, This is fitted with VirtualRPC-SE, said to DVD/CDRW, 120GB hard drive, perform at least as fast as a 287Mhz 512MB memory. StrongARM Risc PC, and WindowsXP. A6 The machine is available in three Prices: A6B £599; A6 £899; variants. All come complete with DVD A6DB £999 (+£25 carriage + VAT) drive or DVD/CDRW, fast hard drive, Supplier: Stuart Tyrrell Developments floppy disc, 333/400MHz dual-channel PO Box 183, OLDHAM, DDR memory, Geforce 4MX graphics, Lancs OL2 8FB 56K internal modem, 10/100BaseT Tel: 0845 458 8803/01706 848 600 networking, 4xUSB ports, 2xIEEE1394 Fax: 0870 164 1604 ports (Windows only), SPDif optical Email: [email protected] (input Windows only, output RISC Web: www.stdevel.co.uk OS/Windows), WindowsXP Home and

16 Eureka 48 — Winter 2003 RISCube The other new machine, the RISCube, is an expanded version of R-Comp Interactive's shoe box sized SpaceCube range of PCs. It is fitted with RISC OS 4.02 and WindowsXP Home (Pro is available as an upgrade) and can boot up in either. It is available in a variety of specifications, ranging from RCI's RISCube computer case entry level, StrongArm-class performance up to machines said to give 512MB of high-end, dual-channel DDR results suggesting 400-500Mhz RISC RAM with up to 128MB Nvidia OS performance. graphics with dual-monitor capability and `SoundStorm' 5.1 audio. As a special deal, it is being supplied with UniPrintVA software, which allows There is also a special `customise your RISC OS to print to almost any printer RISCube online' facility which allows with WindowsXP drivers, including you to specify the components you want. USB, parallel or Windows-only printers. RISCube The entry level RISCube has a CD Price: Standard machine £699 rewriter, DVD player and mid-sized hard High Spec £899 (all inclusive) drive. It includes USB, firewire, PS2 Supplier: R-Comp Interactive keyboard/mouse ports, printer port, 22 Robert Moffat, High Legh, floppy drive and TV out and comes with Knutsford, Cheshire WA16 6PS 256MB of RAM with 16MB for Tel: 01925 755043 graphics. Networking is included. Fax: 01925 757377 Email: [email protected] The higher end machine includes a large, Web: www.rcomp. co.uk ultra-fast hard drive, 2600+ processor,

Eureka 48 — Winter 2003 17 Free For All

ello to all. I’m your new there are lots of RISC OS computers HPD/Freeware/Shareware out there I’d love to own, but can’t reviewer. afford — just like when the Archimedes first came out!! Due to time constraints in getting this article to be published, I have merely So. where do we look for public reviewed some of my favourite domain and similar software? I freebies as currently installed on my started by looking under HENSA, an A7000+ (RISC OS 4.02). academic based repository of

Andrew Burgess introduces himself as our new reviewer who’ll be searching for and trying out the pick of the public domain and other free programs.

I have been a fan of Acorn machines software, which has since moved to since my Dad (a BBC TV Producer) the UK Mirror Service brought home a BBC Micro Model A www.mirror.ac.uk/. Look under (16K) numerous years ago. We Browse by platform/Miscellaneous upgraded that to a Model B (32K) and Platforms/Acorn RISC-OS then chose then a Master 512K (with PC one of the providers, such as ‘Acorn ) and this launched my & RISC OS’. Then FILES gives you career — programming mainframes a list of the stuff there to browse and the now unavoidable PC. through, or INDEX.desc gives you a general list of areas/directories to I never ‘lost the faith’, and upgraded browse. from the BBC Master through an A3010, to my current Risc PC, A4 There is also the opportunity to laptop and A7000+. I’m pleased to upload your own programs to this say that the Acorn market is back to archive, but I haven’t tried this! normal as far as I’m concerned —

18 Eureka 48 — Winter 2003 The old HENSA archives used to have CoolSwitch a full file list with descriptions, but For those of you who have to use PCs the UK mirror site doesn’t seem to. as well as our beloved Acorn Risc OS machines, you might have discovered I have also discovered the quick switching between www.acornsearch.com, which has applications on Windows through the subsequently moved to become use of Alt and Tab together. If, like me www..co.uk and now The ARM you thought: “Why can’t I have Club Editor has pointed me to something like that on RISC OS?” http://filebase.acornusers.org, though Well, now you can. The program is I’ve yet to investigate further. called !CoolSwitch and is found at http://wonderworks.geekgang.com/fr Or there’s Paul Vigay’s excellent ee/cs.zip. website at www.vigay.com. Once it’s installed (there’s no icon on Right, with no more ado, straight into the iconbar), you can use the Alt-Tab the first reviews. combination to switch applications.

CoolSwitch switches you between applications with ALT-Tab

Eureka 48 — Winter 2003 19 Hold down the Alt key and repeatedly KeyCD press Tab, till you're on the relevant !KeyCD is available on The ARM application, then release both keys to Club CDROM3 among Sound give it the `focus'. Utilities. It's billed as a program that will allow you to play and change CD I initially thought it had one music tracks while playing a drawback in being unable to Alt-Tab computer game. onto individual application windows but looking on Wakefield RISC OS The Help file describes it thus: Computer Club's website `KeyCD enables you to control the http://wrocc.org.uk I found that this CD player from the keyboard no functionality is available using Ctrl- matter what the computer is doing. Tab. What I mean by this is if you So, for example, you can be playing a have five filer windows and five edit game and still change tracks, stop, windows open, you use Alt-Tab to start, eject, etc.' It works well from a select the application, then do Ctrl- standard RISC OS desktop, although Tab to select the individual instance no icon is displayed. It provides you're interested in. Suddenly finding `Control-Shift and another key' style this out, suddenly makes this program short cuts, as shown in the panel far more useful to me! below:

KeyCD combination (left hand Control and Shift Keys)

Control-Shift-(+) on main keyboard: Plays the CD from the start Control-Shift-number on main keyboard: Plays the track number selected (i.e to play track 10, do this plus one and zero.) Control-Shift-(-) on main keyboard: Stops the CD Control-Shift-(-) on numeric keyboard: Pauses the CD Control-Shift-(+) on numeric keyboard: Un-pauses the CD

...and the perplexing Help short cut Control-Shift-(#) on numeric keyboard: Ejects the CD

20 Eureka 48 — Winter 2003 I've tried, but I cannot find a hash (#) on my numeric keyboard. I think my BBC Master had one but it didn't have a CD drive! I tried other keys, but the CD drawer remained resolutely closed unless I pressed the external button.

!KeyCD is not as versatile as a true CD player application such as SmartCD. You have to remember what track you want to hear and it doesn't display which track you are playing. But if you like keyboard short cuts (and I do), it's extremely useful. I only had one minor niggle SwiftJPEG choices with it; if you have an editable window (I had a !Edit anything I had on my (less than totally window open) it types the character in up-to-date) RISC OS hardware. I had there as well as controlling the CD. an elderly copy of !SwiftJPEG But, aside from that, it's great and far (version 1.01) which impressed me, quicker to select a track than through but it refused to load my Olympus (2 SmartCD. megapixel) and Fuji (0.3 Megapixel) Digital Cameras' JPEG images. I SwiftJPEG posted a message on the newsgroup I was constantly irked to see Comp.Sys.Acorn.Apps and was Microsoft Photo Editor loading up impressed when the JPEG pictures far, far, quicker than placed a posting to say he'd updated it.

Eureka 48 — Winter 2003 21 I downloaded version 1.02 (from hardware), or 1/2 scale with a big http://nines.rowing.org.uk/folder/swiftj black border. I tried again later on my peg_102.zip) and on my RISC OS A7000 Ð still the postbox. I hacked 4.02 A7000+ it didn't moan about my into the source code (provided on images but opened them as a long download, under Resources directory black post-box type slot, without any within the application folder) and photo represented. I contacted the forced !SwiftJPEG's RunImage to programmer, and he advised that I think it was running on RISC OS 3.5. may have one of the `unusual' RISC (by fixing the line osversion% = OS implementations but didn't advise 35000 to be default. (See the panel how to fix it. below)

I gave up on it for quite a while, until I ran it again; nothing. It used the I next rebooted my Risc PC running standard RunImage in the application RISC OS 3.7. I'd previously folder and as I didn't know how (and transferred a `dodgy' digital camera failed trying) to get it incorporated in JPEG image onto it and, wonder of the proper place in the application wonders, !SwiftJPEG 1.02 loaded it folder. rapidly and perfectly. I could display it full screen (cropping a little off the I now just run the RunImage directly edge Ð I'm not using ViewFinder from a short cut and I get decent speed

REM Check that the OS version is OK and we’ve a JPEG plotting method osversion%=FNgetosversion osversion%=35000 :REM force to RISC OS 3.5 IF osversion%=0 THEN ERROR 490,”SwiftJPEG cannot determine the version (no UtilityModule found?)” IF osversion%<31000 THEN ERROR 490,”SwiftJPEG requires a RISC OS 3.10 or later to run” SYS “OS_CLI”,”RMEnsure SpriteExtend 0.99 RMEnsure JPEGRender 1.02 Error 490 Cannot find JPEG plotting SWIs - is SpriteExtend 0.99 or later running?”

!SwiftJPEG coding change to try to get it working on RISC OS 4.02

22 Eureka 48 — Winter 2003 images on my 8MB A7000 (though QuickFiler my 65MB Risc PC 700 is a little faster !Quickfiler, which you can get from and I didn't have to doctor the www.avisoft.force9.co.uk/downloads/ software). QFiler210.zip, is a Windows-style keyboard short cut facility for the The speed for loading a 2 megapixel RISC OS filer. Although it doesn't (1200 x 1600) digital camera image cover all eventualities, it does help to on my 48MHz A7000+ is 40 seconds, save time on filer operations Ð once so on an Iyonix it should be incredibly you can remember the short cuts Ð fast! Of course, because this program but the filer window must already runs on RISC OS, fractional resizing have the focus for the keyboard short can be done in the zoom box easily. cuts to appear. These short cuts For example, for 3/4 size enter a 3 in appear on the Filer menus Ð the first zoom box and a 4 in the appended to the standard RISC OS second. Those these zoom settings are options. not retained if you do a save and have to be re-entered next time you run QuickFiler provides the following !SwiftJPEG. short cut keys :

I have tried the other shareware Select all: ^A editors and viewers, and none of them Clear selection: ^Z compare to !SwiftJPEG for speed on Open parent: ^B my hardware but I wish I could find Delete: DELETE or ^X an editor that does and works with my Count: ^N camera images. I've tried probably all of them but most object to my Help: ^H camera's images and those that don't Stamp: ^S take a long time to load the image! Large icons: F2 Small icons: F3 Apparently !SwiftJPEG will also Full info: F4 work on RISC OS 3.10 (A4 OS) but I Confirm: F5 didn't have all the correct versions of Verbose: F6 the modules required to prove this. Force: F7

Eureka 48 — Winter 2003 23 Newer: F8 Universal Boot Structure Sort by name:

24 Eureka 48 — Winter 2003 files off onto more readjusted Zip earlier !Boot had done. To my joy, drive discs before I attempted to following my instructions the install on the Risc PC. Anyway, to cut network sprang into action. “Yes!” I a long story short, I cleared 7MB on shouted! my Risc PC, which I thought would be enough, but wasn’t — I had to Theoretically, one could use this to extend it to 9MB. It would have been install the new boot structure (as I call easier to have copied across the it) on a RISC OS machine that doesn’t network, but I couldn’t, as that is what already have this set up (it looks like I was trying to install. I renamed my it would work on RISC OS 3.10). The current !Boot to OldBoot (as there instructions on the site quoted above were things in the original I didn’t imply that you have to remove the want to lose and I liked the pun) and relevant higher Hook folders. For unsparked the archive to create a new example, if you have RISC OS 3.5 !Boot folder on the Risc PC hard disc. you should remove the folder RO360Hook from under !Boot in the All the expected folders were there boot structure. (see above) and the Risc PC booted into the normal default desktop. My I haven’t tried this yet, but may install usual picture had disappeared but it it on my A4 in future. If I do, I’ll let didn’t give me any issues, like my you know how I do.

Eureka 48 — Winter 2003 25 Photodesk: Just 16 Bits More

hen the Iyonix was revealed. TechWriter before the Iyonix was Wone of the first question I asked developed for set top box use and along with many others, was “What these were quickly released for the software will be available for it?” It desktop. David Pilling immediately was well known that the faster converted his entire software processors now available, such as the catalogue, including Ovation Pro and XScale used in the Iyonix, had SparkFS, to 32bit and made it all

David Ruck explains the trials and tribulations he faced when he took on the job of converting Photodesk to 32bit so that Iyonix owners could use it. dropped support for the 26bit mode available free of charge from his that RISC OS and all its applications website (living up to his St Pilling relied upon. While the major sticking nick name). point of converting the OS to 32bit had obviously been overcome, what As well as native conversions, a about all the applications? Anything clever piece of software called that wasn’t pure BASIC, that is C or Aemulor was developed, by Spellings assembler applications and modules, Computer Services, that could run wouldn’t run, which counted out all many 26bit programs, although not at the major programs. the same speed as proper 32bit code. This allowed applications, such as The good news was plenty of work Computer Concepts’s old faithful had been going on behind the scenes Impression and Artworks, to run. to get as much software as possible Martin Wurthner first produced 32bit ready for the launch and that work has versions of the ArtWorks rendering been going on ever since. Icon modules to speed up the main Technology had actually produced program running under Aemulor and 32bit versions of EasiWriter and has gone on to produce Artworks2,

26 Eureka 48 — Winter 2003 which not only is fully 32bit and offer my services, as there didn't substantially faster but also is one of seem to be any work in progress. It the first major programs to offer was rumoured that it would be a big significant new features. job due to the sources consisting of over hundreds of BASIC assembler While every day more good news was files. Only days earlier I'd been coming in about conversions of saying to the other members of The commercial programs and, just as ARM Club Committee that I was sure importantly, the vast amount of public Photodesk was being converted but it domain utilities which make RISC was so important that, if necessary, OS a joy to use, there was one major I'd do it myself. So, having painted program notable by its absence Ð the myself in to a corner on that one, I corner stone of photo-retouching on went ahead and offered. Chris RISC OS: Photodesk. As time went Hornby, the man behind the on more and more people commented Photodesk company, agreed to get in on the lack of any news and many touch with the actual author of the expressed reservations about program and get the sources for me to purchasing an Iyonix until it was work on. He did warn that the author confirmed that this important piece of had been very busy with other work software would be available. I already and may not be able to spare the time owned an Iyonix and was frustrated to to do this for a while. have to switch back to the Risc PC to do retouching and image processing This proved to be true and as the work. If there is one application that weeks went by I considered doing the could benefit from the Iyonix's faster conversion by reverse engineering the processor, vastly increased memory, assembler, as I had done for quite a UDMA discs and a much higher number of still useful PD programs resolution and quicker screen update, that were no longer being developed it was Photodesk. (which you can find at www.quantumsoft.co.uk/druck/). To Early in the new year Martin help with the conversions I developed Wurthner contacted me, to suggest I my ARMalyser tool get in touch with Photodesk Ltd and (www.armclub.org.uk/free), which

Eureka 48 — Winter 2003 27 takes a RISC OS module to allow direct capture from (absolute, module, utility), identifies Twain compatible scanners. There are which parts are code and which are also a couple of small absolute files to data and produces output containing set up variable and ensure tasks are the code with various warnings of running. likely problems if it were to run in 32bit mode. This output can be edited Photodesk is very modular allowing to remove the problems and passed extra plug-in routines to be added to through an assembler to produce a the core program at a later date. These 32bit version of the executable. are split into three categories. There are plug-ins to load and save 15 So I had a poke around inside my different bitmap and vector file copy of !Photodesk Olympic edition formats. These look like mini to see what it consisted of. The main applications and contain a program is an absolute file but closer compressed BASIC program which inspection revealed that it was displays a small dialog allowing you actually a very large BASIC program to choose whether Photodesk claims a that had been compressed, then double click of the filetype. The converted into an executable binary actual loading and saving is done by and then squashed. The BASIC an assembler file of type utility program does the donkey work of (&FFC). The second category is the creating the main window and special effects, such a cloning and loading the other parts of the filers. These consist of assembler program. Most of the complex utilities arranged in a directory memory allocation and core routines structure similar to how they appear which manipulate the image are in the Photodesk special effects menu. contained in the substantial The assembler file also contains the Photodesk module, which offers a template data which defines the large number of SWIs with a controls which appears in the middle multitude of reason codes to do the of the special effects setup window. work. Other modules were the There are no fewer than 36 special standard colour picker and PhotoCD effects included in the Olympic handlers and a special TwainPDIF edition, including the texture explorer

28 Eureka 48 — Winter 2003 which is a larger piece of code and in to the executable and tries to track supplied inside its own application all the possible branches through the sub-directory. Lastly, there are 51 code to identify all routines. While assembler files in the utility directory following the code it identifies any with cryptic three-letter names. These data loaded in to registers or passed to contain core functionality, such as SWI calls. However, a large amount screen display at various colour of heuristics must be used do this as, depths, and all the tools which appear for example, some code may not be from image processing icon. directly called by any routines but instead run via jump tables which are That was a heck of a lot more code to built only at run time. These convert than the few small modules heuristics won't cope with every and utilities I'd tackled so far. But program and need tweaking to cope luckily the intimidating number of with techniques that are particular to separate would actually an author or compiler to get better make it easier than if it were a single results. The 100 modules and amorphous blob of code. As each assembler which I had identified for executable only contains a small conversion required a number of number of routines, all related to a tweaks and showed up some areas particular action, any problems with where I could improve the that action will be far easier to track presentation of data blocks passed to down than if the routines were SWIs and also some bugs that needed scattered throughout a huge amount fixing. In all it took two weeks to of other code. improve ARMalyser to a stage where its output was suitable to work on and, I started the conversion, at the importantly, could be immediately beginning of February, by setting up fed back into the assembler to the project and running all the code produce executables identical to what through ARMalyser and seeing how went in. good a job it did. To be able to distinguish which areas of an By this time, the 579K of raw code executable are code and which are had turned into 6.7MB of assembler data, ARMalyser uses the entry points source! Standing at the bottom of this

Eureka 48 — Winter 2003 29 mountain, I was expecting weeks, if modules but luckily Martin Wurthner not months, of giving up my spare was able to provide advanced beta time to the process of conversion. On copies of the 32bit versions he was the weekend of the 15th Feb, I set working on for ArtWorks2. The JPEG about the main Photodesk module. As loader required the cjpeg and djpeg this was the core of the system it programs and the PNG loader needed the most testing and would be required the spr2png program, 32bit in use while all the periphery code bit versions of these being kindly was testing, so it made a good starting supplied by Leo White and Darren point. Thankfully the module did not Salt respectively. The next day I contain much code which relied on tested the code by creating images in flag preservation, so the conversion each format at colour depths of one to mainly consisted of altering error 32bits and with masks where returning code from using ORRS appropriate. Each was loaded in, PC,R14,#1<<28 to set the V flag and examined and saved back out and exit, to the 32bit equivalent which is compared to the original. Photodesk MSR CPSR_f,#1<<28. This went so doesn't support every variation of the well I had time to convert the couple formats (such as 1,2 of 4 bpp Clear of little absolute programs that set up files) but all the ones that worked with system variables and ensures tasks are the 26bit version also worked with my running. I even had time to check my conversion. conversion had not broken anything on the Risc PC. On the Wednesday, I didn't do anything. I'd already spent all Feeling confident, on Monday I weekend and two evenings on it, the started tackling the smallest group of South West Show was coming up and assembler files (only 1.2MB), which there was far too much to do before were the loading and saving routines then, so I had a night off. However I for the various file formats Photodesk got bored on Thursday and decided to supports. These were quite straight push on with the Special Effects code. forward but a few relied upon external Much to my surprise I fairly flew modules and programs. The ArtWorks through that, again there was next to loader required the rendering no code which needed to be flag

30 Eureka 48 — Winter 2003 preserving so I was able to do most of Instead, I had to add code to the the work on each file by simply function to stack the flags on entry search and replacing MOVxxS and restore them afterwards. It turns PC,R14 and LDMxxFD R13!,{…,PC}^ out that this function must have been with MOVxx PC,R14 and LDMxxFD in a because it appeared in half R13!,{…,PC} respectively. Reeling a dozen different utilities –- but the square eyed from this effort, which disadvantage of reverse engineering lasted right into the early hours, I is that each one of them has to be realised that there was a chance of fixed separately. getting something working for the show. Friday was an even bigger Just before I had to go to bed to stand challenge with 2.5MB of general any chance of making it to the show utility code to convert compared to the next day, I ran the code still warm Thursday' s mere 1.3MB and not from conversion through the forgetting some testing. assembler. A quick test of loading up on the Risc PC and trying out a few of I really did put in a mammoth session the image processing tools and that night, from when I got in from special effects, convinced me I had work at 5.30pm until 3.45am. There not broken anything obvious, so I were 51 utility files, as much as the copied it across to the Iyonix. The rest put together, and this time a fair first problem was the protection amount did rely on flag preserving mechanism, to stop Photodesk being behaviour. Most instances were used on machines it hasn’t been conditional instructions or installed on, popped up an error box subroutines following after telling me I had been naughty. I subroutine which had been obviously won’t say how I got round conditionally executed and these this but I have put it back again in the could be fixed branching around the release copy! code on the opposite condition. However, some routines were called The next thing was fairly major. by a quite evil dynamic method Instead of the work area of the depending on runtime values and the Photodesk window there was just a branching technique wasn’t feasible. rectangular area of random colours.

Eureka 48 — Winter 2003 31 Luckily I knew what this was, as The next day I loaded up my Iyonix earlier in the week I had been and my old AKF85 monitor (the 22º exchanging emails with Adrian Lees, Iyama wouldn't fit in the car even if I of Aemulor fame, who had been could lift it) and did the relatively trying to get Photodesk to run under short journey from Gloucester down Aemulor. He pointed out that the to Loxton, the location of the South rendering code contained a strange West show. After setting up the routine which checked where the machine (involving borrowing some screen was in memory and, if it was mains cables which I had forgotten to higher than the Risc PC's normal bring, due to being a bit worse for location, it invoked some strange wear that morning) I looked around code instead. for Photodesk Ltd to show Chris the 32bit Photodesk in action. I found the rendering code in the Unfortunately he had not been able to utilities section and confirmed this. It make this show and I'd been too busy looked like the routine was to handle beforehand to get the news of this. screen memory where each line is disjoint than the others; the sort of But Photodesk running on the Iyonix thing you need to deal with interlaced soon received quite a bit of attention screens such as for TV broadcast use. from visitors. As we were next to Neil Perhaps this was code for the Spellings's stand, people assumed Pineapple graphics cards, which were that it was running under Aemulor, so available a number of years ago. This I had to keep explaining that this was code was now causing problems the native 32bit version. Word soon because the Iyonix screen memory reached Jack Lillingston on the Castle was not in the same place as the Risc stand who came running over to see it PC's either, so this code was used and asked if he could reveal the good instead of the normal rendering news during his presentation on the routine. Commenting out a few Iyonix. I agreed, although I was a bit assembler instructions cured that and, worried about people thinking it was low and behold, everything I tried on sale when it hadn't been tested and seemed to work OK, so it was off to I didn't even have a formal agreement bed at last for a short but happy sleep. with Photodesk Ltd yet.

32 Eureka 48 — Winter 2003 During a whole day of playing with couldn't check any of the problems. Photodesk (mainly by cloning Castle were extremely busy with all multiple copies of the Trans America the orders from the show so I had to Tower from my San Francisco wait over a week for my machine to holiday photos), the only bug I'd come back and, as soon as I powered found was Artworks files could be on, I ran up Photodesk and found it loaded by dragging to the iconbar but suffered from all the same problems. not to an existing canvas, which was pretty encouraging. At the end of the The problem was obviously memory show I left my Iyonix with Castle so related and the one thing that had that I could get it upgraded from the changed since it last ran successfully prototype spec up to the full was that I had the memory upgraded production model with 512MB RAM from 128MB to 512MB. So I went and I also ordered a podule back plane straight to work investigating where so I could see if I could get my 24i16 the memory allocation routines were card to work (I still haven't got round in Photodesk. Luckily at this point the to this). So without the machine the real sources for the program arrived only thing I could do when I got home from Photodesk Ltd. The rumours of was email the converted Photodesk to its composition turned out to be true, a few people to beta test and sit back except there weren't just hundreds of and wait for any problems to be BASIC assembler files, there were reported. over a thousand: 1,188 totalling 11.4MB to be precise Ð arrrrrh! I set Unfortunately it didn't take long. The about comparing the source to what I beta testers reported that almost had reverse engineered to see if they nothing worked, nearly every were the same, which wasn't straight operation dynamicfailed with a forward as things like the special `Memory cannot be moved' error. I effetcs had templates embedded in was very frustrated about this, as all them and fields for the effect settings the things which they were having were used to save back the current problems with I had been values. Ignoring these, I found that demonstrating on the stand at the most of the source was up to date show and, without my Iyonix, I except a few of the loaders and

Eureka 48 — Winter 2003 33 special effects which seemed to be sufficient. After the operation the two years older then the ones I had. memory is returned to the rest of the But I didn't intend to use the source machine. This is the reason why many straight away as this would involve of the major Photodesk operations making all the changes to it that I had don't multi-task. Even if they did, the done on the reverse engineered code, machine would not be usable because which was a considerable job. The it has grabbed all of the free memory. important part was that, unlike my reverse engineered files, the real The reason why this no longer worked source contained useful comments is due to assumptions which were that described what the code was made on how the memory system doing, essential if you are going to do worked, which were OK up to now any serious debugging. but broken by the vast amount of memory in the Iyonix. The Iyonix is With the help of the source capable of taking 1GB of memory comments, I managed to track it down which has a slight drawback in that to the Photodesk module itself. The the total address space for both the routine that was going wrong was one application slot (which can now grow which temporarily allocated memory up to the total memory in the for intensive routines, as was used for machine) and dynamic areas is all the special effects and functions limited to around 1.5GB. This means, such as scaling and rotation of the with a 512MB machine, only two images Ð just about everything dynamic areas with the size the same really. It took quite a bit of head as the amount of memory could be scratching to work out why it had created, so a SWI call (introduced in gone wrong. To ensure that the RISC OS 4) is used to limit the operation Photodesk was attempting maximum size of Dynamic Area, performed as quickly as possible, the normally to 128MB. This stops the memory routine took all the free available space from being used up by memory in the machine and added it a couple of applications and to its dynamic area, which reduces the preventing others from running. The need to use the slower disc based limit is set with an virtual memory if space is not OS_DynamicArea,8 SWI located in

34 Eureka 48 — Winter 2003 the file !Boot.Choices.Boot.PreDesk. machines), which stopped Photodesk DALimit, which can be altered by the in its tracks. user, although you should be aware that increasing the value can cause The solution was actually quite problems when you run several simple; all I had to do was alter the dynamic area-using applications at code so it worked out how much once. space was left in its dynamic area and only try to add this amount if there Photodesk uses its dynamic area for was more free –- problem solved! I storing all the image data. This is actually went on to modify the created with a maximum size of -1, memory handling a bit more at this which indicates that it should be big point, by adding a system variable enough to hold all the memory in the PhotoDesk$DynamicAreaSize (set in machine. When Photodesk needed to !Run) which could control how large allocate temporary memory, it read the maximum size of the Photodesk’s the amount that was available and dynamic area was. The added this to the dynamic area. This OS_DynamicArea,8 call allows limits was fine on earlier machines; the DA to be placed on dynamic areas asked could always fit what was free, as for in three ways, which makes it some would always be taken up for possible to have a higher limit for other uses. But as soon as the dynamic applications which say they need a area is limited to a size much smaller specific amount, than those that just than the total amount of memory say give me the biggest possible (but using OS_DynamicArea,8 (on the don’t always need it). This could Iyonix or on older machines), it was enable Photodesk to have a 256MB possible to have more free memory area, while most other dynamic areas than you could fit in it. When the were limited to 128MB. OS_ChangeDynamicArea call was issued, it complained it could not add While I was modifying the memory the amount of memory requested and calls I was quite surprised to see that gave the ‘Memory cannot be moved’ Photodesk still had support for using error (‘There is not enough memory the application area so it could run on to complete this operation’ on older RISC OS 3.1 which does not feature

Eureka 48 — Winter 2003 35 dynamic areas. I remember people had problems with different Photodesk coming out after the functions, none of which the others or launch of the Risc PC to exploit its I could reliably reproduce, but they 24bpp graphics and had forgotten it could do every time. I started looking was also sold for Archimedes into these with no sucess, as at this machines. Somewhat ironically on time I was distracted by other RISC OS 5 this is again the preferred problems with the Iyonix. way of doing things, as the 32bit operating system removes the limit of I had accidentally deleted a manual 28MB on the wimp slot and allows it from the Risc PC and went to retrieve to grow up the size of the memory in the copy from the Iyonix over the the machine. Using this would allow network and found when I tried to you to allocate almost all of your copy it the machine just froze. I could 512MB to Photodesk, if you required copy just about every other file it, with none of the problems or without problems but this one would running out of dynamic area space. always hang at a certain point. I So I put in the feature where if contacted Castle and received PhotoDesk$DyanmicAreaSize was excellent support. First they set to zero it would use the application suggesting I try a different 512MB memory instead of a DA. SIMM, which they sent immediately. Unfortunately, I found out over time that not all of the features added to When this didn't work John Balance Photodesk since people used it on phoned me up for what was to be the RISC OS 3.1 had been tested with the first of many calls where he suggested application memory instead of DAs various things to try. He sent me a and there were a few bugs. new motherboard and then another USB card to try in combinations. By With that fixed, I distributed a new now all I was lacking was a graphics copy to beta testers, pretty confident card and a case and I'd have another that I would get only minor problems entire machine! It wasn't much fun reported but still details of crashes swapping over all the components to came in and these were the dreaded try different combinations. All the abort on data transfers. Different cards have to be taken out, there are a

36 Eureka 48 — Winter 2003 lot of wires that have to be unplugged there would be a solution in a couple each time and a careful note made of of weeks. which pins they were connected to and which way round they went, so it I just had to take this on faith, as there could all be put back together wasn't much I could do to sort out correctly. Once all the screws these serious random crashes and securing the motherboard had been time was ticking down to the taken out, it was quite difficult Wakefield show, which I really working out how to get the board out wanted to get Photodesk ready for, as through the opening, which was the it would be good oppotunity for sales same size as itself, while not losing of the upgrade and also give people any figures but I became quite good at yet another reason to buy an Iyonix. it after a while. Also, I was going away on holiday to Canada for three weeks so, if I missed The bad news that was none of the Wakefield, it would be a considerable things I tried cured the copying additional delay before I could finish problem and that when I did run it. Ignoring the serious problems, I set Photodesk I found that on some about fixing all the minor problems sessions it would behave perfectly, beta testers had reported, which felt while on others just about anything I like fiddling while Rome burned! did would cause a crash. At this point I was tearing my hair out. On one The easiest was a missing arrow icon hand the copying problem indicated in one of the special effects settings there was some hardware problem window. Next was the clipboard associated with particular file window which was displaying 100% contents and on the other hand every used. This was because it was using other application I tried seemed to be an old 32bit SWI call to read the running perfectly reliably on the freespace on the disc for its virtual Iyonix. So were the Photodesk memory calculation, which doesn't crashes due to software or hardware? give the expected result when there is John, at Castle, had come to the more than 2GB of space available. conclusion that he knew what was Luckily, a 64bit call has been going on and told me not to worry provided since RISC OS 3.6 to handle

Eureka 48 — Winter 2003 37 the vastly increased size of modern repositioned overlapping it. This discs. It was quite straightforward to meant the main window was never at add code to routines in the Photodesk the top, so when Tab was pressed for module see if this was available and a second time, it still thought it use it in preference. I then went back needed to come in front of the tool to the first bug I'd found, of not being windows again, instead of going able to drag Artworks files to an behind them. I adjusted the code that existing canvas. I discovered that, as calculated the toolbars' position well as in the specific Artworks loader relative to the main window so it took that handles loading into a new into account the size of the furniture. canvas, there is another routine in the It now wouldn't overlap regardless of utilities section which deals with the the furniture used, or the pixel size of plotting over an existing canvas. A the current mode. small correction got this working. Not content with the bugs other The last one was a minor problem in people had found, I decided to go that the Tab key didn't work to toggle after one which had annoyed me for the main window over the tool some time. In older versions of windows. It would bring the main Photodesk you could click on the window to the front but never bring coloured square in the colouring the tool windows over it on a second effects window and bring up a press. (I actually hadn't realised that standard RISC OS colour picker but this useful feature existed.) All the this stopped working at some point code seemed to be OK but monitoring and you had to use the much longer- the window order I found out what winded action of using the menu to was wrong. The toolbar furniture on bring it up. I found this was a problem RISC OS 5 is one pixel taller than the with the detection of single, double new look style ones on older clicks and drags of the colour patch (it machines. This difference meant that can be dragged in to the palette the main window now overlapped by squares in order to create custom one pixel with its toolbar so, when it palettes), one simple value change got was brought to the top of the window it working again. stack, its toolbar would then be

38 Eureka 48 — Winter 2003 At this point I also started work on 20MB/s to 30MB/s with the existing sorting out all the sources I'd been 5400rpm drive and even faster with a given and integrating the changes I'd 7200rpm one. While this was made into the real commented source, extremely welcome, the important as this would be necessary if the part of the upgrade for me were the software was to be developed further, two little bits of hardware contained although this is not something I want in the package. The first was a little to do myself as I don© t have the ideas circuit board that plugged into the needed to take the package forward. spare pins of the PCI socket in front of the USB card. This ensures that the This was an even more tedious top 32bits of the 64 bit PCI were process than the original 32bit correctly terminated when not used changes, involving comparing the by other cards. The other was smaller modified and original reverse but even more critical: a tiny engineered files and working out capacitor which fitted between the where equivalent instructions end of the lead from the reset button appeared in the BASIC assembler and the circuit board. John told me source files. The problem being that both the problem when copying whereas the reverse engineered files certain files across the network and corresponded one to one with each Photodesk were due to spurious executable object, the actual sources signals being induced in the reset line consisted of multiple files for each by a certain pattern of bits going executable, some of which forming across the PCI bus. This caused some libraries shared between multiple of the chips in the machine to reset tools. and resulted in the machine hanging Ð nasty! Placing a capacitor on the Just as promised, after a couple of lead stops these signals being weeks another parcel from Castle induced. arrived in the post. This was the UDMA upgrade consisting of a new My faith in Castle was rewarded, as ROM image to be loaded into the soon as I tried it. Copying was fine Iyonix, which would then boast disc and Photodesk performed flawlessly. access speeds from around 4MB/s to I was still getting crash reports from

Eureka 48 — Winter 2003 39 the beta testers but I just had to sit With the installer finally done and back and wait until one by one they tested, I phoned up Chris Hornby to received the upgrade and their see if there was any chance, with just problems went away too. Now that© s one week to go before Wakefield, of the sort of debugging work I like! him being able to get it ready. I actually caught him driving home I then noticed the date. It was less from the airport after a trip to South than two weeks to Wakefield and, Africa. He was very pleased at the while good reports were now in from news that Photodesk was ready and beta testers, the upgrade wasn't in a would phone back to arrange what we state to ship to users. Because the could do for the show. With a week to protection mechanism ties it to a go at this point, and Chris only just particular machine, you need to run having received the installer package the installer to create a working setup by email, there wasn't enough time to and this wasn't 32bit compatible yet. make a batch of CDs so he'd only be taking orders at the show. But the I dug out my Olympic CD from the important thing was it was completed dusty pile of jewel cases and checked on time. it out. Luckily this was another BASIC program that had been Come the day (single now) of the compressed into a 26bit absolute. The Wakefield show, it was the usual mad BASIC was all fine, it was the rush to get everything organised on wrapper code which didn't work. So our stand, so I only had a very brief it was simple case of extracting the time to talk to Jason Perry, who was BASIC and replacing an old read- manning the Photodesk Ltd stand, only copy of !SparkFS inside the just to make sure he knew about the installer with the one that comes with 32bit version, which he did. After that the Iyonix. I then copied across all the I was tied up on our stand with the a components into the constant stream of technical support installer and recompressed all the and DiscKnight questions and it was BASIC files with the 32bit all over too soon. By the time I'd compatible !MakeApp2 (by Dick packed most of the stand into my car Alstien). I'd missed Jason to see how it went.

40 Eureka 48 — Winter 2003 However I got a phone call from · Resolve the problem loading jpegs Chris Hornby the next day to say the from digital camera that have been upgrade had done very good business rotated losslessly with !Jclean which and he would be dispatching the causes them to appear stripy. upgrade CDs in the next few days. With this good news I was able to · Adding support for the new alpha forget about developing for the next transparency sprite format introduced three weeks and have a fantastic time in Select 3. travelling across Canada from East to West. By the end of it I could close · Investigate the slowness of the my eyes and not see reams of crawling ants which are displayed assembler instructions fly past. around image selections in montage mode. Once back home and having worked through the mountain of email, I was · Document the plug-in interface to pleased to see a Photodesk mailing allow other people to write tools for list had been set up on Smartgroups Photodesk, which was the starting (www.smartgroups.com/groups/phot point for Martin Wurthner to do such odesk) and had a large number of great things with Artworks. Iyonix owners using my 32bit versions. The only drawback being After I've done these, I hope to pass that I've now been roped in to the package on to someone else to providing support to people having maintain, as I mentioned before. problems. So if there are any talented I've still got a few things I need to do: with experience of BASIC and assembler, who have · Finish updating the file loader and good ideas for ways to enhance RISC special effects sources with 32bit OS's number one photo retouching changes (these are the ones where the package, please get in touch with source is slightly out of date either me ([email protected]) or compared to the binaries and will Photodesk Ltd. need a bit of effort to resolve).

Eureka 48 — Winter 2003 41 RISC OS Rhymes

The verses still flow from Alan Wickham’s poetic computer

Sprites and Pixels

Where Cathode Ray on Phosphor fell, That’s where the Sprites and Pixels dwell. Where Photons make all iridescent, Red, Green and Blue shades fluorescent. The brightest colours may be seen In that fair land men call “The Screen”.

Lo, comes the knight, Sir Vector Ffont, Upon his Mouse, as is his wont. Why, then, does he not ride a mule? Sir Vector Ffont is Miniscule. These cursive Ffonts, the Sprites declare, Are simply getting everywhere.

But he rides on in armour smug Hard Discs covering his Phono Plug Floppy Discs he does distain They serve not an Electronic Brain And if, by chance, he did one use A Five-Quarter Incher he would choose.

42 Eureka 48 — Winter 2003 Comes then the Damsel, all in tears. ‘Tis Demon WYSIWYG she fears. And just to add to her distress, She hasn’t got a Web Address. She needs a FREELANCE for her aid, Who’s not of WYSIWYG afraid.

There stands the villain, COMMAND.COM With his SIDEKICK, ‘Seedy’ ROM. He started as a Software Dealer But ended as a Cycle Stealer. He’s wanted as a Data Spooler And fears he’ll end up in the cooler.

Here come the two in holy orders Complete with DVD Recorders. Canon Ink Jet, and he’s no sprinter Nor his cell mate, Brother Printer. They’re certainly no four sec. milers, More likely Basic (Text) Compilers.

There’s the aged Web-Site Surfer, Should be a bowling green deturfer. Thinks himself a great Downloader But is just a myth exploder. The Pixels cry “How this ham Clutters up his Disc with Spam”.

Eureka 48 — Winter 2003 43 WYSIWYG's mate, the Number Cruncher Was once a Population muncher. Found herself too old to cater With lots of Demographic data. Now she is content to totter From the YOCTO to the YOTTA.

See Major Upgrade and his man, Private Key, evolve a plan. To Download all they can afford And sell it off as `Bullitin Board'. Why, then, don't they aquire the trash? They have the Fonts, but not in Cashe.

They all see themselves in clover Now the Milennium Bug is over. Three Wired Systems fix their fate (These now come, in triplicate) The eldest, men call simply `C', Then Aida and Odd Parity. Arnold Kilroy Byte

Notes for the Uninitiated

1) FREELANCE: An ancient DOS Vector Graphics Prog. 2) SIDEKICK: An ancient DOS File Manager. 3) Cycle Stealing: Part of DMA process. 4) DVD Recorders: They record the transactions of the DVD [Divinity Validation Directorate]. 5) YOCTO: Prefix like kilo etc but 10^24 6) YOTTA: Prefix like micro etc but 10^-24

44 Eureka 48 — Winter 2003 Crystal Gazing Cartoon by Jan Pearce

Eureka 48 — Winter 2003 45 Site Seeing: Popular Science

o what's your scientific cup of everybody feels inconvenienced by Stea? Astronomy? The human not having all the `bells and whistles'. body? Entomology? This edition's selection of sites aims to point you The Science Museum site at towards a collection of fascinating www.sciencemuseum.org.uk/ has a web sites, whatever your interests in number of interesting online the this area, as well as providing exhibitions on wide-ranging topics,

If you’re interested in any form of science there’s sure to be a website dealing with it, at whatever level you’re at, as Sue Clamp has been finding out. some ideas for those who have to covering subjects such as climate teach the subject. change, genetics and fusion. Exhibitlets are `digital exhibitions BBC Science at which use the Museum's collections www.bbc.co.uk/science/ is a very to describe important events, comprehensive site covering a huge discoveries and personalities in variety of different scientific topics science and technology.' from cavemen to robots. There is a useful text only version of the site, if Additionally, there are educational you prefer to view without graphics. pages, with sections aimed at teachers and also different age groups. The This makes up for the fact that some primary section has a homework and aspects of the site are inaccessible to project work page with links to other those of us using only RISC OS for relevant parts of the museum site. the Internet, namely the interactive `Fun Stuff' contains the inevitable elements which require a more recent interactive games, which don't work version of Flash than we currently on RISC OS, but the DIY Launch Pad have available. Of course, not has a number of projects that children

46 Eureka 48 — Winter 2003 The BBC Science pages offer a variety of subjects from cavemen to robots

of all ages can do for themselves insulated Van de Graaff generator. (with some help from an adult), for The site contains some lovely images example, making a shadow box or a of sparks and tesla coils and an human battery. interesting explanation of Franklin's kite experiment. There is also a set of The Theater of Electricity (American lesson plans on static electricity. spelling!) at www.mos.org/sln/toe/, is part of Boston's Museum of Science, The next three sites are clearly aimed which houses the world's largest air- at primary aged children. Enchanted

Eureka 48 — Winter 2003 47 Bubble games on the Science Museum website

Learning (www.EnchantedLearning. insect identification key, care sheets com/Home.html) has lots of for those interested in keeping various information on biomes, birds, `bugs' as pets and a forum where butterflies, rain forests, sharks, insect experts can be asked questions. whales and plants among others. The Earthlife Web at earthlife.net/ is an More suitable for secondary aged online encyclopedia of life on earth. It pupils is the Schools Online Science contains clearly presented pages of web site. Although the original information, diagrams and images of project which set the site up is now everything from cells to elephants. completed, Sheffield Hallam University are now maintaining it. The Bug Club The Library has a useful annotated (www.ex.ac.uk/bugclub/), a site for and indexed list of science web sites, young entomologists, has a useful chosen to reflect National Curriculum

48 Eureka 48 — Winter 2003 The Bug Club for young fans of creepy crawlies areas of study. The Lab contains many Year initiative, give a little trouble investigations, activities and here in Oregano 1, and of course some experiments that schools can become of the features of the interactive site involved in. Schools Online Science are not accessible to RISC OS users, can be found at but there is an alternative text version www.shu.ac.uk/schools/sci/sol/conte of the site that gives a flavour of the nts.htm . information and activities it carries. The site focuses on young people and Some pages of Planet Science the adults around them, especially (www.planet-science.com/home.html), their parents and teachers, providing set up as the extension of the Science some inspirational ideas for teaching

Eureka 48 — Winter 2003 49 A child-friendly page from NASA's Starchild site

science and a substantial number of pictures of our solar system is one of links to other science sites, all the best reasons for visiting this site. categorised. Starchild (starchild.gsfc.nasa.gov/do cs/StarChild/StarChild.html) is My personal favourite is the NASA NASA's child-friendly site. There are web site at www.nasa.gov/ which, in two versions of every page (level one common with the BBC Science web and level two) aimed at younger and site, has a low bandwidth version of older readers. Both worked well here the site without images but with links and as the sound files were WAVs I to them. This is important as I believe had no problem listening to the that being able to see the fabulous commentary being read out. They

50 Eureka 48 — Winter 2003 Mars photographed by the Hubble Space Telescope (right) and a NASA simulation of Saturn as seen from the moon

Eureka 48 — Winter 2003 51 also provide three different versions of their activities: CGI, Java 1.0 Writing for Eureka version and Javascript 1.1 version. If you'd like to join the team The CGI version worked perfectly on working on Eureka, but don't feel my machine. Movies on the level two that the Editor's job (see page one) pages are in both AVI and Quicktime is for you, there is another vacancy. format. Anyone lucky enough to have We need a News Editor to collect a copy of Cineroma will be able to interesting news items from the view the AVI files. Internet.

This site is an ideal place for young Remember, also, that we are always people to learn about the magic of happy to have contributions from space, the universe and everything! any of our members on any RISC OS computing subject. NASA also cater for those aged 14+ at their Imagine the You can send a single article or Universe site at imagine.gsfc.nasa. become a regular member of the gov/docs/homepage.html. Obviously team and, for every issue where you this has a slightly more adult look and have a contribution, your Club feel than Starchild, but is no less membership will be extended for interesting and well-presented than three months. Become a regular and the rest of the NASA site. you gets what's virtually free life membership! Another section of the NASA site that's worth a visit is the Solar System In addition, every contribution Simulator at entitles you to a £5 discount from http://space.jpl.nasa.gov/ where you any item of Club software. are given options to view the whole solar system, the planets or their If you're interested in joining the moons from various viewpoints, team, email or write to The Editor at times and fields of view. the addresses on our last page.

52 Eureka 48 — Winter 2003 The Double Cross Puzzle

U D Place the 36 O C M letters shown at the bottom left N I corner into the F E E grid to make valid words. By Roger King E U L A O R N O A A P O U E V O E O R E A H K O A A E L R N P I A E L R © A F M R O R B H M S A G W D I N T O Z E K O T E K O U I D E E K P Y R C The solution is on E K P Z page 64.

Eureka 48 — Winter 2003 53 Part 4 Winning Games With Logic

oday we will talk ants and have a but ants don’t. They do however lay Tlook at a technique that was a pheromone trail wherever they go inspired by their behaviour. This (see issue 45). Pheromone trails gives me the excuse to present some provide a basic degree of useless facts about them. communication (albeit in coded form) among the ants — just enough In issue 45 I asked the question, how initially to keep them from wandering do ants learn? Of course the short off at random.

The ants are on the move again as Barry Aulton sees what we can learn from them to devise some more winning ways using logic. answer is that they don’t. You may Ants thus, in effect, cooperate with initially think of an ant colony as their team mates (although they are simply a bunch of ants running not individually aware of this). It around at random, looking for food takes a larger number of ants, all and making a nest. However, seen reinforcing each other. to sustain any holistically, they are quite well activity — such as trail building — defined units with their own qualities. for any length of time. If an activity You may have noticed, that ants can’t (such as trail making, food gathering, talk! or nest keeping) is initiated, by a few ants at some specific place, one of two How would the sentence: “Hi things happen. If a critical mass of Persephone,” (worker ants are ants is present, the activity is likely to female) “I' ve just found some pollen. ‘snowball’. More and more ants Why don’t you go and investigate? decide to follow the pheromone trails There is enough for everyone,” get which will get them involved in that communicated? Bees point where the activity. If there are insufficient ants food is and waggle their backsides! to start with, the activity is likely to

54 Eureka 48 — Winter 2003 I STINK I AM !!

Ants' pheromone trails provide a basic degree of communication fizzle out. In effect when ants need to and scents provide information about get something done they form `teams' local matters of urgency ( such as nest that stick together purely to perform building, food or nursing). The signal that activity. Small groups of ants are remains glued together as long as the constantly forming and reforming. local needs are different to what it can The groups that persist are the teams. supply. However if it can contribute, The only reason the teams don't fall it disintegrates spilling a fresh team of apart is because. each ant in the team useable ants onto the scene. From a is performing the same activity. single ant's viewpoint, it is just meandering around the colony in You can think of a team of ants as search of nothing in particular until it forming a type of `signal' that moves feels like stopping. Its team mates along with them. The effect of these usually agree and at that moment the signals is to transport ants of various team unloads itself by crumbling specialisations to various parts of the apart, leaving the team members but colony. Let's say a signal is moving none of the teams coherency. The along. As it goes, the ants which individual ants that form a signal compose it interact, either by direct sometimes break off and get replaced contact or by an exchange of scents, by ants of a similar type, if there are a with ants of the local neighbourhood few in the area. Often signals arrive at through which it passes. The contacts the destination point with no ants in

Eureka 48 — Winter 2003 55 common with their starting line-up. if, for example, many were heading No planning is thus required, nor for the car park. looking ahead; nor is any search required to determine the proper My formula for choosing which way direction to go. to go (I have no sense of direction!) is thus: probability I will choose to Now for the algorithm. I realise that follow group i is proportional to the each equation halves the readership number of people in group i. This so I have been putting this off till now. probability is : Time to put the kettle on! The magic formula appears in figure 1 opposite. Probability will go in direction i =

Imagine you are lost in the woods and no of people going in direction i notice footprints going in several directions. It may be reasonable to total number of people suppose that the more people that going in any direction have gone a particular way, the more likely it is to lead somewhere. In ant terms we consider the ants that This is the idea of the intensity term, are at a particular place labelled i and the intensity here being say the consider the probability that they will number of footprints per square yard. go to place j. This probability is For the ant, the trail intensity is the proportional to the intensity of the intensity of the pheromone trail that pheromone trail from place i to place has been laid down by other ants that j. have gone that way. The more it pongs the more likely the ant will go The probability is thus proportional that way! I have used this criterion to to: find my way out of the Barbican theatre complex in London. That is, (pheromone trail) intensity[i,j] when in doubt, assume most people after a concert are heading for the total trail intensity going from place i tube station. I could have been wrong

56 Eureka 48 — Winter 2003 Figure 1

FIG 1 OPTIMIZATION BY DISTRIBUTED ANTS

A friendly computer controlled character, CCC moves from one place to another with a probability proportional to its prefferrencies where Preff[i,j] is the prefference (or probability) that CCC will move

Key Line thickness showing strength of prefference * friendly CCC,s # enemy CCC's Cost of a friendly CCC getting from say (place) E to D is an ad hoc function of a benefit factor , plus the damage done to the CCC by enemies. We do not know this yet, this is here an estimate. We give a CCC at place i a prefference to go to the j th place in the form of

Preff[i,j] = (intensity[i,j] ) * ( reward[j]/ cost[i,j] ) decisions ------sum of this for all places j decisions !

Where intensity[i,j] is the intensity of the trail from place i to place j. This will be proportional to the number of CCC,s that have gone this way before. Where cost[i,j] say = constant * distance from CCC i to place j reward[j] , say = expected benefit to CCC in getting there This is just an ad hoc function. We simply estimate the damage that may be done by the strength of enemy CCCs in the way. The prefferencies also decay with time. Thus the affect of a CCC going the wrong way or being lucky decays to zero. Here CCC's near place C would probably choose to go to place A , since the line thickness indicates a strong prefference . Presumably since it is going the right way & few enemies met.

Eureka 48 — Winter 2003 57 There is, however, another factor for by introducing a term which I which is game dependent and I will have again called cost[i,j] which try to explain by examples. This accounts for the cost of the ant (or for reflects a `cost' of getting there, a computer game computer controlled which for the ant may be proportional character, CCC), travelling from to distance. place i to place j. (This too may be proportional to the distance from i to Suppose I want to buy an article and j). Alternatively, as in figure 1, there must decide where to buy it. I may may be a cost in travelling from i to j decide my enthusiasm for buying due to the number of enemies that from store j may be roughly your character has to battle its way proportional to 1/cost of item at store past. There may be a benefit in j. Distance may be important. My reaching place j, which I have called enthusiasm for buying from store j reward[j]. may be: We now have as the probability or 1/cost of item at store j * 1 distance to preference of going from place i to store j place j in the form: or even: Pref[i,j] =

(1/cost of item at store j) ^ N * (1/ intensity[i,j] * reward[j] / cost[i,j] distance to store j) ^M sum of all preferences from place i to where N & M are integers 1 - 4. (By all places this ‘ant’ has not visited altering N & M, I am changing the relative importance of cost over At this stage you may be wondering distance.) what use this is. In some games, such as mazes, the order things are done is Meanwhile, our bog standard ant, important. However anything that being a dumbo, doesn't make such always follows a predefined order can rational decisions. If it can see food it be easily outwitted, since it never may go towards it. This is accounted learns. Each computer controlled

58 Eureka 48 — Winter 2003 I could win ££ ££ who wants to be a millionaire if only I could cough!!

character (CCC) needs to be able to: 2) It needs a learning mechanism to create ideas to be tested and to a) Keep track of what it has done know which of these to keep and (such as the place it has been in). which to reject. Initially this can be done by a random state generator (for b) Be opportunistic to take advantage example, if random number >50 and of the current situation (for example, random number <70, enter the grisly attack the stray leprechaun that grotto Ð see a previous issue). happens to be passing by). 3) It must have an exploration c) Learn from experience. strategy in order to improve its performance. (Cats, having We need some way for it to learn, but discovered one way of obtaining how? One of the most interesting food, will often keep repeating a developments in A-LIFE research, useless ritual that they happened to has been the emulation of the way perform just before success.) A animals learn from experience. learning mechanism needs to try sub_optimal (such as random) A successful learning strategy can be strategies in order to eventually find a split into three separate sub-problems: better way of doing things. (Simply leaving a minimum 1) It must have an action selection probability of performing a random mechanism (even if it's just action of 5 - 10% helps here). So we random). need a way to learn.

Eureka 48 — Winter 2003 59 Now we must introduce Optimisation we must only sum in the denominator by distributed ants, which is a simple the terms for the places which that ant learning method. The action selection (salesman) has not been to. mechanism and exploration strategy is initially random. Learning is In order to solve this problem we achieved by increasing the imagine there are many salesmen, probability that an ant (CCC in say 50, some placed at each city at the games) will repeat an action that has start of the optimisation. We then let previously been successful. each salesman choose a city to go to according to the above magic One of the problems that has been formula. We then move each difficult to solve is called the ant/salesman to it's chosen travelling salesman problem (TSP). destination city entering this city into Here the salesman has to complete a the salesman© s taboo list. When each round trip of a set of cities, visiting salesman has moved we assume that each only once, and in such a way as each agent has been laying down a to minimise the distance travelled. In `pheromone trail' wherever (s)he order to solve this problem I will goes. Each time a salesman makes a introduce the idea of a `taboo list', move, the trail (s)he leaves on the whereby when the salesman reaches a path from city i ( which it is currently city he enters it into a list of cities he at) is collected and will be later used has visited and consults it whenever to compute new preferences. he chooses another city to go to, to prevent re-entering one. Armed with the above magic formula and the taboo list, we can now Now when we compute the preff[i,j] proceed with the algorithm.

60 Eureka 48 — Winter 2003 1) Initialise set the intensity[i,j] to a constant / distance [i,j] ) low value for all i,j When every ant has moved we update Place some ants (or CCCs for a game) the trail intensity for all i & j on each place i Intensity[i,j] = intensity[i,j] * Set intensity increase[i,j] = 0 for all evaporation factor paths from every place i to every place j. This accumulates the + intensity increase[i,j] `pheromone trail' intensity that will be laid down by the ants during the Where the evaporation factor is a movement of each ant from the place constant 0.7 to 0.95 which slowly it is at to the place it has decided to reduces the trail intensity with time. go to. Since the trail intensities have been 2) Repeat until the taboo list is full changed we now need to update all (that is, repeat n times) the preferences. 2.1) for every place i 2.1.1) for each ant (CCC) currently at 3) When each ant's (salesman's) place i taboo list is full we then memorise the best route (shortest route for the TSP Choose the place j to move to with problem) up till now and empty all the probability pref[i,j] given by the taboo lists above magic formula and move the ant to place j. 4) If we have not performed the required number of iterations Enter place j in that ant's taboo list. repeat from 2)

2.2) Update the intensity increase due Else print best (shortest) route and to this ant travelling from place i to j. stop

Intensity increase[i,j] += small Next time I will try to explain constant (or intensity increase[i,j] += something weirder still!

Eureka 48 — Winter 2003 61 The Sys Admin’s

n the first day of Christmas, my user sent to me a file that crashed Omy PC

On the second day of Christmas, my user sent to me two Klez worms and a file that crashed my PC

On the third day of Christmas, my user sent to me three top ten lists, two Klez worms and a file that crashed my PC

On the fourth day of Christmas, my user sent to me four bad jokes, three top ten lists, two Klez worms and a file that crashed my PC

On the fifth day of Christmas, my user sent to me five Bugbears, four bad jokes, three top ten lists, two Klez worms and a file that crashed my PC

On the sixth day of Christmas, my user sent to me six dying wishes, five Bugbears, four bad jokes, three top ten lists, two Klez worms and a file that crashed my PC

On the seventh day of Christmas, my user sent to me seven support emails, six dying wishes, five Bugbears, four bad jokes, three top ten lists, two Klez worms and a file that crashed my PC

On the eighth day of Christmas, my user sent to me eight meg of attachments, seven support emails, six dying wishes, five Bugbears, four bad jokes, three top ten lists, two Klez worms and a file that crashed my PC

62 Eureka 48 — Winter 2003 Days Of Christmas

On the ninth day of Christmas, my user sent to me nine top ten lists, eight meg of attachments, seven support emails, six dying wishes, five Bugbears, four bad jokes, three top ten lists, two Klez worms and a file that crashed my PC

On the tenth day of Christmas, my user sent to me ten ªyou must forwards,º nine top ten lists, eight meg of attachments, seven support emails, six dying wishes, five Bugbears, four bad jokes, three top ten lists, two Klez worms and a file that crashed my PC

On the eleventh day of Christmas, my user sent to me eleven ªI love youº mails, ten Email ªyou must forwards,º nine top ten lists, eight meg of attachments, seven support emails, six dying wishes, five Bugbears, four bad jokes, three top ten lists, two Klez worms and a file that crashed my PC

On the twelfth day of Christmas, my user sent to me twelve online petitions, eleven ªI love youº mails, ten ªyou must forwards,º nine top ten lists, eight meg of attachments, seven support emails, six dying wishes, five Bugbears, four bad jokes, three top ten lists, two Klez worms and a file that crashed my PC

On the thirteenth day of Christmas, my user gave me a call Ð 'cause someone unplugged his machine from the wall.

Eureka 48 — Winter 2003 63 The Double Cross Solution

S U E D E The puzzle is on O C M page 53. U N Z I P F E E F E M U R L A O K R O N E R O Y A L A P O U P E E V E T O K E N O R E A K H A K I M O L A R N P I © H O A R D A G W B O O Z E I D E T R A C K

64 Eureka 48 — Winter 2003 ARM Arena

his time around there are a couple the original Descent 2 release. Quake Tof matters hanging over from the has also been released for the Iyonix last ARM Arena column and although resulting in an approximate 2-3 times it's been a quiet few months there increase in performance depending have been several releases to keep on screen resolution in addition to those who give custom to the mostly compatibility with this latest RISC serious-minded RISC OS market OS machine. David McEwen, the entertained! author of the updates keeps an

Andrew Weston finds enough new releases in the games market to keep him entertained, including some eagerly awaited versions for the Iyonix.

Iyonix updates interested eye on possibilities for Last time I mentioned that versions of future conversion to RISC OS and so, the first-person perspective 3D although he is keen to finish off other space-themed combat games Descent RISC OS work in his spare time, it 1 and 2 were being developed that are will be interesting if we see any other compatible with the Iyonix. These games of the quality of Descent have now been released and, aside released as a result of his efforts. from a speed increase of roughly three times, a range of enhancements have Finally, on the RComp front, F16, the been added graphically and in terms flight simulator which was converted of the game's plot development. The to RISC OS only to be found not to be good news is that these enhancements catered for by the Risc PC© s are available as an upgrade pack for capabilities, has been raised by all versions of the game and include RComp themselves as a possibility improvements such as lighting and for the Iyonix so watch this space for transparency effects and movie any news on this long-overdue title. sequences that were not supported in

Eureka 48 — Winter 2003 65 Doom various new companies quite a few The predecessor to the years ago and although it hasn't aforementioned Quake, Doom, has effectively re-united into a single spawned a whole range of related company like Acorn, judging by the utilities and extensions some of which continued interest in old BBC Micro have been mentioned in this column. games it is not hard to see why people would still remain interested in The latest are a series of utilities to playing old Commodore games as assist in the changing or designing of well, or indeed using other new DOOM graphics. These can be Commodore software. downloaded from MattLB's website but users should be warned that they Andreas Dehmel, author of version will need a copy of the Doom+ 1.13 of the conversion makes upgrade from RComp Interactive for available the software on his website programs on which these utilities are which is now also Iyonix compatible. dependent. Angband Commodore Emulation A whole range of variants has recently Strictly speaking, any new software been released of this classic role- using a RISC OS-based computer is playing arcade adventure game that is worthy of mention in a relevant news notable for using text-characters to column even if it is software that is represent the games graphics. There running through an emulator itself are about 10 in all which differ in running on RISC OS. In any case, story line, characters and tasks. The RISC OS users might be interested in player moves the game character the release of a RISC OS version of about a world represented as a grid of the Versatile Commodore Emulator the game graphics and objects and has (VICE). This provides emulation for to overcome various puzzles, all of the 8-bit machines that the now adversaries and a large number of defunct Commodore released Ð the levels. All are available from the C128, C64, CBM2, PET, Plus4 and website of Antony Sidwell, given at VIC20. Commodore as a company the end of this article. partitioned and transformed into

66 Eureka 48 — Winter 2003 Christmas presents? Contacts The release of both of RComp Interactive's classic conversions is a RComp major bonus for Iyonix-owners who Web: www.rcomp.co.uk would like to play these games at an Telephone: 01925 757377 exhilarating pace on their new machine and the Descent update Doom utilities should add further enjoyment to the Web: game for Risc PC owners as well. www.angelfire.com/mt/wumps/doo m.htm However I hope that after Christmas I'll be able to report on the release of VICE several more significant releases and Web: perhaps even another conversion http://home.t-online.de/~zarquon/S whether it be from the Linux or PC oftware.html#vice platform. Angband Again, watch this space. Web: http://ajps.mine.nu/angband/ports

http://home.t-online.de/~zarquon/Sof Coming in Etwuarre.ehtkmal#v 4ice9

CWone tarcets a:lready looking ahead to the SprAinngg 2b0a0n4d issue of Eureka, wherWe ewbe: hope to have some inside information onh wtthpa:/t/ RajIpSsC.mOiSne L.ntdu /iasn pglbaanndin/pgo frotrs the RfuCtuorme pan Wd webha: t wthwe wEd.ritcoorm ofp R.cIoS.Cu kWorld has in mind for his magazine. Telephone: 01925 757377 We will have an article of interest to digital camera users on keeping the costs Ddoowmn and theuret iwliitlile bs e the latWeset bo:n the ARM Arena gaming scene, some hitntpte:/r/ewstwinwg. aUnRgeLlfsi rteo. cgoom S/mitet /wSeueminpgs, the best of the PD programs which are /dForeoem F.hotrm All, more ways for Winning Games With Logic, a DoubleCross puzzle and a cartoon among our regular columns. But there will still be space VfoIrC yEo ur contribution if you woWulde bli:ke to send one!

Eureka 48 — Winter 2003 67 Club contacts

Email: General queries [email protected] Membership queries [email protected] Members’ technical help [email protected] Product sales [email protected] Magazine [email protected] Software [email protected]

The ARM Club, Merton Court, 38 Knoll Road Sidcup, Kent DA14 4QU

Telephone (higher rates): General queries 07010 709849 Technical help line 07010 708098 Fax: 07020 954018

Web site: http://www.armclub.org.uk/

Published by The ARM Club

• Chairman: Toby Smith • Secretary: Chris Price • Treasurer: Simon Burrows • Technical Help Co-ordinator: David Ruck • Internet & Products Co-ordinator: Tom Hughes • Open Days Advisor & Quartermaster: Ralph Sillett • Open Days Organisation/Support: John Stonier Discount Scheme Organiser: Rob Brown • Without portfolio: Matthew Cook Martin Ebourne Mark Smith

Editor: Peter Jennings © 2003 The ARM Club. All rights reserved

68 Eureka 48 — Winter 2003 Benefits of membership The national club for all users of 32 bit Acorn computers and Pocket Books

• The Club’s magazine, ‘Eureka’, written by members, is published and sent free of charge four times a year.

• Free software to accompany articles in Eureka is available on the Club’s FTP site or can be sent to members on disc.

• Free Technical Help Service. We will do our best to solve any problems which you may have, by email, letter, telephone or fax.

• Special discounts for Club members from well-known companies.

• Regional open days and shows are regularly organised by the Club. Other events can be arranged on request.

• Special offers at shows and open days.

• Regional contact lists of other members, available on request.

• Opportunities to get involved in the running of the Club itself.

• School and Affiliate Membership available on request.

• Joining pack includes an extra copy of a recent issue of the magazine and software.

Annual membership £15 Europe £19 and rest of the world £22 The ARM Club, Merton Court, 38 Knoll Road, Sidcup, Kent DA14 4QU Email: [email protected] Tel: 07010 709849 (Flextel)