MicroAngelo
SCION's MicroAngelo was an early graphics card for S-100 bus computers. Each MicroAngelo board produced a 512 by 480 pixel monochrome image, high resolution for the era. The MicroAngelo Palette (or Colour Mixing) Card used the output of multiple MicroAngelo's as individual bit-planes to produce images with up to 256 colors (using 8 cards). Early versions of AutoCAD supported the MicroAngelo system. The original MA512 board included 32 kB of RAM for the frame buffer, a Z80 processor operating as a controller and memory refresh driver, and 4 kB of ROM containing one of two optional  sets of subroutines. Users programmed the MicroAngelo in assembly language using the Z80's input/output parallel ports, which sent data over the internal S-100 bus at relatively high speeds. The data sent over the bus was examined by the Z80 on the card, which then ran a selected subroutine contained in its ROM to place data into the frame buffer. The screen buffer could be moved to or from the computer's main memory - useful for printing when pushed from the card to the computer, or displaying bitmap graphics when reversed. The 4 kB ROM normally contained "Screenware Pak  I", which provided routines to emulate an 85 by 40 line character screen, which also allowed the user to define their own 12 by 6 pixel character sets in the card's RAM. The optional 6 kB "Screenware Pak II" (in 8 kB of ROM) was a superset of Pak I, adding circle, line and polygon drawing routines, flood fill and a variety of other features. Pak II also added a "split screen" function, allowing a portion of the screen to be placed in graphics mode and the rest in text mode, which some considered a necessity. The MA512 had  a number of problems that were addressed in the later MA520, released in 1982. In particular, the software interface required only two of the input/output "ports", but a single MA512 would lock down an entire set of eight, typically F0 to FF. This made expanding a system with a complete set of eight MicroAngelo boards difficult, because the eight cards and the associated palette card would end up using up the vast majority of 256 available ports. The MA520 locked down only the two ports it actually used. The MA520 also used 64 kB DRAMs and 2732 EPROMs to  reduce chip counts and expand the frame buffer to 64 kB. Although the video system could only see one bank of 32 kB, the other 32 kB could be used for a variety of purposes, including scratch buffers and storing routines. MicroAngelo also supported a light pen, connected through input terminals on the top of the card. The Screenware software automatically converted the coordinates into the card's coordinates. Screenware also included routines for drawing movable cursors in hardware (as opposed to bit block transferring), and the cursor could be made to follow the light pen simply by reading the  pen coordinates and feeding them into the cursor. Shortly after the MA520 was announced, SCION stated they were going to produce a standalone terminal consisting of a complete Zilog Z80-based CP/M machine packaged with a MA520, and optionally a monitor as well. Known as the Mirage 1, a version with a color monitor (and Palette Card) would be known as the Mirage 2. However, there is no record of either version having shipped. Form and Function packaged a graphics terminal using a single MicroAngelo board placed inside an existing Ball monochrome monitor to produce the "IM-1". The IM-1  connected to any computer using a serial port, data being passed along to the cards. The system could be upgraded to greyscale by adding additional cards, and to color by swapping the screen. This solution had a number of problems, including the fact that it did not support existing terminal standards like VT52, and that the serial port would start to bog down above about 6000 bit/s, slow even for the era.