Tangerine Microtan 65
The Tangerine Microtan 65 (sometimes abbreviated M65) is a 6502 based single board microcomputer, first sold in 1979, which could be expanded into, what was for its day, a comprehensive and powerful system. The design became the basis for what later became the ORIC ATMOS and later computers, which has similar keyboard addressing and tape I/O as in the  Microtan 65. The Microtan 65 has a single step function that can be used for debugging at the hardware level. The computer was available as ready-built boards or as kits consisting of board and components requiring soldering together.

The Microtan 65 was intended as a general purpose microcomputer which could be used by laboratories, Original Equipment Manufacturers (OEMs) and the computer enthusiast, and it was designed with expandability in mind. In this way the customer could customise the system, be it as a specialised control system, as a learning tool, or as a general purpose computing device.

Price of the Microtan 65 board in 1981 was £79.35 (inc. VAT) in kit form or £90.85 ready-assembled. The system was not generally available in the shops.

To accompany the hardware and to offer further support to users, a magazine was created, the Tansoft Gazette (name inspired by the Liverpool Software Gazette). This was edited by Tangerine employee Paul Kaufman who continued as editor when the magazine was renamed Oric Owner. Tansoft also became the name of Tangerine Computer's official software house which supplied a number of software products and books for the Microtan system and subsequently for the Oric range of computers.

Main board 

The Microtan 65 was quite simple by today's standards, with:
 an NMOS 6502 CPU running at 750 kHz clock rate
 1K byte of RAM, used both for display memory and user programs
 1K byte of ROM for the monitor program
 video logic and a television RF modulator, for the 16 rows of 32 characters display
 a software scanned hexadecimal keypad
 an optional ASCII keyboard

Display 
The major advance that the Microtan 65 had over a lot of the competition at that time was that the video display was flicker free. At the time a lot of microcomputers would either access the screen memory asynchronously to the video timing (causing flicker and splats on the screen), or would write to the screen memory during a non-display period (which was slow). The Microtan 65 got over this problem by making use of an incidental feature of the 6502. The 6502 (unlike most other CPUs) has a regular period in each instruction cycle when all CPU activity is inside the chip, leaving the external memory available without using complex external arbitration logic. This made video display design simpler and meant that video accesses could be made at maximum speed. This technique is also used on the Oric-1 and Atmos, and in the unrelated Apple II.

The 32×16 characters was the reason that the 6502 was clocked at 750 kHz. To get the circuitry to work at a (nearly) standard video rate meant that the pixel clock had to be 6 MHz. When the Microtan 65 was designed only a 1 MHz 6502 was available, and so 750 kHz was used (6 MHz divided by 8).

Software 

The 1K byte monitor program (later increased to a 2K) is called TANBUG. The software facilities were rudimentary:
 M = Memory modify / examine
 L = List a block of memory
 G = Go command (Run a program)
 R = Registers display / modify
 S = set Single step mode
 N = set Normal mode (cancel S command)
 P = Proceed command (execute next instruction in Single step mode)
 B = set Breakpoints
 O = calculate Offset for use in branch instructions
 C = Copy a block of memory

Memory map 

The Microtan 65 memory map is shown below ($ representing a hexadecimal memory address): 
     
 $0000    Zero Page
 $0100    Stack
 $0200    Screen RAM
 $0300
 $0400    End of Microtan 65 RAM - map continued from $0400 to $0700 as RAM on TANEX
 $8000    I/O
 $C000
 $F800    TANBUG V2
 $FFFF

The screen memory occupies the space between $200 and $3FF. In addition to the standard 8 bits of screen RAM, there was an additional single bit RAM shadowing the $200 to $300 space. This was configured as a 9th bit write-only plane, and was used by the Microtan 65 for rudimentary, or "chunky", graphics. Setting the 9th bit displayed a Minitel type block graphic.

The display is 32 characters across by 16 lines down, with memory address $200 representing the top left hand displayed character, $220 the second row, etc. The character representation is standard ASCII. Several pieces of Microtan 65 software write to the bottom line by writing to memory starting at $3E0 - the leftmost character on the bottom line, rather than vectoring through TANBUG.

Input/output 

I/O in the Microtan 65 is decoded into a 16 KB space to simplify the hardware. In fact the 1 KB of RAM is mirrored through the bottom 32 KB, the I/O through the next 16 KB, and the EPROM through the top 16 KB. If you added an expansion board (see TANEX below) the decoding was modified and the wasted space reclaimed.

In common with other 6502 designs, I/O is mapped into the memory space. There is no dedicated I/O space as on the Z80, 8086 etc. The I/O ports are (when fully decoded):

Write to $BFF0    Clear Keyboard Flag (Keyboard would generate an IRQ)
Read from $BFF0   Turn Graphics On (enables "9th bit" graphics writes)
Write to $BFF1    Used by the hardware single step
Write to $BFF2    To write a scan pattern to the hex keypad (if fitted)
Write to $BFF3    Turn off Graphics (disable "9th bit" graphics writes)
Read From $BFF3   Read Keyboard Port (either keypad or ASCII keyboard)

TANEX expansion board 
.

Adding a TANEX board provided a number of features:
 an add-on to TANBUG called XBUG
 space for an additional 7K bytes of RAM
 five EPROM sockets
 two 6522 VIAs
 a 6551 UART, providing a cassette interface for storing and retrieving programs (300 baud CUTS, and 2400 baud), and a serial interface

Without a TANEX board, and due to deliberately ambiguous address decoding, the address $F7F7 would appear to the 6502 to have the same data as $FFF7. In TANBUG, this is a jump to an internal monitor routine. With TANEX installed, $F7F7 is decoded properly, and that address is an entry point into XBUG. XBUG provided features such as cassette tape loading and saving, a simple assembler / disassembler, hex calculator.

The ROM sockets on TANEX could be used to run a 10K Microsoft Extended BASIC, a two-pass assembler, or even (and more likely given the hardware bias of the Microtan 65) code written for a specific hardware control application.

Price of the TANEX board in 1981 was £49.45 as a "minimum configuration"  kit - lacking one of the 6522 VIAs and the 6551 and with 1K of RAM - and £60.95 for a similar board fully assembled. TANEX was also available with the board fully populated with chips (although excluding XBUG, ROMs & BASIC) and in this form the costs were £103.16 for the kit and £114.66 ready assembled.

Further Expansion

The Microtan 65 was designed as a modular system able to be expanded as required, and for this each board included an 80-pin connector at one end allowing it to be plugged into a backplane-type motherboard. A simple two-socket "Mini Motherboard" connected the Microtan 65 and TANEX boards for minimum expansion and in this form the system was also available ready-built from Tangerine, complete with case and full ASCII keyboard, as the Tangerine Micron, costing £395.00 in 1981.  For further expansion the builder could purchase the full "System Motherboard" which featured an additional ten sockets, bringing the total available sockets to twelve. For housing this, a "System Rack", rack-based case was available, in black and silver with a black front panel trimmed in Tangerine's trademark orange.

Additional boards became available with time, including a 40K memory board - TANRAM, made up of 32K of dynamic and 8K of static RAM, bringing the total non-paged memory to 48K, a dedicated parallel I/O board featuring 16 parallel input/output ports; a similar dedicated serial I/O board featuring 8 serial input/output ports, a disk controller board for use with disk drives, a Disk Operating System - TANDOS 65, a high resolution graphics board featuring 8K of static graphics RAM giving a resolution of 256 × 256 pixels, a dedicated 32K ROM board, (aimed mainly at OEM and general purpose applications or for use with AIM, KIM and SYM systems), capable of holding either 8 × 2732 or 16 × 2716 EPROMs; and a 32K RAM board featuring two 16K banks of 4116 dynamic RAM, again intended for similar purposes to the 32K ROM board. In addition, several third-party suppliers offered boards designed for use with the Microtan 65 system.

In addition to the BASIC programming language Tangerine also released on disk TANFORTH, an extended version of FIG FORTH featuring a full FORTH compiler and editor.

See also
 Research Machines 380Z

References

External links
 This article was based on: 
 Geoff Mcdonald's webpage - author's experience with the Microtan 65
 Fabrice Frances' website - includes a Microtan 65 emulator written in Java
 Binary Dinosaurs - tracing the history of computers
 www.microtan.ukpc.net  - manuals, ROM images, magazine and newsletter articles
 Personal Computer News: Back From The Brink  - A new look at the Microtan 65 - a DIY micro that narrowly escaped extinction
 

6502-based home computers
Home computers
Early microcomputers
Computer-related introductions in 1979
Tangerine Computer Systems