A review of the Tangerine Microtan 65.
Published in YOUR COMPUTER, October 1981.



REVIEW
MICROTAN 65 BY JOHN DAWSON

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.


Microtan 65 keyboard
Close view of the Microtan 65 — note the excellent keyboard

Figure 3. Graphics demonstration routine to produce a sine wave
LIST

 10 £10,0:FOR J=1 TO 63
 20 £0,J,31+20 * SIN(J/5)
 30 NEXT J
 40 WAIT 49139,128
 50 £9,32
OK

Figure 4. Routine displays zero-page activity on top half of screen

L1FCF,8
1FCF A9 4C 85 10 A9 E9 85 11
1FD7 A9 1F 85 12 A9 C0 8D EB
1FDF BF 8D EE BF 8D E5 BF 4C
1FE7 4B FC 48 8A 48 A2 00 BD
1FEF 00 00 9D 00 02 E8 D0 F7
1FF7 A9 C0 8D E7 BF 68 AA 68
1FFF 40


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.


Rack mounted Microtan 65 card
Mounted Tanex and Microtan 65 cards

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
POKE 0,128 turns the printer off
Command of the printer depends on one bit in memory location 0 and it would be better practice to logically And the bits in the location, but the Poke instruction works well.

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.


Microtan 65 block diagram
Figure 1. Block diagram of Microtan and Tanex boards

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.

CommandFunction
RESETInitialise system and display Tanbug message
MxxxxModify memory at Hexadecimal address xxxx
LFStep up through memory
escStep down through memory
spaceRe-open currently-displayed memory location
crClose currently-displayed memory location
Lxxxx,yList y lines of memory starting at address xxxx
GxxxxGo, begin program execution at address xxxx
RDisplay pseudo-processor register locations
SSet single-step mode
NReturn to normal mode — clear single step
PProceed, past break-point or next instruction — single step
Bxxxx,ySet break-point number y at location xxxx
BClear breakpoints
Oxxxx,yyyyCalculate offset between addresses xxxx and yyyy for branch instruction
Cxxxx,yyyy,zzzzCopy block of memory starting at xxxx to yyyy to zzzz
Cntrl PSwitch on/off parallel printer
Cntrl VSwitch on/off serial printer
Cntrl SSwitch on/off screen
Cntrl LClear screen — in Basic
BASBasic cold-start
WARBasic warm-start
CSet CUTS standard cassette speed — 300 Baud
_fSet fast cassette speed — 2,400 Baud
Dxxxx,yyyy,zzzzzzDump to tape from xxxx, to yyyy, using file name zzzzzz
Fxxxx,yyyy,zzzzzzFetch from tape from xxxx, to yyyy, using file name zzzzzz
Exxxx,yyyy,zzzzzzExamine, verify, from xxxx, to yyyy, using file name zzzzzz
TxxxxEnter Translator — assembler — at address xxxx
IxxxxInterpret — disassemble — from address xxxx
Table 1. The Tanbug commands

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:
PRINT 1/2, 3*10 (* means multiply, / means divide)
to the derivation of trigonometric functions such as hyperbolic and inverse hyperbolic ratios and a simple routine for sorting lists of string data.


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:
Control AClear screen and set alpha mode
Control GClear screen and set graphics mode
Control NAutoline numbering
AppendAppend a named file from tape
Re-numberRe-numbers lines, Goto and Gosub instructions
Control ZCalculates a decimal number from an entered Hexadecimal number
#0 to #10   Powerful machine-code graphics routines

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.


ba 
+5+51
CLKDMAREQ2
01023
RSTI/O4
A1A05
A3A26
A5A47
A7A68
A9A89
A11A1010
A13A1211
A15A1412
DMAGNTIRQ13
FBNMI14
DMAPOTDMAPIN15
IOERAME16
ROMER/W17
SYNCHB18
 DB019
 DB120
 DB221
 DB322
 DB423
 DB524
 DB625
 DB726
  27
  28
  29
+12+1230
-12-1231
GNDGND32
Figure 2. Tanbus connections

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

  • The next product from Tangerine will be the Tangerine Tiger, which may be a packaged twin processor computer aimed at the domestic rather than the laboratory/hobby markets.
  • External expansion from the Tiger may be by connection to the Microtan range of cards.
  • Such a logical expansion based on bus compatibility between the Tiger and the Microtan would provide peace of mind for anyone who is considering buying a Microtan 65.
  • Apart from its successful sales figures, the company's future plans are based on a complementary development of another system rather than the production of a second changed model of the Microtan.

  • A high-resolution board offering 256 by 256 points and black-and-white graphics should be available soon and a disc operating system is also under development.
  • Finally, you may like to try a program from the Microtan companion to whet your appetite for the book.
  • Figure 4 is a machine-code program which displays the zero-page activity on the top half of the screen when another program is running; the machine-code instructions use a 6522 VIA in the second socket on the Tanex board.
  • Enter the code, execute the program by G IFCF and enter Basic; protect the program by answering 8100 to "Memory Size?" and then be fascinated.
  • Both the Toolkit and the Microtan companion enhance what is already a most attractive computer.







2007 Comments



Chronological listing
Back to chronological list

Home Page
Home Page