# Acorn Atom

O Acorn Atom foi um computador doméstico produzido pela Acorn Computers Ltd de 1980 a 1981, quando foi substituído pelo BBC Micro (originalmente, Proton) e posteriormente pelo Acorn Electron.

## Características

O Atom foi a continuação do desenvolvimento de máquinas baseadas na UCP 6502 que a empresa vinha realizando desde 1979. O Atom era um Acorn System 3 "castrado", sem drive de disquete, mas com um teclado mecânico e interface de cassete, vendido sob forma de kit ou montado. Em 1980, seu preço girava entre £120 sob forma de kit, £170 montado, e £200 para uma versão expandida, com 12 KiB de RAM e ROM com extensão para cálculos em ponto flutuante.
O Atom básico tinha 2 KiB de RAM e 8 KB de ROM, e a versão completa 12 KiB de cada. Os 12 KB de RAM dividiam-se em 5 KiB disponíveis para programas, 1 KiB para a "página zero" e 6 KiB para gráficos em alta resolução. A página de memória zero era usada pela UCP como pilha temporária pelo SO, e pelo Atom BASIC para armazenamento de 27 variáveis. Se os gráficos de alta resolução não eram usados, então 5 1/2 KiB da memória superior podiam ser usados para armazenamento de programas.
Característica incomum nesta época, o Atom possuía um precoce chip de vídeo dedicado, o MC6847 VDG (Video Display Generator), permitindo o uso de modo texto ou modos gráficos com duas cores. Podia ser conectado a uma TV ou a um monitor de vídeo. A memória de vídeo básica era de 1 KiB, mas podia ser expandida para até 6 KiB. Uma placa de vídeo PAL colorida também estava disponível. Seis modos de vídeo estavam disponíveis, com resoluções que iam de 64×64 em 4 cores a 256×192, monocromático. No início dos anos 1980, uma resolução de 256×192 era considerada como alta resolução.
O gabinete do Atom foi desenhado pelo designer industrial Allen Boothroyd, da Cambridge Product Design Ltd.

## Atom BASIC

O Atom possuía uma versão do BASIC embutida, o Atom BASIC, rápido, porém idiossincrático. Incluía operadores indiretos (similar a PEEK e POKE em outros computadores) para bytes e words (4 bytes). Código Assembler podia ser incluído num programa em BASIC, porque o interpretador BASIC também continha um Assembler para a linguagem de máquina do 6502, o qual montava o código embutido em tempo de execução. Esta característica era pouco usual, mas muito útil.
Em fins de 1982, a Acorn lançou uma atualização da ROM do Atom, que permitia que os usuários do micro chaveassem a operação entre o Atom BASIC e o BBC BASIC usado pelo BBC Micro. A atualização dizia respeito unicamente à linguagem de programação; as capacidades gráficas e de som do Atom permaneceram inalteradas, e daí, contrariamente a algumas crenças pré-lançamento, a BBC BASIC ROM não permitia aos usuários do Atom rodar software comercial produzido para o BBC Micro, visto que praticamente todo ele tirava partido dos gráficos avançados e do hardware de som do BBC.

## Mapa de memória

Na tabela abaixo, está um mapa da memória do Atom. Áreas sombreadas indicam as que estão presentes no sistema básico (com 2 KiB).
| End Hex | Conteúdo |
| 0000 | Bloco Zero de RAM |
| 0400 | RAM VDG Teletexto |
| 0800 | Controlador CRT VDG |
| 0900 | |
| 0A00 | FDC opcional |
| 0A80 | |
| 1000 | Área de periféricos |
| 2000 | Buffer de catálogo |
| 2200 | Buffers de variáveis |
| 2800 | Variáveis de ponto flutuante |
| 2900 | RAM de Extensão de Texto |
| 3C00 | Expansão de RAM externa |
| 8000 | 8000-01FF para modo 0 (512 bytes de texto) | RAM de vídeo |
| 8000 | 8000-83FF para modo 1 (1 KiB - gráficos) | RAM de vídeo |
| 8000 | 8000-85FF para modo 2 (1,5 KiB - gráficos) | RAM de vídeo |
| 8000 | 8000-8BFF para modo 3 (3 KiB - gráficos) | RAM de vídeo |
| 8000 | 8000-97FF para modo 4 (6 KiB - gráficos) | RAM de vídeo |
| 9800 | |
| A000 | ROM Utilitária Opcional |
| B000 | Dispositivo de I/O PPIA |
| B800 | Interface de impressora VIA I/O Opcional |
| C000 | Interpretador ATOM BASIC |
| D000 | ROM Estendida Opcional |
| E000 | SO de Disco Opcional |
| F000 | Assembler |
| F000 | Sistema de Operação de Cassete |

## Especificações

* UCP: MOS Technology 6502
* Clock: 1 MHz
* RAM: 2 KiB, expansíveis para 12 KiB
* ROM: 8 KiB, expansível para 12 KiB, com várias ROMs produzidas pela Acorn e por terceiros
* Som: 1 canal, com alto-falante
* Dimensões: 381×241×64 mm
* Portas de E/S: interface Computer Users Tape Standard (CUTS), conector de TV, porta paralela Centronics
* Armazenamento: interface de cassete KCS
* Alimentação: 8 volts DC não regulados, provendo 5 volts regulados internamente no Atom