ATASCII

From Wikipedia, the free encyclopedia
Jump to: navigation, search

The ATASCII character set, from ATARI Standard Code for Information Interchange, alternatively ATARI ASCII, is the variation on ASCII used in the Atari 8-bit family of home computers. The first of this family were the Atari 400 and 800, released in 1979, and later models were released throughout the 1980s. The last Atari 8-bit computer, and therefore the last computer to use the ATASCII character set, was the XEGS (short for "XL Extended Gaming System,") which was released in 1987.

Like most other non-standard ASCIIs, ATASCII has its own special block graphics symbols (arrows, blocks, circles, line segments, playing card suits, etc.) corresponding to the control character locations of the standard ASCII table (characters 0–31), and a few other character locations.

Control characters[edit]

The most notable difference between standard ASCII and ATASCII is the use of control characters. In standard ASCII, a character in the range 0 to 31 is construed as a command, which might move the cursor, clear the screen, end a line, and so on. Some of these were designed for use on printers and teletypes rather than on screen (to advance the paper, overtype, and so on). In ATASCII most of the ASCII control character values produce a graphics glyph instead. ATASCII uses character values different from ASCII for cursor control.

ATASCII has a character set of only 128 characters. If the high-order bit is set on a character (i.e., if the byte value of the character is between 128 and 255) the character is generally rendered in the reverse video (also called "inverse video") of its counterpart between 0 and 127, using a bitwise negation of the character's glyph. This is done by the ANTIC chip. The two exceptions to this rule are that an "escape" character (ATASCII and ASCII 27) with its high order bit set becomes an "EOL" or "End Of Line" character (ATASCII 155; ASCII 13), and a "clear screen" character (ATASCII 125) with its high order bit set becomes a "bell" or "buzzer" character (ATASCII 253; ASCII 7). No Atari printers actually have a bell, but the computer will sound if it is written to the screen device.

The ATASCII control characters used by the screen editor for cursor control (arrow keys) and text editing (tab, insert, delete, backspace, etc.) have associated graphic symbols that can be displayed by preceding them by the "escape" character (ATASCII 27). For example, a right arrow can be displayed on a screen or printer by preceding it with the escape character followed by the "cursor right" character itself (ATASCII 31).

The Atari screen editor implements the text cursor by simply inverting the character at the cursor position (by XOR with $80). It does not flash.

Interoperation[edit]

The differences between character representation causes problems during modem communication between Ataris and other computers. Cursor movement commands (and even carriage returns and line feeds) from computers not using ATASCII will be nonsense on an Atari, and vice-versa. Terminal programs need to translate between ATASCII and standard ASCII.

Some Atari-based BBSs exploited this difference by asking the client to hit the "Return" key. If it got 13 (ASCII CR), then standard ASCII would be used. If it got 155 (ATASCII CR) it would switch to ATASCII, allowing full use of the ATASCII graphic set. Some Atari BBSs would also block features (or even block access completely) for non-Atari users.[citation needed]

ATASCII animations[edit]

The control codes in ATASCII are transmissible to other computers such as BBS's, and crude animations are possible. These animations, also known as "break movies", often take the form of short cartoons, and were a popular feature of Atari BBSs in its heyday.

Because cursor control operations are represented with a single character (as opposed to multi-byte 'escape' sequences that were common in other schemes, like ANSI or VT100), it is quite easy to make these animations. They can be created by a short BASIC program that captures keyboard commands, echoes them to the screen and saves them to a file. The Atari also allowed commands to be typed and captured as part of its operating system. Of course this required care to get it right, but after a few attempts it normally became quite easy. The simple capture programs didn't have editing features, so ATASCII movies frequently had errors that were corrected by repositioning the cursor and printing over the mistake (a computer version of correction fluid).

Codepage table[edit]

Graphic characters[edit]

The following table shows the glyphs for ATASCII characters and the corresponding Unicode glyph. Characters without a corresponding Unicode glyph are represented by abbreviations for their names.

ATASCII[1]
_0 _1 _2 _3 _4 _5 _6 _7 _8 _9 _A _B _C _D _E _F
 
0_
 

2665
0

251C
1
(right ¼ block)
2518
3

2524
4

2510
5

2571
6

2572
7

25E2
8

2597
9

25E3
10

259D
11

2598
12
(upper ¼ block)
2582
14

2596
15
 
1_
 

2663
16

250C
17

2500
18

253C
19

25CF
20

2584
21

258E
22

252C
23

2534
24

258C
25

2514
26

241B
27

2191
28

2193
29

2190
30

2192
31
 
2_
 
SP
0020
32
!
0021
33
"
0022
34
#
0023
35
$
0024
36
%
0025
37
&
0026
38
'
0027
39
(
0028
40
)
0029
41
*
002A
42
+
002B
43
,
002C
44
-
002D
45
.
002E
46
/
002F
47
 
3_
 
0
0030
48
1
0031
49
2
0032
50
3
0033
51
4
0034
52
5
0035
53
6
0036
54
7
0037
55
8
0038
56
9
0039
57
:
003A
58
;
003B
59
<
003C
60
=
003D
61
>
003E
62
?
003F
63
 
4_
 
@
0040
64
A
0041
65
B
0042
66
C
0043
67
D
0044
68
E
0045
69
F
0046
70
G
0047
71
H
0048
72
I
0049
73
J
004A
74
K
004B
75
L
004C
76
M
004D
77
N
004E
78
O
004F
79
 
5_
 
P
0050
80
Q
0051
81
R
0052
82
S
0053
83
T
0054
84
U
0055
85
V
0056
86
W
0057
87
X
0058
88
Y
0059
89
Z
005A
90
[
005B
91
\
005C
92
]
005D
93
^
005E
94
_
005F
95
 
6_
 

2666
96
a
0061
97
b
0062
98
c
0063
99
d
0064
100
e
0065
101
f
0066
102
g
0067
103
h
0068
104
i
0069
105
j
006A
106
k
006B
107
l
006C
108
m
006D
109
n
006E
110
o
006F
111
 
7_
 
p
0070
112
q
0071
113
r
0072
114
s
0073
115
t
0074
116
u
0075
117
v
0076
118
w
0077
119
x
0078
120
y
0079
121
z
007A
122

2660
123
|
007C
124

21B0
125

25C0
126

25B6
127

Note the asymmetry in the selection of graphics characters: There are lower triangles but no upper triangles, a left half block but no right half block, and a lower half block but no upper half block. These missing characters could be displayed by using inverse video.

Characters 1B-1F and 7D-7F had a dual use as graphics characters and control characters.

The glyph representation in ROM used by ANTIC for display are assigned in different order from ASCII/ATASCII. For example, to display the characters "@ABC" on screen by writing directly to the screen memory, one would write the decimal values 32, 33, 34, and 35 rather than the ASCII/ATASCII values 64, 65, 66, and 67.

Control characters[edit]

[2]

ATASCII Function Keystroke
27  Escape key ESC
28  Cursor Up CTRL+-
29  Cursor Down CTRL+=
30  Cursor Left CTRL++
31  Cursor Right CTRL+*
125  Clear Screen CTRL+< or SHIFT+<
126  Delete BACK SPACE
127  Tab TAB
155  End of line RETURN
156  Delete Line SHIFT+BACK SPACE
157  Insert Line SHIFT+>
158  Clear Tab stop CTRL+TAB
159  Set Tab stop SHIFT+TAB
253  Buzzer CTRL+2
254  Delete Character CTRL+BACK SPACE
255  Insert Character CTRL+>

References[edit]

External links[edit]

ATASCII in action[edit]

Many Atari 8-bit users currently log in over telnet using a program called "Bobterm" to view the ATASCII graphics. If you are on a Win 95/NT computer, a terminal simulator called "ATS 2.0" can help you view these graphics as well. This can be found at: