The Unofficial Atari 8-bit New User, Emulator Help FAQ

Welcome to: The Atari 8-bit New User, Emulator Help FAQ Revision 2.1, August 29, 1997 By Bill Kendrick _________________________________________________________________ For general help (hardware, magazines, etc.) please check the Official Atari 8-bit FAQ file: * [1]Atari 8-bit FAQ ( q/faq.html) * You can also ask the FAQ keeper, Michael Current, for a copy at: [2] * The two parts of the FAQ are also posted on the 1st and 15th of each month to the [3]comp.sys.atari.8bit newsgroup. If you want the latest copy of this FAQ: * [4]Atari 8-bit New User and Emulator Help FAQ ( * [5]Ver. 1.5 En Espanol ( * You can also instantly receive a text copy of this file by sending e-mail to the author at: [6] and placing the sentence "send emulator faq" in the "subject" of the message. * This file is also occassionally posted in text format on the [7]comp.sys.atari.8bit and [8]comp.emulators.misc newsgroups. _________________________________________________________________ Recent Changes: * _Since v.2.0 (August 1, 1997):_ Changed all "gopher" links to UMICH into "http" (web) links. * _Since v.1.6 (February 22, 1997):_ Cleaned up a lot. Info. on "large text" modes added (oops!). Info. on "Covox" audio hardware upgrade added. Mentioned ".PRO" along with the other disk image formats. Made the "DOS QuickReference" less MSDOS-centric by adding Unix examples of the AtariDOS commands. Explained COLOR and SETCOLOR more thoroughly. FAQ now points to the "Atari BASIC Instructions" document. APE usage described in "Getting Atari Files to an IBM." * _Since v.1.5 (July 7, 1996):_ Cleaned up formatting of some URLs. Added info about Rainbow 95. * _Since v.1.4 (May 13, 1996):_ Corrected bad Web URLs and updated links to Atari Archive * _Since v.1.3 (April 16, 1996):_ Corrected Micro Discount's phone numbers, added information about "ACE". Summary of Atari 8-bit's and emulated 8-bit Atari's: * Real Ataris: Atari 8-bit computers were produced between 1979 and 1987. The major models released were the: + _400_ - 8K-16K, 400/800 OS, CTIA or GTIA graphics (depends when made) + _800_ - 8K-16K-48K, 400/800 OS, CTIA or GTIA graphics (depends when made) + _1200XL_ - 64K, 1200XL OS, GTIA graphics + _600XL_ - 16K, XL OS, GTIA graphics + _800XL_ - 64K, XL OS, GTIA graphics + _800XE_ - 64K, XL OS, GTIA graphics (European release) + _65XE_ - 64K, XL OS, GTIA graphics + _130XE_ - 128K, XL OS, GTIA graphics + _XEGS (Game System)_ - 64K, XEGS OS ("Missile Command" game built-in), GTIA graphics All of the XL's except the 1200XL had BASIC installed on ROM. BASIC can be purchased on cartridge for the 400, 800 and 1200XL. * Emulated Ataris: + On IBM PCs/compatibles: o _PC Xformer 2.x._ Limited Freeware demo (no source code). o _PC Xformer 3.0x._ Powerful Commercial version (no source code). o _XL-It!_ Powerful Public Domain version (no source code yet). o _ACE_ Unfinished, Public Domain "vace" for SVGA (including source code). o _Rainbow 95._ Limited Freeware demo (no source code). o _Rainbow 95._ Powerful Registered Shareware version (no source code). + On Apple Macintoshes: o _Rainbow._ Limited Public Domain demo (no source code). o _Rainbow._ Powerful Registered Shareware version (no source code). + On Atari STs, TTs, and Falcons: o _ST Xformer 2.x._ Limited Public Domain (previously commercial) (including source code (I think)). + On UNIX and X Window: (including PC and Amiga) o _Atari 800_ Powerful Public Domain version. o _XL-It!_ Powerful Public Domain version. o _ACE_ Unfinished, Public Domain "xace" for X-Window (including source code). _________________________________________________________________ Capabilities of an Atari 8-bit: Graphics: * _Playfield Graphics (Bitmaps):_ The Atari has maximum resolution of 320 x 192 x 2 colors. (standard, non-overscanned screen). 160 x 192 x 4, 160 x 192 x 2, 160 x 96 x 4, 160 x 96 x 2, 80 x 48 x 4, 80 x 48 x 2, and 40 x 24 x 4 graphics are also supported. GTIA (newer 800's and all XLs/XEs) graphics support 80 x 192 x 16 shade-only, 80 x 192 x 16 hue-only, and 80 x 192 x 9 color screen modes. Special software-based modes (using page-flipping and interlacing) can achieve 80 x96 x256 colors, 80 x192 x256 colors, 80 x192 x4096 colors, and 160 x192 x30 greys. * _Text:_ In all text modes, character set indirection (fonts) is available. The XL/XE's also come with a second ROM-based font which contains "international characters" in place of the graphical shapes. 40 x 24 x 256-character (128 normal, 128 inverse) text mode is standard (2 colors). 20 x 24 x 64-character and 20 x 12 x 64-character modes are built-in. (The remaining 192 characters are identical to the first 64, but in 3 different colors) 40 x 24 x 128-multi-colored-character (4 colors per character allowed, the other 128 characters have pixels of the 4th color changed into a color #5) and 40 x 12 x 128-multi-colored-character screen modes are available, and in the XL/XE's are available through the OS (on the 400/800, you must create them yourself). * _Underscan/Overscan:_ Normal (bordered), narrow (underscanned), and wide (overscanned) screen widths are available. In modes which typically have 40 bytes per line, narrow mode presents 32 and overscanned mode presents 64 bytes per line. * _Display Lists:_ Screen modes can be mixed (by lines) down the screen using the Display List (similar to "Copper Lists" on the Commodore Amiga; a "program" which is executed by the ANTIC graphics chip every screen refresh (60 times per second on real NTSC Ataris, 50 times per second on real PAL Ataris). All other screen attributes (color, player/missile horizontal position, screen width, player/missile/playfield priority, etc.) can be ajusted at any point down the screen via a "Display List Interrupt," where the CPU is interrupted to execute special code when a line containing an "interrupt" is processed by ANTIC. * _Scrolling:_ Fine scrolling (both vertical and horizontal) can be enabled on any line on the screen. * _Player/Missile Graphics (Sprites):_ Four 8-bit wide and 128 or 256 byte high single-color "players," and four 2-bit wide, 128 or 256 byte high single-color "missiles" are available. A mode to combine the 4 missiles into a 5th 8-bit wide player is also available, as is a mode to XOR colors or blacken out colors when players overlap (good for making three colors out of two players!) Players and missiles have adjustable priority (you can specify which players and missiles appear "on top of" or "below" other players, missiles or playfield graphics) and collision detection (where, instead of creating your own complicated code, the ANTIC chip can tell you when players and/or missiles touch each other or the playfield). Sound: * Four voices of 8-bit pitch-resolution (3.5 octaves), 4-bit volume-resolution, and one of 8 "distortions" can be produced. 2 voices (voices 1 and 2, and/or voices 3 and 4) can be combined to make 16-bit pitch-resolution. Also, 4-bit volume-only modes can be enabled for digitally sampled soundreplay. * A fifth "voice" is produced by the internal speaker on Atari 400/800's (for keyclick and buzzer) and in the XL's and XE's this was rerouted through the normal audio output. (The OS's keyclick can be disabled, and you can of course create your own sound.) * Some hardware stereo upgrades (like "Gumby") exist which double the number of voices and add a right-channel to provide true stereo. (Not much software supports this.) * Some hardware upgrades (like "Covox") exist which double the resolution of the "volume-only" audio capabilities of the Atari to 8-bits. (Not much software supports this, either.) _________________________________________________________________ Objective of this file: At the time of its release (mid 1994), much discussion went on in the [9]comp.sys.atari.8bit Usenet newsgroup about the Atari 8bit emulator for IBM / MSDOS based computers, PC Xformer 2.0 (XF2 for short). Many people in the 8-bit community had gotten fed up with the XF2-based questions which did not pertain to them, or to the very simple questions which came up time and again which bothered regular readers / digest subscribers. This file was created to reduce the number of 'newbie' and XF2 questions. Now it's becoming a fairly good reference, and of course includes information on all of the other emulators that have come since then. This FAQ will present answers to simple questions like "how do I turn off BASIC" (a good answer to that of course is, READ THE FRIGGIN' MANUAL) and "how do I get a disk directory?" It will also direct people who are unaware of the large amount of Atari 8-bit support (NOT NECESSARILY EMULATOR SUPPORT) and perhaps become a supplement to the many official and unofficial files floating around the net (like the official FAQ, the Vendor/Developer List, the Who's Who list, etc.). _________________________________________________________________ -- Questions and Answers: -- This section contains some typical new-user and emulator-user questions. The answers are directed to both regular Atari users and emulator users. 1. _What does "READY" mean?_ This is the Atari BASIC prompt. See below for hints on Atari BASIC. 2. _Why doesn't this program load?_ The program may not work under the Atari 800 Operating System, it may require the XL/XE Operating System. Be sure you're in 800XL or 130XE mode. (Note: Not all (versions) of emulators support XL/XE modes!) It may not work under the XL/XE Operating System (rare cases), switch to 800 mode. Be sure you turned BASIC off before trying to load it if it cannot run with BASIC on. It might be a BASIC program! Be sure you're in BASIC and use the BASIC "RUN" or "LOAD" (and then "RUN") command. Also, be sure it works with the BASIC you have. Some programs only run in BASIC XL or XE (which are both cartridge-based BASIC's not easily available to an emulator), and some run with TurboBASIC XL (disk-based). (Note: BASIC files usually end in the extension ".BAS," ".BXL," or ".TBS," for Atari BASIC, BASIC XL, and TurboBASIC XL, respectively.) It may just refuse to run on the emulator. 3. _How do I turn off BASIC?_ To toggle BASIC on and off in PC Xformer, press [SHIFT]-[F10]. To toggle BASIC on and off in Rainbow, ???. To toggle BASIC on and off in Atari800, ???. To toggle BASIC on and off in XL-It!, ???. To toggle BASIC on and off in ST Xformer, ???. To toggle BASIC on and off in ACE, ???. To turn BASIC off on a real Atari, hold the [OPTION] key as you're booting. (This should work on emulators, too, but is usually difficult to accomplish!) 4. _Why doesn't this game/program run correctly?_ It may use player/missle collision detection which is not supported on some versions of emulators. See "Why doesn't this program load?", above. 5. _How do I exit the emulator?_ To exit PC Xformer, press [F5]. Note: this does NOT temporarily 'shell' or 'jump' to MSDOS. To exit Rainbow, press [Apple]-[Q] or select "Exit" from the "Apple Menu". To exit Atari 800, ??? or close the window (in X Window). To exit XL-It!, ??? or close the window (in X Window). To exit ST Xformer, ???. To exit ACE, ??? or close the window (in X Window). 6. _How do I get to Atari DOS?_ In BASIC, type "DOS" at the "READY" prompt. Reboot without BASIC on. Be sure you have a DOS-bootable disk image installed in drive 1 ("D1:"). 7. _How do I use files which are not in disk images with an emulator?_ To "install" files as though there were plain disks with PC Xformer, simply add the files to the command line and use them as their respective drives (be sure the first drive is a DOS-bootable disk image). Example: XFORMER MYDOS45.ATR filename.ext To use a file from your Mac in Rainbow, make sure the disk image in drive 1 has enough space for the file, and select ???. The file will be added to that disk image. To use Unix files in Atari800, use the H drive. ???. To use Unix files in XL-It!, ???. To use MSDOS or Unix files in ACE, ???. Use the MSDOS program S2PC which allows you to access files within a MyDOS/compatible .ATR disk image. S2PC let's you read, write, delete, change directory, and view the directory of a MyDOS/compatible .ATR disk image. It can be used via command-line parameters from MSDOS, or as a menu. Use the MSDOS program ATARIMG, which is much like S2PC but has a nicer, more graphical (less-menu driven) interface. (Unfortunately, this doesn't run on all IBM's!) Use the Mac program Virtual Disk Editor ???. 8. _Just what ARE .ATR, .PRO and .XFD files?_ Refer to the XFormer, SIO2PC and APE manuals for details on these files. Simply put, they are Atari disks, stored as files which are as big as the disk they represent (an 88k disk image will be approximately 88k.) .ATR files are used by SIO2PC and APE (see below) as well as most Atari emulators. .XFD files are used by ST Xformer and PC Xformer. .PRO files are like .ATR files, but they include some copy-protection scheme information; these files are used by APE. 9. What are SIO2PC and APE? Refer to the SIO2PC manuals for details on this program. Refer to the APE manual and SIO2PC hardware manual for details on this program. These are a programs which run on IBM/compatibles under MSDOS. (APE also runs fine under "dosemu" for IBM/compatibles running Linux). With the use of of a simple (and relatively inexpensive) cable, the software makes the IBM act as though it were a number of Atari peripherals. SIO2PC emulates up to four disk drives (any drive ID numbers from 1 to 8 are allowed) and a printer. APE emulators up to eight disk drives, a printer, and a modem (RS232). They use disk image files (.ATR's) and can also let the Atari access plain IBM files. SIO2PC does this much like PC XFormer does, making the single file its own disk. APE allows you to navigate your PC's drives through an Atari drive. The printer emulation of these programs redirect Atari "P:" writes to the PC's printer. SIO2PC can also direct the output to the screen or to a plain IBM file. Different text translations/conversions are available. (APE also allows keyboard macros, command key redefinition, the ability to save the current drive/etc. configuration and load it later as a "block", and the ability to both emulate copy protected disks (with it's own extension of the ".ATR" format, the ".PRO" format (which will hopefully be used in future versions of Atari emulators)) and create disk images from copy protected disks (with a special cable). SIO2PC may soon have this ability as well, since the documentations say it has been planned for a while.) _What is XFSIO?_ Refer to the XFSIO manual for details on how to use this program. XFSIO is a shell for PC XFormer, XLiT!, APE and SIO2PC which allows you to set the command switches for the previously mentioned programs. It also allows you to comment each 'virtual disk' with up to 132 characters, and can search the database to find which disk a particular title is on. _________________________________________________________________ -- Getting around on the Atari: DOS and OS -- Note: This section will simply discuss Atari BASIC, the Atari OS, and Atari DOS 2.5 and MyDOS 4.5x (because these topics seem the most relevant to the less-knowledged/experienced Atari 8-bit users). No emulator-specific information will be presented. * _AtariDOS and MyDOS QuickReference:_ MyDOS (4.50 and 4.53) presents the user with the following commands: + _[*] Disk directory_ of current directory (like "dir *.*" in MSDOS and "ls *" in Unix) + _[1]-[9] Disk directory_ of a disk drive (like "dir a:\*.*" to "dir i:\*.*" in MSDOS) + _[A] Disk directory_ (like "dir " and optional output destination in MSDOS) You'll be prompted for a directory listing mask (like "D1:*.*" or "D3:GAMES:*.EXE") + _[B] Quit to cartridge_ + _[C] Copy_ file(s) ("[source],[destination]" copies from one place or disk to another, just "[source]" copies from one place on one disk in a drive to the same place on another disk in the same drive (asks for swapping)) + _[D] Delete_ file(s) (add "/N" to delete without being prompted first) (add ">*.*" or ":*.*" after a subdirectory name to delete the files within it. A subdirectory name alone will delete the subdirectory (if it is empty and unlocked)). (Acts like both "del" and "rd" in MSDOS and "rm" and "rmdir" in Unix.) + _[E] Rename_ file(s) (renaming multiple files is allowed, but be careful) (Like "ren [old] [new]" in MSDOS and "mv [old] [new]" in Unix. With MyDOS and AtariDOS use "," between old and new masks.) + _[F] Locks_ file(s) from overwrite, deletion and appending (like "attrib +r [mask]" in MSDOS and "chmod 555 [mask]" in Unix.) (It makes them "read-only.") + _[G] Unlocks_ file(s) (returns them to their default state). + _[H] Writes DOS_ files to a disk (this creates a disk which boots with the current version of MyDOS you are using and also has the menu file "DUP.SYS" on it as well). + _[I] Formats_ a disk (add "/N" after the drive number to do a quick-format of an already-formatted disk (ie, just a very fast way to delete all the files on the disk.)) + _[J] Duplicate disk_ (copies an entire disk, including boot sector, and every other sector!!! When using disk images, as with emulators, SIO2PC or APE, it's much quicker to just copy one .XFD or .ATR to another). + _[K] Make binary file:_ saves memory and makes it binary-loadable. See [L]. + _[L] Load binary file:_ loads a compiled program. (like "[filename]" in MSDOS, except any ".EXE", ".COM", ".OBJ", etc. is still required.) + _[M] Run at address._ Mainly for advanced users. Reboot is "E477", reset is "E474" (these are the hex values of the addresses where the routines to reboot and reset are.) + _[N] MEM.SAV:_ when this is on, whenever you go to DOS (from BASIC, for example) it will write what is in memory to a file "MEM.SAV" so that when DUP.SYS (the menu) loads it isn't lost forever. When you exit DUP.SYS with the "B: Run Cartridge" command, MEM.SAV is reloaded and the environment should be as it was when you left. It's probably quicker to simply "SAVE" your programs (if in a language) which aren't nearly as big as all of the memory that MEM.SAV saves. + _[O] Options:_ this presents the user with some options. Mainly for advanced users or special setups. See the MyDOS docs for details. + _[P] Set density._ Forces a drive to be recognized at a certain density if MyDOS can't figure it out. (??) + _[Q] Make a subdirectory._ (like "md" or "mkdir" in MSDOS). + _[R] Set default directory._ (like "cd" in MSDOS and "cwd" in SpartaDOS) This makes "D:" now the same as a subdirectory or other drive. ie, "D2:" will make all calls to "D:" act as though they are to "D2:" instead. Some programs when prompting for filenames do not add "D:" to the beginning if one is not present, they add "D1:". If you don't trust a program to look to "D:" instead of "D1:" and you want it to look to some place OTHER than "D1:" (ie, where "D:" is pointing which could be a VERY long path list), just add "D:" to the beginning. ALSO, some programs don't even ADD "D:"'s if they aren't in the filenames you give and may give errors (138, for example: device not present, ie, if you said "TESTFILE.DAT" it may think you want "T:" instead of "D:TESTFILE.DAT"). + _[S] Set ramdisk number._ This is also under [O]ptions. + _[V] Verify writes._ This is also under [O]ptions. When Verify is on, writes will be slower but 100% reliable. With it off, writes will be much faster but possibly not as reliable (on bad disks, for example). Default is off. AtariDOS presents the user with the following commands which are identical to MyDOS's commands: A,B,C(no swaping),D,E,F,G,H, I(some densities),J,K,L,M,N AtariDOS 2.5 presents the user with the following commands not present or not the same as MyDOS's commands: + _[O] Duplicate file._ This is used to copy a file from one disk to another using only one drive. (In MyDOS, giving just a source will make [C]opy act like DOS 2's Duplicate.) + _[P] Format Single._ In DOS 2.5, this is used to format 88k (Single Density) disks. To format an Enhanced Density (127k) disk, just use [I]. In DOS 2.0, [I] is the only format option and only handles 88k. (I may be wrong, but I have never had a Double Density drive under Atari DOS 2.0 or 2.5!) * _General DOS and OS questions:_ 1. _How do I access the disk drives?_ First, you need to have booted with a DOS. All but one DOS is on disk (SpartaDOS X is on cartridge). When the Atari boots up, it does some of its 'boot-up stuff' which includes looking for a disk drive connected and turned on which is set up as drive #1. It then begins to load from the disk's "boot sector". If none exists or there's a nasty error on the disk, you get the "BOOT ERROR" notice until the error is fixed. (On SpartaDOS disks, even non-bootable disks have a boot sector, but all the boot sector is is a small program which displays a 'not a boot disk' error). To end the digression, the answer to _'how do I access the disk drives_' starts with '_you must boot the Atari with a DOS_'. Check the 8-bit FAQ and the UMICH and other FTP archives for lists of DOSes available for Ataris, but the most used are Atari DOS (for compatibility with almost ALL older software), MyDOS (for an Atari DOS compatible high-end DOS), and SpartaDOS (for a very high-end DOS which looks much like MS-DOS but unfortunately cannont run all software which runs fine with Atari DOS and MyDOS.) Note: SpartaDOS does NOT run on Atari 400's and 800's (except the cartridge versions and I believe disk version 1.1). Now that you have a DOS loaded, the Atari understands the "D:" device (see below for Atari devices). Since there is more than one disk drive, you have to be able to tell them apart. The Atari uses numbers when it has more than one of the same device, so "D1:" is drive 1, "D2:" is drive 2, "D3:" is drive 3, etc.! After the "D:" device name comes the filename. Of the most used DOSes, only MyDOS supports lowercase letters in filenames, but since most programs force uppercase entry for filenames, nobody really seems to use lowercase in their filenames. 2. _How do I copy things from one place to another?_ Atari DOS and MyDOS give you the "C" command in their menu interface. When it asks for a source and destination, you can use wildcards (* and ? like in most other DOSes) to copy more than one file at a time. You can also present no destination so that a file can be copied from one disk in drive 1 to another disk in drive 1, for example, and the DOS will ask you to insert each disk. 3. _What are subdirectories?_ Subdirectories are places where files go which are just like the normal directory of a disk, except the they happen to be WITHIN that normal directory, or even another subdirectory. For example, you can have your disk divided up into the "GAMES" files, the "GRAPHICS" files and the "SOUNDS" files. A directory of the disk (the "root" or "base" or "trunk" directory) will simply list the three subdirectories, "GAMES", "GRAPHICS" and "SOUNDS". Then, if you ask for a directory listing of the "GAMES" subdirectory, you will see the files (and perhaps other subdirectories) within the "GAMES" directory. Think of it as a tree. For people familiar with Macintoshes, "Folders" are simply subdirectories. A window which appears when you open a "Disk" Icon is the "root", and all of the "Folders" within it have more windows in them which also have file and folder icons. Here's a comparison to using subdirectories on different DOSes for the Atari and with MSDOS and Unix root 'GAMES' 'SPACE' within 'GAMES' AtariDOS D: n/a n/a MyDOS D: D:GAMES: D:GAMES:SPACE: SpartaDOS D: D:GAMES> D:GAMES>SPACE> MSDOS (IBM) \ \GAMES\ \GAMES\SPACE\ UNIX / /games/ /games/space/ Note, only Atari DOS would be using drive 1 here, all other DOSes are not necessarily using drive 1, and MyDOS and SpartaDOS may already 'be within' a subdirectory. In MyDOS and SpartaDOS (and MSDOS), you can change the 'current' or 'default' directory to a different place (a different drive or a subdirectory). "D:" can stand for "D1:" (like AtariDOS always does) or "D2:GAMES:SPACE:"! PLEASE READ THE MYDOS OR SPARTADOS DOCUMENTS FOR DETAILS ON THIS! 4. _What does "P:", "E:", "K:", etc. mean?_ As stated before, the Atari has devices. "D:" is added when a bootable disk in drive 1 is read. Other exist as well: o C: Cassette Readable and writeable, no filenames. o D: Disk Drive Readable, writeable, random access, directory, files, multiple devices (up to 9 on MyDOS and newer SpartaDOS, 8 on AtariDOS). o E: Editor Readable, writeable. This is how input from the keyboard and output to the screen is normally handled. If you wish to type a small file up by hand and have it sent to the printer or a file, use "E:" as the source. o G: Graphics Printer Writeable. This is not built into the Operating System but must be loaded. This is an Epson-compatible printer driver which can easily dump graphics. o K: Keyboard Readable. This is just the keyboard. Input from it is not `echoed' back like with the "E:ditor". o M: "Multi-Mouse" Readable, writeable? This is not built into the Operating System but must be loaded. This is a handler which runs in the background and accepts input from either a mouse, a joystick or a touch-tablet and displays a mouse pointer on the screen. o M: "Multiplexer" Readable, writeable. For Atari's connected to each other via a "Multiplexer" local area network, the "MUX" Operating System replacement provides an "M:" device for computer-to-computer communication. o P: Printer Writeable. Send data to this and it will appear on the printer. You can print files (documents, etc.) by using "P:" as the destination. The Atari XL/XE OSes support "P1:" and "P2:", although I believe this usage is rare. o R: RS232 (COM port) Readable, writeable, concurrent mode. This is not built in to the Operating System, but is loaded. It supports modems. The Atari 850 Interface has it's "R: handler" 'built-in', which means the Atari also looks for an 850 (or other compatible interface) and receives the "R: handler" code from it. Other interfaces and the Atari 'direct-connect' modems require a file to be loaded which contains the "R:" code. "R1:" and "R2:" is also supported, but also its usage seems rare. o W: Windowing (screens) Readable, writeable. This is a graphics 8 graphical windowing driver (rarely used, unfortunately!). It must of course be loaded as well. o Z: RTime8 Real-time Clock Readable, writeable. This is also not built in to the OS, but loaded. This is loaded from disk and lets the user access the "RTime8" real time, battery-backed up clock for the Atari 8-bit. (This is a cartridge-based device). I am unaware of any "Z:" clone which let's you set the Atari internal (non-real time, non-battery-backed-up) clock if you do not have an RTime8, although I'd love to see one! [hint!!] 5. _How do I print something from DOS?_ As stated above, just use the "C"opy command, then use the file you wish to print as the 'source', and "P:" as the 'destination'. Example: "D1:DOCUMENT.TXT,P:" Except for ASCII text files, you'll usually want to print from within a program capable of opening the file, otherwise you'll print garbage. A good rule of thumb is if you can see it when you do a "C"opy to the "E:"ditor, then you can print it by "C"opying it to the "P:"rinter. _________________________________________________________________ -- Getting around on the Atari: BASIC -- 1. _What does "READY" mean?_ Again, this is simply the prompt that Atari BASIC (and most older BASIC's) presents the user when it is in "Immediate" mode. + Entering a command will cause it to act immediately. + Entering a line number and then a command will place that line into the current program (adding the line if that line number didn't exist before, or overwriting it if it did). + Entering a line number alone will remove that line from the current program. + To start a program, use the "RUN" command. + To erase a program, use the "NEW" command. + To clear variable values to 0 and kill string and array declarations (thus freeing the memory they take up), use the "CLR" command. + To load a program, use the "LOAD" command followed by a filename (see below). To load and run a program, use the "RUN" command followed by a filename. + To save a program, use the "SAVE" command followed by a filename. + To list a program, use the "LIST" command followed by an optional destination device ("D:file.lst", "P:"rinter) and an option start and end set of lines seperated by (a) comma(s). Examples: "LIST 10" to see line 10. "LIST 10,20" to see lines 10 through 20. "LIST 10," to see lines 10 to the end (TurboBASIC XL and BASIC XL(?) only!) "LIST "P:"" prints the listing to the printer. (Beware the graphics characters will probably mess up the printout on most printers!) "LIST "D:A.LST",10,20" saves the listing of lines 10 through 20 to the file "A.LST" 2. _Where can I learn Atari BASIC?_ See the "[10]Atari BASIC Instructions" document for info! ( 3. _How do I quit BASIC?_ + Type "DOS" to quit BASIC and return to DOS. + Type "BYE" to quit BASIC and exit to the OS's "bye" routines (Atari Memo Pad on 400/800's, Atari logo on 1200XL's, and Self Test on other XL's and XE's). (Note: On 1200XL's, use [HELP] to go to the Self Test when the Atari logo appears). + Reboot with [OPTION] held down to disable BASIC. (For emulator users, remember there are ways to totally disable BASIC.) 4. _Why don't strings work?_ Strings must be "dimensioned" (declared) like arrays in Atari BASIC. Strings are special character arrays. See the BASIC usage/etc. files mentioned in the answer to question 2. Simply put, to make a string that will accept up to "#" character, use DIM [name]$(#). Example: DIM A$(10) - now A$ can contain between 0 and 10 characters. 5. _How do I make graphics?_ Use the "GRAPHICS" command to switch between the following OS-based screen modes: (Note: All modes except 0, 9, 10 and 11 have four lines of 40 x 24 x 2 sized text covering the bottom of the screen. Add "16" to the mode number to remove this window (but do not make any PRINTs or PUTs to the standard output otherwise a GRAPHICS 0 screen will appear!)) (Note: Add "32" to the mode number to keep the screen from clearing when it appears. One problem, however, all screens overlay each other so unless you only use certain modes at certain times, parts of some screens will become (or start out) with 'garbage' on them.) + GRAPHICS 0: 40 x 24 x 2 text + GRAPHICS 1: 20 x 24 x 5 text + GRAPHICS 2: 20 x 12 x 5 text + GRAPHICS 3: 40 x 24 x 4 graphics + GRAPHICS 4: 80 x 48 x 2 graphics + GRAPHICS 5: 80 x 48 x 4 graphics + GRAPHICS 6: 160 x 96 x 2 graphics + GRAPHICS 7: 160 x 96 x 4 graphics + GRAPHICS 8: 320 x 192 x 2 graphics + GRAPHICS 9: 80 x 192 x 16 luminence-only graphics + GRAPHICS 10: 80 x 192 x 9 graphics + GRAPHICS 11: 80 x 192 x 16 hue-only graphics + GRAPHICS 12: 40 x 24 x 4-colored text + GRAPHICS 13: 40 x 12 x 4-colored text + GRAPHICS 14: 160 x 192 x 2 graphics + GRAPHICS 15: 160 x 192 x 4 graphics Commands: Commands available in Atari BASIC for manipulating simple graphics include: + PLOT x,y - plot a pixel + POSITION x,y - position cursor + COLOR c - set drawing color (c=color or character value) + DRAWTO x,y - draw a line from cursor location (set with "POSITION", "PLOT", "DRAWTO" or "LOCATE") + LOCATE x,y,r (where "r" is a varibale where result will be stored) + SETCOLOR c,h,l (c=palette location (0 to 4), h=hue (0 to 15, explained below, l=lum, 0 (darkest) to 15 (brightest)) Setcolor Hue Values: This is a simple table of Atari's 16 hues. For now, I've just pointed out major color points. In-between values are in-between colors. (Since 1 is yellow, and 4 is red, 2 and 3 are oranges.) + 0 - black/grey/white + 1 - yellow + 2 + 3 + 4 - red/pink + 5 + 6 + 7 + 8 - blue + 9 + 10 + 11 + 12 - green + 13 + 14 + 15 - yellow Colors: Note: COLOR command colors are not identical to SETCOLOR command colors: In 4-color drawing modes, all four of these colors map to the SETCOLOR palette locations: + COLOR 0 will draw using the background color, set with SETCOLOR 4,hue,lum + COLOR 1 will draw using color "0", set with SETCOLOR 0,hue,lum + COLOR 2 will draw using color "1", set with SETCOLOR 1,hue,lum + COLOR 3 will draw using color "2", set with SETCOLOR 2,hue,lum In low-resolution 2-color drawing modes, these two colors map to the SETCOLOR palette locations: + COLOR 0 will draw using the background color, set with SETCOLOR 4,hue,lum + COLOR 1 will draw using color "0", set with SETCOLOR 0,hue,lum In the high-resolution 2-color drawing mode (GRAPHICS 8), and in the 2-color text mode, (GRAPHICS 0 and the text windows), these three colors map to the SETCOLOR palette locations: + COLOR 0 will draw using the background color, set with SETCOLOR 2,hue,lum + COLOR 2 will draw using a color which is the luminence of color "1" and the hue of the background (color "2"): SETCOLOR 1,_anything_,lum + SETCOLOR 4,hue,lue will change the color of the screen border. In the GTIA luminence-only graphics mode (GRAPHICS 9), the color specified with "COLOR" is the brightness of the pixels you plot (0 is black/darkest, 15 is white/brightest). + COLOR 0 is the background color and pixel hue, set with SETCOLOR 4,hue,0. Setting the luminence of the background to anything but 0 causes strange things to happen. In the GTIA paletted graphics mode (GRAPHICS 10), the following colors are used: + COLOR 0 is the background color, which is actually Player/Missile 0's color, set with POKE 704,hue*16+lum + COLOR 1 is PM 1's color, POKE 705,hue*16+lum + COLOR 2 is PM 2's color, POKE 706,hue*16+lum + COLOR 3 is PM 3's color, POKE 707,hue*16+lum + COLOR 4 is color "0", SETCOLOR 0,hue,lum + COLOR 5 is color "1", SETCOLOR 1,hue,lum + COLOR 6 is color "2", SETCOLOR 2,hue,lum + COLOR 7 is color "3", SETCOLOR 3,hue,lum In the GTIA hue-only mode (GRAPHICS 11), the color you specify is the hue of the pixel (see the "SETCOLOR" color table, above). The luminence of the pixels is based on the value for the background luminence: + SETCOLOR 4,0,lum Sets the luminence of all colors except black, which remains darkest (black). 6. _How do I make sound on the Atari_ The easiest way is to use the BASIC "SOUND" command: SOUND c,p,d,v + c=channel (0-3) + p=pitch (0-255) (0 is highest pitch, sometimes off; 255 is the lowest pitch) + d=distortion (0,2,4,6,8,10,12 or 14) (10 is a "pure" tone) + v=volume (0-15) The buzzer character is CHR$(253) aka [CONTROL]+[2] (NOT [CONTROL]+[G]) 7. _How do I move the cursor and edit?_ The Atari "E:" device (standard input/output which is the "editor") allows the following characters for editing: (Note: "Sh" means "[SHIFT]" and "^" means "[CONTROL]") Key: AtASCII #: Use: ----------------- -------- --------------------------------------------- Atari none Turn inverse on/off (Atari 400/800 kybds) Inverse [Triangle] none Turn inverse on/off (Atari XL/XE kybds) CAPS none Turns caps-mode to lowercase (400/800 OS) CAPS none Toggles caps-mode from upper to lower (XL/XE) Sh-CAPS none Turns caps-mode to uppercase (all OSes) Ct-CAPS none Turns caps-mode to [Control]-[Lock] (all) Up ([^-]) 28 Move cursor up Down ([^=]) 29 Move cursor down Left ([^+]) 30 Move cursor left Right ([^*]) 31 Move cursor right Space 32 Move cursor right (overwrites w/Space char) BackSpace 126 Move cursor left (deletes previous char) Delete ([ShBkspc]) 156 Deletes a (logical) line (1-3 physical lines) Insert ([Sh>]) 157 Inserts a physical line Ct-Delete ([^Bksp]) 254 Deletes char under cursor, pulls rest left Ct-Insert ([^>]) 255 Inserts space under cursor, pushes rest right ClearScn ([^<]) 125 Clears screen Bell ([^2]) 253 Sounds buzzer TAB 127 Moves cursor to next TABstop ClrTAB ([^TAB]) 158 Clears any TABstop under cursor SetTAB ([ShTAB]) 159 Sets a TABstop under cursor ESC 27 Sets ESCape (next edit char after is shown, not done, non-edit chars shown (like normal)) RETURN 155 Sends End Of Line (moves cursor to lowerleft of next line, accepts input) Note: Inverse characters have values of the normal version of the characters plus 128. (The only non-viewable inverse character is inverse-ESC, or what would be the [ESC],[RETURN] combination. The character exists, but must be set into screen RAM by hand.) 8. _How do I make the editor characters appear_ As shown above, you must have an ESC sent before them. + When simply entering text, type [ESC] then the edit key and the character for that edit key should appear. + When entering text in a PRINT statement (in BASIC, et. al.), you must have it send an ESC beforehand, so first type [ESC],[ESC] to make an ESCape character appear, then type [ESC] then the edit key and the character for that edit key should appear. When the PRINT statement is executed, the first ESCape (which you typed as two [ESC]'s) will make the editor SHOW the following character (even if it is an edit character), then the character which you entered (with [ESC] and then the edit key) will make that character appear. This makes it difficult to align a set of PRINT statements which make a multi-line picture or menu which uses viewed edit keys. It is probably best to have all of the lines in your program with the PRINT statements that can fit visible on the screen, then edit them (without putting any of the ESCape characters in, then when the picture looks like how you want it on the screen, move the cursor to on top of each edit-key character and press [Control]+[>] (Control-Insert). A blank space should appear under the cursor and the rest of the line should move right. Now, type [ESC],[ESC] and an ESCape edit-key character should appear where the blank space was. When you are finished doing that for each line with those PRINTs in it, BE SURE TO ENTER THEM INTO THE PROGRAM BY PRESSING [RETURN] ON EACH OF THOSE LINES! Whew! Set the memory location "766" to "1" with the command "POKE 766,1" to turn on the no-edit mode (ALL characters except End Of Lines will appear, even ClearScreens!) When you want to go back into normal mode, set the location back to "0" with "POKE 766,0". 9. _What's with the colors changing?_ This is called "Attract mode" as was used on the Atari 8-bit computers and the Atari 2600, 5200 and 7800 game systems. When a key hasn't been pressed for about 8 minutes the screen colors begin changing, thus protecting your TV or monitor from having an image burned on it. + To turn this mode off, press a key, or, if within a program, use the command "POKE 77,0" at least once every few minutes (IF the screen is active, otherwise turning it off would be kinda useless). + To turn it on, wait 7 or 9 minutes without pressing a key or having location "77" set to "0", or set location "77" to "128" with "POKE 77,128", voila! instant attract mode! 10. _How do I access 'devices' on the Atari?_ The following commands are available to Atari BASIC's (and also variations on these are available in most other Atari languages!): + OPEN #a,b,c,d$ Opens channel 'a' for access to 'd$' in mode 'b' with auxillary mode 'c'. Channel 'a' must be free or else a 'Channel already open' (129) error will occur. To explain the different "modes", here are simply some examples: o OPEN #1,4,0,"K:" Input from keyboard o OPEN #2,8,0,"P:" Output to printer o OPEN #3,12,0,"D:FILE" Random access to disk o OPEN #4,9,0,"D:DATA" Append-output to disk o OPEN #5,13,0,"R:" Concurrent to RS232 (modem) o OPEN #6,6,0,"D:*.TXT" Directory access to disk (reads directory of "*.TXT" mask; listing only files on the drive whose names end in ".TXT") + CLOSE #a Closes channel 'a' (freeing it for use) + GET #a,b Reads a byte from channel 'a' and stores it in 'b' + PUT #a,b Puts byte 'b' onto channel 'a' + INPUT #a,b$ Reads a string (up to 255 bytes and a REQUIRED 'end of line' (character 155)) from channel 'a' and stores it in 'b$' + INPUT #a,b Reads a string (up to 255 bytes and a REQUIRED 'end of line' (character 155)) from channel 'a' and stores the numeric value of it in 'b' + PRINT #a,[stuff] Just like the normal BASIC PRINT statement, but sends the information to channel 'a' (semicolons, comas, and mixed types are of course allowed). + STATUS #a,b Reads the error 'status' of channel 'a' and stores it in 'b' + XIO a,#b,c,d,e$ General I/O call. This a little complicated and may be expanded upon in a future revision. Just be aware of the following: o a - command o b - channel to use (usually must be free) o c - auxillary mode 1 o d - auxillary mode 2 o e$ - file or device to act upon Examples: o XIO 32,#1,0,0,"D:FILE,OLDFILE" renames file o XIO 33,#1,0,0,"D:OLDFILE" deletes file o XIO 34,#1,0,0,"D:GAMES" creates a directory in My- & Sparta-DOS o XIO 35,#1,0,0,"D:NEWFILE" locks a file from over-write and deletion o XIO 36,#1,0,0,"D:NEWFILE" UNlocks a locked file o XIO 40,#1,4,0,"D:PROG.OBJ" loads and runs a binary file (like "L" in Atari and MyDOS) o XIO 40,#1,5,0,"D:PROG.OBJ" loads a binary file (like "L" in Atari and MyDOS with the "/N" option) o XIO 41,#1,0,0,"D:GAMES" changes default directory that drive/subdirectory (all calls to "D:" will now occur within that drive/directory) o XIO 254,#1,0,0,"D2:" FORMAT a disk (in Atari DOS 2.5, this is format 'enhanced', to format 'single' density, use XIO 253) (in MyDOS, this is format, but not 'enhanced', use: o XIO 253,#[channel],1,0,"D[drive]:" for formatting a drive in enhanced mode). NOTE: 39 and 40 are the same. Also note the useage of AUX1 in the "XIO 40" example. _________________________________________________________________ -- Getting Atari files to an IBM: -- 1. _How can I read Atari disks on my IBM?_ _Note:_ Someone please give more details or corrections here! Thanks! If you have double-density Atari disks, you can use the program "Util" on the IBM which can read double-density Atari disks. Please see the Atari 8-bit FAQ for more details. If you have an Atari 1050 disk drive, you can use the program MULE to copy files, one file at a time, 20k chunks at a time, from the Atari to the IBM. You first must format a 180k disk on your IBM, then run MULE on your Atari to get a file onto the MULE disk, then run MULE on the IBM to get the file onto the IBM. Tedious, isn't it? MULE wasn't meant to be a fully-functional program, just a demo to show that this was even possible. If you're fortunate to have a Black Box interface on your Atari, you can get an external IBM drive and the Black Box's add-on, the Floppy-Board and simply copy files from your Atari disks or hard drive(s) onto IBM disks via the floppy board, then load them up on your IBM. 2. _Ok, I can't do any of that, now what?_ + Drive Emulators: You can use SIO2PC or APE, which are programs for IBM's which turn your IBM into a set of Atari disk drives. You need an "SIO2PC cable" or something similar (which you can purchase, assembled or unassembled, or buy parts and build it yourself) and the SIO2PC or APE software (available at UMICH). _SIO2PC users:_ Connect your IBM to your Atari, load SIO2PC, and then run the program FILE2PC on the Atari to transfer files to the IBM's hard drive. Or instead create a disk image within SIO2PC and copy files from one disk (a real Atari floppy) to another (the SIO2PC image) with the Atari or MyDOS "C"opy command. If you want to extract files out of the SIO2PC disk image file and store them on your IBM's hard drive or floppies as single files, either again use FILE2PC or use S2PC, an IBM program which can extract files from or add files to MyDOS-compatible SIO2PC disk images! _APE users:_ You can turn one of the 8 Atari drives into a "PC-Mirror" drive, allowing access to save and load files directly onto your PC's disks. + NULL-Modem: You can use two modems (one on your PC and one on your Atari) to download files from your Atari 8-bit. + FTP From Archives: If you don't necessarily want files that you already have on your Atari 8-bit, you can download files from the huge collection available at FTP sites and Atari 8-bit supporting bulletin boards and save them onto your IBM. + Using an online account for one-modem transfers: If you have only one modem, so you can't connect both your Atari 8-bit and your IBM together via modems, you can do it via null-modem, OR you can upload files from your Atari to some bulletin board or account you have access to, and then connect the modem to your IBM and download the files. + _Is there any easier way to get Disk Communicator (Atari disk image) files to and from SIO2PC disk images or PC/ST Xformer XFD disk images other than using Disk Communicator 3.2 on my Atari! I mean, both files are disk images! They're both on my PC's hard drive! [cry]_ (AND NOTE: DiskComm. doesn't like SIO2PC a lot of the time anyway!) Yes! There's an IBM program out called "DCM2DSK". There's also C source to a very similar program called "DCMTOATR" which works on PC's (a PC executable version comes in the archive) and Unix and probably any other system with a good C compiler. _____________________________________________________________ -- Where to get or FTP files mentioned in this FAQ: -- + _PC Xformer 2.0 and 2.5_ can be downloaded from: o [11] mputer/ o [12]Emulators Inc. Website ( + _PC Xformer 3.3 demo_ can be downloaded from: o [13]Emulators Inc. Website (>) o _PC Xformer 3.3_ can be purchased for US$29.95 (prices may vary) from: # U.S.A.: @ American Technavisions 510-352-3787, fax 510-352-9227 @ B & C Computervisions 408-986-9960, fax 408-986-9968 @ Mid Cities Computers 310-867-0626, fax 310-920-8933 @ Rising Star Computers 800-252-2787, fax 513-254-7970 @ Toad Computers 800-448-8623, fax 410-544-1329 # Germany: @ Atari Bit Byter User Club +49 02366-39623 (same for fax) @ KE-Soft +49 06181 87539, fax: +49 06181 83436 # United Kingdom: @ Micro Discount +44 0121 353 5730, fax: +44 0121 352 1669 # or directly from Emulators Inc.: (USA) 14150 N.E. 20th Street, Ste 302, Belleuve, WA 98007. 1-206-369-5513, fax 1-206-885-5893 E-mail: [14] WWW: [15] o _Rainbow_ can be downloaded via FTP from: # FTP: [16] # Chris Lam: E-mail: [17] WWW: [18] tml o _Rainbow 95_ can be downloaded via the Web from: # Chris Lam: E-mail: [19] WWW: [20] tml o _Atari800_ can be downloaded from: # David Firth: E-mail: [21] o _XL-It!_ can be downloaded via the Web from: # Markus Gietzen: E-mail: [22] WWW: [23] xl-it.html o _ACE_ can be downloaded via the Web from: # Frank Barrus # E-mail: [24] WWW: [25] o _ST Xformer_ can be downloaded from: # Emulators Inc.: (USA) 14150 N.E. 20th Street, Ste 302, Belleuve, WA 98007. 1-206-369-5513, fax 1-206-885-5893 E-mail: [26] o The following programs are available for download on the Internet: # _SIO2PC:_ [27] ors/Peripherals/ # _APE:_ [28] # _Mule:_ [29] ils/Transfer/mule.arc (Atari) [30] ils/Transfer/mule.exe (IBM) [31] ils/Transfer/mule.txt (Documentation) # _Util:_ [32] ils/Transfer/ # _S2PC:_ atari/8bit/??? (IBM) # _Virtual Disk Editor:_ atari/8bit/??? (Mac) # _DCM2ATR:_ ? (IBM/Unix) # _DCM2DSK:_ [33] ils/Transfer/ (IBM) [34] ils/Transfer/dcm2dsk2.blurb (Documentation) # _ATR2Unix:_ (IBM/Unix) # _XFSIO:_ [35] ________________________________________________________ -- The End -- AGAIN, _PLEASE_ CHECK OUT THESE OTHER FILES: o ATARI 8-BIT FAQ o PC XFORMER DOCUMENTS o RAINBOW DOCUMENTS o ATARI800 DOCUMENTS o XL-IT! DOCUMENTS o MYDOS DOCUMENTS o SIO2PC DOCUMENTS o APE DOCUMENTS Other Atari 8-bit and emulated Atari 8-bit users can be reached on the [36]comp.sys.atari.8bit and [37]comp.emulators.misc newsgroups. ________________________________________________________ _PLEASE add questions and report any mistakes or bugs to me as soon as possible!_ Thank you!!! [38] ________________________________________________________ References 1. 2. 3. news:comp.sys.atari.8bit 4. 5. 6. 7. news:comp.sys.atari.8bit 8. news:comp.emulators.misc 9. news:comp.sys.atari.8bit 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. news:comp.sys.atari.8bit 37. news:comp.emulators.misc 38.
Return to menu