Aries RAM card gives you room to stretch
ONE of the shortcomings of the BBC Micro has been its lack of
user memory, although its total memory is no smaller than any
other micro (including those advertised by elephants).
Acorn has decided to use the memory in the BBC Micro to give
you a more powerful working environment which allows your programs
to be shorter.
However in the higher resolution graphics modes you can easily
run short, especially if you have large amounts of data to handle
as well.
The principle of adding extra memory by the process of paging
is not new - it has been used on the Apple computer for many years.
It is even incorporated into the BBC Micro in those unique sideways
ROM sockets.
Nevertheless, the trouble with a paged RAM system is that the
software has to be aware that it is there.
The Aries RAM board gets round this limitation brilliantly and
gives an extra 20k of RAM. It does this by switching a piece of
sideways RAM that lies over the same address as the RAM used for
the display.
This is normally switched in. so the extra board is used to
store our program. However whenever a VDU command is executed
the board automatically switches out and accesses the display
memory.
The practical result is that you can use any graphics mode and
still have the same amount of memory. This means you have an extra
1k if you are using Mode 7 or an extra 20k if you are using Modes
0 to 3.
Therefore when you are writing programs you don't have to compromise
on complexity in order to use a high resolution mode.
The fact that this switching is done totally automatically makes
it transparent to any software you use. So it will work with any
software "correctly written". By that I mean software
that uses the correct operating system calls.
However some programs, usually games, access the memory directly
to allow fast animation. These will not work while the Aries board
is operational so it can be turned off from the keyboard.
The commands *XOFF and *XON allow it to be switched. As the
board takes up a few extra bytes of memory when you turn it off
it will prompt you to press the break key to recover these bytes.
In fact I found that the Break key had to be pressed to complete
the turning off process. Therefore you can't load a program, turn
off the board and then recover the program with the OLD command.
This was a minor irritation, as I found I remembered I needed
to switch the board off just after I had loaded the program in.
The hardware consists of a plug-in board and a sideways ROM.
You remove the microprocessor chip and plug it into the board.
The board then plugs into the empty microprocessor socket.
The whole board is supported by fine-turned pillars that plug
into the vacated socket and are of such a design that they can
be easily removed without doing any damage to it.
The whole thing resembles a North Sea oil platform. Add the
ROM to any socket and you are ready to switch on.
When you do you will be greeted by the message "BBC Computer
52K." This tells you the board is in operation. A *HELP will
also inform you of its presence.
The board is not mechanically compatible with the APTL sideways
ROM board as both span the same part of the board.
Cambridge Computer Consultants is planning to bring out its
own sideways ROM board for those who need that function.
The switching between the two planes of RAM inevitably takes
some time, so I set out to find out how much the operation of
the board slowed down a graphics program.
To do this I modified the Pattern program on the Welcome tape
to always produce the same pattern and then I ran it with and
without the board in operation.
The program appeared to be just as fast, so I made the internal
clock time them. Without the board it took 13.16 seconds and with
the board it took 13.33 seconds. Therefore it took 0.17 seconds
extra - just under 1.3 per cent longer.
This program has a higher than average number of screen accesses
and being just 0.17 seconds longer in over 13 seconds does not
worry me. In fact I can't think of a situation where it would
be a problem.
If you want to use Mode 7, for example, you then have 19k of
memory doing nothing. This can be used for storing data by use
of the indirection operators.
The two planes of memory can be switched using a *FX call. The
instruction manual explains how to do this and I can confirm that
it works.
The great thing about this system is that the software does
not have to know it is there. Therefore you can have an 80 column
display when using VIEW and still have the full amount of memory.
However I found that Wordwise would not work with the board
switched on. This must be because it directly accesses the memory
instead of using the VDU calls.
The only other incompatibility was in programs that used a *SAVE
to store a screen display on disc. These must be modified to swap
the memory just before and after the SAVE, or they can be run
with the board off.
Who would benefit from this board? Just about anybody who has
ever come across the "No room" or "Bad mode"
error messages.
If you are a programmer the extra space gives you room to stretch.
If you are using a compatible word processor you can see the text
as it will be printed and still have the maximum amount of memory
to store your text.
At the price the Aries board is well worth it and is something
that has become a permanent feature on my machine.
Mike Cook