REVIEW |
||
The construction of the kit version of the Tangerine Microtan was described by John Dawson in Your Computer June/July 1981. This review covers the use of the Microtan central processor unit and Tanex boards. |
THE TANGERINE Microtan 65 is an excellent computer system both for laboratory/school use and for those who are learning about computing and/or who want a computer system which can be started for very little money and genuinely expanded at a rate that the user can afford. The Microtan companion and the Toolkit EPROM — for which Microtanic Software has gained official approval from Tangerine — are indispensable additions to the system for anyone wishing to know about the intricacies, the nooks and crannies of the machine and how it may be used most efficiently. |
The Microtan computer system is constructed on a number of boards which plug into a rigid backbone or mother board. Figure 1 is a block diagram of the CPU card and Tanex, the expansion board. Both cards are necessary before the system can be expanded any further since the data bus is buffered on the expansion board. There are also dedicated links on the mother board from the CPU card to the Tanex. The remaining slots on the back plane are supplied by way of Tanbus lines. |
Each board measures 20.3cm. by 11.5cm. and is connected to the back plane by a high-quality plug and socket. Half Eurocards will also accept the same connector and Vero make a half Eurocard prototyping board which can be plugged directly on to the Tanbus. The Eurocard dimensions are 10cm. by 16cm. and will fit into the system rack although, if it is to be supported by the rack sides, it will require a small amount of additional work. |
You can use the CPU board as a micro-computer in its own right — it has an input capability — either the alpha-numeric keyboard or the Hexadecimal keypad — and an output function — the UHF modulator which connects to a standard 625-line television aerial socket. It is, however, only possible to save data and programs on tape if the Tanex board is connected into the system. |
The Tanbug monitor allows machine-code processing using the 1,024 bytes of RAM on the board. Half the RAM is used by the video-display logic to provide a memory-mapped display of 32 columns by 16 rows. The type font produced by the character generator is unusually clear. The second phase of the clock is used to avoid conflict between the CPU and the video logic and, consequently, the display is rock-solid without the snow on the screen which characterises less well-designed systems. |
Figure 3. Graphics demonstration routine to produce a sine wave
|
Figure 4. Routine displays zero-page activity on top half of screen
|
Additional integrated circuits to enhance the upper-case display are available from Tangerine and give lower-case letters and the ASCII graphics characters, and a set of 256 chunky graphics pixels 64x64=256. Again, for someone wishing to invest in a system at a price which corresponds to his spending power, this is convenient. The Microtan works perfectly with the original upper-case display and this can be enhanced by plugging in the extra chips as and when the user decides. No changes are necessary to the CPU board itself. |
Figure 2 sets out the Tanbus connections — the lines which begin with DMA are intended for direct memory access and DMAPOT and DMAPIN establish a daisy-chain for setting priority of access in a DMA operation. There is both a non-maskable interrupt line and an open-collector interrupt request line. The 6502 differs from the Z-80 CPU in that all input and output is memory-mapped and there are no separate I/O ports. An I/O line is provided on Tanbus so that you need decode only input/output addresses in the 1K I/O memory space rather than the full 65K address range. |
Although it is not stated in Tangerine advertisements, the Tanram board which holds 40K of dynamic Ram can be paged by the new version of Tanbug, and the system rack, holding eight Tanram cards, can be expanded to a total core capacity of 328K bytes. Tanbug has evolved through a number of versions, of which the most recent is Tanbug 2.3. Tanbug is the machine-code monitor for the Microtan 65 and contains the fundamental input and output routines for the computer as well as the routines necessary for implementing the monitor commands. |
At least 14 commands are available to the user — full documentation for the 2.3 version is being prepared — from either the Hexadecimal keypad or the full alpha-numeric keyboard. The commands, with a brief description of their functions, are set out in table 1. A major change in the new issue is the provision of software to drive a Centronics interface to a printer. The circuit is turned on and off manually by typing Control P and data that is sent to the VDU is then echoed to the printer. The printer may also be switched on or off in a program by Basic instructions: |
POKE 0,144 turns the printer on Tanbug is an elegant, logical and easy-to-use monitor. The terminator keys — carriage return, line-feed and escape — are used when modifying a memory location to execute a command and return to the main monitor, execute a command and proceed to the next higher memory location, and execute a command and return to the previous location. |
These actions are carried through consistently into the editing commands for the Basic interpreter. The line-feed key, for example, updates the current line of Basic and then opens the next line for further editing. Uniformity of the system commands is part of the dialogue design standards which are a crucial element in making a computer friendly to the person who uses it. |
The heavy manual supplied with the Microtan 65 CPU board lists the monitor software and gives, among many other things, details of Tanbug and examples of how routines in the monitor can be built into programs written by the user. Xbug is a 2716 EPROM which contains cassette file-handling routines, and a simple assembler/disassembler package. The Tanbug monitor recognises the presence of Xbug on the Tanex board and the Xbug facilities can be accessed directly by monitor commands. |
The Xbug commands are described in table 1 and it seems a shame that the cursor and terminator keys could not have been standardised completely with the rest of the software. The line-by-line assembler — Translator — and disassembler allow you to type standard 6502 assembler mnemonics. When the Microtan receives a carriage return, the line is checked for errors in the syntax and then translated into machine code. |
There is a considerable saving in effort compared to entering the same instructions in machine code. The spacing of the op-code and other fields on the line is important. The free format acceptable to Zen and other, more sophisticated assemblers is not permitted. In the same way, there is no provision for labels and it is not possible to store the source code on tape for later editing. |
The disassembler — Interpreter — coexists with the assembler and will recreate 6502 mnemonics from machine code; jump instructions and subroutine calls display the absolute address to which the jump will be made. Once again, it is not possible to edit the disassembled lines The fact that the two packages are permanently in the system and can be called by a single-letter command reduces some of the disadvantages I have mentioned. Why do you need to keep source code on tape when machine code can be stored, read back into the computer and disassembled instantly? However, the lack of the facility to introduce new lines of code into a program displacing the rest of the program upwards, and re-computing any relative or absolute jump instructions is a noticeable limitation. The Translator calculates relative jumps automatically and is probably worth having for that reason alone, as it requires less keyboard work and thought than the Offset command in the monitor. |
|
The hardware and software combination in the Microtan 65 for dumping and fetching data to and from cassette tapes is extremely reliable at the standard Computer User's Tape System, CUTS, speed of 300 baud. The high-speed Tangerine format runs at 2,400 baud and requires more careful adjustment of the volume control level and a little more care in choosing a suitable cassette recorder. There is, of course, a test program in the Xbug manual. |
The Basic interpreter for the Microtan 65 is supplied in three ROM chips which plug into the Tanex board. The interpreter occupies 10Kbytes and uses Xbug for the tape input and output routines. The Basic users' manual supplied by Tangerine with the interpreter integrated circuits has more than 80 pages of well thought-out and presented information. The text is interspersed with many examples and would be a good general teaching manual for Basic. The value of the manual is increased in comparison to other Basic interpreters and has been written in English for a U.K. computer. |
You do not have to cope with U.S. witticisms or translate the text from the Kim, Sym, Aim and Apple, Pet system specific tracts. The examples range from an immediate print statement: |
The examples are pure in that they are intended to show how the Basic language works rather than to demonstrate specific applications for the machine. The machine does not have the Acorn Atom's instant facility for entering assembler/machine code; nor are there instructions such as 'Print Using', If-Then-Else, or Print @. |
Deek and Doke are absent and you cannot directly open and close a data file on tape. I confess that none of these omissions is particularly worrying or limiting except perhaps the If-Then-Else instruction, which I can achieve in any case with one extra line in a program. |
On balance, I think that the machine's advantages lie with orthodoxy particularly when the Microtan companion book is available for those who wish to adopt a radical approach to their programming. The techniques in the Microtan companion for extending the machine-code call instruction, USR(I), should keep many people occupied for a considerable time. |
The Microtan companion and the EPROM Toolkit give an extra dimension to the Tangerine Microtan. The EPROM contains a number of extraordinarily useful additional commands, among others:
|
The Append command is worth the price of the chip alone as it makes serious programming possible by the development of subroutines which can be stored on tape and then incorporated into other programs at a later date. For example, I shall store a standard set of printer routines on tape for use with an Epsom [sic] MX-80 F/T. The graphics instructions are another giant leap forward for Tangerine owners. The routines are very fast and flexible, the VDU can be filled faster than your eye can twinkle and figure 3 is a listing of a demonstration program. |
|
Having started by saying grandly that the Tangerine system reminds me of fine equipment, it is a little embarrassing to have to confess that the first integrated circuit containing the new Tanbug 2.3 which I received appeared to be faulty. Even Rolls Royces go wrong sometimes and then malfunctions occur; it is the attitudes of the manufacturer which are vitally important. I have visited many small computer companies and there is an enormous diversity of management styles and staff attitudes. Some are disorganised, others are autocratic and repressive, others are friendly and enthusiastic. When I visited Tangerine I liked the attitudes as well as any I have seen anywhere. It should be self-evident that staff motivation and attitudes to work are an integral part of running a business successfully. |
CONCLUSIONS |
|