Previous | Index | Next

Master 512 Forum by Robin Burton
Beebug Vol. 9 No. 9 March 1991

I've decided this month to start dealing with a few topics about which I have had several queries recently and hopefully they'll be of interest to many of you. Before that though an explanation is called for. To be able to deal with these items I have come to the conclusion that for 1991 a slight shift of policy is called for concerning the potential content of the Forum.


In the past, the range of topics covered in the Forum has on occasion been restricted. This is a result of the fact that I have, in general, avoided mentioning other 512 activities or projects in which I am or have been involved.

From this month onwards I have decided to ignore this factor as and when it's justified, specifically when it stops me writing about items that should be included in the Forum. You'll all know that I wrote the Dabs Press 512 Technical Guide and you will probably also know of my Essential Software activities. It seems unreasonable (and to one or two of you as well, judging by your letters) to treat anything with any connection to either of these as taboo.

After all, I write 512 Forum which is the only magazine column which has ever been devoted to the 512, while Dabs Press is the only book publisher to have catered for 512 users and Essential Software is the only supplier with a wide range of products exclusively for the 512. It seems to me that to pretend in 512 Forum that two out of these three don't exist is ridiculous.

The Forum will not become an advertisement, that I guarantee, but the fact is that I get genuine queries from BEEBUG members who refer, directly or otherwise, to various products with which I have some involvement. Some of these queries, like this month's, are concerned with aspects of using and even worse, selling (!) a 512 which potentially are of general interest to a fairly wide audience.

Until now I've avoided such items in the Forum, but the change of approach is because this is becoming more and more unrealistic as time goes by. However, I will also add that if you don't think that this is a legitimate attitude read this month's Forum before you finally decide. If afterwards you still think it's not a reasonable change of rules, write to me or to the Editor and say so. This is after all a Forum where any 512 user can air his or her views.

It's also worth repeating that if there's any particular topic or item that you'd like me to cover in the Forum, let me know and I'll do my best to include it. I don't claim to know everything about the 512, particularly so at the level of specific applications, or even in some general areas like DTP, but if I don't know the answers I can always appeal to members for information.


This is the first item I'll comment about which indirectly has something to do with me, because it seems some of you have been having traitorous thoughts. I've had several queries over the last few months about the advisability (or otherwise) of moving to an Archimedes or an A3000 and using the PC emulator instead of a 512 to run DOS software. I'd guess that this idea has crossed the mind of quite a large number of you from time to time.

Three very recent queries from members spring to mind because their thoughts, questions and the possible alternatives they were considering were very similar.

Basically the question was, "I'm considering expanding the memory of the 512 and perhaps adding a hard disc too, but would I be better off instead selling my BBC micro and 512, replacing both of them with an A3000 and using the PC emulator for DOS?".

Of course I'm biased and so the instant answer is "Certainly not!", but joking aside this is, or will be sooner or later, a question for most of us. It's the most logical and obvious progression from the 8-bit BBC micro and the 512 to a single machine.

It's not for me to make this sort of decision for anyone else, and bear in mind my admitted bias, but I do think there are a number of points which are not very well publicised but which you should clearly understand before you begin to weigh up the pros and cons of such a change. Naturally we're concerned with DOS in this column, so that's what we'll concentrate on.


First, forget all other considerations. Let's just look at one or two important facts about the Archimedes and the DOS emulator that you might not have realised.

We all know that the ARM processor is a very high speed device and that the Archimedes or the A3000 (even limiting ourselves to the ARM2 processor) can outpace many more expensive machines in numerous benchmark tests. However, programs for such tests are written in each machine's own language for obvious reasons, so first of all don't be misled into thinking that these test results give a direct indication of how fast the PC emulator runs DOS software, they don't. To understand why this is so it helps to know what a software emulator does.

Obviously the ARM processor can't directly execute (for example) 80186 machine code instructions; they are meaningless to an ARM processor because the two chips are entirely different both internally and in how they address and access memory. Also, the 80186 and the later '286, '386 and '486 variants are what are known as CISC processors (Complex Instruction-Set Computer) which means that a single machine code instruction can effectively perform several quite complicated operations simultaneously, such as, for example:

"Repeatedly compare the contents of indexed memory location A with the contents of indexed memory location B. Do this for up to 65,535 repeats incrementing both counters as you do so, or until the contents of locations A and B are equal (or not equal, if you prefer)"

If you're not familiar with '86 series machine code let me assure you that all the above operations really can be carried out by a single instruction by your 512.

What the emulator must do (remember that the emulator is a program itself) is to read the 80186 processor instructions from the program, getting also any registers and/or memory locations used, then to translate these into simpler more elementary operations which will be understood by the RISC (Reduced Instruction-Set Computer) processor of the Archimedes. These translated operations can then finally be executed in ARM code.

The result of this sort of technique, given the very different nature of the two processors, is that a single '86 series instruction could quite possibly generate a dozen ARM instructions, involving quite a lot of memory storage and retrieval of intermediate data along the way. You must also add the overhead of reading each ARM instruction involved in the process, possibly a large number of times, before execution of the 'original' single instruction is complete. On top of that the emulator must similarly run a version of DOS by the same sort of laborious process. The easiest way to think of this process in 'BBC terms' is as interpreted assembly code and you know how fast BBC machine code executes compared with interpreted Basic.

The result is that when running under the emulator, even allowing for the impressive speed of the ARM processor, an A3000 or an Archimedes will be about four or five times slower than your 512 for most operations. I believe the current version of the emulator runs at an effective speed of around 2MHz or perhaps a bit less, while the 512 runs at 10MHz, so simple arithmetic will tell you what sort of comparative performance you can expect.


Next let's consider screen output. Again we all know that the ARM family of Acorn micros are capable of some quite stunning graphics displays with large numbers of colours on screen at the same time, the equivalent in fact of a PC VGA display. Quite so, but it's not so in the PC emulator. What you get in fact, is exactly the same display capability as you have in your 512. In other words text can only be shown in a single colour and graphics can use up to four colours. The emulator provides only CGA support, which is exactly what you get from your 512 and BBC micro, so there's nothing to gain in that area either.

A further point is that, as I understand it, you don't get as much free (DOS) RAM in the Archimedes under the emulator as you can in an expanded 512. You need extra memory in an A3000 to end up with as much DOS memory as a one megabyte 512, so don't forget to add that cost into your calculations.


The other item in this comparison was of course a hard disc, so let's make sure we compare like with like. For an A3000 to match the disc speed and facilities offered by a 512 when fitted with a hard disc you obviously would need a hard disc, plus possibly a second floppy drive for the 3000 as well.

This isn't technically any problem of course, but have you seen the prices of Archimedes hard discs? – something else which must be considered very carefully. It should be said that you might be in the position of having to buy a hard disc for your 512 to make this a fair comparison, but given that plenty of other BBC micro users are moving to the Archimedes on a regular basis I'd think a second-hand hard disc for the BBC might be possible to find.

I don't want anyone to think I'm criticising the Archimedes, I'm not, that would be inaccurate. However, the majority of 512 users probably don't use their machine in business, so the comparison ultimately is one of cost and what you get for your money. I was asked whether adding a memory expansion (£99.00) and a hard disc (say £250.00 second-hand) to the 512 was a serious alternative to the 'obvious' progression to an Archimedes with the DOS emulator.


The cost of the 512 option comes to well under £400.00 complete, because you've already got most of it. Now let's consider the cost of the A3000 system. Let's assume that you can continue to use your existing monitor (if not add that to the bill) and let's assume you restrict yourself to an A3000, with a hard disc, a second floppy (if needed to match your 512), the emulator itself plus a supply of 3.5 inch discs. You might well spend up to £1,200.00 (though even an A410 with 2MBytes of memory and a hard disc will only cost some £1360 with a PC emulator) – and you can expect a trade-in value of perhaps £300 or more on your existing system.

Now let's weigh-up the benefits of the move. You'll get a system that performs (in DOS) roughly five times slower, the display facilities will be the same and you'll be considerably poorer. It is true that the emulator provides for a later version of DOS, but expanding the 512 seems to overcome quite a few compatibility problems anyway. Based only on using the system in DOS I don't think there's any decision to make.

Of course I haven't considered any pure 'BBC' aspects in this discussion, they vary from user to user so you'll have to make your own decisions about them. It is true that a good deal of your existing BBC software can be run on an Archimedes, but those programs that do run offer no more memory than when you use them in your current system.

Even so, don't automatically think all your software will run. For a simple example look no further than Inter-Word, where you'll need a special (i.e. new) version. In addition, some programs won't run and have no equivalent Archimedes version, so you might also need to buy new software to regain what you already had, but at yet more cost.

Of course, if what you are really after is a dedicated DOS environment, then you might be better going for a genuine PC compatible anyway (Editor).

Previous | Index | Next

About the Master 512 | Bibliography