The coprocessor philosophy (aka Tube® interface) available on all machines except the Electron and Master Compact allows a parasite processor such as the ARM to run the main language application, while leaving the host processor inside the BBC micro to spend its time handling the screen updates and other repetitive IO chores.
The huge success of ARM means that there are now many chip vendors around the world with licenses to use the ARM core in their own products, which means high speed ARMs with useful integrated peripheral devices like serial ports are readily available. That makes it possible now to build a more up to date ARM evaluation system for the BBC micro.
All system control logic is implemented in a single field programmable gate array from Altera Corporation, and sits along side the ML67Q5003 system on chip from OKI semiconductor.
Internal and external versions of the coprocessor |
The "ARM Tube OS" provides the following extra commands
*BASIC | *HELP | *GOS | *SHOWREGS | |
*GO | *QUIT | *CACHE | *ERROR | |
*INITSTORE | *MEMORY | *MEMORYI |
The "ARM Tube OS" is stored in flash ROM which is immediately available at power up, without the need for a disc drive, and can also be upgraded in the field with new enhancements when available.
Can I use the new features of BASIC V in my programs?
Yes, new constructs such as multiline 'IF' statements and the 'SYS' command can be used, but remember that once the coprocessor is turned off your program might not work in BASIC II anymore.
How fast does it run?
The perceived 'speed' depends on the type of program. A BASIC program which just runs in a loop making calculations can be over 200 times faster than the BBC micro, but a program which reads bytes one at a time from a floppy disc will spend most of its time waiting for the disc drive on the host so will be no faster than the BBC micro.
What can I use it for?
The coprocessor is a general purpose application ("language") processor, but it could be used for running a fast Econet fileserver; emulating other hard-to-find coprocessors such as a Z80; writing memory intensive BASIC programs such as databases; complex multilevel games; as an ARM7 learning tool or development platform; and so on. The large amount of RAM also means whole disc images can be copied with COPYFILES between two filing systems in just one operation.
You mention the ARM1 evaluation system, can I run ARM1 programs?
No, the ARM1 system discs will not work with the coprocessor as more recent ARM processors no longer support some of the original instruction set.
Does the internal version work in a Watford Electronics coprocessor adapter box?
A number of users have confirmed that it is possible to convert an internal board into one for use with a BBC B or B+ by installing it in a suitably buffered adapter box.
Existing owners of the coprocessor can upgrade the built in "ARM Tube OS" by running one of the following upgraders:
These coprocessors are available now, and are offered in two different options depending on whether it is to be fitted inside a BBC Master or externally for BBC B or Master. For external coprocessors, you'll need a 250mA regulated 5V DC power supply and small case available from your local hobby electronics outlet:
Option: | Price: | Comments: | ||||||
Internal coprocessor with 16MB RAM |
| Ready built ARM7 coprocessor Suitable for fitting into a Master 128 or Master ET Supplied with instruction manual | ||||||
Internal coprocessor with 32MB RAM |
| Ready built ARM7 coprocessor Suitable for fitting into a Master 128 or Master ET Supplied with instruction manual | ||||||
External coprocessor with 16MB RAM |
| Ready built ARM7 coprocessor Suitable for use with Master 128, Master ET, BBC model A or B or B+ via the external Tube® port Screw holes provided to fit into a suitable expansion box (not supplied) Approx 13" of ribbon cable Supplied with instruction manual | ||||||
Spare header pins (quantity 2) |
| Spare 18mm long 12 way single row headers Suits any internal coprocessor, eg.65C02 Turbo |