This month we'll take a break from the internals of DOS and take a look at the good news of the recently improved picture of software availability for the 512. As you'll probably be reading this Forum around Christmas we'll take things easy so you'll be able to keep up, even if you're full of Christmas spirit(s).
I suppose numerous people, myself included, were at one time hoping that established software producers might eventually decide to take up the 512 cause. However, as time passed it became obvious this just wasn't going to happen.
The unfortunate reality is that the 512 market simply isn't big enough to attract the interest of large Acorn software suppliers, who see better returns and less risk in other areas. In addition they don't have the necessary expertise and acquiring it would be expensive.
This situation exists partly because Acorn didn't exploit the machine's potential as they should have years ago, and equally because there's no shortage of PC software anyway, though it doesn't always solve 512 problems. Sadly, we are the beneficiaries of this shortsighted policy, and as I've said in the past, apart from the notable exceptions of Dabs Press and BEEBUG, we've been on our own.
As you may have read in Vol.8 No.5, I'm now trying to do my bit (see review of Essential Software's Ramdisc Utility), but I'm delighted to be able to say that there are also some other recent software releases for the 512, and other things are planned by at least one of the parties. Perhaps with a bit of encouragement the 512 will refuse to roll over and die after all as we enter the '90s.
These new releases are all from small operations, simply because in the first place they don't or didn't have to make their entire living from the software. Effectively they are enthusiasts who have written software for the 512 mainly because they wanted to, rather than being driven purely by commercial considerations.
To help put the 512 market in perspective, remember that 512 Forum offers the only continuous and regular support for the 512 that has ever appeared in the entire Acorn press (and you can check back as far as you like, there's never been any other). In spite of this, my offer of a free copy of 512 BBCBASIC in the June issue (Vol.8 No.2) has produced only about 275 requests to date. As a percentage of BEEBUG's current membership that's quite a healthy figure when compared to the percentage of 512s to BBC micros produced (but where are the rest?).
The trouble is though, compared to the estimated 1.7 million 6502 based BBC micros, 275 is insignificant (even though it didn't seem like it when I was copying your discs!) and that's why software suppliers haven't been interested in the 512.
As I said, the picture has now changed for the better, and with luck and user support this might continue. Next though, I must give my excuses about why some things take longer to appear in the Forum than might be expected. This is thinly disguised as an overview of how the Forum reaches you.
One of the earliest recipients of a copy of 512 BBCBASIC was Lawson Wakefield, who mentioned that he produces a PC package and that he'd also produced a version for the 512. I wrote to Lawson for more information and it's included below at last. I must apologise to him for the delay since his letter in late July, but Problem Solver took longer to deal with than expected.
The first inescapable fact is that generally I write the Forum a month or so before you read it. In addition, I try to fix the content of the next one before I need to submit the current one (though this doesn't always work out), so that at least a thread of continuity can be maintained. As an illustration of the delay, the last Forum was written in mid-September, but you may well be reading this one after having your Christmas dinner.
The unfortunate result of all this is that typically an item may not appear for three or four months after I first hear about it. It's also why most magazines carry a news section, space reserved to include late, up to date items that needn't be limited by standard production schedules.
That's enough of excuses, back to software.
Fortran, which stands for 'FORmula TRANslation' is a programming language designed to be especially efficient for scientific and mathematical applications, as the name suggests. Although never the most popular of languages because of its specialist nature, it originally appeared on mainframe computers in the sixties and successfully survived and grew to the present day. As micros have evolved and become more powerful, so Fortran has become available on more and more machines, and the PC (hence the 512) is amongst them. Of course, in common with all languages Fortran has its areas of weaknesses. Let me explain.
For example, the Basic we know is designed primarily for easy string manipulation and so console I/O is also very easy too, but complex calculations can become very heavy and tedious, both to encode and during execution, while random access disc filing is non-existent: it's entirely a 'do it yourself' job. Since console I/O is included in Basic, any version used must generally have peculiarities built in, in order to cater for the hardware employed, in other words it's machine specific. You'll have been reminded of this if you've tried to convert programs between, say, BBC Basic and Microsoft Basic or similar on the 512.
Fortran, on the other hand, is designed specially for complex calculation and source code portability, but like other languages designed with source portability in mind (perhaps 'C' is the most well known) user I/O cannot be an integral part of the language specification.
This aspect of each implementation is therefore left to each supplier to deal with. In respect of 'C', for example, standard library subroutines (like 'STDIO' which stands for standard I/O) will be included in the package by the supplier to cater for the vagaries of the hardware employed. These library routines are called from user code to perform I/O tasks, to save you from having to write hardware handling code from 'scratch' for yourself.
Fortran is similarly conceived but, probably due to its more specialised application, the input-output facilities included as standard are truly primitive. Any sort of presentable or 'user friendly' screen interface like a menu, or formatted output to a printer, becomes really hard work. Worse, having written such facilities for your own machine they won't help you on any other. Change machines and you must start again.
To the rescue comes Interacter from Interactive Software Services. This is a software development package designed to provide a wide range of ready-written console and I/O subroutines to do most of the hard work for you. In addition, to aid source portability, compatible versions of Interacter are available for a range of mini computers driving terminals and workstations (e.g. Hewlett Packard, SUN, DEC VAX) plus a variety of IBM PCs covering the various screen display types, MDA, CGA, EGA, MCGA and VGA. The most interesting point for us though, is that the range of machines includes the 512 (using either a model B or a Master host) and the Archimedes.
Versions of the Fortran compiler supported by Interacter for PCs and the 512 are Prospero and Microsoft v4.1, while for the Archimedes it's Acornsoft's release 2, either RISC OS, or Arthur if anyone still uses it.
For business or educational use, the licence terms for Interacter look sensible and programs produced with its help don't incur royalties or additional fees, something to beware of with some development packages. Interacter facilities and prices vary with your use, for example, on a 512 the 'personal' version is what you need at £99.00 plus VAT. At the other end of the scale, if your employer runs a multi-user (i.e. 50 plus) mini, the price grows to £4000 which is serious money, but is actually slightly cheaper on a per screen basis.
I'm not a Fortran user, but I am familiar with it because of my mainframe activities. I've run the 512 demos and I must say my conclusion is that this development package looks extremely interesting, comprehensive and professionally produced. If you or your employer / school / college write scientific applications using Fortran, contact Lawson Wakefield at I.S.S. for an information pack, demonstration discs and full price details.
Another BEEBUG member (and 512 BBCBASIC recipient) Cliff Bowman, has started a company called Tull Computer Services, which you may have seen advertised recently.
T.C.S.'s first product is an MS compatible mouse driver for the 512, and I've been having a look at it. To a certain extent there's not much to say in a report on a mouse driver; either it does the job or it doesn't and Tull's program does.
However, as is so often the case with the 512, things aren't so black and white, though this is definitely not the fault of the mouse driver. By definition a mouse driver is a support program for a main application, and to work correctly the main application must interface with a mouse legally.
Just as some packages use peripheral addressing techniques which cause them to fail totally in the 512, so it appears that some may try to read the mouse hardware directly, instead of using INT 33h, the legal mouse interrupt. There's no good reason for this, INT 33h offers sufficient facilities to configure a mouse in virtually any way you might wish. Nevertheless, some programs insist on doing their own thing and the result is that these won't work with a mouse on the 512.
I point this out only so that no-one thinks that because a mouse driver is properly written it guarantees everything will work with everything else in the 512 – it just isn't true. However, if you do know that a package works in the 512, and you also know it works in a PC with an MS (standard) mouse driver you should be on a pretty safe bet.
Tull are quite open about this fact in their manual, and include a list of programs which have been tested successfully, as well as a couple (one really) that haven't, so I've included the current list here for you. The manual also includes comprehensive details of INT 33h functions for those who want to write their own programs to interface with the mouse.
Compatible PC packages include:
Microsoft Word v4.0
Norton Editor v1.3C
Autoroute by Nextbase
Autosketch by Autodesk
Gem 3.0 and 3.11 by Digital Research
Deluxe Paint II by Electronic Arts
Elite by Firebird
Of these, one or two are memory hungry and ideally require an expanded 512, but that's nothing to do with the mouse driver. As mentioned previously, Elite also requires Problem Solver, again not the mouse driver's fault. Also note that in some versions of Autoroute the map doesn't work at all in the 512, while in others it's fine.
Incompatible PC packages include:
The 512's packaged Gem (no surprise)
Tubocad 1.5 by Pink Software
I expect that the list of tested software will grow as the numbers of users increase, especially if they keep T.C.S. informed. If your package isn't listed check with T.C.S. as they may have more information by the time you read this. Cliff would prefer written enquiries, but if you must phone, do so in the evenings. The T.C.S. mouse driver costs £30.00 complete.