Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
ATASCII
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Implementation== Atari 8-bit systems have three distinct sets of codes: interchange codes (ATASCII), internal codes (also called screen codes), and keyboard codes.<ref name="Reading the Keyboard Codes"/><ref name="INSIGHT: Atari"/> Keyboard codes represent the codes sent by the keyboard. Pressing one of the two modifier keys ([[Shift key|Shift]] and [[Control key|Control]]) modifies the value input by pressing other keys. Due to there being two modifier keys, there are four distinct keyboard codes that can be sent by each character; however, several keys (the exact keys depend on the model) do not send a control code if they are pressed while holding both Shift and Control.<ref name="Reading the Keyboard Codes"/> When entering text, the Atari keyboard handler converts these signals into ATASCII.<ref name="Mapping the Atari"/> ATASCII and internal codes contain the same character set, but indexed differently. ATASCII codes are used by [[Atari BASIC]], while internal codes are used to look up how to render the character on-screen.<ref name="Reading the Keyboard Codes"/> Atari 8-bit systems have several distinct graphics modes; these modes can be classified as pure text modes, pure graphics modes, or mixed modes. Modes 0, 1 and 2 represent pure text modes, while Modes 3 and above represent mixed or pure graphics modes (the exact number of distinct modes depending on the model).<ref name="Basics of Atari Graphics"/> Mode 0 displays characters at the default size, Mode 1 displays them twice as wide (but the same height), and Mode 2 displays them twice as wide and twice the height.<ref name="Basics of Atari Graphics"/> Mode 0 is the default graphics mode and supports 128 unique characters in one of two colors (regular or [[inverse video]], depending on the upper bit); Modes 1 and 2 only support 64 unique characters, but support four different colors (as they use the upper two bits as color information instead).<ref name="INSIGHT: Atari"/> The 64 characters available in Modes 1 and 2 are the first 64 characters in the internal code, which correspond to ATASCII codes 32 to 95 (0x20 to 0x5F).<ref name="Mapping the Atari"/> This includes all uppercase letters and punctuation, but excludes lowercase letters and graphics characters. The Atari screen editor implements the text cursor by simply inverting the character at the cursor position (by [[Exclusive or|XOR]] with 0x80). It does not flash. ===Inverse video=== ATASCII only has 128 unique graphic characters, with the upper 128 graphic characters (index 128 to 255) being [[inverse video]] variants of the lower 128 graphic characters (index 0 to 127). 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 as the inverse video variant of its counterpart between 0 and 127, using a bitwise negation of the character's glyph. This is done by the [[ANTIC]] chip. Due to this behavior, there is asymmetry in the selection of block-drawing characters. In normal video, 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 ostensibly missing characters can be displayed by using inverse video. ===Alternate character sets=== [[File:Atascii-international.png|thumb|x80px|The international character set included in the XL and XE models]] Atari 8-bit computers, via the [[ANTIC]] coprocessor, supported indirection of the character set graphics, allowing a program to redefine the graphical glyphs that appear for each ATASCII character.<ref name="INSIGHT: Atari"/> This can be used as a new [[font]] for text, to support an additional character set, or for [[Tile-based video game|tile graphics]] in a video game or other application. Cycling between multiple redefined character sets can be used to provide simple animation at very little CPU cost (in exchange for memory used to store the character set data). Altering a character set in RAM can also be used for animation. In the XL and [[Atari XE|XE]] lines, the Atari OS ROM includes an "international character set" that replaces 29 of the graphical glyphs with Latin alphabetical characters containing [[diacritic]]s, such as [[e-acute]] (Γ©). The OS built into the [[Atari 1200XL]], the only Atari 8-bit model with [[function key]]s, allowed users to switch between the standard and alternate character sets by pressing {{keypress|CTRL|F4}}.<ref>{{cite book |title=The Atari 1200XL Home Computer Owner's Guide |date=1982 |publisher=Atari |url=https://archive.org/details/atari-1200xl-guide/mode/2up}}</ref> Later XL and XE models required the user to update a register in RAM (e.g., via a [[PEEK and POKE|POKE]] command in [[BASIC]]).<ref name="INSIGHT: Atari"/> In some regions, a different character set was included instead of the default international character set, in order to better accommodate the target market, including Polish, Arabic, and Hebrew. Atari 192XT and 256XT systems distributed in [[Eastern Europe]] by P.Z.Karen had a Polish character set in place of the international character set.<ref name="atariki">{{cite web |title=ATASCII |url=http://atariki.krap.pl/index.php/ATASCII |website=Atariki |language=pl |date=5 May 2020}}</ref><ref name="mcurrent">{{cite web |last1=Current |first1=Michael |title=Atari 8-Bit Computers Frequently Asked Questions List |url=https://mcurrent.name/atari-8-bit/faq.txt |publisher=comp.sys.atari.8bit newsgroup |access-date=29 November 2023 |date=29 May 2023}}</ref> The Atari 65XE Najm, which was distributed in the Middle East, has an Arabic character encoding as its default encoding and displays text [[Right-to-left script|right-to-left]], while the international character set was replaced by the standard ATASCII encoding.<ref name="mcurrent"/><ref>{{cite web |author1=Nosty |title=Atari Allacha |url=https://atarionline.pl/v01/index.php?id=1184283958&ct=wynalazki |website=Atari Online.pl |language=pl |date=2007-07-13}}</ref><ref>{{cite web |last1=Parent |first1=Eric |title=ATASCII Character Sets |url=http://joyfulcoder.net/atari/atascii/ |website=Joyful Coder |archive-url=https://web.archive.org/web/20160316000320/http://joyfulcoder.net/atari/atascii/ |archive-date=16 March 2016}}</ref><ref>{{cite web |last1=Savetz |first1=Kevin |title=Exploring the "Star" Arabic Atari 65 XE |url=https://www.savetz.com/vintagecomputers/arabic65xe/ |publisher=Atari 8-Bit Computer WebRing |access-date=29 November 2023 |date=19 November 2003}}</ref> Hebrew versions of the Atari 600XL and 800XL were distributed in Israel, which had a Hebrew character set in place of the international character set. The Hebrew character set had Hebrew letters instead of lowercase Latin letters, but preserved the uppercase Latin letters. When typing in Hebrew mode, typing Latin letters advances the cursor to the right, while typing Hebrew letters advances the cursor to the left.<ref name="mcurrent"/><ref>{{cite web |author1=The Modern Atari 8bit computer |title=Hebrew ATARI XL Computer |url=https://www.youtube.com/watch?v=_xYnU0KEFsk |website=YouTube |access-date=29 November 2023 |language=en |date=11 October 2017}}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)