Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Acorn Atom
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
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!
== Software == It had a built-in minor variation of [[Acorn System BASIC]], a fast but idiosyncratic version of the [[BASIC programming language]] developed by [[Sophie Wilson]], which included indirection operators (similar to [[PEEK and POKE]]) for bytes and words (of 4 bytes each); the use of a semi-colon to separate statements on the same line of code (instead of the colon used by most if not all other versions of BASIC); and the option of labels rather than line numbers for GOTO and GOSUB commands. [[Assembly language|Assembly code]] could be included within a BASIC program, because the [[BASIC interpreter]] also contained an [[Assembly language#Assembler|assembler]] for the 6502 assembly language which assembled the inline code during program execution and then executed it. This was unusual. String handling was based on arrays of characters. A byte vector {{code|A()}} to {{code|Z()}} could be {{mono|DIM}}ensioned and then referred to with the string operator {{code|$A}} to be treated as a string. This sample program, adapted from ''Atomic Theory and Practice'', demonstrates some of Atom BASIC's peculiarities: <syntaxhighlight lang="basic"> 1 REM Encoder/Decoder 10 S=TOP; ?12=0 20 INPUT'"CODE NUMBER"T; REM Use code number to seed random number generator 30 !8=ABS(T) 40 INPUT'$S 50 FOR P=S TO S+LEN(S); REM For each character, if it is a letter add the next random number to it, modulo 26. 60 IF ?P<#41 GOTO 100 70 R=ABS(RND)%26 80 IF T<0 THEN R=26-R 90 ?P=(?P-#41+R)%26+#41 100 NEXT P 110 PRINT $S 120 GOTO 40 </syntaxhighlight> In late 1982, Acorn released an upgrade board for the Atom which allowed users to switch between Atom BASIC and [[BBC BASIC|the more advanced "BBC BASIC"]] used by the [[BBC Micro]].<ref name="acornuser198209_bbcbasic">{{ cite magazine | url=https://archive.org/details/AcornUser002-Sep82/page/n41/mode/1up | title=BBC BASIC for the Atom | magazine=Acorn User | date=September 1982 | access-date=28 April 2025 | pages=38 }}</ref> The upgrade was purely to the programming language; the Atom's hardware capabilities remained unchanged, and hence, contrary to some pre-release beliefs, the BBC BASIC ROM did not allow Atom users to run commercial BBC Micro software, since nearly all of it took advantage of the BBC machine's much more advanced graphics and sound hardware and greater RAM capacity. Commercial BBC Micro cassettes could not have been loaded anyway, as they ran at a transfer rate of 1200 baud and the Atom's cassette interface only supported 300 baud. The following is the memory map for the Atom. Shaded areas indicate those present on the minimal system. {| class="wikitable" border="1" |- !Hex Address !Contents !Annotations |- |0000 | style="background:silver" | Block Zero RAM | 1 KB RAM |- |0400 |Teletext VDG RAM | rowspan ="8"| |- |0800 |VDG CRT Controller |- |0900 |- |0A00 |Optional FDC |- |0A80 |- |1000 |Peripherals space |- |2000 |Catalogue buffer |- |2200 |Sequential File buffers |- |2800 |Floating-point variables | rowspan="2"|Internal RAM<br />5 KB max. |- |2900 |Extension Text space RAM |- |3C00 |Off-board Extension RAM |- |8000 | style="background:silver" |8000-81FF for mode 0 (512 bytes text) | rowspan="5"|Video and<br />BASIC RAM<br />6 KB max. |- | | style="background:silver" |8000-83FF for mode 1 (1 KB graphics) |- | |8000-85FF for mode 2 (1.5 KB graphics) |- | |8000-8BFF for mode 3 (3 KB graphics) |- | |8000-97FF for mode 4 (6 KB graphics) |- |9800 | |rowspan="3"| |- |A000 |Optional Utility ROM |- |B000 | style="background:silver" |PPIA I/O Device |- |B800 |Optional VIA I/O Device for Printer Interface |- |C000 |style="background:silver"|ATOM BASIC Interpreter |4 KB ROM |- |D000 |Optional Extension ROM |rowspan="2"| |- |E000 |Optional Disk Operating System |- |rowspan="2"|F000 |style="background:silver"|Assembler |rowspan="2"|4 KB ROM |- |style="background:silver"|Cassette Operating System |} The manual for the Atom was called [[Atomic Theory and Practice]] and was written by [[David Johnson-Davies]], subsequently Managing Director of [[Acornsoft]]. The Acorn [[local area network|LAN]], [[Econet]], was first configured on the Atom.<ref name="pcn19830831_atom">{{ cite magazine | url=https://archive.org/details/Personal-Computer-News/PersonalComputerNews025-31Aug1983/page/n28/mode/1up | title=Adieu Atom | magazine=Personal Computer News | date=25 August 1983 | access-date=23 October 2021 | last1=Wheelwright | first1=Geof | pages=27 }}</ref>
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Acorn Atom
(section)
Add topic