ATASCII to ASCII Converter
Convert ATASCII character codes from Atari 8-bit computers to standard ASCII text. Supports hex, decimal input and binary file upload.
About
ATASCII (Atari ASCII) is a proprietary character encoding used by the Atari 8-bit family of home computers (400, 800, XL, XE series). It maps 256 code points across the range 0 - 255, sharing partial overlap with standard ASCII in the printable range 32 - 122 but diverging significantly for control characters and the upper block. Misinterpreting ATASCII data as ASCII produces garbled output. Graphics characters (hearts, clubs, line-drawing segments) and inverse video codes (128 - 255) have no direct ASCII counterpart. This tool performs a best-effort mapping: shared printable characters pass through unchanged, Atari-specific control codes are transliterated to descriptive placeholders, and inverse video characters are mapped to their base glyph equivalent. The conversion is lossy by nature - ATASCII graphics glyphs cannot be faithfully represented in 7-bit ASCII.
Input accepts comma-separated or space-separated decimal values, hexadecimal strings (prefixed with 0x or bare hex pairs), or raw Atari binary files via upload. The tool approximates visual equivalents assuming standard ATASCII as documented in the Atari 400/800 Operating System Reference Manual (1982). Note: ATASCII variants used by Atari ST or Atari 2600 are not covered.
Formulas
ATASCII to ASCII conversion uses a direct lookup function f(c) where c is the ATASCII byte value:
Where c = input ATASCII byte value (0 - 255), map[c] = predefined lookup for non-printable or Atari-specific codes, chr(c) = direct character cast (shared range), and codes 128 - 255 are inverse video variants resolved by subtracting 128 and re-applying the function recursively. Special case: ATASCII 155 (0x9B) maps to newline (LF, ASCII 10) as it is the Atari End-of-Line marker.
Reference Data
| ATASCII Code | Hex | ATASCII Glyph | ASCII Equivalent | Notes |
|---|---|---|---|---|
| 0 | 00 | ♥ | ♥ | Heart (no ASCII equiv.) |
| 1 | 01 | ├ | | | Box drawing right tee |
| 2 | 02 | ▐ | | | Right half block |
| 3 | 03 | ┘ | + | Box drawing corner |
| 4 | 04 | ┤ | | | Box drawing left tee |
| 5 | 05 | ┐ | + | Box drawing corner |
| 6 | 06 | ╱ | / | Diagonal line |
| 7 | 07 | ╲ | \ | Reverse diagonal |
| 8 | 08 | ◢ | / | Triangle lower right |
| 9 | 09 | ▗ | . | Quadrant lower right |
| 10 | 0A | ◣ | \ | Triangle lower left |
| 11 | 0B | ▝ | . | Quadrant upper right |
| 12 | 0C | ▘ | . | Quadrant upper left |
| 13 | 0D | ▀ | = | Upper half block |
| 14 | 0E | ▂ | _ | Lower quarter block |
| 15 | 0F | ▖ | . | Quadrant lower left |
| 16 | 10 | ♣ | ♣ | Club |
| 17 | 11 | ┌ | + | Box drawing corner |
| 18 | 12 | ─ | - | Horizontal line |
| 19 | 13 | ┼ | + | Box drawing cross |
| 20 | 14 | ● | * | Filled circle |
| 21 | 15 | ▄ | _ | Lower half block |
| 22 | 16 | ▎ | | | Left quarter block |
| 23 | 17 | ┬ | + | Box drawing tee down |
| 24 | 18 | ┴ | + | Box drawing tee up |
| 25 | 19 | ▌ | | | Left half block |
| 26 | 1A | └ | + | Box drawing corner |
| 27 | 1B | ESC | [ESC] | Escape |
| 28 | 1C | ↑ | ^ | Cursor up |
| 29 | 1D | ↓ | v | Cursor down |
| 30 | 1E | ← | < | Cursor left |
| 31 | 1F | → | > | Cursor right |
| 32 - 122 | 20 - 7A | (Standard printable) | Same | Direct ASCII overlap |
| 123 | 7B | ♠ | ♠ | Spade (replaces {) |
| 124 | 7C | | | | | Pipe (same) |
| 125 | 7D | CLR | [CLR] | Clear screen |
| 126 | 7E | BS | [BS] | Backspace |
| 127 | 7F | TAB | [TAB] | Tab character |
| 128 - 255 | 80 - FF | (Inverse video) | code − 128 | Inverse of codes 0-127 |
| 155 | 9B | EOL | \n | Atari End-of-Line (newline) |